为什么要迁移?

去年新闻,

12 月 8 日,CentOS 开发团队在其官博宣布,CentOS 8 将在 2021 年底结束支持,CentOS 7 由于用户基数与用户贡献较多,因此会按照计划维护至生命周期结束即 2024 年 6 月 30 日,接下来一年会把重心放到 CentOS Stream 上。

然后上周公司服务器报了好多漏洞 种了挖矿病毒。所以总监让我参考阿里云官方的文档先尝试测试服务器升级一下。于是便有了本篇小记

如何升?

http://help.aliyun.com/document_detail/370865.html

先检查服务器磁盘空间

  • 内存大小:300 MiB
  • 云盘容量:
  • /usr目录需要250 MiB
  • /var目录需要1.5 GiB
  • /boot目录需要50 MiB
baacloud安卓版本怎么使用(baacloud最新地址)(1)

满足

切换源:

当您在阿里云上继续使用默认配置的CentOS 8的源会发生报错。报错示例如下图所示:

baacloud安卓版本怎么使用(baacloud最新地址)(2)

您可以通过下文的操作步骤,在CentOS 8操作系统的ECS实例中将源配置按照网络环境不同进行切换。

  • yum源:专有网络VPC类型实例需切换为http://mirrors.cloud.aliyuncs.com/centos-vault/8.5.2111源。
  • epel源:专有网络VPC类型实例需切换为http://mirrors.cloud.aliyuncs.com/epel-archive/8/源。

说明 本文主要说明ECS实例中的相关操作与配置。如果您的服务器不是ECS实例,需保证服务器具有公网访问能力,并且源地址http://mirrors.cloud.aliyuncs.com需要替换为http://mirrors.aliyun.com。例如,切换yum源为http://mirrors.aliyun.com/centos-vault/8.5.2111/;切换epel源为http://mirrors.aliyun.com/epel-archive/8/。

操作步骤

  1. 登录CentOS 8系统的ECS实例。具体操作,请参见连接方式概述。
  2. 运行以下命令备份之前的repo文件。rename ‘.repo’ ‘.repo.bak’ /etc/yum.repos.d/*.repo
  3. 运行以下命令下载最新的repo文件。wget http://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo -O /etc/yum.repos.d/Centos-vault-8.5.2111.repo wget http://mirrors.aliyun.com/repo/epel-archive-8.repo -O /etc/yum.repos.d/epel-archive-8.repo
  4. 运行以下命令替换repo文件中的链接。sed -i ‘s/mirrors.cloud.aliyuncs.com/url_tmp/g’ /etc/yum.repos.d/Centos-vault-8.5.2111.repo && sed -i ‘s/mirrors.aliyun.com/mirrors.cloud.aliyuncs.com/g’ /etc/yum.repos.d/Centos-vault-8.5.2111.repo && sed -i ‘s/url_tmp/mirrors.aliyun.com/g’ /etc/yum.repos.d/Centos-vault-8.5.2111.repo sed -i ‘s/mirrors.aliyun.com/mirrors.cloud.aliyuncs.com/g’ /etc/yum.repos.d/epel-archive-8.repo
  5. 运行以下命令重新创建缓存。yum clean all && yum makecacheyum源和epel源切换完成后,即可使用yum install命令在实例上安装您所需要的软件包。

安装迁移工具

  1. 下载迁移工具软件源。wget http://mirrors.aliyun.com/alinux/migration/alinux-migration.repo -O /etc/yum.repos.d/alinux-migration.repo
  2. 安装迁移工具centos8toalinux3。yum -y install centos8toalinux3
  3. 执行迁移工具

centos8toalinux3.py

  1. 迁移结果说明:如果出现如下图所示的提示信息,则表示您的CentOS 8操作系统配置了图形化界面,迁移工具不支持迁移操作,并自动结束了迁移操作。
baacloud安卓版本怎么使用(baacloud最新地址)(3)

如果出现如下图所示的提示信息,则表示迁移操作完成。

baacloud安卓版本怎么使用(baacloud最新地址)(4)

2.运行以下命令,查看迁移后的操作系统信息。cat /etc/os-release如下图所示,表示操作系统已成功迁移为Alibaba Cloud Linux 3。

baacloud安卓版本怎么使用(baacloud最新地址)(5)

3.运行以下命令,重启ECS实例,使系统进入Alibaba Cloud Linux 3操作系统内核。reboot待ECS重启完成,您可以运行uname -r命令查看Alibaba Cloud Linux 3内核版本信息。示例操作如下图所示:

baacloud安卓版本怎么使用(baacloud最新地址)(6)

我重启前

4.18.0-193.14.2.el8_2.x86_64

重启后

5.10.60-9.al8.x86_64

至此升级成功。

常见问题

  • 如何确认操作系统迁移前后的变化?操作系统迁移工具支持记录迁移前后的软件包信息,如果您通过centos8toalinux3.py -V命令执行迁移操作,迁移完成后您可以通过记录文件对比迁移前后的变化。记录文件存放于/var/tmp目录下,该目录下不同命名的文件说明如下:迁移前软件包(RPM)的信息记录在下列文件:$(hostname)-rpms-list-before.log$(hostname)-rpms-verified-before.log迁移后软件包(RPM)的信息记录在下列文件:$(hostname)-rpms-list-after.log$(hostname)-rpms-verified-after.log
  • 迁移过程中出现异常并导致迁移失败如何处理?
  • 迁移操作不可逆,如果迁移过程中出现异常,则无法再恢复到系统原始状态。因此建议您在迁移操作前为ECS实例创建快照备份数据,当迁移过程中出现异常,可通过快照回滚云盘。