一、軟體包管理器

1、功能:
(1)將軟體包打包成一個檔案,其中包括:
①二進位制程式
②庫檔案
③配置檔案
④幫助檔案
(2)生成資料庫,追中所安裝的每一個檔案。

2、軟體包管理器的核心功能:
(1)製作軟體包
(2)安裝、解除安裝、升級、查詢、校驗

3、不同發行版的不同的軟體包管理器:
(1)RedHat,SUSE常用:RPM
原名為RatHat Package Manager(PRM is Package Manager)
(2)Debian常用:dpt

4、RPM不提供自動解決依賴關係的功能。

5、yum和apt-get簡介:
(1)yum,apt-get是前端工具
(2)RPM,dpt是後端工具
(3)yum(Yellodog Update Modifier),是RPM提供的更高階工具,能手動管理RPM的依賴關係
(4)apt-get是dpt的常見工具,能為dpt提供了自動解決依賴關係的工具。

二、rpm包介紹

1、rpm功能:管理軟體包

2、rpm資料庫在/var/lib/rpm中

3、rpm管理工作:
(1)安裝
(2)查詢
(3)解除安裝
(4)升級
(5)校驗
(6)資料庫的重建等工作

4、rpm命名:
(1)rpm包名的組成部分:
①主包:bind-9.7.1-1.e15.i586.rpm
該是一個例子
blind是包名
9.7.1是版本號
e15.i586是平臺架構
②子包:bind-libs-9.7.1-1.e15.i586.rpm
或bind-utils-9.7.1-1.e15.i586.rpm

(2)包名一般格式:name-version-release.arch
name—>包名
version—>版本號
release—>發行號
arch—>平臺架構
①例:blind-major.minor.release-release.arch.rpm
②major:主版本號,重大改進
③minor:次版本號,某個子功能發生重大變化
④release:發行號,修正了某些bug,調整了一點功能

(3)rpm包的格式:
①二進位制格式
②原始碼格式

(4)用uname {-a,-r}可以檢視平臺版本,核心版本

三、安裝軟體包

1、格式:
(1)rpm -i /PATH/TO/PACKAGE_FILE
(2)常用格式:
rpm -ivh /PATH/TO/PACKAGE_FILE
例子:rpm -ivh zsh-4.3.10-7.e16.x86_64.rpm

2、選項
(1)-h:以#來顯示安裝進度;每個#表示2%。
(2)-v:顯示詳細的安裝過程。
(3)-vv:顯示更加詳細的安裝過程。
(4)–nodeps:安裝時忽略依賴關係。
(5)–force:強行安裝,可以實現重灌或者降級
(6)–replacepkgs:重新安裝,替換原有安裝。

四、查詢軟體包

1、格式:
rpm -q /PACKAGE_NAME
例子:rpm -q zsh

2、選項:
(1)-qa:查詢已經安裝的所有包
例:rpm -qa
(2)-qi:查詢指定包的說明資訊(information)
(3)-ql:查詢指定包安裝後生成的檔案列表(list)
(4)-qc:查詢指定包安裝的配置檔案(configure)
(5)-qf /path/to/somefile :查詢指定的檔案由哪個rpm包安裝生成的。
例:rpm -qf /bin/ls
(6)-qd:查詢指定包安裝的幫助檔案(document)
(7)-q –scripts PACKAGE_NAME:查詢指定包中包含的指令碼
例:rpm -q –scripts bash(zsh)
(8)-p:如果某rpm包尚未安裝,我們需查詢其說明資訊、安裝以後會生成的檔案
例:rpm -qp{i,l,c,d} /PATH/TO/PACKAGE_FILE

五、升級軟體包

1、格式:
(1)rpm -Uvh /PATH/TO/NEW_PACKAGE_FILE
如果裝有老版本的,則升級,否則,則安裝
(2)rpm -Fvh /PATH/TO/NEW_PACKAGE_FILE
如果裝有老版本的,則升級,否則,則退出

2、選項:
(1)–oldpackage:降級

六、解除安裝軟體包

1、格式
rpm -e PACKAGE_NAME

2、選項:
(1)–nodeps:無視依賴關係

七、校驗

1、格式:
rpm -V PACKAGE_NAME
2、加密型別:
(1)對稱加密
(2)公鑰加密
(3)單向加密

3、校驗來源合法性及軟體包完整性
(1)sha1,md5:驗證軟體包完整性
(2)dsa,pgp:驗證來源合法性,業即是驗證簽名。
(3)匯入金鑰檔案格式:
rpm –import /etc/pki/rpm-rgp/RPM-GPG-KEY-FILE

4、只驗證軟體包簽名,不驗證軟體包合法性格式:
rpm -K –nodigest /PATH/TO/PACKAGE_FILE

5、只驗證軟體包合法性,不驗證軟體包簽名格式:
rpm -K –nosignature /PATH/TO/PACKAGE_FILE

八、重建rpm資料庫

1、rpm資料路在/var/lib/rpm目錄下
2、重建資料庫格式:
(1)rpm –rebuilddb
重建資料庫,一定會重新建立
(2)rpm –initdb
初始化資料庫,沒有才建立,有就不用建立

上述是我個人的一些總結,如有錯誤,歡迎大家指出,謝謝大家。