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等配置文件。

相关推荐
石像鬼₧魂石1 小时前
内网渗透靶场实操清单(基于 Vulhub+Metasploitable 2)
linux·windows·学习·ubuntu
橘子真甜~2 小时前
C/C++ Linux网络编程15 - 网络层IP协议
linux·网络·c++·网络协议·tcp/ip·计算机网络·网络层
拾贰_C3 小时前
【Linux | Windows | Terminal Command】 Linux---grep | Windows--- findstr
linux·运维·服务器
阿华hhh4 小时前
Linux系统编程(标准io)
linux·开发语言·c++
石像鬼₧魂石4 小时前
Kali Linux 网络端口深度扫描
linux·运维·网络
alengan4 小时前
linux上面写python3日志服务器
linux·运维·服务器
Rose sait5 小时前
【环境配置】Linux配置虚拟环境pytorch
linux·人工智能·python
叶之香6 小时前
CentOS/RHEL 7、8安装exfat和ntfs文件系统
linux·运维·centos
一世琉璃白_Y6 小时前
pg配置国内数据源安装
linux·python·postgresql·centos