sábado, 3 de octubre de 2009

CRONTAB - EJECUTAR TAREAS DESDE ROOT CON OTRO USUARIO

En muchas ocasiones nos es necesario tener que ejecutar desde el corntab de root tareas con otro usuario para que cree los permisos de acceso necesarios para su ejecución.

Un ejemplo claro que ocurrió hace poco es la ejecucion de un script que corria como root y generaba directorios entre otras cosas como ese usuario, luego el apache y otras aplicaciones no le daban acceso.

Para solucionar este problema basta solamente con poner delante de la tarea del crontab el usuario con el que lo queremos ejecutar.

Ej:

 */5 * * * * www-data /usr/bin/php -q /var/www/dvr/servidor/111.php >> /var/log/111.log

Esto ejecutará la tarea del cron con el usuario indicado.

NOTA IMPORTANTE: Para que funcione esto no se debe realizar con el comando crontab -e, sino que deben editar el archivo /etc/crontab.

Basicamente porque cuando ejecutamos crontab -e, estamos entrando al crontab del usuario que estamos.

cuando editamos el archivo /etc/crontab estamos trabajando sobre el crontab del sistema.


Hernan Mazzeo

No hay comentarios:

Publicar un comentario