0

我们如何编写一个shell脚本成为root?那就是我不想在提示时输入密码,它应该在脚本本身内。我试图做,但没有这样做。是否可能,如果是,请解释。

4

3 回答 3

7

不要这样做。相反,学习您的特定系统的内置功能,以执行具有升级权限的命令。如果您碰巧在支持该文件的 Linux 上,请查看sudo该文件。sudoers

于 2012-10-19T17:39:28.620 回答
0

可能最好的方法是使用SUID Shell 脚本,但它不安全,正确的方法是 sudo。

于 2012-10-19T17:58:51.353 回答
0

您可以为此使用期望脚本。或者,如果您希望以 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 回答