sur ce sujet, tu peux aussi jeter un oeil à https://wiki.archlinux.org/index.php/Systemd/Timers#As_a_cron_replacement


Le 25/07/2016 à 14:54, jcharleslortjean@reseaux-and-co.fr a écrit :

Bonjour,

Une alternative à cron est d'utiliser directement Systemd.

Il y a deux fichiers à créer,  un fic.service et un fic.timer dans /etc/systemd/system par exemple.

fic.service :

[Unit]
Description=Ce_que_tu_veux
Wants=fic.timer

[Service]
Type=simple
KillMode=none
User=%I
Nice=19
IOSchedulingClass=2
IOSchedulingPriority=7
ExecStart=/usr/bin/script_a_executer.sh 1>/dev/null # p1>/dev/null our une sortie dans /dev/null, à modifier selon les besoins

[Install]
WantedBy=basic.target

fic.timer :

[Unit]
Description=Ce_que_tu_veux

[Timer]
OnCalendar=*-*-* 00:00:00 # Tous les jours à minuit par exemple
Persistent=true
Unit=fic.service

[Install]
WantedBy=basic.target


C'est plus contraignant que d'ajouer une ligne en crontab, mais tu peux ainsi laisser intentionnellement des traces dans les logs par exemple.



Cordialement


Le 25/07/2016 à 14:22, Greg a écrit :
Bonjour,

Nous utilisons beaucoup les tâches planifiées, mais le service "cron" par défaut souffre de quelques lacunes parfois graves:

- en cas d'erreurs dans une crontab, celle-ci est purement et simplement désactivée !! Or la syntaxe est assez stricte.

- pas d'outil natif permettant de vérifier la syntaxe d'une crontab. On peut lancer la commande "crontab fichier" et voir si elle ne retourne pas d'erreur, mais ça installe la crontab, il faut ensuite la supprimer et la déplacer dans /etc/cron.d/ ... Ou alors il existe quelques scripts Bash ou Python mais ils ne prennent pas tous les cas en charge, par exemple la ligne suivante est invalide mais passe les checks:

MAILTO="test@domain.com"  # commentaire


On peut aussi grepper dans les logs ...

grep -E 'cron\[[[:digit:]]+\]:' | grep -vF ') RELOAD (' | grep -E 'cron\[[[:digit:]]+\]: (Error:|\(\*system\*)' /var/log/syslog && exit 1



- enfin, pas de prise en charge native de l'heure d'été, pour éviter les doubles exécutions ou les exécutions manquées, il faudrait configurer le système sur la locale UTC.


bcron semble apporter une partie des réponses, est-ce que parmi la liste quelqu'un aurait un retour d'utilisation ? Pros/Cons ? Bugs ?

Merci !
--
Greg


_______________________________________________
Liste de diffusion du FRsAG
http://www.frsag.org/



_______________________________________________
Liste de diffusion du FRsAG
http://www.frsag.org/