J'ai défini un travail d'anacron quotidien, qui exécute le formulaire /etc/cron.daily
. D'après le /etc/crontab
, je vois qu'il devrait être exécuté quotidiennement à 06h25 (ou au démarrage/redémarrage).
Cependant, lorsque la date change (00:00) et que l'ordinateur est en marche, je ne veux pas que l'anacron attende jusqu'à 06:25. Si l'ordinateur est en marche, j'aimerais qu'il exécute le script dès que la date change (00:00). Est-il judicieux d’ajouter un travail cron pour exécuter anacron @hourly?
Merci beaucoup
J'ai trouvé comment faire cela et je l'ai résumé dans mon article de blog:
Si vous souhaitez modifier le comportement de anacron
afin qu'il s'exécute dès que le jour change (et n'attendez pas jusqu'à 7:30
comme c'est le cas par défaut), procédez comme suit:
gksu gedit /etc/cron.d/anacron
et ajoutez les 2 dernières lignes (la dernière ligne redémarrera anacron toutes les heures):
01 0 * * * root test -x /etc/init.d/anacron && /usr/sbin/invoke-rc.d anacron start >/dev/null
01 0 * * * root start -q anacron || :
@hourly root start -q anacron || :
Le réponse de Khaled n'est pas correct. Changer cette ligne n'aura aucun effet si anacron
est installé (ce qui est le cas par défaut):
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
Si anacron existe, test -x /usr/sbin/anacron
renverra true
et empêchera la seconde moitié de cette ligne de s'exécuter. L’autre réponse (édition /etc/cron.d/anacron
) est correcte, car c’est la configuration qui lancera Anacron lui-même.
selon d'autres réponses:
éditez les deux premières colonnes de /etc/cron.d/anacron
pour modifier l'heure d'exécution d'Anachron.
(Les valeurs /etc/crontab
ne prennent pas effet en raison du || ...
)
Vous pouvez simplement changer de ligne:
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
lire
0 0 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
Cela fera en sorte que l'exécution des tâches cron quotidiennes commence à minuit.