Pages : 1
#1 Le 15/05/2008, à 16:30
- linitz
[Résolu] Crontab ne fait pas ce que je veux...
Salut tt le monde
J'aimerais lancer un script par semaine sur mon serveur.
Pour etre plus précis, j'ai 4 script de sauvegarde (1 par disque dur) que je dois lancer chaque semaine pendant un mois. Pour cela j'ai créée le crontab suivant
crontab -l
# m h dom mon dow command
0 1 1-7 * 6 /save/disk1_backup.sh
0 1 8-14 * 6 /save/disk2_backup.sh
0 1 15-21 * 6 /save/disk3_backup.sh
0 1 22-28 * 6 /save/disk4_backup.sh
Mais les scripts s'exécute n'importe quels jours (mais toujours à 1h00) ! Je pense que le problème vient de la colonne dom mais je ne voit pas où...
Si quelqu'un comprend mon erreur, je suis preneur
Dernière modification par linitz (Le 16/05/2008, à 14:58)
Hors ligne
#2 Le 15/05/2008, à 17:10
- krocket
Re : [Résolu] Crontab ne fait pas ce que je veux...
Un article très bien fait :
http://www.math-linux.com/spip.php?article=16
De plusieurs programmes ou systèmes d'exploitation en occurrence, le plus performant n'est jamais retenu comme standard !
Bobby sort de là !
Hors ligne
#3 Le 15/05/2008, à 17:40
- linitz
Re : [Résolu] Crontab ne fait pas ce que je veux...
Si je comprend bien l'article que tu m'a donnée (effectivement très bien fait ^^) la barre symbolise "de tel moment à tel moment" et non pas "entre tel moment et tel moment".
Je vais essayé de faire mon crontab autrement alors...
Pour info, je voulais lancer mon script chaque samedi entre le 1 et le 7 de chaque mois à 1h00.
Dernière modification par linitz (Le 15/05/2008, à 17:43)
Hors ligne
#4 Le 16/05/2008, à 03:22
- Beamo
Re : [Résolu] Crontab ne fait pas ce que je veux...
D'après le wiki :
http://en.wikipedia.org/wiki/Cron#crontab_syntax
A job is executed when the time/date specification fields all match the current time and date. There is one exception: if both "day of month" and "day of week" are restricted (not "*"), then either the "day of month" field (3) or the "day of week" field (5) must match the current day (even though the other of the two fields need not match the current day).
Par contre j'avoue ne pas avoir de solution pour ta manip...
Sinon tu regroupes tes 4 scripts en un seul avec un grand "case" et tu fais le test de date dedans :
date +%d
Beamo
Dernière modification par Beamo (Le 16/05/2008, à 03:23)
Hors ligne
#5 Le 16/05/2008, à 14:56
- linitz
Re : [Résolu] Crontab ne fait pas ce que je veux...
D'abord, Merci pour vos réponses
Donc d'après ce que j'ai compris, il est impossible de lancer un script un jour de la semaine donnée (samedi) dans une fourchette de date (du 1er au 7 de chaque mois) avec cron tab.
Le seul moyen pour faire ça est de faire un script qui gère ça tout seul (je perds l'intérêt de crontab).
Je vais donc faire un compromis en faisant cette crontab :
# m h dom mon dow command
0 1 1 * * /save/disk1_backup.sh
0 1 8 * * /save/disk2_backup.sh
0 1 15 * * /save/disk3_backup.sh
0 1 22 * * /save/disk4_backup.sh
L'inconvénient est que mes sauvegardes s'exécuteront n'importe quel jour de la semaine et non pas le week-end...
Enfin bon, je classe le sujet en résolu quand même
Dernière modification par linitz (Le 16/05/2008, à 14:59)
Hors ligne
#6 Le 18/05/2008, à 08:33
- Brunod
Re : [Résolu] Crontab ne fait pas ce que je veux...
Salut,
Il n'y a pas possibilité de greffer sur le script le calcul du jour de la semaine ?
En programmation classique, c'est un modulo 7 du nombre de jour entre deux dates.
(En script, je suis nul.)
BD
Windows est un système d'exploitation de l'homme par l'ordinateur. Linux, c'est le contraire...
39 pc linux convertis
Hors ligne
#7 Le 18/05/2008, à 09:14
- lawl
Re : [Résolu] Crontab ne fait pas ce que je veux...
pas besoin de script on peut trés bien spécifiez un jour de la semaine.
Dans le lien donné plus haut :
- dow pour day of week(jour de la semaine) comprise entre 0 et 7, le dimanche étant 0 ou 7, le lundi 1, etc ...
Donc dans la colonne dow il ne faut pas mettre * mais le jour désiré.
Hors ligne
#8 Le 18/05/2008, à 12:40
- Beamo
Re : [Résolu] Crontab ne fait pas ce que je veux...
pas besoin de script on peut trés bien spécifiez un jour de la semaine.
Dans le lien donné plus haut :- dow pour day of week(jour de la semaine) comprise entre 0 et 7, le dimanche étant 0 ou 7, le lundi 1, etc ...
Donc dans la colonne dow il ne faut pas mettre * mais le jour désiré.
Non justement cela ne marche pas d'ou cette discussion
http://en.wikipedia.org/wiki/Cron#crontab_syntax
A job is executed when the time/date specification fields all match the current time and date. There is one exception: if both "day of month" and "day of week" are restricted (not "*"), then either the "day of month" field (3) or the "day of week" field (5) must match the current day (even though the other of the two fields need not match the current day).
Hors ligne
#9 Le 18/05/2008, à 14:52
- linitz
Re : [Résolu] Crontab ne fait pas ce que je veux...
justement non lawl
On peut lancer un script chaque dimanche soir à 1h00 par exemple, mais on peut pas lancer un script le dimanche compris entre le 1 et le 7 à 1h00 (lancer le script une fois par mois en quelque sorte...)
Après, oui il doit être possible de gérer ça dans un script mais je ne préfère pas rentrer là dedans (non pas que ça me gène de le programmer, mais pour être plus rigoureux)
Hors ligne
#10 Le 18/05/2008, à 18:23
- lawl
Re : [Résolu] Crontab ne fait pas ce que je veux...
Oui j'avais pas bien vue la problématique, désolé ....Sinon j'amais essayer mais il me semble que http://fcron.free.fr/ permet de faire ce que tu veux.
Cela dit je ne vois pas ou est le manque de rigueur dans un script lancé chaque dimanche et qui lance le bon script. C'est même la base d'Unix de scripter. Perso je trouve presque ca plus propre que d'avoir 4 scripts dans le cron.
Hors ligne
#11 Le 19/05/2008, à 10:38
- linitz
Re : [Résolu] Crontab ne fait pas ce que je veux...
trooooll en vue
Ce que je voulais dire par "rigueur", c'est que je ne serais pas la personne qui va administrer le serveur et je préfère obtenir la configuration la plus simple possible.
La crontab s'occupe de la fréquence des sauvegardes.
Le script s'occupe de la sauvegarde.
Je regarderais fcron ce week-end...
Hors ligne
Pages : 1