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 "执行的命令"

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值