linux中/etc/profile中配置了環境變量,但是程序還是無法直接啓動

   安裝配置了Hive程序,正常可以啓動,也在/etc/profile中配置了環境變量,但是直接命令行hive啓動失敗

1./etc/profile中的部分配置信息:       

export HIVE_HOME=/opt/modules/hive-0.13.1-cdh5.3.6
export PATH=$PATH:$HIVE_HOME/bin

export HBASE_HOME=/opt/modules/hbase
export PATH=$PATH:$HBASE_HOME/bin
直接echo $HIVE_HOME也沒有問題


2.直接命令行輸入hive啓動失敗,進入hive安裝目錄則會啓動成功 

[robot@hadoop101 ~]$ hive
bash: hive: command not found...

       既然顯示在bash中找不到hive命令,那麼就是bash配置出問題了 ,首先有一個問題要明白,爲什麼配置了/etc/profile環境變量後,程序就可以直接啓動,而不用進入安裝環境後啓動?因爲/etc/profile這個文件是每個用戶登錄時都會運行的環境變量設置(對所有用戶生效(永久的)。

       然而每個用戶還有個自己的環境變量在當前$HOME/.bash_profile(/home/robot/.bash_profile)。修改這個文件中變量只會對當前用戶有效,比如系統用戶是robot。這裏之所以配置了系統環境變量而沒有用,是因爲當前用戶加載的是自己的環境變量。覆蓋了系統的環境變量

   1. 所以這裏只需要將PATH=$PATH:$HOME/.local/bin:$HOME/bin註釋掉即可。

   2.然後 source  .bash_profile即可。這時候直接執行hive即可啓動hive程序。

[robot@hadoop101 ~]$ cat ./.bash_profile 
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs
#需要將下面這一行註釋掉,這樣系統就會直接使用系統環境變量,而不是自己的
#PATH=$PATH:$HOME/.local/bin:$HOME/bin

export PATH

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章