以下失败:
sudo -u chris ls /root
ls: cannot open directory '/root': Permission denied
虽然以下成功:
sudo ls /root
...
我不明白为什么。我假设除了具有 root 权限之外,还-u
只是将$USER
/running 用户更改为提供的参数。这种行为背后的原因是什么?
sudo -u chris
以 user 身份运行给定的命令chris
,而不是以 root 身份并USER
设置为chris
。因此,如果chris
无法访问/root
,sudo -u chris
则不会更改。
见man sudo
:
-u 用户, --user =用户
以默认目标用户(通常是root)以外的用户身份运行命令。
sudo
不是专门的“以 root 身份运行”工具;它是一个“以其他用户或组身份运行”的工具。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句