linux切换root用户su - root和su root的区别

这里说一下login shell和 no login shell的区别

通过tty客户端登陆的shell就是login shell,通过在图形界面使用ctrl+shift+t的方式新建的shell是no login shell

login shell 主要读取两个配置文件/etc/profile和~/.bash_profile

no login shell 读取的文件和顺序为:/etc/bashrc和~/.bashrc

  1. 不同用户初始的PATH是不一样的。切换用户系统会先将PATH设为初始值,

    然后再根据调用的初始化脚本,添加PATH中的路径。并不是所有用户共用一个PATH。

  2. su - root,产生一个登录shell去执行后面的指令。登录 shell 执行的是shell

    登录的流程,会执行 /etc/profile,/etc/profile.d/下定义的*.sh都会执行。

  3. su root,产生一个非登录交互shell,非登录交互shell,只执行用户目录下

    .profile等配置文件。

相关推荐
涛ing44 分钟前
21. C语言 `typedef`:类型重命名
linux·c语言·开发语言·c++·vscode·算法·visual studio
0xfather1 小时前
在Debian系统中安装Debian(Linux版PE装机)
linux·服务器·debian
workingman_li1 小时前
centos虚拟机异常关闭,导致数据出现问题
linux·运维·centos
Fireworkitte2 小时前
linux环境变量配置文件区别 /etc/profile和~/.bash_profile
linux
Jackson~Y2 小时前
Linux(LAMP)
linux·运维·服务器
不知 不知2 小时前
最新-CentOS 7安装1 Panel Linux 服务器运维管理面板
linux·运维·服务器·centos
花糖纸木5 小时前
【Linux】深刻理解动静态库
linux·运维·服务器
运维实战课程5 小时前
docker安装elk6.7.1-搜集nginx-json日志
linux·运维·服务器
运维实战课程5 小时前
docker安装elk6.7.1-搜集java日志
linux·运维·服务器
lihuang3196 小时前
linux CentOS 创建账号,并设置权限
linux·运维·centos