Manuales para la línea de comandos

Man » Manual de crontab en línea: documentación detallada en línea para la página de manual de crontab

🌍
crontab: mantiene los archivos crontab para usuarios individuales (Vixie Cron)

SINOPSIS

crontab [-h]

crontab [-u usuario] [-n] archivo

crontab [-u usuario] [-i] {-e | -l | -r}

DESCRIPCIÓN

crontab es el programa utilizado para instalar, desinstalar o listar las tablas utilizadas para ejecutar el demonio cron(8) de Vixie Cron. Cada usuario puede tener su propio archivo crontab, y aunque son archivos en /var/spool/cron/crontabs, no están diseñados para ser editados directamente.

Si el archivo /etc/cron.allow existe, debe estar incluido (un usuario por línea) para poder usar este comando. Si el archivo /etc/cron.allow no existe, pero el archivo /etc/cron.deny existe, entonces no debe estar incluido en el archivo /etc/cron.deny para poder usar este comando.

Asegúrese de que los permisos del archivo /etc/cron.allow permitan que los usuarios autorizados lo lean. Por ejemplo, los permisos rw- r-- r-- (octal 644) deberían ser suficientes.

Si ninguno de estos archivos existe, entonces, según los parámetros de configuración dependientes del sitio, solo el superusuario podrá usar este comando, o todos los usuarios podrán usar este comando.

Si ambos archivos existen, entonces /etc/cron.allow tiene prioridad. Esto significa que /etc/cron.deny no se tiene en cuenta y su usuario debe estar incluido en /etc/cron.allow para poder usar crontab.

Independientemente de la existencia de cualquiera de estos archivos, el usuario administrativo raíz siempre tiene permiso para configurar un crontab. Para los sistemas Debian estándar, todos los usuarios pueden usar este comando.

Si se da la opción -h, crontab muestra un mensaje de ayuda y sale inmediatamente.

Si se da la opción -u, especifica el nombre del usuario cuyo archivo crontab se utilizará (al listar) o modificar (al editar). Si no se da esta opción, crontab examina "su" archivo crontab, es decir, el archivo crontab de la persona que ejecuta el comando. Tenga en cuenta que su(8) puede confundir a crontab y que, si está ejecutando dentro de su(8), siempre debe usar la opción -u por seguridad.

La primera forma de este comando se utiliza para instalar un nuevo archivo crontab desde un archivo con nombre o desde la entrada estándar si se da el nombre de archivo ficticio "-".

Si se da la opción -n, significa "ejecución de prueba": crontab examina "su" archivo crontab para verificar su sintaxis y muestra un mensaje de éxito si esta sintaxis es correcta, pero no se escribe nada en ningún archivo crontab.

La opción -l hace que el archivo crontab actual se muestre en la salida estándar. Consulte la nota en la sección denominada "ESPECÍFICO DE DEBIAN" a continuación.

La opción -r hace que se elimine el archivo crontab actual.

La opción -e se utiliza para editar el archivo crontab actual usando sensible-editor(1). Después de salir del editor, el archivo crontab modificado se instalará automáticamente.


La opción -i modifica la opción -r para solicitar al usuario una respuesta de 'y/Y' antes de eliminar realmente el crontab.

ESPECÍFICO DE DEBIAN

El comportamiento "predeterminado" de crontab -l es mostrar la cabecera de tres líneas "NO EDITE ESTE ARCHIVO" que se coloca al principio del crontab cuando se instala. El problema es que esto hace que la secuencia

^ rontab -l | crontab no sea idempotente: sigue agregando copias de la cabecera. Esto causa problemas a los scripts que utilizan sed para editar un crontab. Por lo tanto, el comportamiento predeterminado de la opción -l se ha cambiado para que no se muestre dicha cabecera. Puede obtener el comportamiento original configurando la variable de entorno CRONTAB_NOHEADER en 'N', lo que hará que el comando crontab -l emita la cabecera adicional.

RESALTANDO LA SALIDA DE CRONTAB -L

El comando crontab -l produce texto sin formato. Cuando un tty puede admitir secuencias ANSI para colorear este texto, se puede resaltar la salida llamando a: crontab -l | spc -t crontab cuando el fondo del tty es oscuro, o crontab -l | spc -t crontab-light cuando este fondo es claro.

El esquema de resaltado se puede modificar utilizando versiones personalizadas de los archivos /etc/supercat/spcrc-crontab*.

También se puede colorear este texto con el programa batcat(1) proporcionado por el paquete bat, aquí hay un ejemplo:

crontab -l | batcat --language Crontab

VER TAMBIÉN

^ rontab(5), cron(8), spc(1)

ARCHIVOS

^ etc/cron.allow, /etc/cron.deny Los archivos /etc/cron.allow y /etc/cron.deny, si existen, deben ser legibles para el mundo o legibles para el grupo crontab. Si no lo son, cron(8) denegará el acceso a todos los usuarios hasta que se corrijan los permisos.

^ var/spool/cron/crontabs Hay un archivo para el crontab de cada usuario en el directorio /var/spool/cron/crontabs. Los usuarios no tienen permitido editar directamente los archivos de ese directorio para garantizar que solo los usuarios autorizados por el sistema para ejecutar tareas periódicas puedan agregarlas, y solo se escribirán crontabs sintácticamente correctos allí. Esto se aplica al hacer que el directorio sea escribible solo por el grupo crontab y configurando el comando crontab con el bit setgid para ese grupo específico.

ESTÁNDARES

El comando crontab cumple con IEEE Std1003.2-1992 ("POSIX"). Esta nueva sintaxis de comando difiere de las versiones anteriores de Vixie Cron, así como de la sintaxis SVR3 clásica.

DIAGNÓSTICOS

Aparece un mensaje de uso bastante informativo si lo ejecuta con una línea de comando incorrecta.

cron(8) requiere que cada entrada en un crontab termine con un carácter de nueva línea. Si falta el carácter de nueva línea en la última entrada de un crontab, cron(8) considerará que el crontab (al menos parcialmente) está dañado y se negará a instalarlo.

Los archivos en /var/spool/cron/crontabs se nombran según el nombre de la cuenta del usuario. Los trabajos de crontab no se ejecutarán para los usuarios cuyos nombres de cuenta han cambiado debido a cambios en el sistema local o porque se administran a través de una base de datos de usuarios central (externa al sistema, por ejemplo, un directorio LDAP).


AUTORES

Paul Vixie <_> Escribió esta página de manual (1994).

Steve Greenland <_> Mantuvo el paquete (1996-2005).

Javier Fernández-Sanguino Peña <_> Mantuvo el paquete (2005-2014).

Christian Kastner <_> Mantuvo el paquete (2010-2016).

Georges Khaznadar <_> Mantuvo el paquete (2022-2024).

DERECHOS DE AUTOR

Copyright © 1994 Paul Vixie

Distribuya libremente, excepto: no elimine mi nombre de la fuente o la documentación (no se atribuya el mérito de mi trabajo), marque sus cambios (no me culpe por sus posibles errores), no altere ni elimine este aviso. Se puede vender si se proporciona al comprador el código fuente compilable. No se incluye ninguna garantía, expresa o implícita, con este software; utilícelo bajo su propio riesgo; la responsabilidad de los daños (si los hubiera) a cualquier persona como resultado del uso de este software recae totalmente en el usuario.

Desde el año 1994, se han realizado muchas modificaciones en esta página de manual, realizadas por los desarrolladores de Debian que mantienen cron(TM); lo anterior es una lista corta, puede encontrar más información en el archivo /usr/share/doc/cron/copyright.