Linux 环境变量配置文件

本部分主要介绍:在 Ubuntu 系统下, source 对配置文件的操作;5 类配置文件在 shell bash 启动顺序

source 命令

  1. 命令 source 配置文件. 配置文件
    • 修改配置文件系统必须重新登录,此命令解决系统重启
    • .source 一样,.source 得缩写
  2. 介绍
    • 环境变量配置文件中主要是定义对系统得操作环境生效得系统默认环境变量,比如 PATH(定义系统查找命令得路径)、HISTSIZE(历史命令的显示命令条数)、PS1(提示符)、HOSTNAME(主机名) 等等默认环境变量。
    • centOS (Linux也一样)的环境变量配置文件体系是一个层级体系。这与其他用户应用系统配置文件类似,有全局、有局部(用户),另外不同层级有时类似继承关系。

5 类环境配置文件及启动过程

  1. 5 类配置文件(在 /etc/ 下的配置文件对所有用户都生效,在某个用户家目录下的配置文件对这个用户有效)

    • /etc/profile
      1. 第一次系统启动后第一个用户登录时执行 /etc/profile 文件,该文件是 Shell 默认主启动文件。
      2. bash 执行该文件时,会读取 /etc/profile.d/ 下所有 *.sh 文件,通过 . 或者 source 来加载变量
      3. bash 执行该文件时,会调用 /etc/bashrc(Ubuntu 下为 /etc/bash.bashrc) 文件来执行
      4. /etc/profile/etc/bash.bashrc/etc/profile.d/*.sh 都是全局环境变量,对所有用户有效
      5. /etc/environment 保存环境变量 PATH 的值。据说 /etc/profile 保存所有用户的环境变量,/etc/environment 保存系统的环境变量
    • /etc/profile.d/*.sh(为一组配置文件)
      1. 全局环境变量,对所有用户有效。
      2. 通过 /etc/profile 调用
    • /etc/bashrc(Ubuntu /etc/ 下的文件是 bash.bashrc
      • 全局环境变量,对所有用户有效
      • 通过 /etc/profile 调用
    • ~/.bash_profile (Ubuntu 用户家目录下的文件是 .profile)
      1. 家目录下的启动文件都是用户专属启动文件,定义了该用户的环境变量
      2. bash 执行该文件,会调用 /etc/.bashrc
      3. bash 会按照下列顺序,执行第一个找到的文件,余下被忽略
        • ~/.bash_profile
        • ~/.bash_login
        • ~/.profile
        • 仅对此用户有效
    • ~.bashrc
      1. 仅对此用户有效
      2. 通过 ~/.profile 调用
  2. 5 类配置文件的优先级(在 Ubuntu 系统下;每一个 Linux 的发行版本都不样)

    说明:数字越大,优先级越低

    • /etc/profile 的优先级为 5
    • /etc/profile.d/etc/profile 调用,并继承上述配置文件,优先级为 4
    • /etc/bash.bashrc/etc/profile` 调用,并继承上述配置文件,优先级为 3
    • ~/.profile 的优先级为 2
    • ~/.bashrc~/.profile 调用,并继承上述配置文件,优先级为 1
    • 修改环境配置在以上 5 个文件都可以,只是优先级高的会覆盖掉优先级低的。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • /etc/enviroment:系统环境变量,系统登录时第一个被读取 /etc/profile:为系统的每个用户设...
    helphi阅读 546评论 0 0
  • 环境变量概述 环境变量(Environment Variables)一般是指在操作系统中用来指定操作系统运行环境的...
    rosy_dawn阅读 10,366评论 1 12
  • 官网 中文版本 好的网站 Content-type: text/htmlBASH Section: User ...
    不排版阅读 4,465评论 0 5
  • 一、介绍 /etc/profile 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。并从 /...
    peerless_1024阅读 18,299评论 1 24
  • 1、正态分布和幂律分布:正态分布是指好的少,差的少,大部分居于中间的规律,幂律分布是指强者更强,弱者更弱走向极端的...
    423429d90f38阅读 192评论 0 0