美文网首页
Linux 环境变量配置

Linux 环境变量配置

作者: 87d6dc4b11a7 | 来源:发表于2023-02-05 14:51 被阅读0次

    Linux读取环境变量

    读取环境变量的方法:

    • export命令显示当前系统定义的所有环境变量
    • echo $PATH命令输出当前的PATH环境变量的值
    root@nianyu-virtual-machine:~# export
    declare -x HOME="/root"
    declare -x JAVA_HOME="/opt/tools/jdk/jdk1.8.0_181"
    declare -x LANG="zh_CN.UTF-8"
    declare -x LANGUAGE="zh_CN:zh"
    declare -x LESSCLOSE="/usr/bin/lesspipe %s %s"
    declare -x LESSOPEN="| /usr/bin/lesspipe %s"
    declare -x LOGNAME="root"
    declare -x PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/tools/jdk/jdk1.8.0_181/bin"
    declare -x PWD="/root"
    
    root@nianyu-virtual-machine:~# echo $PATH
    /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/tools/jdk/jdk1.8.0_181/bin
    

    Linux环境变量配置

    方法一:export PATH

    使用export命令直接修改PATH的值,配置MySQL进入环境变量的方法:

    export PATH=/home/uusama/mysql/bin:PATH
    
    # 或者把PATH放在前面
    export PATH=PATH:/home/uusama/mysql/bin
    

    注意事项:
    生效时间:立即生效
    生效期限:当前终端有效,窗口关闭后无效
    生效范围:仅对当前用户有效
    配置的环境变量中不要忘了加上原来的配置,即$PATH部分,避免覆盖原来配置

    方法二:vim ~/.bashrc

    通过修改用户目录下的~/.bashrc文件进行配置:

    vim ~/.bashrc
    
    # 在最后一行加上
    export PATH=$PATH:/home/uusama/mysql/bin
    

    注意事项:
    生效时间:使用相同的用户打开新的终端时生效,或者手动source ~/.bashrc生效
    生效期限:永久有效
    生效范围:仅对当前用户有效
    如果有后续的环境变量加载文件覆盖了PATH定义,则可能不生效

    方法三:vim ~/.bash_profile

    和修改~/.bashrc文件类似,也是要在文件最后加上新的路径即可:

    vim ~/.bash_profile
    
    # 在最后一行加上
    export PATH=$PATH:/home/uusama/mysql/bin
    

    注意事项:
    生效时间:使用相同的用户打开新的终端时生效,或者手动source ~/.bash_profile生效
    生效期限:永久有效
    生效范围:仅对当前用户有效
    如果没有/.bash_profile文件,则可以编辑/.profile文件或者新建一个

    方法四:vim /etc/bashrc

    该方法是修改系统配置,需要管理员权限(如root)或者对该文件的写入权限:

    # 如果/etc/bashrc文件不可编辑,需要修改为可编辑
    chmod -v u+w /etc/bashrc
    
    vim /etc/bashrc
    
    # 在最后一行加上
    export PATH=$PATH:/home/uusama/mysql/bin
    

    注意事项:
    生效时间:新开终端生效,或者手动source /etc/bashrc生效
    生效期限:永久有效
    生效范围:对所有用户有效

    方法五:vim /etc/profile

    该方法修改系统配置,需要管理员权限或者对该文件的写入权限,和vim /etc/bashrc类似:

    # 如果/etc/profile文件不可编辑,需要修改为可编辑
    chmod -v u+w /etc/profile
    
    vim /etc/profile
    
    # 在最后一行加上
    export PATH=$PATH:/home/uusama/mysql/bin
    

    注意事项:
    生效时间:新开终端生效,或者手动source /etc/profile生效
    生效期限:永久有效
    生效范围:对所有用户有效

    配置方法六:vim /etc/environment

    该方法是修改系统环境配置文件,需要管理员权限或者对该文件的写入权限:

    # 如果/etc/bashrc文件不可编辑,需要修改为可编辑
    chmod -v u+w /etc/environment
    
    vim /etc/profile
    
    # 在最后一行加上
    export PATH=$PATH:/home/uusama/mysql/bin
    

    注意事项:
    生效时间:新开终端生效,或者手动source /etc/environment生效
    生效期限:永久有效
    生效范围:对所有用户有效

    Linux环境变量加载原理解析

    上面列出了环境变量的各种配置方法,那么Linux是如何加载这些配置的呢?是以什么样的顺序加载的呢?

    特定的加载顺序会导致相同名称的环境变量定义被覆盖或者不生效。

    环境变量的分类

    环境变量可以简单的分成用户自定义的环境变量以及系统级别的环境变量。

    用户级别环境变量定义文件:/.bashrc、/.profile(部分系统为:~/.bash_profile)
    系统级别环境变量定义文件:/etc/bashrc、/etc/profile(部分系统为:/etc/bash_profile)、/etc/environment
    另外在用户环境变量中,系统会首先读取/.bash_profile(或者/.profile)文件,如果没有该文件则读取/.bash_login,根据这些文件中内容再去读取/.bashrc。

    Linux环境变量加载顺序的方法

    Linux加载环境变量的顺序如下:

    1. /etc/environment
    2. /etc/profile
    3. /etc/bash.bashrc
    4. /etc/profile.d/test.sh
    5. ~/.profile
    6. ~/.bashrc
    

    相关文章

      网友评论

          本文标题:Linux 环境变量配置

          本文链接:https://www.haomeiwen.com/subject/bqmohdtx.html