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 ~]#
转载于:https://www.cnblogs.com/lucaq/p/6899810.html
linux下su和su - 的区别相关推荐
- linux中fopen和open的区别,Linux下open与fopen的区别
int open(const char *path, int access,int mode) path 要打开的文件路径和名称 access 访问模式,宏定义和含义如下: O_RDONLY ...
- linux 下的 source,sh,./三者区别
前言 工作中遇到的问题,总结一下,参考较多文章总结的,若有错误,望请指出,谢谢! source Linux source命令: 通常用法:source filepath 或 . filepath 它的 ...
- Linux下useradd与adduser的区别
Linux下创建用户时会用到useradd和adduser这两个命令,他们的区别如下: 1.使用useradd时,如果后面不添加任何参数选项,例如:#sudo useradd test创建出来的用户将 ...
- linux ide sata硬盘,Linux 下SATA与IDE硬盘区别
linux下看到的sda字样表示该机器是IDE模式的硬盘,看到sda字样表示机器是SATA模式的硬盘 解析: 使用df -lh(df -h)可以清晰的查看硬盘使用情况 [root@localhost ...
- Linux下tmpfs与ramfs的区别
转自:http://www.linuxidc.com/Linux/2012-11/74356.htm ramfs是Linux下一种基于RAM做存储的文件系统.在使用过程中你就可以把ramfs理解为在普 ...
- WINDOWS下与LINUX下写C程序的区别
要开始编程了,先熟悉下工具,查到的以下资料,有的是说系统区别,有的是说编程区别: 1.如果没有涉及系统独有的库函数或者编程方法(即只用符合ANSI C标准的代码和方法),就没有区别. 如果涉及到系统编 ...
- linux 下.bashrc和.profile的区别
/etc/profile: 这个文件是系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置. /etc/bashrc ...
- 【小知识】linux下ls与ll的区别
在 Linux 系统中,ls 和 ll 命令都是用来列出目录内容的命令,它们的区别如下: ls 命令:是一个简单的文件列表命令,它会列出目录下的文件和子目录的名称,并显示它们的属性和权限等信息. ll ...
- linux下cron和cron的区别,Linux环境下` `与$()用法的区别eval和crontab的意义
命令替换是指shell能够将一个命令的标准输出插在一个命令行中任何位置.shell中有两种方法作命令替换:把shell命令用反引号或者$(...)结构括起来,其中,$(...)格式受到POSIX标准支 ...
- linux下-exec和xargs的区别
原文地址:http://blog.csdn.net/arganzheng/article/details/6260720 -exec和xargs的区别 2010-11-27 星期六 晴朗 当你在命令行 ...
最新文章
- NAT穿透工具pwnat
- affiliate的使用方式
- SQL Server分页查询存储过程
- 创建型模式——抽象工厂模式
- java parseint()
- php get请求_《细说PHP》第四版 样章 第23章 自定义PHP接口规范 10
- 7——1 shelve 模块
- 菜鸟学python集训云_菜鸟学Python,老司机给新手总结的Python实战问题
- 80个练手H5小游戏实例DEMO和源码
- Github上最热门的11个Java开源项目你会了吗
- YY前端HTML规范
- 易到用车服务器修复了提现,易到用车提现最新消息 易到用车跑路了吗?
- 百度贴吧发帖的方法技巧
- 知识图谱在应用过程中,主要面临哪些困难?
- mysql磁盘读写每秒多少正常_一般硬盘读取速度和写入速度是多少
- 网络技术基础测试(一)
- SVG 的平移、旋转和缩放
- Scheduler-Framework中的Permit使用和注意事项
- 小熊派移植 TencentOS-tiny+EC20+SAL框架对接 TCP/UDP 服务器
- JAVA热部署神器,JRebel破解版,JRebel免费实用插件