unix – 为什么root用户可以编辑只读文件,但是具有sudo访问权限的普通用户不能?

前端之家收集整理的这篇文章主要介绍了unix – 为什么root用户可以编辑只读文件,但是具有sudo访问权限的普通用户不能?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如果您尝试附加到没有写入权限的文件(例如,/ etc / sudoers文件由root拥有并具有0440权限),如果您是实际的root用户,则此方法有效.但是,如果您是另一个使用sudo的用户,则会收到权限被拒绝错误.

为什么是这样?这不是因为文件的所有权 – 它也不适用于普通用户拥有的文件.真正的root用户似乎拥有比使用sudo授予的权限更多的权限.这是什么理由?有没有办法将这个权限授予使用sudo的用户

听起来像你在做的事情:
sudo echo "blah blah blah de blah" >> /etc/protected_file

这不起作用,因为sudo适用于echo命令,它很高兴地以root身份运行,但重定向是当前shell的一部分,它不是以root身份运行的.

常见解决方案是:

sudo bash -c 'echo "blah blah blah de blah" >> /etc/protected_file'

echo "blah blah blah de blah" | sudo tee -a /etc/protected_file

猜你在找的Bash相关文章