1. 程式人生 > 其它 >阿里雲 CentOS 8.2 停服後 yum / dnf 無法安裝更新

阿里雲 CentOS 8.2 停服後 yum / dnf 無法安裝更新

CentOS 8 在去年12月31日停止服務後,dnf 倉庫已經清空,可以檢視倉庫中 readme 中的廢棄說明

騰訊雲相對好點,目前還並沒有同步這個變化,倉庫中還保留著最後一個 CentOS 8 版本的軟體源。

阿里雲的輕量應用伺服器,目前仍舊支援 8.2 映象,使用該映象的伺服器,由於 dnf 倉庫已經清空,你其實是沒有辦法使用 dnf 進行更新,安裝軟體的。

如果是個人學習試驗,解決的方法就是儘快遷移到 8 stream去。如果是企業生產,可以考慮遷移到 openanolis, 遷移方法詳見官方文件: <CentOS 8遷移Anolis OS 8手冊>

本文提供一個在 CentOS 8 停服軟體源被清空後,將 CentOS 8.2 遷移到 CentOS Stream 8 的方法。

CentOS 的軟體安裝版本號判斷,是依據變數配置檔案進行的,因此,我們首先可以修改版本號變數的配置檔案

echo "8-stream" > /etc/yum/vars/releasever

然後再進行快取構建

dnf clean all
dnf makecache

此時你應該可以通過 dnf 的 swap 命令還切換到 stream 了

dnf --disablerepo '*' --enablerepo extras swap centos-linux-repos centos-stream-repos
#or: 
dnf swap centos-linux-repos centos-stream-repos

dnf distro-sync

dnf swap 時,disablerepo + enablerepo 引數可讓命令僅使用 extras 倉庫。

distro-sync 可能會由於 epel 的 repo 報錯,可依據提示刪除該 repo 檔案。