輕松實(shí)現(xiàn)Centos系統(tǒng)的軟件包安裝管理:yum指令實(shí)戰(zhàn)詳解
寫在前面
雖然CentOS7、8馬上要停止維護(hù)了,但是提供CentOS Stream版本,另外使用CentOS用戶也比較多,因此如果有需要,yum相關(guān)指令還是有必要學(xué)一下。它簡單而強(qiáng)大,讓你能夠以快速高效的方式獲取所需的軟件包。無需繁瑣的手動(dòng)下載和處理依賴關(guān)系,yum指令會(huì)自動(dòng)處理所有這些。同時(shí),它提供了大量的軟件包選擇,滿足您的各種需求。如果想更好地管理軟件包,并節(jié)省時(shí)間和精力,不妨嘗試一下yum指令!
yum是什么
yum 是一種用于在 CentOS、Red Hat Enterprise Linux (RHEL) 等基于 RPM 的 Linux 發(fā)行版上安裝、更新和管理軟件包的命令行工具。它可以自動(dòng)解決軟件包依賴關(guān)系,自動(dòng)下載并安裝所需的軟件包以及它們的依賴項(xiàng)。使用 yum,可以輕松地安裝和升級(jí)軟件包,還可以搜索可用的軟件包。
yum常用指令梳理
要使用 yum,需要具有 root 用戶權(quán)限。以下是一些常用的 yum 命令:
- 搜索可用的軟件包:yum search search-term
- 安裝軟件包:yum install package-name
- 顯示已安裝的軟件包:yum list installed
- 移除已安裝的軟件包:yum remove package-name
- 更新可用軟件包列表:yum check-update
- 升級(jí)軟件包:yum update package-name
- 清理 Yum 軟件包管理器緩存:yum clean
yum常用指令使用詳解
yum search
yum search 是一個(gè)用于在 CentOS 系統(tǒng)中搜索可用軟件包的 yum 命令。它可以根據(jù)關(guān)鍵字或者正則表達(dá)式在軟件包名稱和說明中進(jìn)行搜索,并返回所有匹配的軟件包列表。例如,要搜索包含 "java" 關(guān)鍵字的軟件包,可以運(yùn)行 :
yum search java
圖片
- 高級(jí)搜索:搜索出軟件包名稱是以"java"開頭的軟件包。例如,要搜索軟件包名稱是以java開頭的的軟件包,可以運(yùn)行
yum search java | grep ^java*
圖片
yum install
yum install 命令是用于在 CentOS 系統(tǒng)中安裝指定軟件包的命令。以下是 yum install 命令的一些常見用法:
- 安裝單個(gè)軟件包:使用 yum install 命令后跟軟件包名稱,可以安裝指定的單個(gè)軟件包。例如,要安裝 Node.js,可以運(yùn)行:
yum install nodejs.x86_64
圖片
- 安裝多個(gè)軟件包:可以在一條命令中同時(shí)安裝多個(gè)軟件包,只需將軟件包名稱以空格分隔列出即可。例如,要同時(shí)安裝 Node.js 和 npm,可以運(yùn)行 yum install nodejs npm。
yum install java-1.8.0-openjdk.x86_64 nodejs.x86_64
圖片
yum list
yum list 命令用于在 CentOS 系統(tǒng)中列出 Yum 軟件包管理器中可用的軟件包。以下是 yum list 命令的一些常見用法:
- 列出所有可用的軟件包:運(yùn)行 yum list 命令,結(jié)果列表包括已安裝的軟件包和可供安裝的軟件包。如果想對(duì)搜索結(jié)果進(jìn)一步有針對(duì)性的搜索,可以運(yùn)行yum list installed | grep ^java
yum list
yum list | grep ^java
圖片
- 列出已安裝的軟件包:使用 yum list installed 命令,將列出已在系統(tǒng)上安裝的所有軟件包及其版本。
#列出所有已經(jīng)安裝的軟件包
yum list installed
#列出已經(jīng)安裝的軟件包,軟件包名稱是以java開頭的
yum list installed | grep ^java
圖片
- 列出已安裝但不再可用的軟件包:使用 yum list extras 命令,將列出已在系統(tǒng)上安裝但不再可用的軟件包及其版本。
yum list extras
- 列出可更新的軟件包:通過運(yùn)行 yum list updates 命令,將列出可用的軟件包更新。這些是已安裝的軟件包的新版本。
yum list updates
- 列出已安裝但有安全漏洞的軟件包:通過運(yùn)行 yum list security 命令,將列出已安裝的但存在安全漏洞的軟件包及其版本。
yum list security
- 列出所有可用軟件包及其版本:通過運(yùn)行 yum list security 命令,可以列出系統(tǒng)中所有可用的 軟件包及其版本信息,包括來自不同軟件源的版本,如運(yùn)行yum list --showduplicates nginx,可以列出所有可用的 Nginx 軟件包及其版本信息。
yum list --showduplicates nginx
圖片
yum check-update
yum check-update 命令用于在 CentOS 系統(tǒng)中檢查可用的軟件包更新,但不執(zhí)行實(shí)際的更新操作。以下是 yum check-update 命令的一些常見用法:
- 檢查所有可用的軟件包更新:運(yùn)行 yum check-update 命令,將列出所有可用的軟件包更新及其版本信息。這些是已安裝的軟件包的新版本。
yum check-update
- 檢查特定軟件包的更新:通過在 yum check-update 命令后跟軟件包名稱,可以檢查特定軟件包的可用更新。例如,要檢查名為 "java-1.8.0-openjdk.x86_64" 的軟件包是否有更新,可以運(yùn)行如下指令:
yum check-update java-1.8.0-openjdk.x86_64
圖片
yum update
yum update 命令用于在 CentOS 系統(tǒng)中更新已安裝的軟件包到最新版本。以下是 yum update 命令的一些常見用法:
- 更新所有已安裝軟件包:運(yùn)行 yum update 命令,將更新所有已安裝的軟件包到最新版本。
- 更新特定軟件包:通過在 yum update 命令后跟軟件包名稱,可以更新特定軟件包到最新版本。例如,要更新名為 " curl.x86_64" 的軟件包,可以運(yùn)行 yum update curl.x86_64。
yum update curl.x86_64
圖片
yum remove
yum remove 命令用于在 CentOS 系統(tǒng)中移除已安裝的軟件包。以下是 yum remove 命令的一些常見用法:
- 移除特定軟件包:通過在 yum remove 命令后跟軟件包名稱,可以移除特定軟件包。例如,要移除名為 "java-1.8.0-openjdk.x86_64" 的軟件包,可以運(yùn)行 yum remove java-1.8.0-openjdk.x86_64。
yum remove java-1.8.0-openjdk.x86_64
- 移除多個(gè)軟件包:通過在 yum remove 命令后跟多個(gè)軟件包名稱,以空格分隔,可以同時(shí)移除多個(gè)軟件包。例如,要移除 "httpd" 和 "mysql" 兩個(gè)軟件包,可以運(yùn)行 yum remove httpd mysql。
yum remove nodejs.x86_64 nginx.x86_64
- 自動(dòng)刪除不再使用的依賴包:使用 yum autoremove 命令,將自動(dòng)刪除不再被其他軟件包依賴的軟件包。這樣可以清理系統(tǒng)上不需要的依賴包。
yum autoremove
yum clean
yum clean 命令用于在 CentOS 系統(tǒng)中清理 yum 軟件包管理器的緩存和臨時(shí)文件。以下是 yum clean 命令的一些常見用法:
- 清理所有緩存:使用 yum clean all 命令,將清理所有 yum 緩存目錄中的軟件包數(shù)據(jù)和其他臨時(shí)文件。這會(huì)釋放磁盤空間并確保下次 yum 使用最新的軟件包信息。
- 清理軟件包緩存:通過運(yùn)行 yum clean packages 命令,將清理 yum 緩存目錄中的軟件包數(shù)據(jù)。這樣可以釋放磁盤空間,并在下次執(zhí)行 yum 命令時(shí)重新下載最新的軟件包。
總結(jié)
yum指令是一個(gè)用于在centost系統(tǒng)上安裝、更新、刪除軟件的一個(gè)非常方便的工具,如果選擇手動(dòng)去官網(wǎng)下載軟件包,然后再上傳到系統(tǒng)里進(jìn)行解壓安裝,是一個(gè)相當(dāng)繁瑣的過程,有的時(shí)候還會(huì)出現(xiàn)缺省某些依賴而導(dǎo)致安裝失敗,而使用yum指令完全不存在這個(gè)問題,一個(gè)指令就可以解決軟件包及其依賴的安裝,這個(gè)方法雖然很方便,但是也有不好的地方,安裝文件、配置文件可能分散在不同的目錄下,如果不熟悉,會(huì)有一定困難,不過問題不大,可以使用find指令來檢索,或者在安裝的時(shí)候也有一些可選參數(shù)來設(shè)置安裝目錄,不過大部分人都比較喜歡使用默認(rèn)的方式,究竟喜歡哪種方式,就看個(gè)人習(xí)慣了。就我個(gè)人而言,我以前喜歡手動(dòng)安裝,后來我更喜歡自動(dòng)安裝。