ディレクトリcron.d(/etc/cron.d/
など)とcrontab
の主な違いは何ですか?
私が理解している限り、/etc/cron.d/my_non_crontab_cronjobs
を介してcrontab
にファイルを配置するのと同じように、crontab -e
のようなファイルを作成し、その中に必要なものを配置できます。
では、2つの主な違いは何ですか?
違いはDebianの the cron(8)
manpage に詳細に記載されています。主な違いは、/etc/cron.d
には個別のファイルが入力されるのに対し、crontab
はユーザーごとに1つのファイルを管理することです。したがって、スクリプトを使用して/etc/cron.d
のコンテンツを管理するのが簡単になり(自動インストールと更新の場合)、エディタを使用してcrontab
を管理するのが簡単になります(実際にエンドユーザーの場合)。
その他の重要な違いは、すべてのディストリビューションが/etc/cron.d
をサポートしているわけではなく、/etc/cron.d
内のファイルは特定の数の要件を満たしている必要があることです(有効なcronジョブ以外に)。これらはrootが所有し、 run-parts
'命名規則に準拠(ドットなし、文字、数字、アンダースコア、ハイフンのみ)。
/etc/cron.d
の使用を検討している場合は、通常、代わりに/etc/cron.hourly
、/etc/cron.daily
、/etc/cron.weekly
、または/etc/cron.monthly
のいずれかを検討する価値があります。
主な違いは明白なものだと思います:/etc/crontab
と/etc/cron.d
は通常のユーザーは変更できませんが、/var/spool/cron
のユーザーごとのcrontabはcrontab
ツールです編集です。 (もちろんcron.allow
とcron.deny
に従います。)もちろん、管理者であるシステムでは、どちらでも使用できます。共有システムでは、通常のユーザーは1つしか使用できません。
これに関連するのは、システム全体のファイルの追加フィールド、つまりジョブを実行するユーザー名です。