Bonjour,
Pour un usage sortant un peu de l'administration système (rejouer des logs), je cherche à utiliser at pour lancer des taches avec un niveau de précision de l'ordre de la seconde. Je comprends bien qu'il y aura des écarts (machines trop chargée, trop de forks..), mais je souhaiterais me rapprocher de cette échelle.
Dans sa configuration par défaut at ne permet de lancer des tâches qu'avec une granularité de l'ordre de la minute. atd accepte toutefois comme argument une option (-b) qui semble pouvoir augmenter cette granularité, elle semble pourtant sans effet chez moi:
root@peeranha3:/home/geb# ps aux | grep atd daemon 4787 0.0 0.0 2212 496 ? Ss 16:48 0:00 /usr/sbin/atd -l 50 -b 5 geb@peeranha3:~$ echo 'date' | at -t 05101747.24 warning: commands will be executed using /bin/sh job 41 at Thu May 10 17:47:00 2012 geb@peeranha3:~$ echo 'date' | at -t 05101747.32 warning: commands will be executed using /bin/sh job 42 at Thu May 10 17:47:00 2012 geb@peeranha3:~$ echo 'date' | at -t 05101747.47 warning: commands will be executed using /bin/sh job 43 at Thu May 10 17:47:00 2012
Les commandes sont toujours exécutées avec une granularité de l'ordre de la minute. Le problème est identique lorsque j'essai d'augmenter le délai à 300 secondes (pour tester), mes commandes sont toujours exécutées avec une précision de l'ordre de la minute. J'utilise la version de at de debian stable (squeeze): 3.1.12-1.
Auriez vous une idée ? Je m'y prend mal ? Auriez vous une solution de remplacement simple à proposer ? Je suppose que certains systèmes de gestion de batch permettent une meilleure granularité, mais je suis un peu effrayé par la complexité de ceux ci.
D'avance, merci pour vos avis etc,
Cdlt,