
たくさんのパッケージをダウンロード、ビルド、インストールするスクリプトを書いています。ビルドには時間がかかることがあり、インストールにはルート権限が必要です。
作成; sudo インストール
ビルドに時間がかかると、パスワードを入力し続ける必要があることがよくあります。パスワードは 1 回だけ入力できるようにしたいです。スクリプトをルート アクセスで呼び出すこともできますが、その場合 (私の理解では)、すべての呼び出しがルート権限で行われることになります。そうすると、たとえば、ルート アクセスなしでは削除できない多くのファイルやフォルダーが作成されるため、これは望ましくありません。
では、これを行う最善の方法は何でしょうか?
答え1
timestamp_timeout パラメータを使用します。visudo を使用して sudoers ファイルを編集します。
sudo visudo
デフォルトの行を次のように変更します。
Defaults env_reset,timestamp_timeout=60
これにより、パスワードは 60 分間保持されます。
必要に応じてこの時間を変更してください:)
答え2
スクリプト自体に sudo 呼び出しを含めることができます。スクリプトを sudo で実行すると、スクリプト内のすべての sudo がカバーされ、問題ないはずです。