Linux RPM 初步学习
什么是rpm包
??? 在主流的linux系統(tǒng)上,多數(shù)軟件的安裝、升級(jí)、移除以 及維護(hù)工作都是使用RPM軟件包管理程序來完成的;
??? RPM 是Red-Hat Package Manager(RPM軟件包管理 器)的縮寫,這一文件格式名稱雖然打上了RedHat的標(biāo) 志,但是其原始設(shè)計(jì)理念是開放式的,通常軟件的穩(wěn)定版會(huì) 被官方做成rpm;
常見linux系統(tǒng)中RPM包的通用命名規(guī)則
RPM包的一般格式為:
name-version-arch.rpm
name-version-arch.src.rpm
如,
httpd-2.2.3-29.el5.i386.rpm
??? name,如:httpd,是軟件的名稱。
??? version,如:2.2.3 ,是軟件的版本號(hào)。版本號(hào)的格式通常為 主版本號(hào).次版本號(hào).修正號(hào)
??? 29,是發(fā)布版本號(hào),表示這個(gè)RPM包是第幾次編譯生成的;
??? arch, 如:i386,表示包的適用的硬件平臺(tái),目前RPM支持的平臺(tái)有:i386、i586、i686、sparc和alpha;
??? .rpm或.src.rpm, 是RPM包類型的后綴;.rpm是編譯好的二進(jìn)制包,可用rpm命令直接安裝;.src.rpm表示是源代碼包,需要安裝源碼包生成源碼,并對(duì)源碼編譯生成.rpm格式的RPM包;
??? 特殊名稱:
??? el*? 表示這個(gè)軟件包的發(fā)行商版本,el5表示這個(gè)軟件包是在RHEL 5.x/CentOS 5.x下使用;
??? devel:表示這個(gè)RPM包是軟件的開發(fā)包;
??? noarch:說明這樣的軟件包可以在任何平臺(tái)上安裝,不需要特定的硬件平臺(tái)。在任何硬件平臺(tái)上都可以運(yùn)行;
???? manual 手冊(cè)文檔;
rpm -qa;查詢安裝的所有rpm軟件包;輸入命令回車,安裝的軟件包有很多,前面的顯示內(nèi)容已經(jīng)看不到;
查詢特定軟件包的安裝情況,一般用過濾,rpm -qa|grep xxx 這樣的格式;下圖查詢? firefox 的安裝情況;
-e 參數(shù),刪除軟件包;看一下前面列出的已安裝內(nèi)容中,有一個(gè)speex,不知干嘛的;刪除一下看看;提示:相依性失敗,此軟件包為其他軟件包所需要;
嘗試刪除 firefox;出現(xiàn)?can't create transaction lock on /var/lock...錯(cuò)誤;
這是權(quán)限不足;切換到root;刪除了;再用 rpm -qa|grep xxx 查看,查不到任何內(nèi)容了;
再來安裝 firefox ;練習(xí)一下命令; rpm 基本的常用安裝語法是,rpm -ivh xxx;參數(shù)含義如下圖;
rpm -ivh firefox;安裝失敗;必須要輸入rpm包的全名才行;
不知道rpm包放在何處;找一下看;看 usr/local/ 目錄;看上去沒有;
查找?guī)?"rpm" 的目錄或文件;列出如下;
看一下 /usr/lib 目錄;
進(jìn)到 /usr/lib/rpm 目錄;ls 看一下;看上去這里沒有rpm包;
/var/cache/yum/,根據(jù)資料一些安裝過程的東西可能放這里;看一下,也沒發(fā)現(xiàn)rpm包;
再看 /var/lock/rpm/ 目錄;也沒看到rpm包;
根據(jù)前面輸出的內(nèi)容猜測(cè)一下firefox的rpm包的名字,輸入命令看一下,錯(cuò)誤,下回繼續(xù);
總結(jié)
以上是生活随笔為你收集整理的Linux RPM 初步学习的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VC++ 2012 单元测试入门
- 下一篇: Linux磁盘管理基础学习