setuid位的结果

3

我有一个Shell脚本,想要设置uid位。 我把所有者设置成了root并设置了uid位。 我在脚本中添加了'whoami'来检查它是否正常工作, 但是当我执行脚本时,whoami返回的是用户的名字,而不是root。 那么这就是错误的,对吗?如果uid正确设置,我应该得到root,对吗?

2个回答

5

不,setuid位并不改变登录用户,它改变的是脚本运行时的有效用户(euid)。

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

如果您希望让脚本在权限较低的用户下以root身份执行,建议使用"su"或"sudo"。


为什么我必须看到这个答案才知道setuid位在脚本上不起作用,我浪费了1个小时!谢谢@Martin。 - Nicolas Thery

4

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接