本章主要介紹使用 yum 對軟件包進行管理。
- yum 的介紹
- 搭建yum源
- 創建私有倉庫
- yum客戶端的配置
- yum的基本使用
- 使用第三方yum源
使用rpm安裝包時經常會遇到一個問題就是包依賴,如下所示。
[root@rhel03 ~]# rpm -ivh /mnt/AppStream/Packages/httpd-2.4.37-41.module+el8.5.0+11772+c8e0c271.x86_64.rpm
錯誤:依賴檢測失敗:httpd-filesystem 被 httpd-2.4.37-41.module+el8.5.0+11772+c8e0c271.x86_64 需要httpd-filesystem = 2.4.37-41.module+el8.5.0+11772+c8e0c271 被 httpd-2.4.37-41.module+el8.5.0+11772+c8e0c271.x86_64 需要httpd-tools = 2.4.37-41.module+el8.5.0+11772+c8e0c271 被 httpd-2.4.37-41.module+el8.5.0+11772+c8e0c271.x86_64 需要libapr-1.so.0()(64bit) 被 httpd-2.4.37-41.module+el8.5.0+11772+c8e0c271.x86_64 需要libaprutil-1.so.0()(64bit) 被 httpd-2.4.37-41.module+el8.5.0+11772+c8e0c271.x86_64 需要mod_http2 被 httpd-2.4.37-41.module+el8.5.0+11772+c8e0c271.x86_64 需要system-logos(httpd-logo-ng) 被 httpd-2.4.37-41.module+el8.5.0+11772+c8e0c271.x86_64 需要
[root@rhel03 ~]#
? 所謂包依賴,就是在安裝A時必須先把B和C安裝上去。如果用rpm一個個安裝是非常困難的,這里可以使用dnf或yum命令來解決。yum命令其實是軟鏈接到dnf命令上的,所以輸 入yum或dnf都可以,后文都使用yum命令介紹。?
yum架構介紹?
為了便于理解,先看下圖所示的例子。?
可能我們經常會使用360軟件管家管理軟件包,在360服務器上有各種軟件,在PC上的 360軟件管家中搜索想要安裝的軟件,然后單擊【安裝】按鈕,這樣就可以把軟件自動安裝到本地了,很方便。?
yum的架構也是類似的,如下圖所示。
在服務器上存在某個目錄中存儲了大量的軟件包,然后通過ftp或http把此目錄共享出去,使 得客戶端可以通過ftp或http能訪問到此目錄。?
在服務器端所存儲的這些軟件包中,服務器是知道哪些包之間有依賴關系的,例如,A、 B、C三者之間存在依賴關系,所以當客戶端發布一個請求說要安裝A時,如下圖所示。
yum安裝軟件包過程
此時發現A和B、C有依賴關系,所以客戶端會把A、B、C三 者都從服務器下載到本機的緩存,然后再把這三個包一起給安裝上去。
如果假設A和B、C、X有依賴關系,但是X這個包并沒有出現在現在的這個源中,那么當客戶端要安裝A時,因為缺少了X,所 以安裝是失敗的。此時我們就需要在客戶端上指定多個源,保證所有的這些源中包含了所有需要的包,如下圖所示。
?
因為客戶端指定了兩個源,所以當客戶端發布一個請求說要 安裝A時,此時從第一個源中檢測到了需要的依賴包B、C,然 后從第二個源中找到了X,客戶端就會把這四個包一起下載到本地緩存中并進行安裝。?
用光盤搭建yum源
實驗拓撲圖如下圖所示。?
?
?注意:下面的操作都是在rhel03上做的。
修改letc/vsftpd/vsftpd.conf中的anonymous enable選項,如下所示。
由anonymous_enable=NO修改為anonymous_enable=YES,并添加如下命令。
保存退出并啟動vsftpd,命令如下。
[root@rhel03 ~]# systemctl enable vsftpd --now
Created symlink /etc/systemd/system/multi-user.target.wants/vsftpd.service → /usr/lib/systemd/system/vsftpd.service.
[root@rhel03 ~]#
如果已經啟動過了,則通過systemctl restart vsftpd重啟一下,使剛做的配置生效。?
修改防火墻,命令如下。?
[root@rhel03 ~]# firewall-cmd --add-port=20-21/tcp --permanent
success
[root@rhel03 ~]# firewall-cmd --add-port=10010-10020/tcp --permanent
success
[root@rhel03 ~]# firewall-cmd --reload
success
[root@rhel03 ~]# firewall-cmd --list-port
20-21/tcp 10010-10020/tcp 123/udp 323/udp
[root@rhel03 ~]#
設置 SELinux相關的布爾值,命令如下。
[root@rhel03 ~]# setsebool -P ftpd_full_access 1
[root@rhel03 ~]#
記住,這個布爾值一定要設置,否則客戶端會出現如下圖所示的錯誤。?
?客戶端的報錯信息
創建目錄/var/ftp/dvd,然后把光盤掛載到此目錄上,命令如下。
[root@rhel03 ~]# mkdir -pv /var/ftp/dvd
mkdir: 已創建目錄 '/var/ftp/dvd'
[root@rhel03 ~]# mount /dev/cdrom /var/ftp/dvd
mount: /var/ftp/dvd: WARNING: device write-protected, mounted read-only.
[root@rhel03 ~]#
這樣其他機器通過ftp訪問/var/ftp/dvd時,訪問的就是光盤中的內容了。設置開機自動掛載,修改/etc/fstab,內容如下。?
[root@rhel03 ~]# grep ftp /etc/fstab
/dev/cdrom /var/ftp/dvd iso9660 defaults 0 0
[root@rhel03 ~]#
至此,服務器上的yum 源就已經配置好了,/var/ftp/dvd中的內容如下所示。
[root@rhel03 ~]# ls /var/ftp/dvd/
AppStream BaseOS EFI EULA extra_files.json GPL images isolinux media.repo RPM-GPG-KEY-redhat-beta RPM-GPG-KEY-redhat-release TRANS.TBL
[root@rhel03 ~]#
此時客戶端不能直接把此目錄作為源來使用,服務器是知道每個包和其他包之間的依賴關系的,因為系統會把某個目錄(包括子目錄)中的rpm包的元數據信息放在repodata目錄中。?
但是在/var/ftp/dvd中并沒有repodata目錄(不能單純地用mkdir命令把此目錄創建出 來,創建出來里面沒有元數據是沒用的),所以 /var/ftp/dvd并不能直接作為源來使用。先 來看AppStream目錄的內容,命令如下。?
[root@rhel03 dvd]# ls /var/ftp/dvd/AppStream/
Packages repodata
[root@rhel03 dvd]#
這里repodata是 AppStream下的目錄,記錄了AppStream目錄下所有的rpm信息,此處AppStream中所有的rpm都存儲在Packages目錄下了。repodata中的內容大概是這樣 的,如下所示。?
[root@rhel03 dvd]# ls /var/ftp/dvd/AppStream/repodata/
167822ee59a5cbd329d31b2ff030cb2146b0fd624e390ffe3ac98fb641fb62f4-comps-AppStream.x86_64.xml.gz
2adf8b14deae5cde9dd015b563abdfba1d2a4c96659bf8386ff182f9400b023b-comps-AppStream.x86_64.xml
689bd45a22fedbffbc3e3b9d82109a2c6ed02ee8b2962136d63a3026f24d6ef0-filelists.xml.gz
99f06c9bf207d0b64dfecfeb768d255367de7e22522ae4669c2bf8361a2df4ef-other.xml.gz
b591d9fa12e0ba5c6d75b84b605f44c1daefd514068152a3fd8ba53fdb5975eb-primary.xml.gz
d12f84e558ef647914eb6d20f034920765390d579888595800f915a133457a22-modules.yaml.gz
ee6f2ed466e70c8ee4dd48d8aa3897707349e31e3f546a82e121cc53cc82d8a8-productid.gz
productid
repomd.xml
TRANS.TBL
[root@rhel03 dvd]#
再來看BaseOS目錄的內容,命令如下。?
[root@rhel03 dvd]# ls /var/ftp/dvd/BaseOS/
Packages repodata
[root@rhel03 dvd]#
這里repodata是 BaseOS下的目錄,記錄了BaseOS目錄下所有的rpm信息,此處 BaseOS中所有的rpm都存儲在Packages目錄下了。?
總結:repodata目錄中記錄了repodata所在目錄下所有的rpm信息,例如,BaseOS 下 的repodata 記錄了BaseOS目錄下所有的rpm信息。
所以,當前rhel03上有兩個源,分別是/var/ftp/dvd/AppStream 和/var/ftp/dvd/BaseOS。客戶端要訪問這兩個源,分別通過 ftp://192.168.23.33/dvd/AppStream和 ftp://192.168.23.34/dvd/BaseOS 即可。?
創建私有倉庫?????????????????
在rhel03上利用光盤對外提供了兩個源分別是/var/ftp/dvd/ AppStream和 /var/ftp/dvd/BaseOS,這兩個源是光盤中自帶的。下面練習如何創建一個自定義的源。?
先配置rhel03使用光盤作為源,在server (192.168.23.33這臺機器)中把光盤掛載 到/mnt 上,并在/etc/fstab中設置開機自動掛載。?
[root@rhel03 dvd]# tail -1 /etc/fstab
/dev/cdrom /mnt iso9660 defaults 0 0
[root@rhel03 dvd]#
這樣訪問/mnt時訪問的就是光盤了。創建/etc/yum.repos.d/aa.repo的內容如下。?
[root@rhel03 ~]# cat /etc/yum.repos.d/aa.repo
[aa]
name=aa
baseurl=file:///mnt/AppStream
enabled=1
gpgcheck=0[bb]
name=bb
baseurl=file:///mnt/BaseOS
enabled=1
gpgcheck=0
[root@rhel03 ~]#
需要注意的是,這里file:后面是3個/,file:是類似于http;/l、ftp:;這樣的寫法,第三個/表示的是絕對路徑。?
通過yum install安裝createrepo工具包,命令如下。
[root@rhel03 ~]# yum -y install createrepo
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。上次元數據過期檢查:1:24:02 前,執行于 2023年12月11日 星期一 10時53分13秒。
依賴關系解決。
===========================================================================================================================================================軟件包 架構 版本 倉庫 大小
===========================================================================================================================================================
安裝:createrepo_c x86_64 0.17.2-3.el8 aa 89 k
安裝依賴關系:createrepo_c-libs x86_64 0.17.2-3.el8 aa 115 kdrpm x86_64 0.4.1-3.el8 aa 68 k事務概要
===========================================================================================================================================================
安裝 3 軟件包總計:271 k
安裝大小:575 k
下載軟件包:
運行事務檢查
事務檢查成功。
運行事務測試
事務測試成功。
運行事務準備中 : 1/1 安裝 : drpm-0.4.1-3.el8.x86_64 1/3 安裝 : createrepo_c-libs-0.17.2-3.el8.x86_64 2/3 安裝 : createrepo_c-0.17.2-3.el8.x86_64 3/3 運行腳本: createrepo_c-0.17.2-3.el8.x86_64 3/3 驗證 : createrepo_c-0.17.2-3.el8.x86_64 1/3 驗證 : createrepo_c-libs-0.17.2-3.el8.x86_64 2/3 驗證 : drpm-0.4.1-3.el8.x86_64 3/3
已更新安裝的產品。已安裝:createrepo_c-0.17.2-3.el8.x86_64 createrepo_c-libs-0.17.2-3.el8.x86_64 drpm-0.4.1-3.el8.x86_64 完畢!
[root@rhel03 ~]#
關于yum install 命令會在后面小節中講,然后創建一個目錄/var/ftp/myrepo,命令如下。?
[root@rhel03 ~]# mkdir /var/ftp/myrepo
[root@rhel03 ~]#
從光盤中拷貝一個測試用的安裝包,這里就選擇vsftpd的安裝包。拷貝 vsftpd到 /var/ftplmyrepo中,命令如下。?
[root@rhel03 ~]# cp /mnt/AppStream/Packages/vsftpd-3.0.3-34.el8.x86_64.rpm /var/ftp/myrepo/
[root@rhel03 ~]#
現在/var/ftp/myrepo中包含了一個 vsftpd的安裝包,命令如下。
通過createrepo工具包對/var/ftp/myrepo進行操作,命令如下。
[root@rhel03 ~]# createrepo -v /var/ftp/myrepo/
12:19:45: Version: 0.17.2 (Features: DeltaRPM LegacyWeakdeps )
12:19:45: Signal handler setup
12:19:45: Thread pool ready
Directory walk started
12:19:45: Adding pkg: /var/ftp/myrepo/vsftpd-3.0.3-34.el8.x86_64.rpm
12:19:45: Dir to scan: /var/ftp/myrepo/.repodata
12:19:45: Package count: 1
Directory walk done - 1 packages
Temporary output repo path: /var/ftp/myrepo/.repodata/
12:19:45: Creating .xml.gz files
12:19:45: Setting number of packages
Preparing sqlite DBs
12:19:45: Creating databases
12:19:45: Thread pool user data ready
Pool started (with 5 workers)
Pool finished
12:19:45: Generating repomd.xml
12:19:45: Old repodata doesn't exists: Cannot rename /var/ftp/myrepo/repodata/ -> /var/ftp/myrepo/repodata.old.4850.20231211121945.396297: No such file or directory
12:19:45: Renamed /var/ftp/myrepo/.repodata/ -> /var/ftp/myrepo/repodata/
12:19:45: Memory cleanup
12:19:45: All done
[root@rhel03 ~]#
/var/ftp/myrepo目錄中的內容如下。
[root@rhel03 ~]# ls /var/ftp/myrepo/
repodata vsftpd-3.0.3-34.el8.x86_64.rpm
[root@rhel03 ~]#
這里生成了repodata,里面包含了/var/ftp/myrepo中所有的rpm包(這里就一個 vsftpd)的信息,那么/var/ftp/myrepo也可以作為一個源來使用了。
yum客戶端的配置?
客戶端要安裝軟件包必須指定使用哪些源,在客戶端上指定源的方法是在目錄/etc/yum.repos.d中創建后綴是repo的文件。文件名是什么無所謂,但后綴必須是 repo,格式如下。?
- [名稱] ‐‐‐‐用于標注不同的源
- name= ‐‐‐‐注釋信息
- baseurl= ‐‐‐‐指定源的URL地址
- enabled= ‐‐‐用于指定是否啟用這個源,值有0和1
- 0‐‐‐不使用這個源
- 1‐‐‐使用這個源
- enabled也可以寫成enable
- gpgcheck= ‐‐‐‐用于指定安裝的軟件包是否要進行數字簽名的驗證,值有0和1
- 0‐‐不對每個安裝包進行數字簽名驗證
- 1‐‐對每個包做數字簽名的驗證
- gpgkey=/path/如果上面 gpgcheck的值設置為1,需要使用此選項指定公鑰;如果上面gp gcheck的值設置為0,這個選項可以不寫。?
在服務器端已經配置了兩個源,下面配置客戶端讓其能使用這兩個源, 在/etc/yum.repos.d中創建aa.repo,內容如下。?
[root@rhel04 ~]# cat /etc/yum.repos.d/aa.repo
[aa]
name=aa
baseurl=ftp://192.168.23.33/dvd/AppStream
enabled=1
gpgcheck=0[bb]
name=bb
baseurl=ftp://192.168.23.33/dvd/BaseOS
enabled=1
gpgcheck=0
[root@rhel04 ~]#
這里在aa.repo中配置了兩個源,分別標記為aa和 bb。可以把多個源寫在同一個repo文件中,也可以把多個源寫在不同的repo文件中。?
當通過ftp://192.168.23.33來訪問服務器時,訪問的是服務器的/var/ftp目錄,千萬不要寫成ftp://192.168.23.33/var/ftp了,否則對應的就是服務器的/var/ftp/var/tp目錄了。?
ftp://192.168.23.33/dvd對應的是服務器的/var/ftp/dvd目錄,但是這個不能作為源,因 為/var/ftp/dvd下沒有對應的repodata目錄記錄/var/ftp/dvd中的 rpm信息。?
因為rpm包都是存儲在Packages中的,所以有人可能說我怕系統找不到軟件包,所以寫成baseurl=ftp:/192.168.23.33/dvd/BaseOS/Packages行不行?答案是不行的,你不用擔心系統找不到rpm在哪里。寫成baseurl=ftp://192.168.23.33/dvd/BaseOS,會通過讀取它的子目錄repodata中的數據從而知道rpm在哪個目錄中。?
此時/etc/yum.repos.d中的文件如下。
[root@rhel04 ~]# ls /etc/yum.repos.d/
aa.repo redhat.repo
[root@rhel04 ~]#
這里/etclyum.repos.d下面的redhat.repo是系統自動生成的可以不用管,刪除不刪除都無所謂。?
rhel04通過ftp訪問rhel03上的源。如果想直接使用本地光盤作為yum源,那么可以把光盤掛載到某個目錄上,然后直接使用此目錄作為源。?
yum的基本使用?
通過yum repolist查看當前正在使用的源,命令如下。
[root@rhel04 ~]# yum repolist
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。倉庫 id 倉庫名稱
aa aa
bb bb
[root@rhel04 ~]#
可以看到,現在正在使用兩個源aa和 bb,由/etc/yum.repos.d/aa.repo文件里中括號的部分定義。?
如果/etc/yum.repos.d/aa.repo的內容發生了改變,需要用yum clean all 命令清空一下緩存,命令如下。?
[root@rhel04 ~]# yum clean all
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。13 文件已刪除
[root@rhel04 ~]#
重新創建緩存數據用yum makecache命令,命令如下。?
[root@rhel04 ~]# yum makecache
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。aa 29 MB/s | 7.2 MB 00:00
bb 8.5 MB/s | 2.4 MB 00:00
上次元數據過期檢查:0:00:01 前,執行于 2023年12月11日 星期一 21時22分39秒。
元數據緩存已建立。
[root@rhel04 ~]#
這步不是必需的,即使不重新創建緩存數據,當我們下次使用yum時也會自動創建。?
查詢?
想查詢yum源中是否存在某個包,可以通過 yum search或 yum list來查詢。例如,要查詢lrzsz這個包,命令如下。?
[root@rhel04 ~]# yum search lrzsz
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。上次元數據過期檢查:0:01:24 前,執行于 2023年12月11日 星期一 21時22分39秒。
================================================================== 名稱 精準匹配:lrzsz ===================================================================
lrzsz.x86_64 : The lrz and lsz modem communications programs
[root@rhel04 ~]#
對于yum search 來說,可以在yum源中查找包名中含有lrzsz的包,如果輸入的是 yum search lrzs,它也是能查找到的,命令如下。?
[root@rhel04 ~]# yum search lrzs
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。上次元數據過期檢查:0:02:02 前,執行于 2023年12月11日 星期一 21時22分39秒。
===================================================================== 名稱 匹配:lrzs =====================================================================
lrzsz.x86_64 : The lrz and lsz modem communications programs
[root@rhel04 ~]#
也就是yum search后面跟的包名可以不是完整的包名,但是這個命令查詢的結果無法判斷這個包在系統上是否安裝。可以使用yum list命令查看包是否已經安裝,命令如下。?
[root@rhel04 ~]# yum list lrzsz
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。上次元數據過期檢查:0:02:39 前,執行于 2023年12月11日 星期一 21時22分39秒。
可安裝的軟件包
lrzsz.x86_64 0.12.20-43.el8 bb
[root@rhel04 ~]#
這里顯示“可安裝的”說明在系統中并沒有安裝,最后的bb說明lrzsz是在bb這個源中 的。
對于yum list來說,后面必須跟上完整的包名,如果跟的不是完整的包名則是查詢不出來的,如下所示。?
[root@rhel04 ~]# yum list lrzs
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。上次元數據過期檢查:0:03:36 前,執行于 2023年12月11日 星期一 21時22分39秒。
錯誤:沒有匹配的軟件包可以列出
[root@rhel04 ~]#
所以,在使用yum list命令時,可以結合通配符一起使用,命令如下。?
[root@rhel04 ~]# yum list lrzs\*
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。上次元數據過期檢查:0:04:05 前,執行于 2023年12月11日 星期一 21時22分39秒。
可安裝的軟件包
lrzsz.x86_64 0.12.20-43.el8 bb
[root@rhel04 ~]#
? 這里的意思是在yum源中查找以lrzs開頭的包,*前面加上\的目的是防止 bash把*解析 了,希望到yum源中去解析而不是在bash中解析。到底使用yum search還是yum list就要 看個人習慣了。?
安裝與卸載軟件包?
安裝軟件包用“yum install 包名”命令,現在安裝 lrzsz,命令如下。?
[root@rhel04 ~]# yum -y install lrzsz
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。上次元數據過期檢查:0:05:02 前,執行于 2023年12月11日 星期一 21時22分39秒。
依賴關系解決。
===========================================================================================================================================================軟件包 架構 版本 倉庫 大小
===========================================================================================================================================================
安裝:lrzsz x86_64 0.12.20-43.el8 bb 84 k事務概要
===========================================================================================================================================================
安裝 1 軟件包總下載:84 k
安裝大小:187 k
下載軟件包:
lrzsz-0.12.20-43.el8.x86_64.rpm 1.3 MB/s | 84 kB 00:00
-----------------------------------------------------------------------------------------------------------------------------------------------------------
總計 1.3 MB/s | 84 kB 00:00
運行事務檢查
事務檢查成功。
運行事務測試
事務測試成功。
運行事務準備中 : 1/1 安裝 : lrzsz-0.12.20-43.el8.x86_64 1/1 運行腳本: lrzsz-0.12.20-43.el8.x86_64 1/1 驗證 : lrzsz-0.12.20-43.el8.x86_64 1/1
已更新安裝的產品。已安裝:lrzsz-0.12.20-43.el8.x86_64 完畢!
[root@rhel04 ~]#
這樣軟件包就算是安裝上去了,查看,命令如下,?
[root@rhel04 ~]# yum list lrzsz
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。上次元數據過期檢查:0:05:36 前,執行于 2023年12月11日 星期一 21時22分39秒。
已安裝的軟件包
lrzsz.x86_64 0.12.20-43.el8 @bb
[root@rhel04 ~]#
這里已顯示“已安裝”。
不管是安裝還是卸載,每次安裝(或卸載)時都會詢問,如果不想被詢問,可以加上y選 項,y加在下面1、2、3的位置都可以。?
- yum 1 install 2 包名 3?
卸載軟件包用“yum remove 包名”命令,現在把 Irzsz卸載掉,命令如下。?
[root@rhel04 ~]# yum -y remove lrzsz
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。依賴關系解決。
===========================================================================================================================================================軟件包 架構 版本 倉庫 大小
===========================================================================================================================================================
移除:lrzsz x86_64 0.12.20-43.el8 @bb 187 k事務概要
===========================================================================================================================================================
移除 1 軟件包將會釋放空間:187 k
運行事務檢查
事務檢查成功。
運行事務測試
事務測試成功。
運行事務準備中 : 1/1 刪除 : lrzsz-0.12.20-43.el8.x86_64 1/1 運行腳本: lrzsz-0.12.20-43.el8.x86_64 1/1 驗證 : lrzsz-0.12.20-43.el8.x86_64 1/1
已更新安裝的產品。已移除:lrzsz-0.12.20-43.el8.x86_64 完畢!
[root@rhel04 ~]#
這樣就把lrzsz卸載了。下面查看系統中是否還有Irzsz,命令如下。?
[root@rhel04 ~]# rpm -qa | grep lrzsz
[root@rhel04 ~]#
如果要更新系統中的某個軟件包,則用“yum update包名y”命令。如果要更新系統中所有的軟件包,則直接使用yum udpate -y命令即可。?
查詢包的信息用“yum info包名”命令,命令如下。
[root@rhel04 ~]# yum info lrzsz
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。上次元數據過期檢查:0:08:00 前,執行于 2023年12月11日 星期一 21時22分39秒。
可安裝的軟件包
名稱 : lrzsz
版本 : 0.12.20
發布 : 43.el8
架構 : x86_64
大小 : 84 k
源 : lrzsz-0.12.20-43.el8.src.rpm
倉庫 : bb
概況 : The lrz and lsz modem communications programs
URL : http://www.ohse.de/uwe/software/lrzsz.html
協議 : GPLv2+
描述 : Lrzsz (consisting of lrz and lsz) is a cosmetically modified: zmodem/ymodem/xmodem package built from the public-domain version of: the rzsz package. Lrzsz was created to provide a working GNU: copylefted Zmodem solution for Linux systems.[root@rhel04 ~]#
下載?
使用yum 安裝軟件包時,先把要安裝的軟件包及所依賴的包都下載到本地緩存中,然后再一起安裝。如果只想把這些包下載下來并不安裝,可以使用--downloadonly和-- downloaddir=/dir選項,其中--downloadonly 只讓yum把軟件包下載下來并不執行安裝操作,下載到哪個目錄由--downloaddir來指定。?
現在想把 httpd及其依賴的包全部下載到/xx目錄,首先創建/xx目錄,命令如下。
[root@rhel04 ~]# mkdir /xx
[root@rhel04 ~]#
然后開始下載指定的包,命令如下。?
[root@rhel04 ~]# yum -y install httpd --downloadonly --downloaddir=/xx
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。上次元數據過期檢查:0:09:54 前,執行于 2023年12月11日 星期一 21時22分39秒。
依賴關系解決。
===========================================================================================================================================================軟件包 架構 版本 倉庫 大小
===========================================================================================================================================================
安裝:httpd x86_64 2.4.37-41.module+el8.5.0+11772+c8e0c271 aa 1.4 M
安裝依賴關系:apr x86_64 1.6.3-12.el8 aa 130 kapr-util x86_64 1.6.1-6.el8 aa 105 khttpd-filesystem noarch 2.4.37-41.module+el8.5.0+11772+c8e0c271 aa 39 khttpd-tools x86_64 2.4.37-41.module+el8.5.0+11772+c8e0c271 aa 106 kmod_http2 x86_64 1.15.7-3.module+el8.4.0+8625+d397f3da aa 154 kredhat-logos-httpd noarch 84.5-1.el8 bb 29 k
安裝弱的依賴:apr-util-bdb x86_64 1.6.1-6.el8 aa 25 kapr-util-openssl x86_64 1.6.1-6.el8 aa 27 k
啟用模塊流:httpd 2.4 事務概要
===========================================================================================================================================================
安裝 9 軟件包總下載:2.0 M
安裝大小:5.4 M
YUM將僅會從事務下載軟件包。
下載軟件包:
(1/9): apr-util-1.6.1-6.el8.x86_64.rpm 1.6 MB/s | 105 kB 00:00
(2/9): apr-util-bdb-1.6.1-6.el8.x86_64.rpm 351 kB/s | 25 kB 00:00
(3/9): apr-1.6.3-12.el8.x86_64.rpm 1.7 MB/s | 130 kB 00:00
(4/9): apr-util-openssl-1.6.1-6.el8.x86_64.rpm 2.3 MB/s | 27 kB 00:00
(5/9): httpd-filesystem-2.4.37-41.module+el8.5.0+11772+c8e0c271.noarch.rpm 1.3 MB/s | 39 kB 00:00
(6/9): httpd-tools-2.4.37-41.module+el8.5.0+11772+c8e0c271.x86_64.rpm 3.8 MB/s | 106 kB 00:00
(7/9): mod_http2-1.15.7-3.module+el8.4.0+8625+d397f3da.x86_64.rpm 10 MB/s | 154 kB 00:00
(8/9): redhat-logos-httpd-84.5-1.el8.noarch.rpm 2.1 MB/s | 29 kB 00:00
(9/9): httpd-2.4.37-41.module+el8.5.0+11772+c8e0c271.x86_64.rpm 24 MB/s | 1.4 MB 00:00
-----------------------------------------------------------------------------------------------------------------------------------------------------------
總計 15 MB/s | 2.0 MB 00:00
完畢!
下載的軟件包保存在緩存中,直到下次成功執行事務。
您可以通過執行 'yum clean packages' 刪除軟件包緩存。
[root@rhel04 ~]#
查看一下/xx中的內容,命令如下。
[root@rhel04 ~]# ls /xx
apr-1.6.3-12.el8.x86_64.rpm httpd-filesystem-2.4.37-41.module+el8.5.0+11772+c8e0c271.noarch.rpm
apr-util-1.6.1-6.el8.x86_64.rpm httpd-tools-2.4.37-41.module+el8.5.0+11772+c8e0c271.x86_64.rpm
apr-util-bdb-1.6.1-6.el8.x86_64.rpm mod_http2-1.15.7-3.module+el8.4.0+8625+d397f3da.x86_64.rpm
apr-util-openssl-1.6.1-6.el8.x86_64.rpm redhat-logos-httpd-84.5-1.el8.noarch.rpm
httpd-2.4.37-41.module+el8.5.0+11772+c8e0c271.x86_64.rpm
[root@rhel04 ~]#
可以看到,已經把httpd及其依賴的包全部下載下來了。?
查詢缺失命令?
有時想執行某個命令時卻發現系統中并沒有此命令,如下所示。?
[root@rhel04 ~]# smbclient -L //192.168.23.34
bash: smbclient: 未找到命令...
安裝軟件包“samba-client”以提供命令“smbclient”? [N/y] n[root@rhel04 ~]#
這里會檢測到smbclient命令是由安裝包 samba-client安裝的,會詢問要不要安裝它,如果不安裝則輸入“n”并按【Enter】鍵,這里并沒有讓它自動安裝。?
沒有這個命令肯定是因為某個包沒有安裝的緣故,那么怎么知道這個命令是哪個包安裝出來的呢?可以用yum whatprovides */smbclient命令來查詢,意思就是往yum源中大吼一嗓 子:誰能提供smbclient這個命令??
這里*的意思是路徑的通配符,即不管smbclient在哪個目錄下,命令如下。?
[root@rhel04 ~]# yum whatprovides */smbclient
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。上次元數據過期檢查:0:13:23 前,執行于 2023年12月11日 星期一 21時22分39秒。
bash-completion-1:2.7-5.el8.noarch : Programmable completion for Bash
倉庫 :@System
匹配來源:
文件名 :/usr/share/bash-completion/completions/smbclientbash-completion-1:2.7-5.el8.noarch : Programmable completion for Bash
倉庫 :bb
匹配來源:
文件名 :/usr/share/bash-completion/completions/smbclientsamba-client-4.14.5-2.el8.x86_64 : Samba client programs
倉庫 :bb
匹配來源:
文件名 :/usr/bin/smbclient[root@rhel04 ~]#
因為可執行命令一般放在/bin或/usr/bin下,所以可以判斷出來要安裝的軟件包是 samba-client-4.13.3-3.el8.x86_64。我們現在使用yum install samba-client -y命令把它安裝上去之后,然后再次執行smbclient命令,命令如下。?
[root@rhel04 ~]# yum -y install samba-client
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。上次元數據過期檢查:0:14:31 前,執行于 2023年12月11日 星期一 21時22分39秒。
依賴關系解決。
===========================================================================================================================================================軟件包 架構 版本 倉庫 大小
===========================================================================================================================================================
安裝:samba-client x86_64 4.14.5-2.el8 bb 701 k事務概要
===========================================================================================================================================================
安裝 1 軟件包總下載:701 k
安裝大小:2.3 M
下載軟件包:
samba-client-4.14.5-2.el8.x86_64.rpm 23 MB/s | 701 kB 00:00
-----------------------------------------------------------------------------------------------------------------------------------------------------------
總計 19 MB/s | 701 kB 00:00
運行事務檢查
事務檢查成功。
運行事務測試
事務測試成功。
運行事務準備中 : 1/1 安裝 : samba-client-4.14.5-2.el8.x86_64 1/1 運行腳本: samba-client-4.14.5-2.el8.x86_64 1/1 驗證 : samba-client-4.14.5-2.el8.x86_64 1/1
已更新安裝的產品。已安裝:samba-client-4.14.5-2.el8.x86_64 完畢!
[root@rhel04 ~]#
[root@rhel04 ~]# smbclient -L //192.168.23.34
do_connect: Connection to 192.168.23.34 failed (Error NT_STATUS_CONNECTION_REFUSED)
現在是已經可以執行的了.
組的使用?
前面安裝軟件包時都是一個個安裝的,假設現在想在服務器上實現某個“功能”,這個“功能”需要很多個包,但是不清楚需要安裝哪些包,怎么辦?可以利用yum中的group功 能,用yum grouplist命令查詢系統中一共有多少組,命令如下。?
[root@rhel04 ~]# yum grouplist
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。上次元數據過期檢查:0:16:20 前,執行于 2023年12月11日 星期一 21時22分39秒。
可用環境組:服務器最小安裝工作站虛擬化主機定制操作系統
已安裝的環境組:帶 GUI 的服務器
已安裝組:容器管理開發工具無頭系統管理
可用組:.NET 核心開發RPM 開發工具圖形管理工具傳統 UNIX 兼容性網絡服務器科學記數法支持安全性工具智能卡支持系統工具
[root@rhel04 ~]#
這里顯示的可用組是系統沒有安裝或組中的包沒有安裝全,已安裝組說明這個組是已經安裝過的。如果要查看某個組的信息,可以用“yum groupinfo組名”命令。例如,現在要查看虛擬化主機這個組的信息,命令如下。?
[root@rhel04 ~]# yum groupinfo 虛擬化主機
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。上次元數據過期檢查:0:17:22 前,執行于 2023年12月11日 星期一 21時22分39秒。
環境組:虛擬化主機描述:最小虛擬化主機。必選軟件包組:BaseCoreStandardVirtualization HypervisorVirtualization Tools可選軟件包組:Debugging ToolsNetwork File System ClientRemote Management for LinuxVirtualization Platform
[root@rhel04 ~]#
可以通過“yum groupinstall 組名”來安裝某個組。例如,要安裝虛擬化功能,就把“虛擬化主機”這個組安裝上去,命令如下。?
[root@rhel04 ~]# yum -y groupinstall 虛擬化主機
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。上次元數據過期檢查:0:18:48 前,執行于 2023年12月11日 星期一 21時22分39秒。
依賴關系解決。
=============================================================================================================================================================軟件包 架構 版本 倉庫 大小
=============================================================================================================================================================
安裝組/模塊包:libguestfs x86_64 1:1.40.2-28.module+el8.5.0+10717+67be7ac4 aa 2.7 Mlibvirt x86_64 6.0.0-37.module+el8.5.0+12162+40884dd2 aa 61 kvirtio-win noarch 1.9.19-1.el8 aa 180 M
安裝依賴關系:autogen-libopts x86_64 5.18.12-8.el8 aa 75 kbind-export-libs x86_64 32:9.11.26-6.el8 bb 1.1 Mdhcp-client x86_64 12:4.3.6-45.el8 bb 318 kdhcp-common noarch 12:4.3.6-45.el8 bb 207 kdhcp-libs x86_64 12:4.3.6-45.el8 bb 148 kgnutls-dane x86_64 3.6.16-4.el8 aa 52 kgnutls-utils x86_64 3.6.16-4.el8 aa 348 khivex x86_64 1.3.18-21.module+el8.5.0+10709+b3edb581 aa 113 kipcalc x86_64 0.2.4-4.el8 bb 38 klibvirt-bash-completion x86_64 6.0.0-37.module+el8.5.0+12162+40884dd2 aa 61 klibvirt-client x86_64 6.0.0-37.module+el8.5.0+12162+40884dd2 aa 368 klibvirt-daemon-config-nwfilter x86_64 6.0.0-37.module+el8.5.0+12162+40884dd2 aa 67 kscrub x86_64 2.5.2-16.el8 aa 45 ksupermin x86_64 5.1.19-10.module+el8.3.0+6423+e4cb6418 aa 709 ksyslinux x86_64 6.04-5.el8 bb 578 ksyslinux-extlinux x86_64 6.04-5.el8 bb 140 ksyslinux-extlinux-nonlinux noarch 6.04-5.el8 bb 386 ksyslinux-nonlinux noarch 6.04-5.el8 bb 554 k
安裝環境組:Virtualization Host
安裝組:Base Core Standard Virtualization Hypervisor Virtualization Tools 事務概要
=============================================================================================================================================================
安裝 21 軟件包總下載:188 M
安裝大小:799 M
下載軟件包:
(1/21): autogen-libopts-5.18.12-8.el8.x86_64.rpm 843 kB/s | 75 kB 00:00
(2/21): gnutls-dane-3.6.16-4.el8.x86_64.rpm 547 kB/s | 52 kB 00:00
(3/21): gnutls-utils-3.6.16-4.el8.x86_64.rpm 2.3 MB/s | 348 kB 00:00
(4/21): hivex-1.3.18-21.module+el8.5.0+10709+b3edb581.x86_64.rpm 1.2 MB/s | 113 kB 00:00
(5/21): libvirt-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64.rpm 977 kB/s | 61 kB 00:00
(6/21): libvirt-bash-completion-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64.rpm 1.7 MB/s | 61 kB 00:00
(7/21): libvirt-daemon-config-nwfilter-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64.rpm 939 kB/s | 67 kB 00:00
(8/21): scrub-2.5.2-16.el8.x86_64.rpm 518 kB/s | 45 kB 00:00
(9/21): libvirt-client-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64.rpm 2.1 MB/s | 368 kB 00:00
(10/21): libguestfs-1.40.2-28.module+el8.5.0+10717+67be7ac4.x86_64.rpm 7.3 MB/s | 2.7 MB 00:00
(11/21): supermin-5.1.19-10.module+el8.3.0+6423+e4cb6418.x86_64.rpm 4.7 MB/s | 709 kB 00:00
(12/21): dhcp-client-4.3.6-45.el8.x86_64.rpm 7.2 MB/s | 318 kB 00:00
(13/21): bind-export-libs-9.11.26-6.el8.x86_64.rpm 6.7 MB/s | 1.1 MB 00:00
(14/21): dhcp-common-4.3.6-45.el8.noarch.rpm 2.6 MB/s | 207 kB 00:00
(15/21): dhcp-libs-4.3.6-45.el8.x86_64.rpm 4.8 MB/s | 148 kB 00:00
(16/21): ipcalc-0.2.4-4.el8.x86_64.rpm 1.5 MB/s | 38 kB 00:00
(17/21): syslinux-extlinux-6.04-5.el8.x86_64.rpm 3.3 MB/s | 140 kB 00:00
(18/21): syslinux-6.04-5.el8.x86_64.rpm 8.0 MB/s | 578 kB 00:00
(19/21): syslinux-extlinux-nonlinux-6.04-5.el8.noarch.rpm 4.2 MB/s | 386 kB 00:00
(20/21): syslinux-nonlinux-6.04-5.el8.noarch.rpm 6.1 MB/s | 554 kB 00:00
(21/21): virtio-win-1.9.19-1.el8.noarch.rpm 43 MB/s | 180 MB 00:04
-------------------------------------------------------------------------------------------------------------------------------------------------------------
總計 41 MB/s | 188 MB 00:04
運行事務檢查
事務檢查成功。
運行事務測試
事務測試成功。
運行事務準備中 : 1/1 安裝 : syslinux-nonlinux-6.04-5.el8.noarch 1/21 安裝 : syslinux-6.04-5.el8.x86_64 2/21 安裝 : syslinux-extlinux-nonlinux-6.04-5.el8.noarch 3/21 安裝 : syslinux-extlinux-6.04-5.el8.x86_64 4/21 運行腳本: syslinux-extlinux-6.04-5.el8.x86_64 4/21 安裝 : ipcalc-0.2.4-4.el8.x86_64 5/21 安裝 : dhcp-libs-12:4.3.6-45.el8.x86_64 6/21 安裝 : dhcp-common-12:4.3.6-45.el8.noarch 7/21 安裝 : bind-export-libs-32:9.11.26-6.el8.x86_64 8/21 運行腳本: bind-export-libs-32:9.11.26-6.el8.x86_64 8/21 安裝 : dhcp-client-12:4.3.6-45.el8.x86_64 9/21 安裝 : supermin-5.1.19-10.module+el8.3.0+6423+e4cb6418.x86_64 10/21 安裝 : scrub-2.5.2-16.el8.x86_64 11/21 安裝 : libvirt-daemon-config-nwfilter-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64 12/21 運行腳本: libvirt-daemon-config-nwfilter-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64 12/21 安裝 : libvirt-bash-completion-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64 13/21 安裝 : hivex-1.3.18-21.module+el8.5.0+10709+b3edb581.x86_64 14/21 安裝 : gnutls-dane-3.6.16-4.el8.x86_64 15/21 安裝 : autogen-libopts-5.18.12-8.el8.x86_64 16/21 安裝 : gnutls-utils-3.6.16-4.el8.x86_64 17/21 安裝 : libvirt-client-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64 18/21 運行腳本: libvirt-client-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64 18/21 安裝 : libvirt-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64 19/21 安裝 : libguestfs-1:1.40.2-28.module+el8.5.0+10717+67be7ac4.x86_64 20/21 運行腳本: libguestfs-1:1.40.2-28.module+el8.5.0+10717+67be7ac4.x86_64 20/21 安裝 : virtio-win-1.9.19-1.el8.noarch 21/21 運行腳本: libvirt-daemon-config-nwfilter-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64 21/21 運行腳本: virtio-win-1.9.19-1.el8.noarch 21/21 驗證 : autogen-libopts-5.18.12-8.el8.x86_64 1/21 驗證 : gnutls-dane-3.6.16-4.el8.x86_64 2/21 驗證 : gnutls-utils-3.6.16-4.el8.x86_64 3/21 驗證 : hivex-1.3.18-21.module+el8.5.0+10709+b3edb581.x86_64 4/21 驗證 : libguestfs-1:1.40.2-28.module+el8.5.0+10717+67be7ac4.x86_64 5/21 驗證 : libvirt-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64 6/21 驗證 : libvirt-bash-completion-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64 7/21 驗證 : libvirt-client-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64 8/21 驗證 : libvirt-daemon-config-nwfilter-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64 9/21 驗證 : scrub-2.5.2-16.el8.x86_64 10/21 驗證 : supermin-5.1.19-10.module+el8.3.0+6423+e4cb6418.x86_64 11/21 驗證 : virtio-win-1.9.19-1.el8.noarch 12/21 驗證 : bind-export-libs-32:9.11.26-6.el8.x86_64 13/21 驗證 : dhcp-client-12:4.3.6-45.el8.x86_64 14/21 驗證 : dhcp-common-12:4.3.6-45.el8.noarch 15/21 驗證 : dhcp-libs-12:4.3.6-45.el8.x86_64 16/21 驗證 : ipcalc-0.2.4-4.el8.x86_64 17/21 驗證 : syslinux-6.04-5.el8.x86_64 18/21 驗證 : syslinux-extlinux-6.04-5.el8.x86_64 19/21 驗證 : syslinux-extlinux-nonlinux-6.04-5.el8.noarch 20/21 驗證 : syslinux-nonlinux-6.04-5.el8.noarch 21/21
已更新安裝的產品。已安裝:autogen-libopts-5.18.12-8.el8.x86_64 bind-export-libs-32:9.11.26-6.el8.x86_64 dhcp-client-12:4.3.6-45.el8.x86_64 dhcp-common-12:4.3.6-45.el8.noarch dhcp-libs-12:4.3.6-45.el8.x86_64 gnutls-dane-3.6.16-4.el8.x86_64 gnutls-utils-3.6.16-4.el8.x86_64 hivex-1.3.18-21.module+el8.5.0+10709+b3edb581.x86_64 ipcalc-0.2.4-4.el8.x86_64 libguestfs-1:1.40.2-28.module+el8.5.0+10717+67be7ac4.x86_64 libvirt-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64 libvirt-bash-completion-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64 libvirt-client-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64 libvirt-daemon-config-nwfilter-6.0.0-37.module+el8.5.0+12162+40884dd2.x86_64 scrub-2.5.2-16.el8.x86_64 supermin-5.1.19-10.module+el8.3.0+6423+e4cb6418.x86_64 syslinux-6.04-5.el8.x86_64 syslinux-extlinux-6.04-5.el8.x86_64 syslinux-extlinux-nonlinux-6.04-5.el8.noarch syslinux-nonlinux-6.04-5.el8.noarch virtio-win-1.9.19-1.el8.noarch 完畢!
[root@rhel04 ~]#
這樣就把需要的組安裝完成了。如果卸載,用“yum groupremove 組名”命令即可。?
使用第三方yum源?
對于rhel04來說,通過ftp可以訪問rhel03上光盤中的包。但是有許多包在光盤中并沒 有,例如,要安裝ansible,命令如下。?
[root@rhel04 ~]# yum list ansible
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。上次元數據過期檢查:0:21:05 前,執行于 2023年12月11日 星期一 21時22分39秒。
錯誤:沒有匹配的軟件包可以列出
[root@rhel04 ~]#
可以看到,光盤中并沒有ansible這個包,所以此時要使用第三方的yum源。對于CentOS 或RHEL來說,最常用的源就是epel了,下面演示如何給server2添加 epel源。?
先安裝epel安裝包,命令如下。?
[root@rhel04 ~]# yum install -y https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm
安裝好之后會生成一系列的repo文件,如下所示。?
[root@rhel04 ~]# ls /etc/yum.repos.d/
aa.repo epel-modular.repo epel.repo epel-testing-modular.repo epel-testing.repo redhat.repo
[root@rhel04 ~]#
把這些以 epel開頭的repo文件中的地址換成阿里云的地址,命令如下。
[root@rhel04 ~]# sed -i 's|^#baseurl=https://download.example/pub|baseurl=https://mirrors.aliyun.com|' /etc/yum.repos.d/epel*
[root@rhel04 ~]# sed -i 's|^metalink|#metalink|' /etc/yum.repos.d/epel*
[root@rhel04 ~]#
這樣rhel04就可以使用epel源了。?
上面的操作步驟可以到阿里云官方鏡像站https://developer.aliyun.com/mirror/,單擊 epel之后可以看到具體步驟。?
[root@rhel04 ~]# yum list ansible
正在更新 Subscription Management 軟件倉庫。
無法讀取客戶身份本系統尚未在權利服務器中注冊。可使用 subscription-manager 進行注冊。Extra Packages for Enterprise Linux 8 - x86_64 1.4 MB/s | 16 MB 00:11
上次元數據過期檢查:0:00:11 前,執行于 2023年12月11日 星期一 21時48分39秒。
可安裝的軟件包
ansible.noarch 8.3.0-1.el8 epel
[root@rhel04 ~]#
可以看到,此時rhel04所使用的源中已經有ansible了。?