我需要使用shell脚本在两个用户之间切换。切换用户而不提示输入shell脚本中的密码
我用su和sudo在用户之间切换。最重要的是,它每次都会提示用户密码,我不希望发生这种情况。
我知道密码;有没有一种方法可以在脚本中对其进行硬编码,以便它不会提示用户输入密码?
我需要使用shell脚本在两个用户之间切换。切换用户而不提示输入shell脚本中的密码
我用su和sudo在用户之间切换。最重要的是,它每次都会提示用户密码,我不希望发生这种情况。
我知道密码;有没有一种方法可以在脚本中对其进行硬编码,以便它不会提示用户输入密码?
sudoers
中的NOPASSWD
子句不工作吗?例如:
user1 ALL=(ALL:ALL) NOPASSWD: /bin/su user2
允许user1
su到user2
没有密码。如果你只需要为user2
运行某些命令,添加到sudoers
(通过visudo
)明确:
user1 ALL=(user2) NOPASSWD: /path/to/command
然后为user1
运行:
sudo -k user2 /path/to/command
使用-S
参数sudo
接受来自标准输入的密码。请参阅:How to pass the password to su/sudo/ssh without overriding the TTY?
表明你做了什么,并试图? – Vijay 2012-08-14 12:53:43
'su root systemctl restart postgresql.service' 我的部分代码 – 2012-08-14 12:56:42
请参阅http://unix.stackexchange.com/questions/7747/is-it-possible-to-su-without-being-prompted-for-一个密码 – 2012-08-14 13:07:59