0

root になるためのシェルスクリプトをどのように書くことができますか? つまり、プロンプトでパスワードを入力したくありません。スクリプト自体の中にある必要があります。作ろうとしたのですが、できませんでした。可能ですか?はいの場合は説明してください。

4

3 に答える 3

7

こんなことしないで。代わりに、エスカレートされた特権でコマンドを実行するための特定のシステムの組み込み機能を学びます。それをサポートするLinuxを使用している場合sudoは、ファイルを見てください。sudoers

于 2012-10-19T17:39:28.620 に答える
0

そのためにexpectスクリプトを使用できます。または、root ユーザーとしてコマンドを実行する場合は、「su -c」オプションを使用できます。

スクリプト内に組み込むには、次のようなものを使用できます:-

#!/usr/bin/expect
spawn su
set timeout 60
expect "pass" {
sleep 1
send "<my_root_password>"
} timeout {
send_user "Error connecting"
}
interact

このためには、マシンにバイナリが存在することを期待する必要があります。

于 2012-10-19T17:50:12.090 に答える
0

おそらく最良の方法はSUIDシェル スクリプトを使用することですが、安全ではありません。正しい方法は sudo です。

于 2012-10-19T17:58:51.353 に答える