Ⅰ linux設置環境變數
linux設置環境變數一、環境變數環境變數是包含關於系統及當前登錄用戶的環境信息的字元串,一些軟體程序使用此信息確定在何處放置文件(如臨時文件)。設置環境變數說白了就是指定一個軟體的路徑。環境變數是包含諸如驅動器、路徑或文件名之類的字元串。環境變數控制著多種程序的行為。例如,TEMP
環境變數指定程序放置臨時文件的位置。
path,
是告訴系統,
當要求系統運行一個程序而沒有告訴它程序所在的完整路徑時,
系統除了在當前目錄下面尋找此程序外,
還應到那些目錄下去找
www.dnjsb.com
【許可權問題】任何用戶都可以添加、修改或刪除用戶的環境變數。但是,只有管理員才能添加、修改或刪除系統環境變數。linux是一個多用戶的操作系統。每個用戶登錄系統後,都會有一個專用的運行環境。為了使每個用戶默認的環境相同,需要設置一組環境變數。通過修改相應的系統環境變數,對自己的運行環境進行定製。註:linux的環境變數名稱一般使用大寫字母。二、環境變數的設置1.顯示環境變數本例使用echo顯示常見的變數HOME$
echo
$HOME/home/kevin2.設置新的環境變數$
export
MYNAME=my
name
is
kevin
www.dnjsb.com
$
echo
$
MYNAMEmy
name
is
Kevin3.修改已存在的環境變數接上個示例$
MYNAME=change
name
to
jack$
echo
$MYNAMEchange
name
to
jack4.顯示所有的環境變數$
env
www.dnjsb.com
HOSTNAME=localhost.localdomainSHELL=/bin/bashTERM=xtermHISTSIZE=1000SSH_CLIENT=192.168.136.151
1740
22QTDIR=/usr/lib/qt-3.1SSH_TTY=/dev/pts/05.顯示所有本地定義的Shell變數$
setBASH=/bin/bashBASH_ENV=/root/.bashrc
www.dnjsb.com
6.使用unset命令來清除環境變數$
export
TEMP_KEVIN=kevin
#增加一個環境變數TEMP_KEVIN$
env
|
grep
TEMP_KEVIN
#查看環境變數TEMP_KEVIN是否生效(存在即生效)TEMP_KEVIN=kevin
#證明環境變數TEMP_KEVIN已經存在$
unset
TEMP_KEVIN
#刪除環境變數TEMP_KEVIN$
env
|
grep
TEMP_KEVIN
#查看環境變數TEMP_KEVIN是否被刪除,沒有輸出顯示,證明TEMP_KEVIN被清除了。7.使用readonly命令設置只讀變數註:如果使用了readonly命令的話,變數就不可以被修改或清除了。$
export
TEMP_KEVIN
=kevin
#增加一個環境變數TEMP_KEVIN$
readonly
TEMP_KEVIN
#將環境變數TEMP_KEVIN設為只讀$
env
|
grep
TEMP_KEVIN
#查看環境變數TEMP_KEVIN是否生效TEMP_KEVIN=kevin
#證明環境變數TEMP_KEVIN已經存在
www.dnjsb.com
$
unset
TEMP_KEVIN
#會提示此變數只讀不能被刪除-bash:
unset:
TEMP_KEVIN:
cannot
unset:
readonly
variable$
TEMP_KEVIN
=tom
#修改變數值為tom會提示此變數只讀不能被修改-bash:
TEMP_KEVIN:
readonly
variable8.通過修改環境變數定義文件來修改環境變數。需要注意的是,一般情況下,僅修改普通用戶環境變數配置文件,避免修改根用戶的環境定義文件,因為那樣可能會造成潛在的危險。$
cd
~
#到用戶根目錄下$
ls
-a
#查看所有文件,包含隱藏的文件$
vi
.bash_profile
#修改用戶環境變數文件例如:編輯你的PATH聲明,其格式為:
www.dnjsb.com
PATH=$PATH:<PATH
1>:<PATH
2>:<PATH
3>:------:<PATH
N>你可以自己加上指定的路徑,中間用冒號隔開。環境變數更改後,在用戶下次登陸時生效。如果想立刻生效,則可執行下面的語句:$source
.bash_profile需要注意的是,最好不要把當前路徑./放到PATH里,這樣可能會受到意想不到的攻擊。完成後,可以通過$
echo
$PATH查看當前的搜索路徑。這樣定製後,就可以避免頻繁的啟動位於shell搜索的路徑之外的程序了。三、總結常用的:env
顯示所有環境變數
Ⅱ 怎麼設置 linux環境變數配置
1、直接用export命令:
#export PATH=$PATH:/opt/au1200_rm/build_tools/bin
查看是否已經設好,可用命令export查看:
[root@localhost bin]# export
declare -x BASH_ENV="/root/.bashrc"
declare -x G_BROKEN_FILENAMES="1"
declare -x HISTSIZE="1000"
declare -x HOME="/root"
declare -x HOSTNAME="localhost.localdomain"
declare -x INPUTRC="/etc/inputrc"
Ⅲ 如何恢復linux的環境變數ubuntu中root用戶沒有辦法使用命令
Ubunturoot用戶在默認情況下是禁用的,不允許用root登陸。以下方法可以設置使用root帳戶登陸:1、首先設置root密碼,利用現有管理員帳戶登陸Ubutu,在終端執行命令:sudopasswdroot,接著輸入密碼和root密碼,重復密碼。2、默認情況是不允許用root帳號直接登陸圖形界面的。這可以通過修改/etc/gdm/gdm.conf文件來允許root直接登陸。但是gdm.conf默認是只讀屬性,修改前請先使用sudochmod777/etc/gdm/gdm.conf將文件許可權設置為為777。然後在終端中輸入sudogedit/etc/gdm/gdm.conf打開gdm.conf文件。接著在該文件中找到AllowRoot=false將其改為AllowRoot=true切換用戶就可以了。
Ⅳ Linux環境下,如果root用戶的path環境變數中包含(.和..)的路徑會導致什麼風險
.是代表當前目錄,
..是代表上級目錄。如果將這兩者寫入root的環境變數,執行腳本時,你只需要打腳本的名字,系統就會在當前的目錄下找該腳本並執行。
例如,一個U盤插入電腦,你打了一個文件名字,系統就會執行U盤中的該文件,如果有木馬程序,也會被執行,比如腳本中有rm -rf /* 這樣的命令,你的系統就會被刪除。
Ⅳ 怎樣查看linux系統的環境變數
查看所有環境變數:
env
查看指定環境變數的內容:
$echo
$變數名
例如執行:$echo
$HOME
返回:
-bash:
/root:
is
a
directory
//結果是HOME變數的內容等於:/root:
這是一個目錄
編輯環境變數:
$export
變數名="內容"
大概就是這個樣
Ⅵ 如何在Linux中修改環境變數PATH
首先,修改Linux的環境變數PATH的語法是這樣的(以把/root目錄加入PATH環境變數為例):PATH="$PATH":/root,注意Linux的PATH環境變數各個路徑之間是用英文冒號分割的(這點和Windows的PATH環境變數有所區別,Windows的PATH環境變數的路徑之間用英文分號分割)。
解釋:"$PATH"這一部分代表原來的PATH環境變數的內容,因為PATH環境變數是如此重要,對PATH環境變數的修改都是在原PATH的基礎上進行添加,所以用"$PATH"導入原PATH的內容,然後後面用英文冒號分割開,再加上/root這個新添加的內容。意思就是在原PATH內容的基礎上添加/root這個路徑(盡量在原PATH的內容基礎上添加,不要去掉原PATH裡面的任何內容)。
那對PATH環境變數的修改應該寫在那個配置文件中呢?如果想讓設置只對當前用戶有效,可以在~/.bashrc文件中加入如下兩行(還是以添加/root目錄為例):
PATH="$PATH":/root
export PATH
添加完成後,如果想讓設置馬上生效,還需要執行這樣一條命令:source ~/.bashrc。(否則你的設置只會在下次登錄才生效)
如果想讓修改對所有用戶都有效,則需要把設置添加到/etc/profile這個配置文件中,添加的內容和在~/.bashrc中的一樣。
Ⅶ linux下如何添加環境變數
例如:給root用戶添加環境變數,只需要修改/root/.bash_profile文件,添加export xx="dddddd"即可。有一個問題:變數LD_LIBRARY_PATH在.bash_profile中設置不起作用,原因是:因為.bash_profile是中登錄的時候調用, 請寫在.bashrc中.解決辦法:將該變數寫在/root/.bashrc文件中即可。
Ⅷ linux root帳戶的環境變數在哪裡如何更改root帳戶的默認shell(fedoracore)
在/etc/passwd裡面改