我对sudo命令和root用户有一个Linux问题。如果我使用su
命令登录到root用户,那么以下两个命令有什么区别?
root> sudo ./some_executable
和
root> ./some_executable
有区别吗?我正在尝试使用可执行文件,并注意到该可执行文件与第一个命令可以正常工作,但是对于第二个命令却失败,说明我没有以超级用户身份运行该命令。我一直认为sudo / su命令允许您以root特权执行命令,因此执行第一个命令将是多余的。但是,我确实注意到root用户在sudoers文件中,所以我不知道这是否是可执行文件中的错误,还是运行以root身份登录的命令与使用sudo之间确实存在区别?
对于两个实例,您的环境变量将有所不同。
sudo将重置您的一些环境变量-阅读sudo的手册页,并查看该-E
选项以及sudoers配置文件中的部分。
另外,您使用rootsu
而不su -
获取root意味着直接执行文件时您没有真正的root环境。
总而言之,两种情况之间存在环境不匹配的情况,一种情况在另一种情况下却无法工作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句