回答:
@X Tianの回答にはcrontabのさまざまなファイルに関する情報が含まれていますが、質問に関する重要な情報は次のとおりです。
crontab -e
ユーザーのcrontabファイル(/var/spool/cron/crontabs/
現在のDebianシステムのディレクトリに保存されていますが、YMMV)を編集するか、ではなく新しいファイルを作成します/etc/crontab
。crontab -l
(crontabファイルのリスト)およびcrontab -r
(crontabファイルの削除)と同様です。
ユーザーのアカウントで実行する必要があるすべてのcronジョブには、を使用する必要がありますcrontab -e
。システムジョブの場合は、にファイルを追加する必要があります(/etc/cron.d
存在する場合)。以下/etc/cron.{hourly|daily|weekly|monthly}
(ただし、パッケージ名のように名前を付けることはできません!)(目的に合っている場合)。またはに行を追加し/etc/crontab
ます。ただし/etc/crontab
、システムアップデートによって上書きされる可能性があることに注意してください。
あなたは本当にマニュアルページを読みたいman cron
とman crontab
これはあなたの質問をカバーする抜粋です。からman cron
注cronは、そのスプール領域(/ var / spool / cron / crontabs)でcrontabファイル(/ etc / passwdのアカウントにちなんで名前が付けられている)を検索します。見つかったcrontabはメモリに読み込まれます。このディレクトリ内のcrontabには直接アクセスしないでください。それらにアクセスして更新するには、crontabコマンドを使用する必要があります。
cron also reads /etc/crontab, which is in a slightly different format (see crontab(5)). Additionally, cron reads the files in /etc/cron.d: it treats the files in /etc/cron.d as in the same way as the /etc/crontab file (they follow the special format of that file, i.e. they include the user field). However, they are independent of /etc/crontab: they do not, for example, inherit environment variable settings from it. The intended purpose of this feature is to allow packages that require finer control of their scheduling than the /etc/cron.{daily,weekly,monthly} directories to add a crontab file to /etc/cron.d. Such files should be named after the package that supplies them. Files must conform to the same naming convention as used by run- parts(8): they must consist solely of upper- and lower-case letters, digits, underscores, and hyphens. If the -l option is specified, then they must conform to the LSB namespace specification, exactly as in the --lsbsysinit option in run-parts.
cron
OSごとに大きく異なるもので、一部の実装では複数の実装から選択できます。
/var/spool/cron/
ディレクトリには、Linuxの専門である(参照ファイル階層標準を)と場所は、現在のDebian以外のシステム上で異なる場合があります。