2010-10-14 8 views

Répondre

2

Assurez-vous l'emploi Cron recherchent un drapeau (fichier) sous /var/run, puis d'écrire un script d'initialisation qui définit ou remet à zéro le drapeau.

+1

ignacio ... je suis total unix noob.voulez-vous me donner un exemple du script. – Unixnewbie11

8

Ignacio suggérait quelque chose comme ça dans votre crontab:

31 1 * * * [ -f /var/run/cron-holiday ] || /usr/local/bin/whatever-command 

alors au début d'un week-end de vacances, en tant que root:

# touch /var/run/cron-holiday 

et le lundi:

# rm /var/run/cron-holiday 

C'est gentil et simple mais a l'inconvénient que si vous oubliez de supprimer le fichier, vos croncripts ne plus jamais courir, ce qui pourrait être mauvais.

Une alternative est d'avoir une liste des fichiers dates de vacances et faire quelque chose comme ceci:

31 1 * * * grep -q `date -I` /etc/cron-holidays || whatever-command-here 

où le fichier/etc/cron-vacances contient des lignes comme

2011-04-01 
2011-12-25 

etc

+0

Le fichier doit-il être créé dans "/ var/run /"? – TrueBlue10

+0

@ TrueBlue10, non cela pourrait être n'importe où, par exemple dans/root ou même possédé par un autre utilisateur. – poolie

Questions connexes