你的位置:首页 > 软件开发 > 操作系统 > 07 Linux su和sudo命令的区别

07 Linux su和sudo命令的区别

发布时间:2015-06-10 12:00:05
一. 使用 su 命令临时切换用户身份1、su 的适用条件和威力su命令就是切换用户的工具,怎么理解呢?比如我们以普通用户beinan登录的,但要添加用户任务,执行useradd ,beinan用户没有这个权限,而这个权限恰恰由root所拥有。解决办法无法有两个,一是退出bein ...

07 Linux su和sudo命令的区别

一. 使用 su 命令临时切换用户身份

1、su 的适用条件和威力

su命令就是切换用户的工具,怎么理解呢?比如我们以普通用户beinan登录的,但要添加用户任务,执行useradd ,beinan用户没有这个权限,而这个权限恰恰由root所拥有。解决办法无法有两个,一是退出beinan用户,重新以root用户登录,但这种办法并不是最好的;二是我们没有必要退出beinan用户,可以用su来切换到root下进行添加用户的工作,等任务完成后再退出root。我们可以看到当然通过su 切换是一种比较好的办法;

通过su可以在用户之间切换,如果超级权限用户root向普通或虚拟用户切换不需要密码,什么是权力?这就是!而普通用户切换到其它任何用户都需要密码验证;

2、su 的用法:

su [OPTION选项参数] [用户]

-, -l, ——login 登录并改变到所切换的用户环境;

-c, ——commmand=COMMAND 执行一个命令,然后退出所切换到的用户环境;

至于更详细的,请参看man su ;

3、su 的范例:

      1) su 在不加任何参数

        默认为切换到root用户,但没有转到root用户家目录下,也就是说这时虽然是切换为root用户了,但并没有改变root登录环境;用户默认的登录环境,可以在/etc/passwd 中查得到,包括家目录,SHELL定义等;

       [beinan@localhost ~]?$ su root

       Password:

      [root@localhost beinan]# pwd

      /home/beinan

2) su 加参数 -

       表示默认切换到root用户,并且改变到root用户的环境;

      [beinan@localhost ~]$ pwd

       /home/beinan

      [beinan@localhost ~]$ su -

       Password:

       [root@localhost ~]# pwd

       /root

3) su 参数 - 用户名

      [beinan@localhost ~]$ su – root         注:这个和su - 是一样的功能;

      Password:

      [root@localhost ~]# pwd

      /root

      [beinan@localhost ~]$ su – linuxsir      注:这是切换到 linuxsir用户

      Password:                                             注:在这里输入密码;

     [linuxsir@localhost ~]$ pwd                  注:查看用户当前所处的位置;

      /home/linuxsir

     [linuxsir@localhost ~]$ id                      注:查看用户的UID和GID信息,主要是看是否切换过来了;

      uid=505(linuxsir) gid=502(linuxsir) groups=0(root),500(beinan),502(linuxsir)

      [linuxsir@localhost ~]$ exit                   注:退出

原标题:07 Linux su和sudo命令的区别

关键词:linux

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录