/etc/sudoers.d
がrootパスワードなしで特定のスクリプトを実行できるようにするディレクティブを含むファイルをwww-data
フォルダーに追加したいと思います。
ディレクティブは
www-data ALL=(ALL) NOPASSWD: /path/to/script.sh
visudo
を/etc/sudoers
に追加しても問題ありません。
その行をファイルに入れて/etc/sudoers.d
、次にvisudo
にコピーすると、ファイルの「1行目付近に構文エラー」があることがわかります。
ファイルに追加する必要があるものはありますか、それを機能させるために他に必要なものはありますか?
Ubuntu 18を実行しています。
ありがとう!
私は問題を見つけました-/etc/sudoers.d内のファイルの場合、ファイルはディレクティブで終わるのではなく、新しい行にある必要があります。これはcat -A
で最も簡単に表示されます。
無効なファイル:
root@server:/etc/sudoers.d# cat -A /etc/sudoers.d/testfile
www-data ALL=(ALL) NOPASSWD: /path/to/script.shroot@server:/etc/sudoers.d#
有効なファイル:
root@server:/etc/sudoers.d# cat -A /etc/sudoers.d/testfile
www-data ALL=(ALL) NOPASSWD: /path/to/script.sh$
root@server:/etc/sudoers.d#