root以外のユーザの権限でコマンドを実行したいという場合に、パスワード入力なしにする方法をご紹介します。
設定を記入するファイルは「/etc/sudoers」です。
ユーザ「hoge」がユーザ「kamo」の権限で、「/home/kamo/tora.sh」をパスワード無しで実行したい場合は以下のように記述します。
1 |
hoge ALL=(kamo) NOPASSWD: /home/kamo/tora.sh |
「(kamo)」という記述が追加されている点が重要。これにより「kamo」ユーザでの実行が許可されます。
実行時には、そのユーザ名を指定する必要があります。
sudoコマンドを実行する場合は、「-u kamo」をつけて以下のように実行します。
1 |
sudo -u kamo /home/kamo/tora.sh |
ユーザの指定がない場合はrootでの実行になります。現在操作しているユーザがrootで実行する権限が「/etc/sudoers」に必要になります。
ご注意ください。