您的位置:首页 > 运维架构 > Linux

Linux下sudo执行命令时profile无效的问题

2013-03-19 00:12 483 查看
刚才写hadoop安装的时候,发现sudo执行命令时,原本设置在prifile里面的PATH等设置全部都失效了,man了一下sudo的参数发现sudo的执行有-i和-s的区别,

-s是用当前的上下文,只能用一些原生命令,语句执行的当前目录仍然是当前用户的操作目录。而-i则是重新开启了一个登陆过程,他会触发/etc/profile以及用户自身的.profile等脚本的执行,并且语句执行的当前目录已经被更改为目标用户的主目录。 加上-i 后恢复正常。

另外说一点的是,不论-s还是-i,命令中$引用的环境变量全部来源于当前用户,Linux命令行应该是先进行代码的文本替换再执行代码,这点就类似以前学C的宏了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐