• linux下su和su


    linux使用中常会使用su来切换用户

    使用su切换为tom用户

    [root@bogon ~]# su tom
    [tom@bogon root]$

    [tom@bogon root]$ pwd
    /root

    使用su切换回root用户

    [tom@bogon root]$ su root
    密码:
    [root@bogon ~]#pwd

    /root

    使用su - 切换为tom用户

    [root@bogon ~]# su - tom
    上一次登录:日 8月 26 23:25:13 CST 2018pts/0 上
    [tom@bogon ~]$ pwd

    /home/tom

    使用su - 切换为root用户

    [tom@bogon ~]$ su - root
    密码:
    上一次登录:日 8月 26 23:27:11 CST 2018pts/0 上
    [root@bogon ~]# pwd

    /root

    su命令和su -命令最大的本质区别就是:前者只是切换了root身份,但Shell环境仍然是普通用户的Shell;而后者连用户和Shell环境一起切换成root身份了。只有切换了Shell环境才不会出现PATH环境变量错误。su切换成root用户以后,pwd一下,发现工作目录仍然是普通用户的工作目录;而用su -命令切换以后,工作目录变成root的工作目录了。用echo $PATH命令看一下su和su -以后的环境变量有何不同。以此类推,要从当前用户切换到其它用户也一样,应该使用su -命令。

    用su - 切换后,环境变量就不同了:

    [root@bogon ~]# su - tom
    上一次登录:日 8月 26 23:42:04 CST 2018pts/0 上
    [tom@bogon ~]$ echo $PATH
    /usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/usr/local/python3/bin:/home/tom/.local/bin:/home/tom/bin
    [tom@bogon ~]$ su - root
    密码:
    上一次登录:日 8月 26 23:41:41 CST 2018从 192.168.16.55pts/0 上
    [root@bogon ~]# echo $PATH
    /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/python3/bin:/root/bin
    [root@bogon ~]#

  • 相关阅读:
    C#使用SSDB管理增量日志并提供查询
    请假系统特例规则详细设计
    2014年国内最热门的.NET开源平台
    MQTT--入门
    转MQTT--Python进行发布、订阅测试
    Python修改文件权限
    Python Windows文件操作
    python random 学习
    Python---copy()、deepcopy()与赋值的区别
    使用Git Bash从Git上下载代码到本地以及上传代码到码云Git
  • 原文地址:https://www.cnblogs.com/lucaq/p/6899810.html
Copyright © 2020-2023  润新知