web-dev-qa-db-ja.com

/ etc / crontabと "crontab -e"の違い

/etc/crontabにあるcrontabとcrontab -eを使用して編集できるcrontabの違いは何ですか?

46
jrdioko

Ignacioが言ったように、/etc/crontabはシステム全体のcrontabです。

/etc/crontabの形式は次のとおりです。

# m h dom mon dow user      command
*   *  *   *   *  someuser  echo 'foo'

crontab -eはユーザーごとですが、-u引数を指定せずにcrontabコマンドを実行すると、現在のユーザーのcrontabに移動します。 crontab -e -u <username>を実行すると、特定のユーザーのcrontabを編集できます。

ユーザーごとのcrontabには「ユーザー」フィールドがないことに注意してください。

# m h  dom mon dow  command
*   *   *   *   *   echo 'foo'

混乱する可能性のあるcrontabの特徴は、rootにも独自のcrontabがあることです。例えばcrontab -e -u rootは編集しません/etc/crontabcronの構成 を参照してください。

ほとんどのLinuxディストリビューションでは、ユーザーごとのcrontabは通常、/var/spool/cron/crontabs/<username>(vixie-cron)に格納されています。

RHELベースのディストリビューションは/var/spool/cron/<username>に格納されています。 (クロニー)

55
skrewler

1つはシステムのcrontabであり、rootだけが編集できます。もう1つはユーザーのcrontabであり、ユーザーが編集でき、ユーザーごとに存在します。