Gestión del rendimiento, los procesos y la información del sistema en Oracle® Solaris 11.2

Salir de la Vista de impresión

Actualización: Septiembre de 2014
 
 

Programación de tareas repetitivas del sistema (cron )

Las siguientes secciones describen cómo crear, editar, visualizar y eliminar archivos crontab, y cómo controlar el acceso a ellos.

Dentro de un archivo crontab

El daemon cron programa tareas del sistema según los comandos encontrados en cada archivo crontab. Un archivo crontab consta de comandos (uno por línea) que se ejecutarán en intervalos regulares. El principio de cada línea contiene información de fecha y hora que indica al daemon cron cuándo debe ejecutar el comando.

Por ejemplo, durante la instalación del software Oracle Solaris, se proporciona un archivo crontab llamado root. El contenido del archivo incluye las siguientes líneas de comando:

10 3 * * * /usr/sbin/logadm (1)
15 3 * * 0 /usr/lib/fs/nfs/nfsfind (2)
1 2 * * * [ -x /usr/sbin/rtc ] && /usr/sbin/rtc -c > /dev/null 2>&1 (3)
30 3 * * * [ -x /usr/lib/gss/gsscred_clean ] && /usr/lib/gss/gsscred_clean (4)

    La salida de cada una de las líneas de comando es la siguiente:

  • La primera línea ejecuta el comando logadm todos los días a las 3:10 a. m.

  • La segunda línea ejecuta la secuencia de comandos nfsfind todos los domingos a las 3:15 a. m.

  • La tercera línea ejecuta una secuencia de comandos que comprueba cambios de hora estacionales (y, de ser necesario, realiza correcciones) todos los días a las 2:10 a. m.

    Si no hay ninguna zona horaria RTC, ni un archivo /etc/rtc_config, esta entrada no hace nada.


    x86 only -  La secuencia de comandos /usr/sbin/rtc sólo se puede ejecutar en un sistema basado en x86.
  • La cuarta línea comprueba (y elimina) las entradas duplicadas en la tabla del servicio de seguridad genérico, /etc/gss/gsscred_db, todos los días a las 3:30 a. m.

Para obtener más información sobre la sintaxis de líneas de un archivo crontab, consulte Sintaxis de entradas de archivo crontab.

Los archivos crontab se almacenan en el directorio /var/spool/cron/crontabs. Varios archivos crontab, además de root, se proporcionan durante la instalación del software Oracle Solaris.

adm

Contabilidad

root

Limpieza de sistema de archivos y funciones generales del sistema

sys

Recopilación de datos de rendimiento

uucp

Limpieza general de uucp

Además de los archivos crontab predeterminados, puede crear archivos crontab para programar sus propias tareas del sistema. Los archivos crontab personalizados reciben el nombre de las cuentas de usuario en las que se crean, como bob, mary, smith o jones.

Para acceder a archivos crontab que pertenecen a root o a otros usuarios, se necesitan privilegios de superusuario.

Cómo gestiona la programación el daemon cron

El daemon cron gestiona la programación automática de comandos crontab. El rol del daemon cron consiste en comprobar en el directorio /var/spool/cron/crontab la presencia de archivos crontab.

    El daemon cron realiza las siguientes tareas en el inicio:

  • Comprueba la presencia de archivos crontab nuevos.

  • Lee las horas de ejecución que se muestran en los archivos.

  • Configura los comandos para que se ejecuten en las horas adecuadas.

  • Escucha notificaciones de los comandos crontab sobre archivos crontab actualizados.

Casi de la misma manera, el daemon cron controla la programación de archivos at. Estos archivos se almacenan en el directorio /var/spool/cron/atjobs. El daemon cron también escucha notificaciones de los comandos crontab sobre trabajos at ejecutados.

Sintaxis de entradas de archivo crontab

Un archivo crontab consta de comandos (uno por línea) que se ejecutan de forma automática en el momento especificado por los primeros cinco campos de cada línea de comandos, separados por espacios.

Tabla 4-2  Valores aceptables para campos de hora de crontab
Campo de hora
Valores
Minuto
0-59
Hora
0-23
Día del mes
1-31
Mes
1-12
Día de la semana
0-6 (0 = domingo)

    Siga estas directrices para utilizar caracteres especiales en los campos de hora de crontab:

  • Utilice un espacio para separar cada campo.

  • Utilice una coma para separar varios valores.

  • Utilice un guión para designar un rango de valores.

  • Utilice un asterisco como comodín para incluir todos los valores posibles.

  • Utilice una marca de comentario (#) al principio de una línea para indicar un comentario o una línea en blanco.

Por ejemplo, la siguiente entrada del comando crontab muestra un recordatorio en la ventana de la consola del usuario el primer día y a los quince días de cada mes, a las 4 p. m.

0 16 1,15 * * echo Timesheets Due > /dev/console

Todos los comandos de un archivo crontab deben estar compuestos por una línea, aunque esa línea sea muy larga. El archivo crontab no reconoce retornos de carro adicionales. Para obtener información más detallada sobre las opciones de comandos y las entradas de crontab, consulte la página del comando man crontab(1).