Ejecutar C en Linux con privilegios

¡Saludos!
Mi problema es el siguiente: He creado un programa en C para Linux que debe leer el contenido de un archivo de texto, darle un formato y guardarlo en otro archivo de texto. El programa de C, así como el archivo fuente y el archivo a crear están dentro de un directorio de usuario local.
He compilado el archivo y lo he probado siendo usuario root y ha funcionado sin ningún problema; pero si dentro del crontab de root agrego una línea para ejecutar diariamente el programa, no me crea el archivo destino y obtengo el siguiente error:
"Segmentation fault"
He probado cambiar los permisos del programa de la siguiente forma:
-rwsr-xr-x 1 root root 12652 abr 17 13:37 conversion_cobol
Pero no me ha dado resultado tampoco.
¿Qué puedo hacer para que el programa se ejecute correctamente desde el crontab de root como si lo ejecutara siendo root?
¡Gracias por su tiempo!

1 respuesta

Respuesta
1
Perdona el retraso.
Primero de todo, quizá no se deba a un error de permisos, ya que el mensaje "Segmentation fault"
Se debe a que algún proceso ha intentado acceder a la parte de memoria de otro proceso y es cuando peta. De todas maneras lo que ue puedes hacer a modo de prueba es probar a usar ese mismo programa desde el cron pero bajo el directorio /tmp. Este directorio tiene permisos todo el mundo, si desde ahí funciona entonces seguramente si que tenga algo que ver con permisos. Pregunta: ¿Si ejecutas el programa tu manualmente pero con un usuario no-root te saca el segmentation fault?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas