linux各种配置文件的作用

来源:互联网 发布:手机游戏 知乎 编辑:程序博客网 时间:2024/04/30 16:19

今天给大家总结一下linux中各种配置文件的作用,这样配置开发环境时,会事半功倍。

笔者的linux是Centos6.0,可能有些配置文件与其他distributions不同。

/etc/profile

这个文件是系统的总体设置,也就是说,所有用户在登录时,都会读取这个文件的配置,如果你想为所有用户设置通用的环境变量,比如java开发环境的jdk环境变量,可以写在这个文件里。这个文件设置的变量主要有:

  • PATH:会依据UID决定PATH变量要不要含有sbin的系统命令目录;
  • MAIL:依据帐号设置好用户的mailbox到/var/spool/mail/帐号名;
  • USER:根据用户的帐号设置此变量内容;
  • HOSTNAME:依据主机的hostname命令决定此变量内容;
  • HISTSIZE:历史命令记录条数。
这个文件里还有一些shell脚本,主要是调用其他配置文件的数据:
  • /etc/inputrc:用户自定义输入按键功能
  • /etc/profile.d/*.sh:bash操作接口的颜色、语系、命令别名
  • /etc/sysconfig/i18n:默认语系
下面是笔者系统中该文件的部分内容:
 #You could check uidgid reservation validity in# /usr/share/doc/setup-*/uidgid fileif [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then    umask 002else    umask 022fifor i in /etc/profile.d/*.sh ; do    if [ -r "$i" ]; then        if [ "${-#*i}" != "$-" ]; then            . "$i"        else            . "$i" >/dev/null 2>&1        fi    fidoneunset iunset -f pathmunge#set java environmentexport JAVA_HOME=/usr/jdk1.7/jdk1.7.0_45export PATH=$PATH:$JAVA_HOME/binexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar#set zookeeper environmentexport ZOOKEEPER_HOME=/usr/zookeeper-3.4.5export PATH=$PATH:$ZOOKEEPER_HOME/bin:$ZOOKEEPER_HOME/conf


~/.bash_profile

bash在读完了整个环境设置的/etc/profile,接下来会读取个人配置文件,个人配置文件主要有三个:

  1. ~/.bash_profile
  2. ~/.bash_login
  3. ~/.profile
bash只会顺序读取上面三个文件中的一个,也就是说,加入第一个文件存在,那么其他两个文件即使存在也不会读取。

/etc/man.config

这个文件规定了使用man的时候man page的路径到哪里去寻找。

~/.bash_history

记录我们使用的命令,记录条数与HISTSIZE变量有关

~/.bash_logout

当我们注销bash后,系统会帮我们做这个文件规定的操作才离开。