A. linux系統tomcat的安裝配置(一)含jdk環境變數配置
自己試很少在linux上操作的,最近買了億速雲的香港雲,有了自己的linux環境,就稍微在這個上面試試手。系統是centos7.2 64bit的,所有的設置都是億速雲給的鏡像的默認設置,我什麼野皮沖也沒做。直接先把jdk-7u79-linux-x64.tar.gz、apache-tomcat-7.0.47.tar.gz的包通過Xshell 5和Xftp 5上傳然後解壓,在這個前提下進行的。本文的目的就是啟動tomcat後就直接啟動,然後成功後通過伺服器ip+埠訪問,看到tomcat默認的首頁。涉及到的可能都是很基礎的東西,但是自己不是很熟悉,所以都在此記錄一番。
1.解壓jdk.tar.gz指令
2.打開系統相關配置文件
3.添加JAVA_HOME、PATH、CLASSPATH至剛剛的配置文件中(:wq保存退出)
4、測試配置
如果本來就有修改後重新應用
5、解壓tomcat(同理),並修改/conf/server.xml的8080為80(只是我不想加埠,剛剛好80埠也是閑著),在tomcat目錄下執行指令啟動tomcat(帶日誌的啟動,Ctrl+C可退出日誌)。
6、外網測試tomcat是否正常啟動
(這一塊要保證伺服器是埠開放的,如果環境不同比如有linux有開啟防火牆等,本文只是記錄最簡單的頌殲成功的一次操作,具體失敗要先看環境因素,此處不做描述)
7、其他相關操作
當然如上其實就已經成功了,但是實際中可能我們還需要關閉。有人說最好不要shutdown,用kill的方式,具體我也不是太清楚,目前沒有深究,就用kill的方式去關閉。握褲
查看進程:
B. 避免和conda環境變數沖突---linux下環境變數的設置方法
最近用conda創建了一個新的環境裂敬,conda activate進入新環境後,查看perl和python時還是發現:
這就說明conda新環境的環境變數並沒有起到作用,於是進入課題組~/.bashrc下看了看,發現有個很奇怪的PATH設定:
好吧,這其實就相當於直接定義了PATH,難怪使用姿源蠢不了conda環境里的變數,於是注銷掉這一行,就OK了。
還是記錄一下linux下環境變數的設置方法。
1 在當前終端設置臨時變數(退出後再進入就沒有了)
2 設置當前用戶環境變跡陪量
即更改用戶目錄下的 .bash_profile 或 .bashrc 文件,在其末行加入:
保存後執行 source ~/.bashrc (or .profile) 讓環境變數立即生效。
3 設置環境變數,對所有用戶適用
打開profile或者environment文件:
添加新路徑到PATH,則在其末尾行加上:
保存後執行 source /etc/profile (or environment) 讓環境變數生效。
C. 在Linux里設置環境變數的方法(export PATH)
比如要把/etc/apache/bin目錄添加到PATH中,方法有三:
1.#PATH=$PATH:/etc/apache/bin
使用這種方法,只對當前會話有效,也就是說每當登出或注銷系統以後,PATH 設置就會失效
2.#vi /etc/profile
在適當位置添加 PATH=$PATH:/etc/apache/bin (注意:= 即等號兩邊不能有任何空格)
這種方法最好,除非你手動強制修改PATH的值,否則將不會被改變
3.#vi ~/.bash_profile
修改PATH行,把/etc/apache/bin添加進去
這種方法是針對用戶起作用的
注意:想改變PATH,必須重新登陸才能生效,以下方法可以簡化工作:
如果修改了/etc/profile,那麼編輯結束後執行source profile(source /etc/profile) 或 執行點命令 ./profile,PATH的值就會立即生效了。
這個方法的原理就是再執行一次/etc/profile shell腳本,注意如果用sh /etc/profile是不行的,因為sh是在子shell進程中執行的,即使PATH改變了也不會反應到當前環境中,但是source是在當前 shell進程中執行的,所以我們能看到PATH的改變。
這樣你就學會Linux系統下修改環境變數PATH路徑的方法。
補充說明
工作環境設置文件
環境設置文件有兩種:系統環境設置文件 和 個人環境設置文件
1.系統中的用戶工作環境設置文件:
登錄環境設置文件:/etc/profile
非登錄環境設置文件:/etc/bashrc
2.用戶個人設置的環境設置文件:
登錄環境設置文件: $HOME/.bash_profile //這個是環境變數設置的地方
非登錄環境設置文件:$HOME/.bashrc //這個是定義別名的地方
登錄環境:指用戶登錄系統後的工作環境
非登錄環境:指用戶再調用子shell時所使用的用戶環境
D. Linux Desktop 環境變數設置
標簽(空格分隔): Linux Deabin AndroidStudio PATH X11
最近電腦上安裝了 Deabin 8 發行版,在配置 Android Studio 所需要的環境變數時出現了一些問題。
修改用戶環境變數配置文件,如 $HOME/.profile 和 $HOME/.bashrc 或者 $HOME/.zshrc ,配置完成之後,可以在終端中 echo 成功顯示修改添加後的 $STUDIO_JDK 和 $PATH ,但點擊桌面添加的快捷方式圖標就一直提示沒有設置所需要的環境變數。
在 $HOME 中新建 .xsessionrc 文件,設置好相關變數即可,例如:
保存完畢之後,注銷重新登錄桌面即可生效。
/etc/X11/xinit/xinitrc 全局初始化腳本執行 /etc/X11/Xsession , Xsession 腳本中又有關於變數的配置。
其中 USERXSESSIONRC=$HOME/.xsessionrc 就是我們添加的文件,在 SYSSESSIONDIR 中,即 /etc/X11/Xsession.d 文件夾下的腳本都會被執行,其中 40x11-common_xsessionrc 這個文件負責執行用戶 HOME 文件夾下的 .xsessionrc 腳本。
內容如下:
E. Linux怎麼設置系統環境變數之export命令詳解
1. Linux export命令簡介
Linux export命令用於設置或顯示環境變數。
在shell中執行程序時,shell會提供一組環境變數。export可新增,修改或刪除環境變數,供後續執行的程序使用。export的效力僅及於該次登陸操作。
export命令用於將shell變數輸出為環境變數,或者將shell函數輸出為環境變數。
一個變數創建時,它不會自動地為在它之後創建的shell進程所知。而命令export可以向後面的shell傳遞變數的值。當一個shell腳本調用並執 行時,它不會自動得到原為腳本(調用者)里定義的變數的訪問權,除非這些變數已經被顯式地設置為可用。export命令可以用於傳遞一個或多個變數的值到任何後繼腳本。
Linux export命令簡介
2. export參數
-f 代表[變數名稱]中為函數名稱。
-n 刪除指定的變數。變數實際上並未刪除,只是不會輸出到後續指令的執行環境中。
-p 列出所有的shell賦予程序的環境變數。
一個變數創建時,它不會自動地為在它之後創建的shell進程所知。而命令export可以向後面的shell傳遞變數的值。當一個shell腳本調用並執行時,它不會自動得到原為腳本(調用者)里定義的變數的訪問權,除非這些變數已經被顯式地設置為可用。export命令可以用於傳遞一個或多個變數的值到任何後繼腳本。
Linux怎麼設置變數環境
3. 在linux里設置環境變數的方法
一般來說,配置交叉編譯工具鏈的時候需要指定編譯工具的路徑,此時就需要設置環境變數。例如我的mips-linux-gcc編譯器在「/opt/abc/123/bin」目錄下,有如下三種方法來設置環境變數:
3.1 直接用export命令,臨時生效
查看是否已經設好,可用命令export查看:
檢查:
輸出結果:
declare -x HISTCONTROL="ignoreps"
declare -x HISTSIZE="1000"
declare -x HOME="/root"
declare -x HOSTNAME="zcwyou"
declare -x LANG="en_US.UTF-8"
declare -x LESSOPEN="||/usr/bin/lesspipe.sh %s"
declare -x LOGNAME="root"
declare -x LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32: .tar=01;31: .tgz=01;31: .arc=01;31: .arj=01;31: .taz=01;31: .lha=01;31: .lz4=01;31: .lzh=01;31: .lzma=01;31: .tlz=01;31: .txz=01;31: .tzo=01;31: .t7z=01;31: .zip=01;31: .z=01;31: .Z=01;31: .dz=01;31: .gz=01;31: .lrz=01;31: .lz=01;31: .lzo=01;31: .xz=01;31: .bz2=01;31: .bz=01;31: .tbz=01;31: .tbz2=01;31: .tz=01;31: .deb=01;31: .rpm=01;31: .jar=01;31: .war=01;31: .ear=01;31: .sar=01;31: .rar=01;31: .alz=01;31: .ace=01;31: .zoo=01;31: .cpio=01;31: .7z=01;31: .rz=01;31: .cab=01;31: .jpg=01;35: .jpeg=01;35: .gif=01;35: .bmp=01;35: .pbm=01;35: .pgm=01;35: .ppm=01;35: .tga=01;35: .xbm=01;35: .xpm=01;35: .tif=01;35: .tiff=01;35: .png=01;35: .svg=01;35: .svgz=01;35: .mng=01;35: .pcx=01;35: .mov=01;35: .mpg=01;35: .mpeg=01;35: .m2v=01;35: .mkv=01;35: .webm=01;35: .ogm=01;35: .mp4=01;35: .m4v=01;35: .mp4v=01;35: .vob=01;35: .qt=01;35: .nuv=01;35: .wmv=01;35: .asf=01;35: .rm=01;35: .rmvb=01;35: .flc=01;35: .avi=01;35: .fli=01;35: .flv=01;35: .gl=01;35: .dl=01;35: .xcf=01;35: .xwd=01;35: .yuv=01;35: .cgm=01;35: .emf=01;35: .axv=01;35: .anx=01;35: .ogv=01;35: .ogx=01;35: .aac=01;36: .au=01;36: .flac=01;36: .mid=01;36: .midi=01;36: .mka=01;36: .mp3=01;36: .mpc=01;36: .ogg=01;36: .ra=01;36: .wav=01;36: .axa=01;36: .oga=01;36: .spx=01;36:*.xspf=01;36:"
declare -x MAIL="/var/spool/mail/root"
declare -x OLDPWD
declare -x PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/abc/123/bin"
declare -x PWD="/root"
declare -x SELINUX_LEVEL_REQUESTED=""
declare -x SELINUX_ROLE_REQUESTED=""
declare -x SELINUX_USE_CURRENT_RANGE=""
declare -x SHELL="/bin/bash"
declare -x SHLVL="1"
declare -x SSH_CLIENT="113.105.164.145 6668 22"
declare -x SSH_CONNECTION="113.105.164.145 6668 113.105.164.151 22"
declare -x SSH_TTY="/dev/pts/0"
declare -x TERM="xterm"
declare -x USER="root"
declare -x XDG_RUNTIME_DIR="/run/user/0"
declare -x XDG_SESSION_ID="2185"
留意一下輸出的這部分:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/abc/123/bin"
可以看到已經包括了剛剛設置的變數路徑。
變數路徑和環境Linux
3.2 修改profile文件,永久生效
把目錄/opt/abc/123/bin在裡面加入:
export PATH="
3.3 修改.bashrc文件,永久生效
在裡面加入:
export PATH="PATH:/opt/abc/123/bin"¨K14K¨G3G在裡面加入:exportPATH="PATH:/opt/abc/123/bin"
檢查結果:
3.4 修改/etc/re.local文件,永久生效
在裡面加入:
export PATH="
「/bin」、「/sbin」、「 /usr/bin」、「/usr/sbin」、「/usr/local/bin」等路徑已經在系統環境變數中了,如果可執行文件在這幾個標准位置,在終端命令行輸入該軟體可執行文件的文件名和參數(如果需要參數),回車即可。
如果不在標准位置,文件名前面需要加上完整的路徑。不過每次都這樣跑就太麻煩了,一個「一勞永逸」的辦法是把這個路徑加入環境變數。命令 export PATH:/opt/abc/123/bin"「/bin」、「/sbin」、「/usr/bin」、「/usr/sbin」、「/usr/local/bin」等路徑已經在系統環境變數中了,如果可執行文件在這幾個標准位置,在終端命令行輸入該軟體可執行文件的文件名和參數(如果需要參數),回車即可。如果不在標准位置,文件名前面需要加上完整的路徑。不過每次都這樣跑就太麻煩了,一個「一勞永逸」的辦法是把這個路徑加入環境變數。命令exportPATH="路徑」(或「PATH=
PATH為環境變數名,如DVSDK;調用時用
export DVSDK)可以把這個路徑加入環境變數,但是退出這個命令行就失效了。要想永久生效,需要把這行添加到環境變數文件里。有兩個文件可選:「/etc/profile」和用戶主目錄下的「.bashprofile」,「/etc/profile」對系統里所有用戶都有效,用戶主目錄下的「.bashprofile」只對這個用戶有效。exportPATH="
PATH:路徑1:路徑2:…:路徑n"),意思是可執行文件的路徑包括原先設定的路徑,也包括從「路徑1」到「路徑n」的所有路徑。當用戶輸入一個一串字元並按回車後,shell會依次在這些路徑里找對應的可執行文件並交給系統核心執行。那個「
」。
注意,與DOS/Window不同,UNIX類系統環境變數中路徑名用冒號分隔,不是分號。另外,軟體越裝越多,環境變數越添越多,為了避免造成混亂,建議所有語句都添加在文件結尾,按軟體的安裝順序添加。
本文已同步至博客站:
https://www.linuxrumen.com/cyml/859.html
F. Linux環境變數PATH設置
/etc/profile和/etc/bashrc都是系統級別的,修改後可以在所有用戶中起作用; /.bash_profile、 /.bashrc和~/.bash_logout都是用戶級別的團彎舉,修改後只會作用於當前用戶。
帶profile的文件都是需要重鬧笑新進入用戶時才會生效,帶bashrc的則是打開新的shell時生效;
執行順序:/etc/profile -> (~/.bash_profile | ~/.bash_login | ~/.profile) -> ~/.bashrc -> /etc/bashrc -> ~/.bash_logout
$ echo $HOME
$ export HELLO="Hello"
$ env
¥ set
readonly TEST
之前介紹的使用 export 命令設置環境變數是在命令行中直接執行,這樣設置的環境變數在退出shell時就會失效。要想設置永久有效的環境變數就需要修改之前提到的文件。
PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N>
你塌碧可以自己加上指定的路徑,中間用冒號隔開
需要注意的是,最好不要把當前路徑」./」放到PATH里,這樣可能會受到意想不到的攻擊。
特點:所有用戶;永久有效;生效需要重新進入用戶
root許可權:
要想修改完文件後就立即生效,可以在命令行中執行:
# source /etc/profile
Source命令也稱為「點命令」,也就是一個點符號(.)。source命令通常用於重新執行剛修改的初始化文件,使之立即生效,而不必注銷並重新登錄
G. linux環境變數配置
Shell變數有局部變數、環境變數之分。局部變數就是指在某個Shell中生效的變數,只在此次登錄中有效。環境變數通常又稱「全局變數」,雖然在Shell中變數默認就是全局的,但是為了讓子Shall繼承當前Shell的變數,需要使用export內建命令將其導出為環境變數。
按變數的生存周期劃分:
永久的:需要修改配置文件,變數永久生效。
臨時的:使用export命令聲明即可,變數在關閉shell時失效。
在配置永久的環境變數時,又可以按照作用范圍分為:
用戶環境變數
系統環境變數。
系統環境變數對所有系統用戶都有效,用戶環境變數僅僅對當前的用戶有效。
全局(公有)配置,不管是哪個用戶,登錄時都會讀取該文件。
它也是全局(公有)的 bash執行時,不管是何種方式,都會讀取此文件。
不要輕易修改此文件
用戶環境變數通常被存儲在下面的文件中:
若bash是以login方式執行時,讀取 ~/.bash_profile ,若它不存在,則讀取 ~/.bash_login ,若前兩者不存在,讀取 ~/.profile 。
若bash是以login方式執行時,讀取 ~/.bash_profile ,若它不存,則讀取 ~/.bash_login ,若前兩者不存在,讀取 ~/.profile 。
只有bash是以login形式執行時,才會讀取.bash_profile,Unbutu默認沒有此文件,可新建。 通常該配置文件還會配置成去讀取 ~/.bashrc 。
當bash是以non-login形式執行時,讀取此文件。若是以login形式執行,則不會讀取此文件。
~/.bash_profile 是互動式、login 方式進入 bash 運行的
~/.bashrc 是互動式 non-login 方式進入 bash 運行的通常二者設置大致相同,所以通常前者會調用後者。
如想將一個路徑加入到環境變數(例如$PATH)中,可以像下面這樣做(修改/etc/profile):
你可以自己加上指定的路徑,中間用冒號隔開。環境變數更改後,在用戶下次登陸時生效,如果想立刻生效,則可執行下面的語句:
bash會在用戶登錄時,讀取下列四個環境配置文件:
全局環境變數設置文件: /etc/profile 、 /etc/bashrc 。 用戶環境變數設置文件: ~/.bash_profile 、 ~/.bashrc 。
讀取順序:① /etc/profile 、② ~/.bash_profile 、③ ~/.bashrc 、④ /etc/bashrc 。
2 .bashrc 和 .bash_profile 的區別
.bash_profile 會用在登陸shell, .bashrc 使用在互動式非登陸 shell 。簡單說來,它們的區別主要是 .bash_profile 是在你每次登錄的時候執行的; .bashrc 是在你新開了一個命令行窗口時執行的。
當通過控制台進行登錄(輸入用戶名和密碼):在初始化命令行提示符的時候會執行.bash_profile 來配置你的shell環境。但是如果已經登錄到機器,在Gnome或者是KDE也開了一個新的終端窗口(xterm),這時,.bashrc會在窗口命令行提示符出現前被執行。當你在終端敲入/bin/bash時.bashrc也會在這個新的bash實例啟動的時候執行。
所以對於我自己,我寫了一個 .pathrc 文件
然後在 .bashrc , .zshrc , .bash_profile , /etc/profile 中都加了
下面是 .pathrc 文件
現在,當你從控制台登錄機器的時候,.bashrc就會被執行。
四、常用的環境變數
BASH Bash Shell的全路徑
CDPATH 用於快速進入某個目錄。
PATH 決定了shell將到哪些目錄中尋找命令或程序
HOME 當前用戶主目錄
HISTSIZE 歷史記錄數
LOGNAME 當前用戶的登錄名
HOSTNAME 指主機的名稱
SHELL 當前用戶Shell類型
LANGUGE 語言相關的環境變數,多語言可以修改此環境變數
MAIL 當前用戶的郵件存放目錄
PS1 基本提示符,對於root用戶是#,對於普通用戶是$
Reference
[1] /etc/profile、/etc/bashrc、 /.bash_profile、 /.bashrc
http://blog.chinaunix.net/uid-26435987-id-3400127.html
[2] Linux如何修改env看到的環境變數? .bashrc和.bash_profile區別
http://blog.csdn.net/xifeijian/article/details/13355031
[3] linux環境變數,bashrc與bashprofile
http://blog.sina.com.cn/s/blog_43e5ad4e0101ei43.html
H. linux下配置自己的環境變數文件my_env.sh
配置環境變數分為系統級和用戶級,系統級所有用戶生效,用戶級針對特定用戶,現場環境根據職能不同,會通過用戶限制操作范圍,環境變數修改以實際需要為准,遵循許可權最小原則。
一般添加系統環境變數,修改/etc/profile文件,如果操作失誤,刪除重要配置,影響系統運行。
centos7版本中 /etc/profile 默認掃描路徑 /etc/profile.d/ 下sh文件,並添加內容到環境變數中,可以通過這種方式不操作/etc/profile增加環境變數。
在/etc/profile.d/下創建文件 my_env.sh,並設置環境變數,如jdk等,內容如下:
vi /etc/profile.d/my_env.sh
編輯用戶文件:~/.bash_profile,增加新path配置信息。如jdk:
自定義命令可以實現很多功能,如項目結構化目錄文件生成、系統命令集合、帶參命令自動填充等,腳本功能決定自定義命令的豐富程度。
創建自定義命令文件目錄,方便集中管理,這里在當前用戶目錄下創建bin目錄:mkdir ~/bin
創建自定義命令文件,文件名為命令名,如vi ~/bin/print,內容列印:echo test,添加文件執行許可權:chmod 700 ~/bin/print
系統級
編輯/etc/profile.d/my_env.sh文件,增加環境變數export PATH= PATH:/home/用戶名/bin
測試
控制台輸入print ,回車即可
I. linux中對所有用戶的變數設置,應當放在哪個文件下
1、首先在linux中查看系統環境變數,可以使用 env列出所有系統環境變數。
J. linux非root許可權配置環境變數
Linux的變數種類
按變數的生存周期來劃分,Linux變數可分為兩類:
1 永久的:需要修改配置文件,變數永久生效。
2 臨時的:使用export命令聲明即可,變數在關閉shell時失效。
設置變數的三種方法
1 在/etc/profile文件中添加變數【對所有用戶生效(永久的)】
用VI在文件/etc/profile文件中增加變數,該變數將會對Linux下所有用戶有效,並且是「永久的」。
例如:編輯/etc/profile文件,添加CLASSPATH變數
export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
註:修改文件後要想馬上生效還要運行# source /etc/profile不然只能在下次重進此用戶時生效。
2 在用戶目錄下的.bash_profile文件中增加變數【對單一用戶生效(永久的)】
用VI在用戶目錄下的.bash_profile文件中增加變數,改變數僅會對當前用戶有效,並且是「永久的」。
例如:編輯guok用戶目錄(/home/guok)下的.bash_profile
命令用法如下
$ cd (進入用戶登陸目錄)
$ls –al .bash_profile(.bash_profile為隱藏文件,因此要用ls –a命令查找)
$vi .bash_profile(用vi編輯.bash_profile)
vi/home/guok/.bash.profile添加如下內容:exportCLASSPATH=./JAVAHOME/lib;JAVA_HOME/jre/lib
註:修改文件後要想馬上生效還要運行$ source /home/guok/.bash_profile不然只能在下次重進此用戶時生效。
3 直接運行export命令定義變數【只對當前shell(BASH)有效(臨時的)】
在shell的命令行下直接使用[export 變數名=變數值] 定義變數,
該變數只在當前的shell(BASH)或其子shell(BASH)下是有效的,
shell關閉了,變數也就失效了,再打開新shell時就沒有這個變數,需要使用的話還需要重新定義。
環境變數的查看
1 使用echo命令查看單個環境變數。例如:
echo $PATH
2 使用env查看所有環境變數。例如:
env
3 使用set查看所有本地定義的環境變數。
使用unset刪除指定的環境變數
set可以設置某個環境變數的值。清除環境變數的值用unset命令。如果未指定值,則該變數值將被設為NULL。示例如下:
export TEST="Test..." #增加一個環境變數TEST env|grep TEST #此命令有輸入,證明環境變數TEST已經存在了
TEST=Test...
unset TEST #刪除環境變數TEST
$ env|grep TEST #此命令沒有輸出,證明環境變數TEST已經刪除
常用的環境變數
PATH 決定了shell將到哪些目錄中尋找命令或程序
HOME 當前用戶主目錄
HISTSIZE歷史記錄數
LOGNAME 當前用戶的登錄名
HOSTNAME指主機的名稱
SHELL 當前用戶Shell類型
LANGUGE 語言相關的環境變數,多語言可以修改此環境變數
MAIL當前用戶的郵件存放目錄
PS1基本提示符,對於root用戶是#,對於普通用戶是$
Linux下設置和查看環境變數
https://www.cnblogs.com/qiuhong10/p/7815943.html
Linux下修改.bash_profile 文件改變PATH變數的值
https://blog.csdn.net/u011323949/article/details/79045788