RPM是RedHat Package Manager(RedHat軟體包管理工具)的縮寫,這一檔案格式名稱雖然打上了RedHat的标志,但是其原始設計理念是開放式的,現在包括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分發版本都有采用,可以算是公認的行業标準了。
RPM檔案在Linux系統中的安裝最為簡便。以著名的圖像處理軟體XV為例,其RPM包xv-3.10a-13.i386.rpm可以在該程式的首頁中下載下傳取得。
Linux軟體包 大概分為了一下幾種
① 二進制軟體包管理<RPM.YUM>
② 源代碼包管理
③ 腳本安裝<shell或java腳本>
④ Debian系列linux軟體包 <不後續介紹>
以sudo-1.7.4p5-11.el6.i686.rpm這個軟體版為例
解釋下linux命名格式sudu=軟體名1.7.4p5=版本号 11.el6=發行号 i686=硬體平台
安裝sudo 挂載CD光牒什麼的不做介紹了
[root@chenyi Packages]# rpm -ivh sudo-1.7.4p5-11.el6.i686.rpm
<a href="http://itchenyi.com/wp-content/uploads/2012/10/rpm1.png"></a>
RPM軟體包參數
--exludedocs
不安裝軟體包中的文檔檔案
--prefix=
指定路徑進行安裝
--test
測試安裝,不實際安裝
--replacepkgs
覆寫安裝
--replacefiles
忽略錯誤繼續安裝
--nodeps
忽略依賴關系安裝
-a
查詢所有已經安裝的軟體包
-f
查詢檔案所屬的軟體包
-p
查詢軟體包
-i
顯示軟體包資訊
-l
顯示軟體包中的檔案清單
-c
顯示被标注為配置檔案的檔案清單
-d
顯示被标注為文檔的檔案清單
-e
解除安裝軟體包
-qf
查詢檔案隸屬的軟體包
–qi、–qip
查詢軟體包資訊
-ql –qlp
查詢軟體包的安裝檔案
-qd
查詢軟體包的幫助檔案
-qc
查詢軟體包配置檔案
軟體包校驗: rpm –V [軟體名稱]
對應的參數
5
檔案的md5校驗值
S
檔案大小
L
連接配接檔案
T
檔案的建立時間
D
裝置檔案
U
檔案的使用者
G
檔案的使用者組
M
檔案的權限
這裡示範下 –V 這個參數。因為他對于某種環境來說是很不錯的!
以 /etc/inittab 配置檔案為示例,這檔案有啥用 我就不做解釋了。
首先 rpm –qf 檢視/etc/inittab 這個檔案是有什麼軟體包所建立的!
我更改了inittab檔案的内容,更改了它的權限,更改了它的所屬使用者,更改了它的所屬組,然後再校驗就看到了 SM5..UGT.的回執 表示檔案大小改變了,因為内容變了,然後檔案的權限改變了,MD5值也改變了,所屬使用者也改變了,所屬組也改變了,檔案的建立時間也改變了,如果這不是我們管理者所做的更改,那證明 有其他人動過計算機,可能是黑客,可能是那坑爹的 江南style的男主角 !
呵呵,圖上的操作為了驗證效果所配置。别亂噴!
MD5值校驗。咳咳,什麼。我删除了inittab這個檔案???….繼續往下看吧
<a href="http://itchenyi.com/wp-content/uploads/2012/10/rpm4.png"></a>
MD5校驗原理
當安裝一個新的rpm包時,會自動生成一個rpm庫,在需要的時候會通過這個庫來比較得到這些值!
剛才鳳姐附體,不小心把inittab删除了,還好我沒重新開機,不用進救援模式。要線上恢複也簡單!
軟體封包件提取,我們剛才就通過 –qf 參數知道了rpm 包的安裝包的名字,現在挂載關盤提取inittab檔案,沒CD光牒自己去下載下傳initscripts….
Inittab 就這樣修複了。沒什麼很難的啊!!!
源代碼包安裝 以proftpd為例 自己搞包解壓
./configure –prefix=/usr/local 配置
make編譯
make install 安裝
就這樣 裝好了
如果沒裝C編譯器 就裝一個
Gcc cc 其他CC都行
反正 有人說yum比rpm好。我覺得都要用。作為一個技術人員。不要追求新,很多東西要都會,都知道,結合使用才強大撒!
本文轉自 lgpqdwjh 51CTO部落格,原文連結:http://blog.51cto.com/itchenyi/1038649,如需轉載請自行聯系原作者