[保姆级教程]解决Centos 8下无法更新的问题 (附无痕迁徙到Rocky Linux的方法)
1、問題描述
現在,Centos 8 這個項目已經停止運營了,取而代之的是一個叫做Centos Stream 8的項目,個中緣由及瓜葛說來話長,本文就不嘮叨了,感興趣的可以參考這篇文章:https://blog.csdn.net/taoofcode/article/details/120480889
一句話,許多老CentOS用戶對此事感到不滿意,于是CentOS的創始人就啟動了一個名為 Rocky Linux 的新項目,該項目是RHEL的分支。
OK,事已至此,你面臨兩種選擇:
- 按照RedHat的官方安排,從Centos 8 遷徙到 Centos Stream 8
- 不走官方路徑,遷徙到和RHEL兼容的新系統 Rocky Linux 8
第一種方案: 遷徙到Stream
此方案比較簡單,輸入以下命令即可:
這個辦法是將Centos 8正常升級到CentOS Stream 8, 在更新完畢后記得要reboot重啟一下,然后再輸入cat /etc/redhat-release 會發現系統已經切換為CentOS Stream release 8版本了。
第二種方案:遷徙到Rocky Linux
這個方案稍微復雜一點,因為當下(2022年3月),Centos 8官方已經關閉了原來的倉庫,以至于目前我們已經沒有辦法正常在Centos 8下面通過dnf update命令進行正常更新。矛盾的是,若要從Centos 8遷徙到Rocky Linux 8,又必須將系統update到最新狀態,這時候就需要臨時將Centos 8的倉庫源改為RockyLinux的倉庫源,然后再執行dnf update 命令,用這種方式迂回地將Centos 8更新后,再正常按照Rocky Linux官方提供的遷徙腳本按部就班即可。
https://mirrors.rockylinux.org/mirrormanager/mirrors
此處也可以選擇山東大學的源,速度會快一些:http://mirrors.sdu.edu.cn/rocky/
這是我找到的:
http://mirror.alwyzon.net/rockylinux/8/BaseOS/x86_64/os/
http://mirror.alwyzon.net/rockylinux/8/AppStream/x86_64/os/
(注意有些發行版這個文件名中間沒有 -Linux- 這個字樣,下同。)#mirrorlist 這一行注釋掉(加#號) baseurl=http://mirror.alwyzon.net/rockylinux/8/BaseOS/x86_64/os/
wget http://mirror.alwyzon.net/rockylinux/RPM-GPG-KEY-rockyofficial
rpm --import RPM-GPG-KEY-rockyofficial
在正式遷徙到Rocky Linux之前,請一定要先執行上面的 dnf update 將原系統更新到最新狀態,否則無法成功。
步驟:
10. dnf install epel-release
11. 下載官方遷徙腳本
curl https://raw.githubusercontent.com/rocky-linux/rocky-tools/main/migrate2rocky/migrate2rocky.sh -o migrate2rocky.sh
12. 給腳本授權可執行權限
chmod u+x migrate2rocky.sh
13. 運行腳本
./migrate2rocky.sh -r
14. 重啟系統
reboot
15. 查看系統版本:
cat /etc/redhat-release
或者:
hostnamectl
如果出現: Operating System: Rocky Linux 8.5 (Green Obsidian)
恭喜遷徙成功!
后記
- Stream 和 Rocky 是二選一的事,這就是說假設你從Centos 8升級到Stream后,再想遷徙到Rocky就很困難了,因為Stream下面很多庫都和Rocky不兼容(比如最基礎的glibc這一類)。反之,遷徙到Rocky之后又想投奔到Stream也是件麻煩事兒,因此當我建議,當系統還是舊版Centos 8的時候就要在Stream或Rocky之間做出一個決斷,免得跳來跳去自找麻煩。
總結
以上是生活随笔為你收集整理的[保姆级教程]解决Centos 8下无法更新的问题 (附无痕迁徙到Rocky Linux的方法)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VSCode中将LaTeX的PDF阅读器
- 下一篇: [BUG 记录] Ubuntu下Tesl