如何切换到root用户而不在RedHat上的bash脚本中输入密码

时间:2012-06-04 13:38:23

标签: linux bash root redhat

我想通过在代码中指定密码而不是输入密码,在RedHat上的bash脚本中切换到root用户。

任何帮助都将受到高度赞赏。

由于

3 个答案:

答案 0 :(得分:5)

在脚本中以明文形式存储密码不是一个好主意。您可以使用visudo编辑sudoers文件,并允许用户使用sudo运行命令,而无需使用密码。

答案 1 :(得分:4)

sudo的灵活性被广泛低估。这导致非常糟糕的做法(如sudo su -佳能球手术方法)。

更好的方法是明确允许您打算在不使用密码的情况下允许的命令

phill = NOPASSWD: /bin/ls, /usr/bin/lprm

有关更多示例,请参阅:Shell script - Sudo-permissions lost over time

答案 2 :(得分:1)

让sudo使用-S标志从stdin读取

sudo -S mkdir /mnt/somedir <<END 
password here

END   

这将允许用户在root

拥有的/ mnt中创建目录

编辑:这似乎不适用于“su”命令,但我认为这个解决方案可能会有所帮助