介绍配置文件之前,先介绍两个概念:login shell、no-login shell
- login shell
取得 bash 时要完整的登录流程。 - no-login shell
取得 bash 接口时不需要重复的登录动作。如在 X Window 下登录后启动 bash 不需要输入密码。
login shell 在启动的时候,会读取两个配置文件:/etc/profile、~/.bash_profile(或 ~/.bash_login 或 ~/.profile)
一、/etc/profile
这个文件是系统的整体设定,利用 UID 决定许多重要的变量数据,也是每个使用者登录 bash 的时候一定会读取的配置文件。主要有一下几个变量:
PATH:环境变量。会依据 UID 决定是否要包含 sbin 的系统目录
MAIL:依据 UID 决定使用者的邮箱
USER:用户名
HOSTNAME:主机名
HISTSIZE:历史命令记录数
/etc/profile 文件还会包含仅外部设定的数据,包括一下文件:
- /etc/inputrc
自定义按键输入功能。 - /etc/profile.d/*.sh
bash 窗口的颜色、语系、命令别名等的一些设定。 - /etc/sysconfig/i18n
语系设定。
二、~/.bash_profile
bash 在读取完整体环境设定的 /etc/profile 并呼叫其他配置文件之后,接下来会读取使用者的个人