linux的軟體包管理工具 rpm與yum

2021-08-11 09:12:23 字數 2083 閱讀 8856

一、rpm和yum簡介

rehat和centos廠商的linux上的軟體均是以rpm軟體包的方式來安裝的。rpm是安裝的是一種經過編譯後的軟體包,即是廠商經過在自己的一套硬體和軟體平台編譯安裝後無問題打成的乙個包,以這種方式安裝軟體可以認為是第一需要和其原始的硬體和軟體平台一致、第二需要符合原先的安裝平台的那套依賴關係、且由root來進行安裝(即將包內的檔案解壓打各指定目錄)。

rpm包內的相關資料檔案在/var/lib/yum內,這裡記錄著乙個rpm包的相關引數,用於以後的公升級、移除、查詢等;

rpm預設按照的路徑在linux系統內的一些指定的路徑下,例如/etc下放置一些配置檔案,/usr/bin下放置一些可執行的命令,/usr/lib放置一些程式使用的動態函式庫,/usr/share/doc下放置一些軟體使用手冊和說明檔案,/usr/shar/man放置一些軟體的幫助文件等。

二、rpm的相關命令

rpm最好的地方在於提供很多命令,可以直接的檢視我當前的系統內是否有某個軟體,其安裝的位置,其的配置檔案所在等等資訊。

1、rpm的安裝

rpm  -ivh    *.rpm     ##安裝rpm軟體包,以可見的過程和進度顯示

rpm  -ivh        ##以網上的某個檔案來安裝某軟體包

rpm  -ivh  *rpm  --test    ##檢測要安裝的某軟體包是否有依賴 

rpm  -ivh  *rpm  --prefix   path      ##要將軟體安裝到其他非正規目錄時。比如,想要將某軟體安裝到 /usr/local 而非常規的/bin, /etc 等目錄, 就可以使用--prefix /usr/local

一般來說,rpm 的安裝選項引數大約就是這些。通常建議直接使用 -ivh 就好了, 如果安裝的過程中發現問題,乙個乙個去將問題找出來,盡量不要使用『 暴力安裝法 』。

2、rpm的更新與公升級

rpm -uvh  *rpm    ##後面接的檔案若沒有則直接安裝,若有則公升級

rpm  -fvh  *rpm   ##後面接的檔案若沒有則不執行命令,若有才進行公升級

3、rpm查詢

rpm  -qa     ##列出所有的rpm軟體包,一般和grep   *rpm結合使用來查詢是否安裝了某軟體包

rpm  -ql   *rpm-3.1-5.i386.rpm     ##後面要跟具體的包名稱,要帶上版本資訊,即列出包的檔案都安裝到了什麼位置

rpm  -qi  *rpm-3.1-5.i386.rpm    ##後面要跟具體的包名稱,要帶上版本資訊,即列出軟體的詳細資訊,如開發商、版本與說明等;

rpm  -qc  *rpm-3.1-5.i386.rpm    ##後面要跟具體的包名稱,要帶上版本資訊,即列出包的配置檔案(即/etc下的檔案)都有哪些

rpm  -qf  /etc/crontab     ##後面跟檔名,找出該檔案屬於哪乙個已安裝的軟體

4、移除rpm軟體包

rpm  -e  *rpm   ##移除某rpm軟體包

ps:軟體的移除必須是先移除最頂層的,然後再移除下面的,比如openssh依賴於openssl,此時應該先移除openssh,若先移除openssl則有可能會造成openssh不可用的故障。

三、yum的相關命令

1、yum源及yum倉庫

是透過分析 rpm 的標頭資料後, 根據各軟體的相關性製作出屬性相依時的解決方案,然後可以自動處理軟體的相依屬性問題,以解決軟體安裝、移除、公升級的問題。yum源,可以理解為是乙個yum-server提供的具有多種軟體的倉庫(這裡的倉庫是以軟體分類為顆粒度的,即乙個軟體分類為乙個倉庫),yum進行安裝時會去這個yum源裡去尋找相應軟體倉庫中的rpm包。乙個.repo的檔案就是乙個倉庫,例如阿里雲提供的centos-base.repo,其內容如下

2、yum相關命令

yum [list|info|search|provides|whatprovides] 引數    ###查詢功能

yum [install|update] 軟體    ##安裝公升級軟體

yum [remove] 軟體    ##移除某軟體

yum clean [packages|headers|all]   ##清除yum倉庫的所有快取資料

yum  makecache   ##生成快取

linux軟體包管理工具

在現行的linux發布版本中,軟體包管理工具使用最多的是rpm和dpkg,但是這兩者都不能解決軟體之間的依賴關係,所以又有了yum和apt,yum其實是對rpm的封裝,而apt是對dkpg的封裝,兩者都在封裝的同時,很好的解決了軟體依賴問題,使用起來非常方便。下面是一些軟體管理常用的命令 更新軟體列...

rpm(centos)軟體包管理工具

rpm red hat package manager 軟體包的管理工具。rpm原本是red hat linux發行版專門用來管理linux各項套件的程式,由於它遵循gpl規則且功能強大方便,因而廣受歡迎。逐漸受到其他發行版的採用。rpm套件管理方式的出現,讓linux易於安裝,公升級,間接提公升了...

Linux的軟體包管理工具功能介紹

linux的軟體包管理工具分為兩種,一種是包括源庫和自動處理依賴關係的,一種是對單獨軟體包操作的 功能centos rhel ubuntu 從repo查詢軟體包 yum list search apt search 從repo安裝軟體包 yum install apt install 從repo更新...