CentOS7主要有rpm和yum這兩種包軟件的管理。兩種包的管理各有用處,其中主要區別是:YUM使用簡單但須要聯網,YUM會去網上的YUM包源去獲取所須要的軟件包。而RPM的須要的操做經度比較細,須要咱們作的事情比較多。html
軟件包的安裝和卸是很日常的事,但在Linux上面卻不簡單。Linux的其中一個哲學就是一個程序只作一件事,而且作好。組合小程序來完成複雜的任務,這樣作有不少好處,可是各個小程序之間每每會存在着複雜的依賴關係。這時就有了redhat包管理器rpm。英文是redhat package manager ,redhat 軟件包的管理node
rpm是以一種數據庫記錄的方式來將所須要的套件安裝在Linux主機的一套管理程序。也就是說Linux系統中存在一個關於rpm的數據庫,它記錄了安裝的包與包之間的依賴相關性。rpm包是預先在Linux主機上編譯好並打包的文件,安裝起來很是快捷。下面就介紹rpm經常使用的命令數據庫
首先是:小程序
rpm –helpvim
能夠看到這裏有不少的命令,是rpm須要命令,下面列出了經常使用命令。windows
RPM經常使用命令:架構
rpm 包名字結構:url
glibc-2.17-196.el7_4.2.x86_64spa
glibc -2 .17 -el7 x86 64.net
軟件名 主版本號 次版本號 修訂號 RHEL7 CPU架構平臺 支持系統位數
-el我是哪一個平臺的,rpm包有個特色,我是centOS7的rpm包通常只能裝到CentOS7的系統裏,通常是CentOS6的軟件包只能裝到CentOS6的系統裏。
你們可能也看到事後面以i686結尾的rpm包,這類是32位的rpm軟件包。
分清楚以後咱們就進行安裝。
-i ,--install 安裝軟件包
--nodeps 不驗證軟件包的依賴,什麼叫軟包的依賴,你們都習慣windows的雙擊下一步,下一步,Linux不是這樣子的。
-v, --verbose 提供更多的詳細信息輸出
-h ,--hash 軟件包安裝的時候列出哈希標記
你們就記住ivh這幾個都須要。
好比說我想安裝一個vagrant的安裝包。
rmp –ivh vagrant_1.9.8_x86_64.rpm
加入-h 安裝的進度條就有了。
若是想要升級這個rpm軟件包,輸入:
rpm -Uvh 加這個軟件包的名字-U:即升級的意思,這裏就不演示了。,通常升級用的比較少,只用在有漏洞的時候可能會用到,
接着咱們剛剛安裝了vagrant,如何能查詢到安裝的信息,輸入:
rpm –qa
其中 –a選項是查詢全部已經安裝的軟件包。
q是查詢一個包是否安裝
從這裏能夠看大將全部安裝的rpm都列了出來,那麼安裝了這麼多軟件包。
我僅想搜索剛剛安裝的vagrant,輸入正則搜索是否是能夠啊:
rpm -qa |grep vagrant
使用管道和搜索,如今顯示了這個包的信息,rpm還提供了一種簡單的方法:
rpm –q vagrant
這樣就能搜索到咱們剛剛安裝的rpm包了,下面在作一個演示。
rpm –q vagrant_1.9.8_x86_64.rpm
若是你這樣搜索,加入了後綴,是搜索不出來的:若是加了平臺信息及後綴名,反而不能查出來,這點你們要注意。
rpm 包的卸載,
rpm –e 包的名字 ,e是擦除的意思,卸載的時候,咱們要寫查詢出來的這個名字:
rpm –e vagrant-1.9.8-1.x86_64
而不能寫安裝時候的名字,這兩個名字是不同的。
在查詢一下,已經沒有了。
下面我再將這個包進行安裝,安裝的命令相信你們都會了,輸入:
rpm –ivh vagrant_1.9.8_x86_64.rpm
安裝好了以後,輸入
rpm –qi vagrant
其中,q 是查詢,i是安裝,一塊兒用就是查詢安裝的軟件包vagrant的信息。
這裏一樣不須要輸入後綴,咱們能夠看到vagrant這個rpm軟件包的詳細信息。有name是..,等等。
輸入:rpm -ql 包名
列出一個rpm包安裝的文件
-l 顯示軟件包的文件列表
列出某一個文件屬於哪一個rpm包
rpm -qf 文件的絕對路徑
文件的絕對路徑如何查找:whichvim
rpm -qf`which vim`
-f 查詢文件所屬於的軟件包。
RPM下載網址: