1. 程式人生 > >Linux 下三種方式設定環境變數

Linux 下三種方式設定環境變數

一、環境變數檔案介紹

轉自:http://blog.csdn.net/cscmaker/article/details/7261921

Linux中環境變數包括系統級和使用者級,系統級的環境變數是每個登入到系統的使用者都要讀取的系統變數,而使用者級的環境變數則是該使用者使用系統時載入的環境變數。
所以管理環境變數的檔案也分為系統級和使用者級的,下面貼一個網上找到的講的比較明白的檔案介紹(略作修改)[1]:

1.系統級:
(1)/etc/profile:該檔案是使用者登入時,作業系統定製使用者環境時使用的第一個檔案,應用於登入到系統的每一個使用者。該檔案一般是呼叫/etc/bash.bashrc檔案。
/etc/bash.bashrc:系統級的bashrc檔案。
(2)/etc/environment:在登入時作業系統使用的第二個檔案,系統在讀取你自己的profile前,設定環境檔案的環境變數。

2.使用者級(這些檔案處於家目錄下):
(1)~/.profile:每個使用者都可使用該檔案輸入專用於自己使用的shell資訊,當用戶登入時,該檔案僅僅執行一次!預設情況下,他設定一些環境變數,執行使用者的.bashrc檔案。這裡是推薦放置個人設定的地方


(2)~/.bashrc:該檔案包含專用於你的bash shell的bash資訊,當登入時以及每次開啟新的shell時,該該檔案被讀取。不推薦放到這兒,因為每開一個shell,這個檔案會讀取一次,效率肯定有影響。
~/.bash_profile or ~./bash_login:這裡沒有引用作者的,下面會提到
~/.pam_environment:使用者級的環境變數設定檔案,沒有做測試,不知道管不管用。


通過上面的檔案介紹,就能明白我們需要設定環境變數的時候,需要修改什麼檔案,要想對所有的使用者生效,那就需要設定系統級的環境變數。反之,需要修改使用者級的檔案(最好是修改.profile檔案,理由上面已經講了)。

另外,我使用的是Ubuntu10.04,之前在查詢資料設定使用者級環境變數的時候,有資料說要修改~.bash_profile檔案,但是在ubuntu10.04系統中是沒有該檔案。經查詢,在ubuntu官網[2]上找到了這個檔案的說明:

~/.bash_profile or ~./bash_login - If one of these file exist, bash executes it rather then "~/.profile" when it is started as a login shell. (Bash will prefer "~/.bash_profile" to "~/.bash_login"). However, these files won't influence a graphical session by default.

意思應該是說當這個檔案存在時,在登入shell時會讀取./bash_profile檔案,而不是.profile檔案。我認為該檔案實現的目的 跟.profile檔案是一樣的,當查詢的資料中需要你修改.bash_profile檔案,但卻你沒有該檔案的時候,也可以修改.profile來完成 實現。

二、配置環境變數實戰

1.配置java環境變數

(1)首先在官方網站上下載jdk安裝檔案,我下載的為:jdk-7u5-linux-i586.tar.gz,當然也可以下載.bin格式的檔案,但是這種檔案與本文介紹的tar格式的檔案在解壓縮方面有所不同,這裡不再詳細介紹;

(2)解壓縮該檔案,解壓後的檔名為:jdk1.7.0_05;將其拷貝到一個檔案目錄,我放入的是:/home/stopit/software目錄,所以當前jdk路徑為/home/stopit/software/jdk1.7.0_05,這裡將/home/stopit/software/jdk1.7.0_05用xxx替代;

(3)根據上文介紹的幾個linux環境變數檔案,我們選擇profile檔案寫入我們的環境變數;使用 suodo gedit /etc/proifle  命令開啟該檔案,並輸入以下命令:

#修改java執行環境
export JAVA_HOME="xxx"
export PATH="$PATH:$JAVA_HOME/bin"
export JRE_HOME="$JAVA_HOME/jre"
export CLASSPATH=".:$JAVA_HOME/lib:$JRE_HOME/lib"

(4)修改完成後,使用source /etc/profile 命令進行更新;

(5)下面這幾步比較重要,因為在許多linux系統中都預裝了openjdk,所以即使上面進行了這些設定,系統預設的還不是我們要設定的內容;如果要真正使用我們自己的jdk,還需要一下步驟:

sudo update-alternatives --install /usr/bin/java java xxx/bin/java 300

sudo update-alternatives --install /usr/bin/javac javac xxx/bin/javac 300

(這裡的300只是標識一下,沒什麼意義,只是下一步要用到)

sudo update-alternatives --config java

執行這步會列出系統上的所有已安裝的java,然後自己選擇,即選最後為300的那個

sudo update-alternatives --config javac

同上

注意:有些文章上說僅僅使用一下語句即可:
sudo update-alternatives –config java,筆者沒有嘗試過!

(6)大功告成,使用java -version 命令來檢視我們的java環境變數,顯示如下內容:

java version "1.7.0_05"
Java(TM) SE Runtime Environment (build 1.7.0_05-b06)
Java HotSpot(TM) Server VM (build 23.1-b03, mixed mode)

2.配置tomcat環境變數

(1)從官方網站上下載tomcat軟體包。

http://tomcat.apache.org/

點選左側的download的一個版本,我選擇的是tomcat6.x,你可以根據自己的實際情況進行選擇安裝,點選超連線,選擇Binary Distributions下的tar.gz (pgp, md5)壓縮包,進行下載

(2)下載到本地後,進行解壓

#tar zxvf apach-tomcat-6.0.16.tar.gz

#mv apach-tomcat-6.0.16 /usr/local

(3)進行tomcat環境的配置(前提需要安裝jdk)

sudo geidt /etc/profile

輸入以下內容

export TOMCAT_HOME=xx

xx同上,為你的tomcat安裝路徑

儲存退出

(4)# source /etc/profile //讓當前配置立即生效

(5)啟動tomcat伺服器,執行如下內容

sudo xx/bin/startup.sh

注:(不可手動雙擊檔案下的startup.sh執行),暫時不知是否可行

我的電腦上會出現如下內容:

Using CATALINA_BASE: /usr/local/apache-tomcat-6.0.16

Using CATALINA_HOME: /usr/local/apache-tomcat-6.0.16

Using CATALINA_TMPDIR: /usr/local/apache-tomcat-6.0.16/temp

Using JRE_HOME: /usr/local/jdk1.6.0_04

(6)在瀏覽器中輸入http://localhost:8080/就可以看到tomcatlog

tomcat的安裝到此結束。

(7)如果遇到問題可參考:http://forum.ubuntu.org.cn/viewtopic.php?t=183813

(8)後續配置:

——停止Tomcat服務 
$sudo /opt/tomcat/bin/shutdown.sh


——獲得MySQLJDBC,在Firefox瀏覽器的位址列中輸入http: //dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-3.1.10.tar.gz/from/http: //mysql.cbn.net.id/以得到該軟體。 


——安裝JDBC 
$tar -zxvf mysql-connector-java-3.1.10.tar.gz 
$sudo cp mysql-connector-java-3.1.10/mysql-connector-java-3.1.10-bin*.jar /usr/lib/j2sdk1.5-sun/lib

——配置Tomcat的埠

Ubuntu自帶的Tomcat開啟的是8180埠,既不符合常規,也不利於使用。我們可以做一些簡單的修改,讓Tomcat使用其他的埠進行服務。在Terminal中,輸入
sudo gedit /usr/share/tomcat5/conf/server.xml

在配置檔案中查詢
<Connector className="org.apache.coyote.tomcat5.CoyoteConnector" port="8180"

並把其中的8180替換成需要的埠。一般情況下,可以替換成80或者是8080。如果設定成80,那麼在瀏覽器中直接輸入http://localhost就可以訪問到Tomcat的頁面。 重新啟動Tomcat生效。

——設定Tomcat管理員帳號

Tomcat的使用者帳號資訊都儲存在tomcat-users.xml的檔案中,執行
sudo gedit /usr/share/tomcat5/conf/tomcat-users.xml

</tomcat-users>的標籤前新增一行
<user username="使用者名稱" password="密碼" roles="admin,manager"/>

儲存並關閉。重新執行tomcat即可輸入該使用者名稱和密碼,登入Tomcat的管理頁面。

——安裝最新版本的Tomcat

我們接下來介紹直接從Apache Tomcat的主頁上下載並使用最新版本5.5.17Tomcat軟體,該方法方便快捷而且並不影響系統的穩定性。

tomcat的官方下載頁面http://tomcat.apache.org/download-55.cgi

下載Binary->Core分類中的zip或者tar.gz包後,本地解壓縮並將新生成的目錄重新命名為tomcat,以方便使用。將這個資料夾移動至某路徑PATH/。 參考以上設定環境變數和埠設定等步驟,大功告成! 直接執行


PS,開始的時候用apt-get安裝tomcat5.5,總是出現無法安裝成功,shutdown,出來java異常,最後實在沒有辦法了,
sudo apt-get remove tomcat5.5
把它給解除安裝了.重新下載安裝,不用apt-get