Linux环境变量配置总结
Posted 闭关苦炼内功
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux环境变量配置总结相关的知识,希望对你有一定的参考价值。
Linux环境变量配置说明
可在多个文件中配置
/etc/profile.d/*.sh
/etc/profile
~/.bashrc
bash运行模式分为login shell和no-login shell
login shell启动时会加载 /etc/profile
no-login shell启动时会加载 ~/.bashrc
其实加载 ~/.bashrc 或 /etc/profile 时,都会加载 /etc/profile.d/*.sh
推荐在 /etc/profile.d/*.sh 目录下配置环境变量
如果环境变量配置不当,就会有冲突
以下分别演示三种方式(以配置hadoop环境变量为例)
-
方式1
vim ~/.bashrc
# HADOOP_HOME export HADOOP_HOME=/datafs/hadoop/hadoop-3.1.1 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/libexec
生效环境变量
source ~/.bashrc
-
方式2
vim /etc/profile
# HADOOP_HOME export HADOOP_HOME=/datafs/hadoop/hadoop-3.1.1 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/libexec
source /etc/profile
- 方式3
vim /etc/profile.d/my_env.sh
# HADOOP_HOME export HADOOP_HOME=/datafs/hadoop/hadoop-3.1.1 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/libexec
source /etc/profile.d/my_env.sh
查看PATH
[root@localhost ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/mysql//bin:/root/bin:/datafs/hadoop/hadoop-3.1.1/bin:/datafs/hadoop/hadoop-3.1.1/sbin:/datafs/hadoop/hadoop-3.1.1/libexec:/usr/local/mysql//bin:/datafs/hadoop/hadoop123/bin:/datafs/hadoop/hadoop123/sbin:/datafs/hadoop/hadoop123/libexec:/datafs/hadoop/hadoop345/bin:/datafs/hadoop/hadoop345/sbin:/datafs/hadoop/hadoop345/libexec
[root@localhost ~]#
详细查看PATH
/usr/local/sbin:
/usr/local/bin:
/usr/sbin:
/usr/bin:
/usr/local/mysql//bin:
/root/bin:
/datafs/hadoop/hadoop-3.1.1/bin:
/datafs/hadoop/hadoop-3.1.1/sbin:
/datafs/hadoop/hadoop-3.1.1/libexec:
/usr/local/mysql//bin:
/datafs/hadoop/hadoop-3.1.1/bin:
/datafs/hadoop/hadoop-3.1.1/sbin:
/datafs/hadoop/hadoop-3.1.1/libexec:
/datafs/hadoop/hadoop-3.1.1/bin:
/datafs/hadoop/hadoop-3.1.1/sbin:
/datafs/hadoop/hadoop-3.1.1/libexec
通过查看 PATH ,发现一个问题:有三处相同的部分
/datafs/hadoop/hadoop-3.1.1/bin:
/datafs/hadoop/hadoop-3.1.1/sbin:
/datafs/hadoop/hadoop-3.1.1/libexec
系统在加载的时候不知道去加载哪个了,就会造成混乱问题
做技术,一定要严谨!!!
所以配置环境变量的时候不要配的乱七八糟,
解决方案:
-
如果是普通用户,没有root权限,那就配置用户家目录
/home/user/.bashrc
-
如果是root用户,可以去配置
/etc/profile
推荐配置/etc/profile.d/*.sh
还有要注意:配置完一定要 source
生效才能够使用
以上是关于Linux环境变量配置总结的主要内容,如果未能解决你的问题,请参考以下文章