轉自Linux下軟件安裝的幾種方式
Linux 系統的/usr目錄
Linux 軟件安裝到哪里合適,目錄詳解
Linux 的軟件安裝目錄是也是有講究的,理解這一點,在對系統管理是有益的
/usr
:系統級的目錄,可以理解為 C:/Windows/
,
/usr/lib
理解為 C:/Windows/System32
。
/usr/bin:
幾乎所有的系統可執行文件都會安裝在這里
/usr/local/bin:
則是可以存放一些系統用戶自己特定的可執行文件,不用擔心會被系統升級之類的行為覆蓋,破壞,這個目錄不是必須的
/usr/local
: 用戶級的程序目錄,可以理解為 C:/Progrem Files/
。 用戶自己編譯的軟件默認會安裝到這個目錄下。
/opt
:用戶級的程序目錄 ,可以理解為D:/Software
, opt有可選的意思, 這里可以用於放置第三方大型軟件(或游戲),當你不需要時,直接 rm -rf
掉即可。在硬盤容量不夠時,也可將/opt單獨掛載到其他磁盤上使用。
源碼放哪里?
/usr/src
:系統級的源碼目錄。
/usr/local/src
:用戶級的源碼目錄。
-----------------翻譯-------------------
/opt
Here’s where optional stuff is put. Trying out the latest Firefox beta? Install it to /opt where you can delete it without affecting other settings. Programs in here usually live inside a single folder whick contains all of their data, libraries, etc.
這里主要存放那些可選的程序。你想嘗試最新的firefox測試版嗎?那就裝到/opt目錄下吧,這樣,當你嘗試完,想刪掉firefox的時候,你就可 以直接刪除它,而不影響系統其他任何設置。安裝到/opt目錄下的程序,它所有的數據、庫文件等等都是放在同個目錄下面。
舉個例子:剛才裝的測試版firefox,就可以裝到/opt/firefox_beta目錄下,/opt/firefox_beta目錄下面就包含了運 行firefox所需要的所有文件、庫、數據等等。要刪除firefox的時候,你只需刪除/opt/firefox_beta目錄即可,非常簡單。
/usr/local
This is where most manually installed(ie. outside of your package manager) software goes. It has the same structure as /usr. It is a good idea to leave /usr to your package manager and put any custom scripts and things into /usr/local, since nothing important normally lives in /usr/local.
這里主要存放那些手動安裝的軟件,即不是通過“新立得”或apt-get安裝的軟件。它和/usr目錄具有相類似的目錄結構。讓軟件包管理器來管理/usr目錄,而把自定義的腳本(scripts)放到/usr/local目錄下面,我想這應該是個不錯的主意。
一、簡介
Linux下軟件安裝的方式主要有源碼安裝、rpm安裝、yum安裝,而常用的安裝包主要有以下三種:
-
tar包:例如software-1.2.3-1.tar.gz。它是使用UNIX系統的打包工具tar打包的。
-
rpm包,如software-1.2.3-1.i386.rpm。它是Redhat Linux提供的一種包封裝格式。
(現在用的全稱叫RPM Package Manager,以前叫Redhat Package Manager)
-
dpkg包,如software-1.2.3-1.deb。它是Debain Linux提供的一種包封裝格式。
而且,大多數Linux應用軟件包的命名也有一定的規律,它遵循:
名稱-版本-修正版-類型
例如:software-1.2.3-1.tar.gz
軟件名稱:software
版本號:1.2.3
修正版本:1
類型:tar.gz
二、常見的安裝方法
(1)源碼安裝
幾乎所有的開源軟件都支持在Linux下運行,而這些軟件一般都以源碼形式發放,只需要Linux安裝了gcc、make、automake、autoconf都支持源碼安裝。
①源碼安裝的方式
1、cd 源碼所在目錄 2、./configure [opts] 3、make 4、make install
②源碼安裝優點
源碼安裝的優點有以下幾點
- 文檔齊全
- 因為可以定位到代碼,所以debug方便
- 本機兼容性最好(由於是本機編譯的,只要編譯通過,就沒有各種庫的依賴的問題)
③源碼安裝的缺點
- 編譯麻煩
- 缺乏自動依賴管理,軟件升級麻煩
(2)rpm包安裝
rpm包安裝幾乎在所有Linux平台上都支持,它就像Windows下的exe安裝文件一樣,各種文件已經編譯好,並打包,哪個文件在哪個文件夾里面都已經被指定好,所以很方便。
①rpm包安裝的方式
由於安裝的方式非常簡單,我們只需要輸入一條指令即可。
rpm -i xxx.rmp
通過上面的命令我們便可以完成rpm包的安裝。
②rpm包卸載的方式
rmp包卸載的方法也很簡單,只需要如下命令:
rpm -e 包名
③rpm包升級的方式
升級需要如下命令:
rpm -U 包名
我們需要注意的是此時計算機需要聯網。
(三)yum安裝軟件包
yum並不是一種包,它是安裝包的一個軟件,在CentOS中是軟件包的管理器,yum也對依賴關系進行管理,但是必須要在聯網的情況下完成。
①yum包安裝的方式
yum -y install
②yum包卸載的方式
yum remove 包名
三、安裝完成后執行的方法
-
有些軟件安裝后會自動在應用程序列表里加上快捷鍵,和windows一樣,到那里找就行了。
-
如果在應用程序列表里找不到的話,可以直接在 / 開始 / 運行命令里輸入命令:啟動命令一般就是軟件名,如firefox,realplay,xmms等
-
也可以打開一個shell終端,輸入軟件名,和在“運行命令”里一樣。如果不知道命令全程的話,可以輸入開頭的字母,然后按tab鍵查找,系統會自動顯示以輸入字母開頭的所有命令 /
-
你也可以直接到安裝目錄下運行啟動文件,Linux下的可執行圖標和shell終端圖標很像
-
到 / usr / bin目錄里找安裝的軟件啟動文件執行命令。Linux系統把所有可執行的文件命令在 / usr / bin目錄里都作了啟動連接,你可以去那個目錄尋找你安裝的文件的啟動命令,雙擊啟動
/usr不是user的縮寫,其實usr是Unix Software Resource的縮寫, 也就是Unix操作系統軟件資源所放置的目錄,而不是用戶的數據;所有系統默認的軟件都會放置到/usr, 系統安裝完時,這個目錄會占用最多的硬盤容量
/usr目錄下的重要目錄
目錄 |
應放置文件內容 |
/usr/X11R6/ |
為X Window System重要數據所放置的目錄,之所以取名為X11R6是因為最后的X版本為第11版,且該版的第6次釋出之意。 |
/usr/bin/ |
絕大部分的用戶可使用指令都放在這里。請注意到他與/bin的不同之處。(是否與開機過程有關) |
/usr/include/ |
c/c++等程序語言的檔頭(header)與包含檔(include)放置處,當我們以tarball方式 (*.tar.gz 的方式安裝軟件)安裝某些數據時,會使用到里頭的許多包含檔。 |
/usr/lib/ |
包含各應用軟件的函式庫、目標文件(object file),以及不被一般使用者慣用的執行檔或腳本(script)。 某些軟件會提供一些特殊的指令來進行服務器的設定,這些指令也不會經常被系統管理員操作, 那就會被擺放到這個目錄下啦。要注意的是,如果你使用的是X86_64的Linux系統, 那可能會有/usr/lib64/目錄產生 |
/usr/local/ |
統管理員在本機自行安裝自己下載的軟件(非distribution默認提供者),建議安裝到此目錄, 這樣會比較便於管理。舉例來說,你的distribution提供的軟件較舊,你想安裝較新的軟件但又不想移除舊版, 此時你可以將新版軟件安裝於/usr/local/目錄下,可與原先的舊版軟件有分別啦。 你可以自行到/usr/local去看看,該目錄下也是具有bin, etc, include, lib...的次目錄 |
/usr/sbin/ |
非系統正常運作所需要的系統指令。最常見的就是某些網絡服務器軟件的服務指令(daemon) |
/usr/share/ |
放置共享文件的地方,在這個目錄下放置的數據幾乎是不分硬件架構均可讀取的數據, 因為幾乎都是文本文件嘛。在此目錄下常見的還有這些次目錄:/usr/share/man:聯機幫助文件 /usr/share/doc:軟件雜項的文件說明 /usr/share/zoneinfo:與時區有關的時區文件 |
/usr/src/ |
一般原始碼建議放置到這里,src有source的意思。至於核心原始碼則建議放置到/usr/src/linux/目錄下。 |
此外 還應理解【Linux根目錄下各個目錄的用途及含義】
環境變量 轉自
Linux下設置和查看環境變量
Linux的變量種類
按變量的生存周期來划分,Linux變量可分為兩類:
1 永久的:需要修改配置文件,變量永久生效。
2 臨時的:使用export命令聲明即可,變量在關閉shell時失效。
設置變量的三種方法
1 在/etc/profile文件中添加變量【對所有用戶生效(永久的)】
用VI在文件/etc/profile文件中增加變量,該變量將會對Linux下所有用戶有效,並且是“永久的”。
例如:編輯/etc/profile文件,添加CLASSPATH變量
# vi /etc/profile
export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
注:修改文件后要想馬上生效還要運行# source /etc/profile不然只能在下次重進此用戶時生效。
2 在用戶目錄下的.bash_profile文件中增加變量【對單一用戶生效(永久的)】
用VI在用戶目錄下的.bash_profile文件中增加變量,改變量僅會對當前用戶有效,並且是“永久的”。
例如:編輯guok用戶目錄(/home/guok)下的.bash_profile
vi/home/guok/.bash.profile添加如下內容:exportCLASSPATH=./JAVAHOME/lib;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..." #增加一個環境變量TESTexport 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用戶是#,對於普通用戶是$