crontabコマンドを使用する代わりに、スケジュールされたタスクを/ etc / crontabに直接追加すると、欠点/結果はありますか? [コピー]

crontabコマンドを使用する代わりに、スケジュールされたタスクを/ etc / crontabに直接追加すると、欠点/結果はありますか? [コピー]

セントOS 5.x

誰か(おそらく他の管理者)がエントリを一番下に直接追加して、次のエントリを追加したことを確認しました/etc/crontab

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
00 3 * * 0 root foocommand

コマンドをrootとして実行したいと仮定すると、このようにスケジュールされたタスクを追加するとどのような結果が発生しますか?crontab -eスケジュールされたジョブの追加/編集を使用する方が簡単です。

ベストアンサー1

crontabファイルでコマンドを実行することと違いはありません。少なくともVixie cron(CentOSなど)は、1分ごとにスプールディレクトリの変更時間または変更時間が/etc/crontab変更されたことを確認します。

しかし、編集してcrontab -ecrontabに書き込むと、明らかなエラーがあるかどうかが確認されます。たとえば、crontabの最後の行が次のようになると、* * * *次のメッセージが表示されます。

crontab: installing new crontab
"/tmp/crontab.HbT2Sa/crontab":27: bad day-of-week
errors in crontab file, can't install
Do you want to retry the same edit? (y/n) 

(少なくとも最後の行が27行目なら)。

crontabファイルに行(/etc/crontabまたはその中の行/var/spool/cron/)を追加するだけで、もちろんそのような確認メカニズムは適用されません。

おすすめ記事