CentOS 8 平滑升级至滚动版 CentOS Stream 8
后知后觉 现有 1 评论

自从万恶的 CentOS 8 宣布停止维护,并转为滚动发行版以来,留存的系统一直没来及处理。

准备

现有的 CentOS 8 已经没有来自上游的安全补丁和功能升级,处于停滞状态,可以使用 lsb_release -a 命令查看当前的版本。

LSB Version:    :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description:    CentOS Linux release 8.0.1905 (Core)
Release:        8.0.1905
Codename:       Core

其中如果 CentOS 的版本低于 8.5,在迁移前都需要升级到最终的 8.5 版本后才能进行迁移。

其他几个子版本的信息如下:

LSB Version:    :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description:    CentOS Linux release 8.4.2105
Release:        8.4.2105
Codename:       n/a

LSB Version:    :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description:    CentOS Linux release 8.3.2011
Release:        8.3.2011
Codename:       n/a

LSB Version:    :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description:    CentOS Linux release 8.2.2004 (Core) 
Release:        8.2.2004
Codename:       Core

LSB Version:    :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description:    CentOS Linux release 8.1.1911 (Core) 
Release:        8.1.1911
Codename:       Core

因为已经废弃,官方仓库地址已经无法使用,因此需要先使用国内镜像站对系统进行升级。

minorver=8.5.2111
sudo sed -e "s|^mirrorlist=|#mirrorlist=|g" \
         -e "s|^#baseurl=http://mirror.centos.org/\$contentdir/\$releasever|baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos-vault/$minorver|g" \
         -i.bak \
         /etc/yum.repos.d/CentOS-*.repo

配置完成后执行完整的系统升级

sudo dnf update -y

升级完成后检查版本,版本应该为 8.5.2111

LSB Version:    :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description:    CentOS Linux release 8.5.2111
Release:        8.5.2111
Codename:       n/a

确认无误后重启

迁移

需要注意的如果之前的版本比较旧的话,那么在更新的时候新版本的包会将上面配置好的仓库又还原成旧版的。先删除旧版仓库配置,然后还需要重新执行一遍配置仓库,否则会报错无法检查更新。

sudo rm -r /etc/yum.repos.d/*.rpmsave
sudo rm -r /etc/yum.repos.d/*.bak

配置完成后配置 Stream 版仓库

sudo dnf install -y centos-release-stream

/etc/yum.repos.d/ 中会出现一些以 CentOS-Stream-* 开头的仓库配置文件。

-rw-r--r--. 1 root root  725 Dec 20  2019 CentOS-Stream-AppStream.repo
-rw-r--r--. 1 root root  706 Dec 20  2019 CentOS-Stream-Base.repo
-rw-r--r--. 1 root root  796 Dec 20  2019 CentOS-Stream-centosplus.repo
-rw-r--r--. 1 root root  666 Dec 20  2019 CentOS-Stream-Debuginfo.repo
-rw-r--r--. 1 root root  750 Dec 20  2019 CentOS-Stream-Extras.repo
-rw-r--r--. 1 root root  932 Dec 20  2019 CentOS-Stream-Media.repo
-rw-r--r--. 1 root root  730 Dec 20  2019 CentOS-Stream-PowerTools.repo
-rw-r--r--. 1 root root 1374 Dec 20  2019 CentOS-Stream-Sources.repo
-rw-r--r--. 1 root root   74 Dec 20  2019 CentOS-Stream-Vault.repo

然后迁移仓库

sudo dnf swap centos-linux-repos centos-stream-repos

迁移完成后查看现有仓库,可见到已经全部换为 Stream 版仓库。

[kane@centos8s ~]$ sudo dnf repolist
repo id                                                repo name
appstream                                              CentOS Stream 8 - AppStream
baseos                                                 CentOS Stream 8 - BaseOS
extras                                                 CentOS Stream 8 - Extras
extras-common                                          CentOS Stream 8 - Extras common packages

优化

默认仓库使用的 Mirrorlist 方式,在网络状况复杂的情况下可能出现问题,手动替换为清华源:

sudo sed -e 's|^mirrorlist=|#mirrorlist=|g' \
         -e 's|^#baseurl=http://mirror.centos.org/$contentdir|baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos|g' \
         -i.bak \
         /etc/yum.repos.d/CentOS-Stream-*.repo

配置后进行完整系统升级

sudo dnf update -y

升级完成后重启会发现系统已经平滑过渡到 Stream 版

[kane@centos8s ~]$ lsb_release -a
LSB Version:    :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOSStream
Description:    CentOS Stream release 8
Release:        8
Codename:       n/a

如果过渡失败,需要手动检查系统日志

sudo grep -i -E 'err|wan|cri' /var/log/messages

升级完成后可以对无效文件进行清理

sudo rm -r /etc/yum.repos.d/*.rpmsave
sudo rm -r /etc/yum.repos.d/CentOS-Linux-*.bak

附录

参考链接

本文撰写于一年前,如出现图片失效或有任何问题,请在下方留言。博主看到后将及时修正,谢谢!
禁用 / 当前已拒绝评论,仅可查看「历史评论」。
  1. avatarImg free xnxx

    I'm extrewmely impressed wth yyour writing skills ass
    well aas wiyh the layout on youur blog. Is this a pazid thene oor diid youu modiy it yourself?
    Eithber way eep up the excelleent quality writing,
    iit iis rare too seee a nice blopg like thius one today.

    Vivaldi 5.3.2679.68 Windows 10
    IP 属地 未知