3

root 権限なしで Ubuntu サーバーにディスクをマウントする必要がある Python スクリプトがあります。スクリプトを実行可能にしました( を使用#!/usr/bin/env python)。また、名前を「.sh」に変更し(おそらく重要ではありません)、chmod実行可能にしました。

次に、sudoers ファイルに次の行を入力しました。

ALL ALL = (ALL) NOPASSWD: /home/sazulay/.scripts/mount_disks.sh/

最後の '/' を削除すると、visudo は構文エラーがあると主張します。

そのままにして、ユーザーから次の行を実行すると:

sudo /home/sazulay/.scripts/mount_disks.sh

私はまだパスワードの入力を求められますが、これはまさに私が避けようとしていたものです。

私は何を間違っていますか?

4

1 に答える 1

3

行末にスラッシュがあってはなりません。sudoers ファイルは次のようになります。

ALL ALL = (ALL) NOPASSWD: /home/sazulay/.scripts/mount_disks.sh

さて、あなたの実際の問題に進みましょう!

最後の '/' を削除すると、visudo は構文エラーがあると主張します。

追加した行はファイルの最後にあると思われます。現在、伝統的に、ファイルが改行で終わっていない場合、UNIXコマンドには問題があります\n。ほとんどの Linux エディター (私が知っている) はこれを追加します。使用しているエディターが追加されていない可能性があります。そのため、ファイルの最後に行を追加して、その行が最後の行にならないようにします。だから、それはこのようなものでなければなりません

ALL ALL = (ALL) NOPASSWD: /home/sazulay/.scripts/mount_disks.sh
<--- empty line --->
于 2015-12-24T08:02:45.470 に答える