我们如何编写shell脚本来成为root用户? 那就是我不想在提示时输入密码,它应该在脚本本身内。我试图制作但未能这样做。是否可能,如果是,请解释。
答案 0 :(得分:7)
不要这样做。相反,请了解您的特定系统的内置功能,以执行具有升级权限的命令。如果您碰巧在支持该文件的Linux上,请查看sudo
和sudoers
文件。
答案 1 :(得分: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
为此,您需要预期机器中存在二进制文件。
答案 2 :(得分:0)
最好的方法可能是SUID Shell Scripts,但它不安全,正确的方法是sudo。