Crontab

Mensajes Crontab

Un archivo crontab contiene instrucciones para el demonio cron de la forma general “ejecuta este comando a esta hora en esta fecha”. Cada usuario puede tener su propio crontab, y aunque son archivos en el directorio /var, no están pensados para ser editados directamente.

Si se da la opción -u, se especifica el nombre del usuario cuyo crontab se va a modificar.Si no se da esta opción, crontab examina “su” crontab, es decir, el crontab de la persona que ejecuta el comando.

Tenga en cuenta que su puede confundir a crontab y que si está ejecutando dentro de su debe utilizar siempre la opción -u por seguridad. cron file se utiliza para instalar un nuevo crontab desde algún archivo con nombre o desde la entrada estándar si se da el pseudo-nombre ‘-‘.

Reinicio de Crontab

Me gustaría configurar un trabajo para que se ejecute diariamente en el crontab de la raíz. Pero me gustaría que se ejecutara desde un directorio concreto para que encuentre todos los archivos que necesita, ya que la aplicación tiene un montón de rutas relativas.

Con respecto al uso de && en lugar de ;: normalmente no hay diferencia, pero si el comando cd falla (por ejemplo, porque el directorio no existe) con && la aplicación no se ejecuta, mientras que con ; se ejecuta (pero no en el directorio previsto).

La lectura de man 5 crontab debería decirle que hay una variable HOME que puede ser redefinida en el archivo. Se convierte en su directorio de trabajo. También puede establecer el PATH para el comando(s). Por supuesto, esto afecta a todas las líneas de programación de cron.

Gurú de Crontab

Para utilizar cron para tareas destinadas a ejecutarse sólo para su perfil de usuario, añada entradas al archivo crontab de su propio usuario. Para editar el archivo crontab introduzca: crontab -eEdite el crontab utilizando el formato descrito en las siguientes secciones. Guarde los cambios. (Para mostrar la ayuda en línea que describe el formato del archivo crontab, introduzca: man 5 crontabLos comandos que normalmente se ejecutan con privilegios administrativos (es decir, que generalmente se ejecutan con sudo) deben añadirse al crontab raíz. Para editar el crontab raíz, introduzca: sudo crontab -e

Después de salir del editor, el crontab modificado se comprueba en busca de errores y, si no los hay, se instala automáticamente. El archivo se almacena en /var/spool/cron/crontabs, pero sólo debe editarse mediante el comando crontab.

Las ediciones del crontab de un usuario y los trabajos de cron ejecutados se registran por defecto en /var/log/syslog y ese es el primer lugar donde comprobar si las cosas no se están ejecutando como se espera. Si un usuario no tenía permiso para ejecutar trabajos cuando su crontab se editó por última vez, añadirlo a la lista de permitidos no hará nada. El usuario debe volver a editar su crontab después de ser añadido a cron.allow para que sus trabajos se ejecuten. Tenga en cuenta que los crontabs específicos del usuario (incluido el crontab raíz) no especifican el nombre del usuario después de los campos de fecha/hora. Si incluye accidentalmente el nombre de usuario en un crontab específico de usuario, el sistema intentará ejecutar el nombre de usuario como un comando. Es posible que los crontab no se ejecuten con el entorno, en particular el PATH, que usted espera. Pruebe a utilizar las rutas completas de los archivos y programas si no se localizan como espera. El carácter “%” se utiliza como delimitador de nueva línea en los comandos de cron. Si necesitas pasar ese carácter a un script, debes escaparlo como “\%”. Si tiene problemas para ejecutar una aplicación de interfaz gráfica de usuario (GUI) utilizando cron, consulte la sección Aplicaciones GUI más adelante.

Crontab editar

Cron es un demonio de reloj, cuyo nombre proviene de Chronos, la palabra griega para el tiempo. Permite a los usuarios automatizar la ejecución de comandos, scripts (un grupo de comandos) o programas en intervalos de tiempo específicos. Cron es un demonio, un proceso de larga duración que sólo necesita iniciarse una vez y que se ejecuta constantemente en segundo plano. Cron se despierta cada minuto, examina su lista de cosas por hacer para ver si hay que ejecutar alguna tarea programada, y si es así la ejecuta. Si no es así, vuelve a dormir durante otros 59 segundos. La lista de cosas por hacer se llama tabla cron, o Crontab para abreviar.

La primera línea muestra que crond se está ejecutando, la segunda línea es la búsqueda que se acaba de ejecutar. Si crond no se está ejecutando, es porque el proceso se terminó (mató) desde la última vez que se inició el ordenador, o nunca se inició en primer lugar. Para hacer que el demonio cron (crond) se añada a los servicios del sistema que chkconfig gestiona, haga lo siguiente como root:

Si coloca un script en uno de esos directorios, se ejecutará cada hora, diariamente, semanalmente o mensualmente, dependiendo del nombre del directorio. Estos directorios son gestionados por un flie crontab maestro ubicado en: