1. login shell 和 non-login shell
login shell 和 non-login shell 区别在于登录 login。
login shell : 通过完整的登录流程, 举例:通过tty1-tty6 登录,需要输入用户的账号和密码,此时取得的 bash 就是 login shell。
non-login shell : 取得bash接口的方法不需要重复登陆,比如下面两种方法:
1, 以 X Window登录linux后, 再以 X 的图形界面启动终端机,此时这个终端没有再次输入用户名和密码,这个bash环境为 non-login shell
2, 在原bash下再次执行bash,同样没有输入用户名和密码,此时第二个bash,子进程,为non-login shell。
login shell 与 non-login shell 读取的配置文件不一样。
2. login shell
login shell 读取两个配置文件:
1. /etc/profile
2. ~/.bash_profile,或 ~/.bash_login, 或 ~/.profile。
2.1 /etc/profile
这个配置为用户整体的配置,最好不要