RPM包安裝軟件 -- 詳細解讀


一、RPM包命名規則

1、RPM包在哪

RPM包在光盤中

2、RPM包命名原則

httpd-2.2.15-15.e16.centos.1.i686.rpm

  httpd 軟件包名

  2.2.15 軟件版本

  15 軟件發布次數

  e16.centos 適合的Linux平台

  i686 適合的硬件平台

  rpm  rpm包擴展名

3、RPM包依賴性

樹形依賴:a >>> b >>> c

環形依賴:a >>> b >>> c >>> a

模塊依賴:查詢網站:www.rpmfind.net

二、安裝命令

1、包全名與包名

包全名:操作的包是沒有安裝的軟件包時,使用包全名。而且要注意路徑。

包名:操作已經安裝的軟件包時,使用包名,是搜索/var/lib/rpm/中的數據庫。

2、RPM安裝

安裝和升級時一定要在安裝包目錄或者打絕對路徑。

rpm  -ivh  包全名

選項:

  -i (install)  安裝

  -v (verbose) 顯示詳細信息

  -h (hash) 顯示進度

  --nodeps 不檢測依賴性(絕不允許使用)

注:安裝時要看到第二個100%才說明安裝成功

三、升級與卸載

1、升級

rpm  -Uvh  包全名

選項:

  -U  (upgrade) 升級

2、卸載

rpm  -e  包名

選項:

  -e  (erase)卸載

  --nodeps 不檢測依賴性(實際工作中也不允許使用)

四、RPM包查詢

1、查詢是否安裝

rpm  -q  包名

# 查詢包是否安裝

選項:

  -q  查詢(query)

rpm  -qa 

# 查詢所有已經安裝的RPM包

選項:

  -a  所有(all)

2、查詢軟件包詳細信息

rpm  -qi  包名

選項:

  -i  查詢軟件信息(information)

  -p   查詢未安裝包信息(package)

查詢已安裝包信息

 查詢未安裝包信息

注:基本沒啥屌用

3、查詢包中文件安裝位置

rpm  -ql  包名

選項:

  -l  列表(list)

  -p   查詢未安裝包信息(package)

查詢已安裝包文件安裝位置信息

 查詢未安裝包文件安裝位置信息

 

常規安裝位置

4、查詢系統文件屬於哪個RPM包

rpm  -qf  系統文件名

選項:

  -f   查詢系統文件屬於哪個軟件包(file)

 

5、查詢軟件包的依賴性

rpm  -qR  包名

選項:

  -R  查詢軟件包的依賴性(requires)

  -p  查詢未安裝包信息(package)

注:查詢依賴性可用性不高

五、RPM包校驗

1、RPM包校驗

rpm  -V  已安裝包的包名

選項:

  -V   校驗指定rpm包中的文件(verify)

驗證內容中的8個信息的具體內容如下:

  s   文件大小是否改變

  M    文件的類型或文件的權限(rwx)是否被改變

  5  文件MD5校驗和是否改變(可以看成文件內容是否改變)

  D  設備的主從代碼是否改變

  L  文件路徑是否改變

  U  文件屬性(所有者)是否改變

  G  文件屬組是否改變

  T  文件的修改時間是否改變

我往 httpd 配置文件 /etc/httpd/conf/httpd.conf 加了一行注釋,發現校驗錯誤。

文件類型:

  c  配置文件(config file)

  d  普通文檔(documentation)

  g  “鬼” 文件(ghost file),很少見,就是該文件不應該被這個RPM包包含

  L  授權文件(license file)

  r  描述文件(read me)

2、RPM包中文件提取

rpm2cpio  包全名  |  cpio  -idv  .文件絕對路徑

  -rpm2cpio

  # 將rpm包轉換為cpio格式的命令

  -cpio

  # 是一個標准工具,它用於創建軟件檔案文件和從檔案文件中提取文件

[root@bogon ~]# cpio  選項  <  [文件|設備]

選項:

  -i :copy-in 模式,還原

  -d:還原時自動新建目錄

  -v:顯示還原過程

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM