ユーザーのグループ用のcrontabを作成しようとしています。グループを「testGroup」と呼びましょう。 3人のユーザーがいて、すべてのユーザーに同じcrontabへのアクセスを許可したいと思います。私はいくつかの調査を行い、個々のユーザーを/ etc/groupファイルのcrontabグループに追加しようとしました。ただし、ユーザーごとに3つの個別のcrontabがあるため、これは機能しませんでした。これを修正することは可能ですか?もしそうなら、私はこれをどのように行うのでしょうか。
ありがとう
いいえ、cron
は想定どおりに機能しません。
cron
デーモンは、次の2つの場所からcrontabを読み取ります。
/etc/crontab
_;ユーザーグループごとのcrontabの概念はありません。
Debianはcron
をカスタマイズしました。これにより、必要なことを比較的簡単に行うことができます。 cron(8)
のマニュアルページを引用するには:
さらに、Debianでは、
cron
は_/etc/cron.d
_ディレクトリ内のファイルを読み取ります。 cronは、_/etc/cron.d
_内のファイルを_/etc/crontab
_ファイルと同じように扱います(ファイルの特殊な形式に従います。つまり、ユーザーフィールドが含まれます)。ただし、これらは_/etc/crontab
_から独立しています。たとえば、環境変数の設定を継承しません。この変更はDebianに固有のものです。以下のDEBIAN SPECIFICの注を参照してください。
したがって、私は次のことを行います。
ユーザーグループ専用のグループを作成します。それが「mycrontab」だとしましょう。
3人のユーザーをそのグループに追加します。
_/etc/cron.d
_の下にファイルを作成し、それを_root:mycrontab
_が所有し、許可ビットが_0660
_または_rw-rw-r--
_に設定されているようにします。つまり、ユーザーへの読み取り/書き込みアクセス権root
とグループmycrontab
を使用して、他のすべてのユーザーへの読み取りアクセス権を取得します。
このファイルの場所とその形式に関する規則についてユーザーに教えます(これらはコメントの形式でファイルに配置できます)。
すべてのユーザーへのメールの送信を処理する方法を理解する必要がある場合があることに注意してください。 MAILTO
が従うcron
環境変数を最初に電子メールアドレスのコンマ区切りリスト(_[email protected],[email protected],[email protected]
_など)に設定してもよいかどうかを確認します。 、おそらく、ローカルMTAまたはシステム上のcron
によって生成されたメールを受信するMTAのいずれかにメールエイリアスを設定し、このエイリアスの値をMAILTO
変数に使用する必要があります。 。
全体として、cron(8)
およびcrontab(5)
のマニュアルページを少なくともざっと見てください。
…そして、ユーザーをcrontab
グループから削除してください!