他の不要なコマンドを実行せずにsudoを実行する方法はありますか?

他の不要なコマンドを実行せずにsudoを実行する方法はありますか?

2つのsudoコマンドを実行し、出力をあるコマンドから別のコマンドにパイプしたいと思います。ただし、最近 sudo パスワードを入力しないと、パスワードの入力を求められます。パイプと両方のsudoは混乱しているようで、パスワードを正しく入力できません。

私の解決策は、「sudo ls」または私にパスワードを要求する別のコマンドを実行して、パイプされたコマンドがパスワードを要求せずに機能するようにすることです。これは、他の無意味なコマンドを実行しないようにsudoを実行する「正しい」方法があるかどうか疑問に思います。 sudoのマンページにはこれに対する言及がないようです。

答え1

あなたが探しているのはsudo -vマニュアルページからです。

-v, --validate
          Update the user's cached credentials, authenticating the user
          if necessary. 

(そして資格情報を明示的に削除することに対応しますsudo -k。)

答え2

Anthonの回答に加えて、サーバーへのrootアクセス権がある場合は、NOPASSWD:ユーザーを定義された行に追加できます/etc/sudoers。追加すると、NOPASSWD:sudoはパスワードの入力を求めません。

これが現在行の場合:

myuser ALL=(ALL) <commands>

次に変更してください。

myuser ALL=(ALL) NOPASSWD: <commands>

PS:visudo/ etc / sudoersファイルを編集するために使用されます。

関連情報