Linux之軟件包管理器yum詳解
軟件包
大多數(shù)現(xiàn)代的類 Unix 操作系統(tǒng)都提供了一種中心化的機(jī)制用來搜索和安裝軟件。軟件通常都是存放在存儲(chǔ)庫中,并通過包的形式進(jìn)行分發(fā)。處理包的工作被稱為包管理。包提供了操作系統(tǒng)的基本組件,以及共享的庫、應(yīng)用程序、服務(wù)和文檔。軟件包和軟件包管理器, 就好比 “App” 和 “應(yīng)用商店” 這樣的關(guān)系.
包管理系統(tǒng)除了安裝軟件外,它還提供了工具來更新已經(jīng)安裝的包。包存儲(chǔ)庫有助于確保你的系統(tǒng)中使用的代碼是經(jīng)過審查的,并且軟件的安裝版本已經(jīng)得到了開發(fā)人員和包維護(hù)人員的認(rèn)可。
在配置服務(wù)器或開發(fā)環(huán)境時(shí),我們最好了解下包在官方存儲(chǔ)庫之外的情況。某個(gè)發(fā)行版的穩(wěn)定版本中的包有可能已經(jīng)過時(shí)了,尤其是那些新的或者快速迭代的軟件。然而,包管理無論對(duì)于系統(tǒng)管理員還是開發(fā)人員來說都是至關(guān)重要的技能,而已打包的軟件對(duì)于主流 Linux 發(fā)行版來說也是一筆巨大的財(cái)富。
大多數(shù)包系統(tǒng)都是圍繞包文件的集合構(gòu)建的。包文件通常是一個(gè)存檔文件,它包含已編譯的二進(jìn)制文件和軟件的其他資源,以及安裝腳本。包文件同時(shí)也包含有價(jià)值的元數(shù)據(jù),包括它們的依賴項(xiàng),以及安裝和運(yùn)行它們所需的其他包的列表。
雖然這些包管理系統(tǒng)的功能和優(yōu)點(diǎn)大致相同,但打包格式和工具卻因平臺(tái)而異:
yum
yum( Yellow dog Updater, Modified)是一個(gè)在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端軟件包管理器。
基于 RPM 包管理,能夠從指定的服務(wù)器自動(dòng)下載 RPM 包并且安裝,可以自動(dòng)處理依賴性關(guān)系,并且一次安裝所有依賴的軟件包,無須繁瑣地一次次下載、安裝。
yum 提供了查找、安裝、刪除某一個(gè)、一組甚至全部軟件包的命令,而且命令簡潔而又好記。
- 需要root權(quán)限
- 本地會(huì)有個(gè)yum的配置文件,告訴yum去哪些網(wǎng)站找資源。
- 首先要找一個(gè)yum庫(源),然后確保本地有一個(gè)客戶端(yum這個(gè)命令就是客戶端),由yum程序去連接服務(wù)器。
- 連接的方式是由配置文件決定的。通過編輯/etc/yum.repos.d/CentOS-Base.repo文件,可以修改設(shè)置。
- yum 軟件可以用 rpm 命令安裝,安裝之前可以通過如下命令查看 yum 是否已安裝:
rpm -qa | grep yum ...
yum語法
yum [options] [command] [package ...]
- options:可選,選項(xiàng)包括-h(幫助),-y(當(dāng)安裝過程提示選擇全部為 “yes”),-q(不顯示安裝的過程)等等。
- command:要進(jìn)行的操作。
- package:安裝的包名。
yum常用命令
列出所有可安裝的軟件清單命令:
yum list | grep 軟件包名
yum安裝:
yum install -y 軟件包名
yum卸載:
yum remove -y 軟件包名
- 查看yum軟件版本:
yum --version
- 查找軟件包命令
yum search 包名
yum源配置文件介紹
一般情況下,只要你的主機(jī)網(wǎng)絡(luò)正常,可以直接使用網(wǎng)絡(luò) yum 源,不需要對(duì)配置文件做任何修改,這里對(duì) yum 源配置文件做一下簡單介紹。
網(wǎng)絡(luò) yum 源配置文件位于 /etc/yum.repos.d/
目錄下,文件擴(kuò)展名為"*.repo
"(只要擴(kuò)展名為 “*.repo” 的文件都是 yum 源的配置文件)。
[root@VM-12-7-centos ~]$ ls /etc/yum.repos.d CentOS-Base.repo CentOS-Epel.repo
我的云服務(wù)器里面啥也沒有,但能安裝軟件…, 配置過的應(yīng)該是這樣子的
[root@localhost yum.repos.d]# vim /etc/yum.repos.d/ CentOS-Base.repo [base] name=CentOS-$releasever - Base mirrorlist=http://mirrorlist.centos.org/? release= $releasever&arch=$basearch&repo=os baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
yum 源容器,這里只列出了 base 容器,其他容器和 base 容器類似。
- [base]:容器名稱,一定要放在[]中。
- name:容器說明,可以自己隨便寫。
- mirrorlist:鏡像站點(diǎn),這個(gè)可以注釋掉。
- baseurl:我們的 yum 源服務(wù)器的地址。默認(rèn)是 CentOS 官方的 yum 源服務(wù)器,是可以使用的。如果你覺得慢,則可以改成你喜歡的 yum 源地址。
- enabled:此容器是否生效,如果不寫或?qū)懗?enabled 則表示此容器生效,寫成 enable=0 則表示此容器不生效。
- gpgcheck:如果為 1 則表示 RPM 的數(shù)字證書生效;如果為 0 則表示 RPM 的數(shù)字證書不生效。
- gpgkey:數(shù)字證書的公鑰文件保存位置。不用修改。
更新yum源
進(jìn)入yum源目錄:
cd /etc/yum.repos.d ll //查看yum源目錄里的文件
將“CentOS-Base.repo”重命名備份為“CentOS-Base.repo.old”
mv CentOS-Base.repo CentOS-Base.repo.old ls //...可以看到已經(jīng)重命名
從阿里云下載yum源
wget http://mirrors.aliyun.com/repo/Centos-7.repo 騰訊云源: 公網(wǎng)訪問地址: http://mirrors.cloud.tencent.com/ 或 http://mirrors.tencent.com 內(nèi)網(wǎng)訪問地址: http://mirrors.tencentyun.com/
將新的源改名為“CentOS-Base.repo”
mv Centos-7.repo CentOS-Base.repo
讓yum重新緩存新的數(shù)據(jù)
yum update -y
經(jīng)過一段時(shí)間的等待后,看到“完畢 !”,光標(biāo)停留在命令輸入處,代表更新成功…
查看已經(jīng)安裝軟件的方法
rpm包安裝的,可以用rpm -qa看到,如果要查找某軟件包是否安裝,用 rpm -qa | grep “軟件或者包的名字”。
rpm -qa | grep 軟件包名
yum方法安裝的,可以用yum list installed查找,如果是查找指定包,命令后加 | grep “軟件名或者包名”;
yum list installed | grep 軟件包名
以源碼包自己編譯安裝的,例如.tar.gz或者tar.bz2形式的,只能看可執(zhí)行文件是否存在。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Linux Samba服務(wù)器超詳細(xì)安裝配置(附問題解決)
在嵌入式系統(tǒng)開發(fā)應(yīng)用平臺(tái)中,tftp、nfs和samba服務(wù)器是最常用的文件傳輸工具,本文詳細(xì)的介紹一下Linux Samba服務(wù)器安裝配置,感興趣的可以了解一下2021-08-08Apache偽靜態(tài)(Rewrite).htaccess文件詳解與配置技巧
Apache偽靜態(tài)(Rewrite).htaccess是一個(gè)純文本文件,它里面存放著Apache服務(wù)器配置相關(guān)的指令,主要的作用有:URL重寫、自定義錯(cuò)誤頁面、MIME類型配置以及訪問權(quán)限控制等2025-03-03CentOS 離線安裝gcc(版本4.8.2)詳細(xì)介紹
這篇文章主要介紹了CentOS 離線安裝gcc4.8.2詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下2017-01-01CentOS 6.3 安裝配置Apache2.2.6的方法(源碼編譯安裝)
這篇文章主要介紹了CentOS 6.3 安裝配置Apache2.2.6的方法,需要的朋友可以參考下2014-11-11CentOS7 Docker Nginx部署及運(yùn)行詳解
這篇文章主要介紹了CentOS7 Docker Nginx部署及運(yùn)行詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-08-08linux如何啟動(dòng)openoffice服務(wù)
這篇文章主要介紹了linux如何啟動(dòng)openoffice服務(wù)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-09-09