关注LAMP|PHP源代码分析|web架构|PHP扩展|Erlang|服务端架构

su后“不能”使用某些超级命令的解决

2009-07-07

原创文章,转载请注明: 转载自庆亮的博客-webgame架构

本文链接地址: su后“不能”使用某些超级命令的解决

一个基础问题而已。从普通用户使用su之后,某些命令无法使用,如:

bash: usermod: command not found

命令存在,也有了root权限,为何提示“命令找不到”,想一想就明白了是环境变量的问题(PATH)。man su,第一个参数告诉了我们真相。

-, -l, –login
              make the shell a login shell

使用这个选项用于在su的同时(成功的情况下)更换到对应用户的shell,也就是说正常情况下,我们su之后只是获得了root权限,但是shell还是之前的普通权限用户的shell,而普通用户shell的PATH通常是没有/usr/sbin等目录的。解决方法:

1.添加这些超级工具目录到PATH

2.使用su – 来切换到root权限

3.使用命令的完全路径,如/usr/sbin/usermod

作者:庆亮 | 分类目录:Linux/Unix/BSD | 标签:

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>