Quelle est la différence entre la crontab située dans /etc/crontab
et la crontab pouvant être modifiée crontab -e
?
Comme Ignacio l’a dit, /etc/crontab
c’est la crontab à l’échelle du système.
Le format de /etc/crontab
est comme ça:
# m h dom mon dow user command
* * * * * someuser echo 'foo'
Bien que cela crontab -e
soit par utilisateur, il vaut la peine de mentionner sans -u
argument que la commande crontab va à la crontab de l’utilisateur actuel. Vous pouvez faire crontab -e -u <username>
pour éditer une crontab d'utilisateurs spécifique.
Notez que dans une table de contrôle par utilisateur, il n'y a pas de champ 'utilisateur'.
# m h dom mon dow command
* * * * * echo 'foo'
Un aspect des crontabs qui peut prêter à confusion est que root possède également sa propre crontab. par exemple, crontab -e -u root
ne pas éditer /etc/crontab
Voir Configuration de cron .
Dans la plupart des distributions Linux, les crontabs par utilisateur sont généralement stockés dans: /var/spool/cron/crontabs/<username>
(vixie-cron).
Les distributions basées sur RHEL sont stockées dans /var/spool/cron/<username>
. (cronie)
/var/spool/cron/root
la crontab de l'utilisateur root sur un système RHEL 6. Je n'ai pas vérifié Ubuntu, mais dire "typiquement" semble un peu exagéré.path[crontabs]
dans la bibliothèque "chemins" de CFEngine et vérifiez le contexte (les lignes de contexte précédentes ressemblent par exempleredhat::
). Il y a plus de variation que vous ne le pensez; SUSE les met par exemple/var/spool/cron/tabs
. (Résoudre les différences de distribution est l'une des raisons pour lesquelles CFEngine a été créé, c'est donc souvent une bonne référence.)L'une est la crontab système et ne peut être modifiée que par root, l'autre est la crontab utilisateur. Elle peut être modifiée par un utilisateur et existe par utilisateur.
la source