setuid位结果

时间:2010-11-19 15:28:49

标签: bit setuid

我有一个shell脚本,我想设置uid位。 我将所有者设置为root并设置uid位。 我在shell中添加'whoami'来检查它是否正常工作 但是当我执行脚本时,whoami返回了用户的名字,而不是root。 那是错的,对吗?如果uid设置正确,我应该知道了,对吗?

2 个答案:

答案 0 :(得分:4)

不,setuid位不会更改登录用户,它会更改脚本运行的有效用户(euid)。

此外,setuid位不适用于脚本。

如果您希望较少特权的用户以root身份执行脚本,我建议您查看“su”或“sudo”。

答案 1 :(得分:3)

您不能将setuid位用于shell脚本。 shell解析shebang行以确定要执行的程序,然后启动该程序,而不必担心脚本上设置的setuid位。

请参阅https://serverfault.com/questions/8449/cannot-set-uid-on-shell-scripts