配置文件分为:
【1】全体系统配置文件
【2】用户偏好设置文件
取得shell的方式有两种 :
【1】login shell 需要账号和密码
【2】non-login shell 不需要密码 ;例: bash 环境下再执行bash命令,取得一个新的shell.不需要密码。
分析login shell 会用到的配置文件
总体来说有两个:
【1】 /etc/profile :系统的配置,它会利用用户的UID决定很多重要的变量,每个用户登录后都会读取该配置文件。此文件设置的变量有 :
PATH : 依据UID 决定PATH变量要不要含有sbin的系统命令目录
MAIL:设置用户的邮箱
USER:根据用户账号设置此变量
HOSTNAME: 依据主机的hostname 设置此变量
HISTSIZE: 历史的命令记录条数 ;默认为1000;
除设置以上命令外,/etc/profile还会调用外部的设置数据 ,
主要调用有以下文件 :
1、/etc/inputrc 设置默认输入环境
2、/etc/profile.d/*.sh 目录中含有很多的 . sh 文件 ;可以通过创建 .sh 文件
帮所有用户设置 一些共享命令;
3、/etc/sysconfig/i18n 此文件由 /etc/profile.d/lang.sh 调用,决定bash默认使用哪种语系。
【2】读取完
整体配置文件/etc/profile 之后;
便会读取用户个人配置文件-- ~/.bash_profile
用户配置文件主要有 3 个:依序 (若前面的文件存在便不再读取下面的文件)
1、~/.bash_profile
2、~/.hash_login
3、 ~/.profile
经查看 ~/.bash_profile 文件可知 在~/.bash_profile 中最终还要读入 ~/.bashrc 文件
如果不希望账号注销后环境变量配置生效,可利用 source 或者 “.”使配置文件立即生效。
login shell 状态下配置文件的读取可以归结为下图。。
总结:用户如果想在login shell 下设置自己的 环境变量 ,可写入 ~/. bashrc 文件中,这样在每次登陆后都可以使用自己的变量。