/ etc / crontabと「crontab -e」の違い


回答:


51

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

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

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

一方、crontab -eユーザーごとですが、それの価値が無いと言及-ucrontabコマンドは、現在のユーザーのcrontabに行く引数。crontab -e -u <username>特定のユーザーのcrontabを編集することができます。

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

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

混乱を招く可能性のあるcrontabの側面は、ルートにも独自のcrontabがあることです。例:crontab -e -u root編集しないcronの構成を/etc/crontab 参照してください。

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

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


参考までに、上記のパスは正しくありません。ユーザーごとのcrontabは/ var / spool / cron / crontabs / <username>に保存されます(この単純な修正を2回送信しようとしました。)
MartyMacGyver

1
...そして、現在修正されています。
-MartyMacGyver

実際に/var/spool/cron/rootは、RHEL 6システム上のルートのユーザーごとのcrontabに保存されています。Ubuntuをチェックしていませんが、「通常」と言うのは少しストレッチのようです。
ワイルドカード

@Wildcard「典型的には」使用するのに公正な言葉だと思います。RHELディストリビューションには、ISC-Cron / vixie cronのフォークである「cronie」(およびanacronと思います)が付属しています。私はそれがストレッチだとは思わない。いずれにしても、より詳細を含めるために答えを更新した。
スクルーラー

ディストリビューション全体のパスをすばやく検索するには、CFEngine "paths"ライブラリで文字列path[crontabs]を検索し、コンテキストを確認します(上記のコンテキスト行はのようになります)。あなたが考えるよりも多くのバリエーションがあります。例えば、SUSEはそれらをに入れます。(ディストリビューションの違いを抽象化することは、CFEngineが最初に作成された理由の1つであるため、多くの場合、良いリファレンスです。)redhat::/var/spool/cron/tabs
ワイルドカード

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.