在linux系統下,如果下載並安裝了應用程式,在啟動時很有可能在鍵入它的名稱時出現"command not found"的提示內容。如果每次都到安裝目標資料夾內,找到可執行檔案
來進行操作就太繁瑣了,這種情況下就涉及到環境變數PATH的設定問題,而PATH的設定也是在linux下定製環境變數的一個組成部分。
環境變數配置的兩個方法:
1)修改/etc/profile檔案 推薦使用這種方法,因為所有使用者的shell都有權使用這些環境變數,缺點是可能會給系統帶來安全性問題。 這裡是針對所有的使用者的,所有的shell; [root@test ~]# vim /etc/profile .... export PATH=$PATH:/usr/local/mysql/bin 使用source命令使修改立刻生效: [root@test ~]# source /etc/profile 2)修改.bashrc檔案,這種方法更為安全,它可以把使用這些環境變數的許可權控制到使用者級別,這裡是針對某一個特定的使用者,如果需要給某個使用者許可權 使用這些環境變數,只需要修改其個人使用者主目錄下的.bashrc檔案就可以了。 [root@test ~]# vim /root/.bashrc export PATH=$PATH:/usr/local/mysql/bin [root@test ~]# source /root/.bashrc
需要注意的是:
在/etc/profile裡設定系統環境變數時,路徑末尾不能以"/"結尾,否則將導致整個PATH變數出錯。
[app@test ~]$ vim ~/.bashrc ...... KETTLE_HOME=/data/nstc/kettle3.2 export KETTLE_HOME 注意:配置好環境變數後,要記得export輸出這個變數,否則如下source後無效! [app@test ~]$ source .bashrc //使之生效 [app@test ~]$ echo $KETTLE_HOME /data/nstc/kettle3.2 [app@test ~]$ env ......... KETTLE_HOME=/data/nstc/kettle3.2
.bash_profile和.bashrc的區別:
/etc/profile: 此檔案為系統的每個使用者設定環境資訊,當使用者第一次登入時,該檔案被執行.並從/etc/profile.d目錄的配置檔案中搜集shell的設定. /etc/bashrc: 為每一個執行bash shell的使用者執行此檔案.當bash shell被開啟時,該檔案被讀取. ~/.bash_profile: 每個使用者都可使用該檔案輸入專用於自己使用的shell資訊,當使用者登入時,該檔案僅僅執行一次!預設情況下,他設定一些環境變數,執行使用者的.bashrc檔案. ~/.bashrc: 該檔案包含專用於你的bash shell的bash資訊,當登入時以及每次開啟新的shell時,該該檔案被讀取. ~/.bash_logout: 當每次退出系統(退出bash shell)時,執行該檔案. 另外,/etc/profile中設定的變數(全域性)的可以作用於任何使用者,而~/.bashrc等中設定的變數(區域性)只能繼承/etc/profile中的變數,他們是"父子"關係.
=========================設定終端登入超時時間================
遠端登入linux伺服器,如何設定終端失效時間(即過了多久不操作,終端即將失效)。方法如下: [root@mq-console-nameserver ~]# vim /etc/profile ...... export TMOUT=600 [root@mq-console-nameserver ~]# source /etc/profile 如上設定後,登入這臺伺服器的終端在10分鐘內不做操作,則該終端就將失效!