第1章 源碼安裝
源碼包安裝會(huì)比RPM包安裝慢,是因?yàn)镽PM的軟件包是根據(jù)特定系統(tǒng)和平臺(tái)而指定的,經(jīng)常一種
程序會(huì)提供很多RPM包的格式,用戶根據(jù)系統(tǒng)情況選擇適合的RPM包直接安裝,而源碼包相當(dāng)于
通用型,可以是用于多個(gè)系統(tǒng)中,所以需要運(yùn)行configure腳本來檢測環(huán)境,生成對應(yīng)的安裝信息。
1.1 源碼安裝優(yōu)點(diǎn)
1、文檔齊全
2、因?yàn)榭梢远ㄎ坏酱a,所以debug方便
3、本機(jī)兼容性最好(由于是本機(jī)編譯的,只要編譯通過,就沒有各種庫的依賴的問題)
1.2 源碼安裝的缺點(diǎn)
1、編譯麻煩
2、缺乏自動(dòng)依賴管理,軟件升級(jí)麻煩
1.3 安裝流程
1.3.1 解壓源碼包tar文件:源碼包通常會(huì)使用tar工具歸檔然后使用gunzip或bzip2進(jìn)行壓縮,
后綴格式會(huì)分別
為.tar.gz與.tar.bz2,分別的解壓方式:
tar -zxvf FileName.tar.gz
tar -jxvf FileName.tar.bz2
1.3.2 切換到解壓后的目錄
cd /解壓后目錄
1.3.3 準(zhǔn)備編譯工作:在開始安裝服務(wù)之前,需要執(zhí)行configure腳本,會(huì)自動(dòng)的對當(dāng)前系統(tǒng)進(jìn)行
一系列的評(píng)估,如源文件、軟件依賴庫、編譯器、匯編器、連接器檢查等等,如果有需要,還
可以使用-prefix參數(shù)來指定程序的安裝路徑,而當(dāng)腳本檢查系統(tǒng)環(huán)境符合要求后,則會(huì)在當(dāng)
前目錄下生成一個(gè)Makefile文件。
./configure -prefix=/usr/local/program
1.3.4 生成安裝程序:上步生成的Makefile文件會(huì)保存有系統(tǒng)環(huán)境依賴關(guān)系的安裝規(guī)則,接下來
需要使用make命令來根據(jù)Makefile文件提供的規(guī)則使用合適的SHELL來編譯所有依賴的
源碼,然后make命令會(huì)生成一個(gè)最終可執(zhí)行的安裝程序。
make 編譯
1.3.5 安裝服務(wù)程序:如果在configure腳本階段中沒有使用-prefix參數(shù),那么程序一般會(huì)被默認(rèn)
安裝到/usr/local/bin目錄中。
1.3.6 清理臨時(shí)文件(可選):
1.3.7 卸載服務(wù)程序命令(需要才執(zhí)行)
1.3.8 查看安裝信息
whereis 命令定位可執(zhí)行文件、源代碼文件、幫助文件在文件系統(tǒng)中的位置。這些文件的
屬性應(yīng)屬于原始代碼,二進(jìn)制文件,或是幫助文件。
例如:whereis java
whereis [-bmsu] [BMS 目錄名 -f ] 文件名
-b 搜索文件的二進(jìn)制部分。
-m 搜索文件的手冊部分。
-s 搜索文件的源部分。
-u 沒有說明文檔的文件
-B、-M 和 -S 標(biāo)志可以用于更改或限制 whereis 命令搜索的位置。由于該程序?yàn)榱诉\(yùn)行得
更快而使用了chdir子例程,所以用-M、-S 和 -B標(biāo)志目錄列表給出的路徑名必須是完整的;
例如,它們必須以一個(gè)/(斜杠)開始。
-B 與 -b 一樣,但是添加了要搜索的目錄。更改或限制 whereis 命令搜索二進(jìn)制文件的位置。
-M 與 -m 一樣,但是添加了要搜索的目錄。更改或限定 whereis 命令搜索手冊部分的位置。
-S 與 -s 一樣,但是添加了要搜索的目錄。更改或限定 whereis 命令搜索源的位置。
-f 終止最后的 -M、-S 或 -B 目錄列表并發(fā)文件名起始位置信號(hào)。
(四)[參數(shù)][文件]
-c 壓縮文件
-x 解壓文件
-t 查看壓縮包內(nèi)有哪些文件
-z 用Gzip壓縮或解壓
-j 用bzip2壓縮或解壓
-v 顯示壓縮或解壓過程信息
-f 目標(biāo)文件名
-P 保留原始權(quán)限和屬性
-p 使用絕對路徑壓縮
-C 指定解壓到的目錄
第2章 RPM包安裝
對于一個(gè)rpm包來說,都是有"-"和"."構(gòu)成的,基本上有以下幾部分組成:
* 包名 *版本信息 * 發(fā)布版本號(hào) * 運(yùn)行平臺(tái),當(dāng)出現(xiàn)noarch,代表的是軟件可以平臺(tái)兼容
2.1 常用用法1
2.1.1 安裝
- rpm -i 需要安裝的包文件
- rpm -iv 需要安裝的包文件(顯示安裝詳情)
- rpm -ivh 需要安裝的包文件(顯示安裝詳情及進(jìn)度)
2.1.2 升級(jí)
- rpm -U 需要升級(jí)的包文件
- rpm -Uvh 需要升級(jí)的包文件(顯示升級(jí)詳情及進(jìn)度)
2.1.3 卸載
注:如果其他程序依賴要卸載的包,系統(tǒng)會(huì)提示不能刪除,若需要強(qiáng)行刪除加上--nodeps,
會(huì)強(qiáng)制刪除,但可能導(dǎo)致依賴于它的軟件不能運(yùn)行。
2.1.4 查看已安裝
2.1.5 查看指定包
- rpm -qa | grep "軟件或者包的名字"
2.2 常用方法2
2.2.1 第一種:對于已安裝的如軟件服務(wù)信息查詢
1、查詢系統(tǒng)中已經(jīng)安裝的軟件
2、查詢一個(gè)已經(jīng)安裝的文件屬于哪個(gè)軟件包;
3、查詢已安裝軟件包都安裝到何處;
軟件名定義是:rpm包去除平臺(tái)信息和后綴后的信息
4、查詢一個(gè)已安裝軟件包的信息
5、查看一下已安裝軟件的配置文件;
6、查看一個(gè)已經(jīng)安裝軟件的文檔安裝位置:
7、查看一下已安裝軟件所依賴的軟件包及文件;
2.2.2 第二種:對于未安裝的軟件包信息查詢
1、查看一個(gè)軟件包的用途、版本等信息;
2、查看一件軟件包所包含的文件;
3、查看軟件包的文檔所在的位置;
4、查看一個(gè)軟件包的配置文件;
5、查看一個(gè)軟件包的依賴關(guān)系
2.2.3 [選項(xiàng)] [參數(shù)]:
-a:查詢所有軟件包
-e:刪除指定的軟件包
-f<文件>:查詢擁有指定文件的套件;
-h或--hash:顯示進(jìn)度信息
-i:顯示包的詳細(xì)信息
-i<軟件包>或--install<軟件包>:安裝指定的軟件包
-l:顯示包的文件列表
-p:查詢指定的RPM包
-q:使用詢問模式
-U<軟件包>或--upgrade<軟件包>:升級(jí)指定的程序包
-v:顯示指令執(zhí)行過程;
-vv:詳細(xì)顯示指令執(zhí)行過程,便于排錯(cuò)。
常用命令組合:
-ivh:安裝顯示安裝進(jìn)度--install--verbose--hash
-Uvh:升級(jí)軟件包--Update;
-qpl:列出RPM軟件包內(nèi)的文件信息[Query Package list];
-qpi:列出RPM軟件包的描述信息[Query Package install package(s)];
-qf:查找指定文件屬于哪個(gè)RPM軟件包[Query File];
-Va:校驗(yàn)所有的 RPM軟件包,查找丟失的文件[View Lost];
-e:刪除包
--force 強(qiáng)制操作 如強(qiáng)制刪除等;
--requires 顯示該包的依賴關(guān)系;
--nodeps 忽略依賴關(guān)系并繼續(xù)操作
第3章 yum
3.1 安裝流程
1、安裝: yum install 軟件
2、升級(jí): yum update 軟件
3、刪除: yum remove 軟件
4、查看: yum info 軟件
5、搜索軟件: yum search 軟件
6、查看依賴關(guān)系: yum deplist 軟件
7、查看已安裝軟件: yum list installded
3.2 [選項(xiàng)] [參數(shù)]:
-e 靜默執(zhí)行
-t 忽略錯(cuò)誤
-R[分鐘] 設(shè)置等待時(shí)間
-y 自動(dòng)應(yīng)答yes
check-update 檢查可更新的包
clean all 清除全部
clean packages 清除臨時(shí)包文件(/var/cache/yum 下文件)
clean headers 清除rpm頭文件
clean oldheaders 清除舊的rpm頭文件
deplist 列出包的依賴
list 可安裝和可更新的RPM包
list installed 已安裝的包
list extras 已安裝且不在資源庫的包
info 可安裝和可更新的RPM包 信息
info installed 已安裝包的信息(-qa 參數(shù)相似)
install[RPM包] 安裝包
localinstall 安裝本地的 RPM包
update[RPM包] 更新包
upgrade 升級(jí)系統(tǒng)
search[關(guān)鍵詞] 搜索包
provides[關(guān)鍵詞] 搜索特定包文件名
reinstall[RPM包] 重新安裝包
repolist 顯示資源庫的配置
resolvedep 指定依賴
remove[RPM包] 卸載包
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。