Qu’est ce que CRONTAB ?
Crontab est le nom du programme sous Unix (ou Linux) qui permet d'éditer des tables de configuration du programme cron. Par extension, on appelle souvent cron (ou cron job en anglais) toute application lancée à horaire fixe.
cf. Wiki.
1 - Utilisation
La commande crontab édite en fait un fichier relatif à l'utilisateur qui l'exécute, et en vérifie la syntaxe. Ce fichier se situe dans l'arborescence /var sous SCO :
/var/spool/cron/crontabs/utilisateur
Allez dont jeter un œil :
2 - Commandes
Il est conseillé de ne pas modifier « /var/spool/cron/crontabs/utilisateur » directement et d'utiliser plutôt (crontab -e).
Pour visualiser le contenu de votre crontab :
Pour éditer le fichier de votre crontab :
1 - Configuration
Avant de commencer il est préférable de vérifier l’heure et la date de votre machine.
Pour visualiser votre date et heure tapez :
Houlà ! Retour vers le passé.. le jour de ma naissance..il est temps de faire quelques choses, je ne suis pas à l’heure et la date est complètement fausse. Aucun problème pour la modifier faite comme ceci :
date MMMJJJhhjjAAA
Dans cette syntaxe :
mm représente les minutes (de 0 à 59)
hh représente l'heure (de 0 à 23)
jj représente le numéro du jour du mois (de 1 à 31)
MMM représente le numéro du mois (de 1 à 12)
JJJ représente l'abréviation du nom du jour ou le chiffre correspondant au jour de la semaine.
0 représente le dimanche
1 représente le lundi, etc,
7 représente le dimanche
AAA représente les années
mm représente les minutes (de 0 à 59)
hh représente l'heure (de 0 à 23)
jj représente le numéro du jour du mois (de 1 à 31)
MMM représente le numéro du mois (de 1 à 12)
JJJ représente l'abréviation du nom du jour ou le chiffre correspondant au jour de la semaine.
0 représente le dimanche
1 représente le lundi, etc,
7 représente le dimanche
AAA représente les années
Exemple pour le 01 octobre 1986 à 11h23 :
date 1001112386
Afin d'éditer la table cron exécuteur la commande :
Chaque entrée de la table (chaque ligne) correspond à une tâche à exécuter et est notée de la façon suivante :
mm hh jj MMM JJJ tâche > log
Dans cette syntaxe :
mm représente les minutes (de 0 à 59)
hh représente l'heure (de 0 à 23)
jj représente le numéro du jour du mois (de 1 à 31)
MMM représente le numéro du mois (de 1 à 12) ou l'abréviation du nom du mois (jan, feb, mar, apr, ...)
JJJ représente l'abréviation du nom du jour ou le chiffre correspondant au jour de la semaine (0 représente le dimanche, 1 représente le lundi, ..., 7 représente le dimanche)
tâche représente la commande ou le script shell à exécuter
log représente le nom d'un fichier dans lequel stocker le journal des opérations. Si la clause > log n'est pas spécifiée, cron enverra automatiquement un courriel de confirmation. Pour éviter cela, il suffit de spécifier > /dev/null.
cf. Wiki.
On va prendre pour exemple la ligne suivante :
Tous les dimanches à 5h17 la tâche cleanup va s’exécuter.
2 - Redémarrer – 2 méthodes
A - Reboot
On va entrer une nouvelle ligne dans le cron, donc tapez crontab –e, puis dirigé vous en fin de fichier.
Si vous essayez de redémarrer le système plutôt que de l'éteindre, vous pouvez utiliser:
12 10 * * * /etc/reboot > /dev/null
Ou bien
54 9 * * * /ibin/shutdown -g0 -y -i6 > /dev/null
Pour obtenir ceci :
Faite « echap » puis « : » et taper « wq » pour enregistrer et quitter.
B - Shutdown
La meilleure commande est présente, exécuté en tant que root:
12 10 * * * /ibin/shutdown -g0 -y –i5 > /dev/null
Cela va immédiatement arrêter le système.