ルートユーザーではなくユーザーとして cron ジョブを実行する方法

ルートユーザーではなくユーザーとして cron ジョブを実行する方法

指定されたタイミングで cron ジョブに追加する bash スクリプトがいくつかありますが、root ユーザーとして実行する必要があります。これらのスクリプト (つまり crob ジョブ) を実行しようとしていますが、root ユーザーが制限されている ubuntu ec2 インスタンスでこのジョブを実行しているため、root ユーザーの権限が必要です。これらのスクリプトを root ユーザーとして実行するための回避策は何でしょうか。

ありがとう

答え1

sudoEC2 については詳しくありませんが、パスワードプロンプトなしで実行できるコマンドのリストを定義できます。実行してvisudo、次のようなものを挿入します。

Cmnd_Alias     CRONJOB = /full/path/to/command1, /full/path/to/command2, ...
<your_user>  ALL=(ALL)   ALL, NOPASSWD:CRONJOB

その後は、sudobash スクリプトで使用し、これを cron ジョブに配置するだけです。

*/1 * * * * /path/to/the/script1
* */2 * * * /path/to/the/script2

関連情報