感谢支持
我们一直在努力

Linux中su的使用说明

1、su和su – 的区别


在我的fc6系统下用普通用户登录,然后用su命令切换到超级用户,再输入ifconfig命令,报错:command not find。而如果用su -命令切换到超级用户,再输入ifconfig命令则能成功执行。这其中涉及的就是su命令与su -命令的区别,man su得到的帮助文档如下:


-, -l, –login     make the shell a login shell
  翻译过来的意思如下:
-.-l或–login  改变身份时,也同时变更工作目录,以及HOME,SHELL,USER,LOGNAME。此外,也会变更PATH变量。


说简单点就是用su命令不会改变当前工作目录以及HOME,SHELL,USER,LOGNAME。此外,也会变更PATH变量,而用su -命令则默认改变成root用户了。打个比方:
在普通用户下输入:
$pwd
/home/mgqw (当前用户目录)
$su
******        (输入密码)
#pwd         (再次查看路径)
/home/mgqw   (还是当前用户目录)


但是如果换成su -的话结果如下:
$pwd
/home/mgqw (当前用户目录)
$su –
******        (输入密码)
#pwd         (再次查看路径)
/root    (切换到超级用户目录)


2、如果在一个root用户执行的sh脚本中,部分地方需要使用其它用户执行命令,采用如下方式


/bin/su – 切换的用户 -c “执行的命令”

赞(0) 打赏
转载请注明出处:服务器评测 » Linux中su的使用说明
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏