8 votos

¿Hay algún patrón establecido para la instalación de un kill o interruptor para trabajos de cron del usuario?

Hemos de largas generaciones que normalmente nos programar el cron puestos de trabajo en todo, pero en ocasiones tenemos que volver a ejecutar una construcción durante un período de tiempo y se puede ejecutar en los conflictos con cron puestos de trabajo que, normalmente, son seguros para que se ejecute en aquellos tiempos.

Tenemos varias cuentas que se ejecutan ambas generaciones y cron puestos de trabajo, por lo que no puede suspender el crontab de servicio para todo el equipo y, a continuación, reiniciar más tarde.

Me preguntaba si alguien tenía un patrón o aplicación. Me imagino que esta trabajando como

El usuario crea un archivo: ~/bloque-crontab
usuario ejecuta construir El cron job busca ese archivo en el directorio local del usuario y, si hay solamente salta todos los cron jobs. De lo contrario, se corre el empleo A continuación, cuando la construcción se realiza, el usuario elimina ~/bloque-crontab

Tendría que trabajar? Supongo que yo tendría que modificar el script cron de alguna manera. Yo soy todo preguntaba si hay un mejor enfoque para este problema?

gracias.

10voto

shodanshok Puntos 2644

En lugar de jugar con crond, yo sugiero implementar algunos (incluso simple) formulario de bloqueo en el interior de su construcción de guiones. Por ejemplo, el tacto y la verificación de un archivo en /var/run/: si la secuencia de comandos de encontrar algo, que el otro proceso es la construcción del proyecto. Obviamente, se necesita eliminar el archivo de bloqueo cuando haya terminado.

Como @Pnb se indicó en los comentarios, también puede utilizar el flock de utilidad para la semi-automáticamente gestionar su lockfiles.

Si no/no se puede confiar en cualquier mecanismo de bloqueo, cuestión sencilla, un service crond stop para el apagado de la crond del sistema.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: