Omitir V�nculos de navegaci�n | |
Salir de la Vista de impresi�n | |
![]() |
Administración de Oracle Solaris: tareas comunes Oracle Solaris 11 Information Library (Español) |
1. Localización de información acerca de comandos de Oracle Solaris
2. Gestión de grupos y cuentas de usuario (descripción general)
3. Gestión de cuentas de usuario y grupos (tareas)
4. Inicio y cierre de un sistema Oracle Solaris
5. Trabajo con Oracle Configuration Manager
6. Gestión de servicios (descripción general)
7. Gestión de servicios (tareas)
9. Gestión de información del sistema (tareas)
10. Gestión de procesos del sistema (tareas)
11. Supervisión del rendimiento del sistema (tareas)
12. Gestión de paquetes de software (tareas)
13. Gestión del uso de discos (tareas)
14. Programación de tareas del sistema (tareas)
Creación y edición de archivos crontab (mapa de tareas)
Formas de ejecutar automáticamente tareas del sistema
Para programar trabajos repetitivos: crontab
Para programar un solo trabajo: at
Programación de tareas repetitivas del sistema (cron )
Cómo gestiona la programación el daemon cron
Sintaxis de entradas de archivo crontab
Creación y edición de archivos crontab
Cómo crear o editar un archivo crontab
Cómo verificar que un archivo crontab existe
Visualización de archivos crontab
Cómo visualizar un archivo crontab
Eliminación de archivos crontab
Cómo eliminar un archivo crontab
Control del acceso al comando crontab
Cómo denegar el acceso al comando crontab
Cómo limitar el acceso al comando crontab a los usuarios especificados
Cómo verificar el acceso limitado al comando crontab
Uso del comando at (mapa de tareas)
Programación de una sola tarea del sistema (at)
Control del acceso al comando at
15. Configuración y administración de impresoras mediante CUPS (tareas)
16. Gestión de la consola del sistema, dispositivos del terminal y servicios de energía (tareas)
17. Gestión de información sobre la caída del sistema (tareas)
18. Gestión de archivos del núcleo central (tareas)
19. Resolución de problemas de software y sistemas (tareas)
20. Resolución de diversos problemas de software y sistemas (tareas)
Las siguientes secciones describen cómo utilizar el comando at para realizar las siguientes tareas:
Programar trabajos (comando y secuencias de comandos) para ejecutar más tarde.
Cómo mostrar y eliminar estos trabajos.
Cómo controlar el acceso al comando at.
De manera predeterminada, los usuarios pueden crear, visualizar y eliminar sus propios archivos de trabajo at. Para acceder a archivos at que pertenecen a root o a otros usuarios, se necesitan privilegios de superusuario.
Cuando ejecuta un trabajo at, se le asigna un número de identificación de trabajo junto con la extensión .a. Esta designación se convierte en el nombre de archivo del trabajo y en su número de cola.
Ejecutar un archivo de trabajo at implica los siguientes pasos:
Invocar la utilidad at y especificar una hora de ejecución de comando.
Escribir un comando o una secuencia de comandos para ejecutar más tarde.
Nota - En caso de que el resultado de este comando o de esta secuencia de comandos sea importante, asegúrese de dirigir el resultado a un archivo para investigarlo posteriormente.
Por ejemplo, el siguiente trabajo at elimina archivos core de la cuenta de usuariosmith casi a la medianoche del último día del mes de julio.
$ at 11:45pm July 31 at> rm /home/smith/*core* at> Press Control-d commands will be executed using /bin/csh job 933486300.a at Tue Jul 31 23:45:00 2004
Puede configurar un archivo para que controle el acceso al comando at y para que permita que sólo los usuarios especificados creen, eliminen o visualicen información de cola sobre sus trabajos at. El archivo que controla el acceso al comando at, /etc/cron.d/a.deny, consta de una lista de nombres de usuario (un nombre de usuario por línea). Los usuarios que se muestran en este archivo no pueden acceder a comandos at.
El archivo at.deny, que se crea durante la instalación del software SunOS, contiene los siguientes nombres de usuario:
daemon bin smtp nuucp listen nobody noaccess
Con privilegios de superusuario, puede editar el archivo at.deny para agregar otros nombres de usuario cuyo acceso al comando at desee restringir.
$ at [-m] time [date]
Envía correo electrónico después de que finaliza el trabajo.
Especifica la hora en que desea programar el trabajo. Agregue am o pm si no especifica la hora según el reloj de 24 horas. Las palabras clave aceptables son midnight, noon y now. Los minutos son opcionales.
Especifica las primeras tres (o más) letras de un mes o un día de la semana, o las palabras clave today o tomorrow.
Puede introducir más de un comando presionando Intro al final de cada línea.
A su trabajo at se le asigna un número de cola, que también es el nombre del archivo de trabajo. Este número se muestra al salir de la utilidad at.
Ejemplo 14-7 Creación de un trabajo at
El siguiente ejemplo muestra el trabajo at que el usuario jones creó para eliminar sus archivos de copia de seguridad a las 7:30 p. m. Utilizó la opción -m, de modo que recibirá un mensaje de correo electrónico después de que finaliza el trabajo.
$ at -m 1930 at> rm /home/jones/*.backup at> Press Control-D job 897355800.a at Thu Jul 12 19:30:00 2004
Recibió un mensaje de correo electrónico que confirmó la ejecución de su trabajo at.
Your “at” job “rm /home/jones/*.backup” completed.
El siguiente ejemplo muestra cómo jones programó un trabajo at de gran tamaño para las 4:00 a. m. del sábado. El resultado del trabajo se dirigió a un archivo llamado big.file.
$ at 4 am Saturday at> sort -r /usr/dict/words > /export/home/jones/big.file
$ atq
Este comando muestra información de estado sobre los trabajos at que ha creado.
$ atq Rank Execution Date Owner Job Queue Job Name 1st Jul 12, 2004 19:30 jones 897355800.a a stdin 2nd Jul 14, 2004 23:45 jones 897543900.a a stdin 3rd Jul 17, 2004 04:00 jones 897732000.a a stdin
$ at -l [job-id]
donde la opción -l job-id identifica el número de identificación del trabajo cuyo estado desea mostrar.
Ejemplo 14-8 Visualización de trabajos at
En el siguiente ejemplo, se muestra la salida del comando at -l, que proporciona información sobre el estado de todos los trabajos ejecutados por el usuario.
$ at -l 897543900.a Sat Jul 14 23:45:00 2004 897355800.a Thu Jul 12 19:30:00 2004 897732000.a Tue Jul 17 04:00:00 2004
El siguiente ejemplo muestra el resultado que se visualiza cuando se especifica un solo trabajo con el comando at -l.
$ at -l 897732000.a 897732000.a Tue Jul 17 04:00:00 2004
Antes de empezar
Conviértase en el usuario root para eliminar un trabajo at que pertenece al usuario root o a otro usuario. Los roles incluyen autorizaciones y comandos con privilegios.
No es necesario que se convierta en usuario root para eliminar su propio trabajo at.
# at -r [job-id]
donde la opción -r job-id especifica el número de identificación del trabajo que desea eliminar.
El comando at -l muestra los trabajos que quedan en la cola at. El trabajo cuyo número de identificación ha especificado no debe aparecer.
$ at -l [job-id]
Ejemplo 14-9 Eliminación de trabajos at
En el siguiente ejemplo, un usuario desea eliminar un trabajo at programado para ejecutarse el 17 de julio, a las 4 a. m. En primer lugar, el usuario muestra la cola at para ubicar el número de identificación del trabajo. Luego, el usuario elimina este trabajo de la cola at. Por último, el usuario verifica que este trabajo se haya eliminado de la cola.
$ at -l 897543900.a Sat Jul 14 23:45:00 2003 897355800.a Thu Jul 12 19:30:00 2003 897732000.a Tue Jul 17 04:00:00 2003 $ at -r 897732000.a $ at -l 897732000.a at: 858142000.a: No such file or directory
daemon bin smtp nuucp listen nobody noaccess username1 username2 username3 . . .
Ejemplo 14-10 Denegación del acceso a at
El siguiente ejemplo muestra un archivo at.deny que se ha editado para que los usuarios smith y jones no puedan acceder al comando at.
$ cat at.deny daemon bin smtp nuucp listen nobody noaccess jones smith
# su smith Password: # at -l at: you are not authorized to use at. Sorry.
Del mismo modo, si el usuario intenta ejecutar un trabajo at, aparece el siguiente mensaje:
# at 2:30pm at: you are not authorized to use at. Sorry.
Este mensaje confirma que el usuario aparece en el archivo at.deny.
Si se permite el acceso al comando at, el comando at -l no devuelve nada.