有人可以通过sudo用户提供运行shellcript的示例吗?
我试过这样。
sudo / usr / local / sbin / deploy | ./tmp/cp1.sh
上述脚本作为普通用户执行,而不是sudo用户。
答案 0 :(得分:6)
使用此命令,deploy
脚本在root用户下执行,但./tmp/cp1.sh
脚本由当前shell以当前权限运行。为避免这种情况,您可以将sudo添加到两个前缀:
sudo /usr/local/sbin/deploy | sudo ./tmp/cp1.sh
或者你可以在sudo中生成一个shell,所以shell已经以root身份运行了:
sudo sh -c '/usr/local/sbin/deploy | ./tmp/cp1.sh'
答案 1 :(得分:0)
问题是,当你想要这样做时,你需要有sudo密码并且在sudoers文件中,否则它将失败。 但你可以尝试使用gksudo(sudo的图形版本),所以当它被调用时会要求输入密码。