Ne pas utiliser crontab -e
Je ne le mettrais pas en crontab -e
tant que root. Ceci est généralement moins évident pour les autres administrateurs et risque de se perdre avec le temps. En les plaçant, /etc/crontab
vous pouvez spécifier exactement l'heure à laquelle vous souhaitez qu'ils s'exécutent et vous pouvez également spécifier un autre utilisateur.
Emplacements alternatifs
Si vous ne vous souciez pas d'exécuter le script en tant qu'utilisateur différent et / ou si vous souhaitez simplement que le script s'exécute chaque semaine, tous les jours, etc., plusieurs distributions fournissent des répertoires dans lesquels des scripts peuvent être placés qui seront automatiquement traités à un moment précis.
Par exemple, sous les distributions basées sur Redhat:
$ ls -dl /etc/cron*
drwxr-xr-x. 2 root root 4096 Nov 29 11:06 /etc/cron.d
drwxr-xr-x. 2 root root 4096 Nov 29 11:06 /etc/cron.daily
-rw-------. 1 root root 0 Nov 23 07:42 /etc/cron.deny
drwxr-xr-x. 2 root root 4096 Nov 29 11:03 /etc/cron.hourly
drwxr-xr-x. 2 root root 4096 Nov 29 11:06 /etc/cron.monthly
-rw-r--r--. 1 root root 457 Sep 26 2011 /etc/crontab
drwxr-xr-x. 2 root root 4096 Sep 26 2011 /etc/cron.weekly
Je vais souvent mis crons au niveau du système que je veux courir à un moment spécifique au /etc/cron.d
lieu de /etc/crontab
, surtout si elles sont des scripts plus complexes.
Je préfère utiliser les répertoires sous /etc/cron*
car ils sont un endroit beaucoup plus évident que les autres administrateurs système sauront regarder et les fichiers ici peuvent être gérés via des installations de packages telles que rpm
et / ou apt
.
Protection des entrées
Tous les répertoires que j'ai mentionnés sont destinés à mettre des scripts qui ne seront pas détruits par un gestionnaire de paquets. Si vous êtes préoccupé par la protection d'une entrée crontab, je ne la mettrais certainement pas dans le /etc/crontab
fichier, et la placerais plutôt comme un script approprié dans l'un des /etc/cron*
répertoires.