关于 CentOS 迁移龙蜥操作系统,这里有一份详细指南,请查收!-阿里云开发者社区 (aliyun.com)
CentOS 7和8Linux系统迁移到国产Linux龙蜥Anolis OS 8手册_redhat迁移到龙蜥-CSDN博客
CentOS 7迁移Anolis OS 8手册 - OpenAnolis龙蜥操作系统开源社区
一、迁移原理与注意事项
Anolis OS 8 在做出差异性开发同时,在生态上和依赖管理上保持跟 CentOS 8.x 兼容,所以 CentOS 8.x 迁移 Anolis OS 8 最新版本实现上,工具充分利用了兼容的特性,提供了一键式迁移脚本。
CentOS 8.x 迁移使用龙蜥操作系统(Anolis OS)发行版相关的包替代 CentOS 发行版,通过 yum distro-sync 重装当前系统中所有的系统软件包。
软件重装的过程并不会修改当前系统基础配置,所以系统配置、业务配置、业务数据都不会被清除,迁移完成后这些数据无需重新设置。
使用迁移脚本前需要注意如下事项:
- 迁移过程涉及软件包重装,是不可逆过程,迁移前务必做好备份。
- 迁移过程涉及到访问 Anolis OS 的官方 repo,需要确保待迁移环境网络能够正常访问 Anolis OS repo。
- 需要使用 root 用户执行,当前只支持 CentOS8.x 系统的迁移,不支持 CentOS stream 系统迁移。
- 迁移过程依赖于 yum/dnf,确保这两个组件能够正常运行。
- 迁移脚本提供了Anolis OS repo 访问加速的功能,如果访问 Anolis OS 官方 repo 速度较慢,可以通过 -s 选项进行加速访问。
- Anolis OS 不提供 i686 架构的软件包,如您系统上安装了 CentOS 的 i686 架构的软件包,则无法正常迁移。
二、部署迁移工具
下载迁移脚本:
wget https://gitee.com/anolis/centos2anolis/raw/master/centos2anolis.py
安装迁移脚本运行依赖:
yum -y install python3
三、迁移执行
python3 centos2anolis.py
迁移完成后,系统会提示如下信息,表示迁移成功,重启即可进入龙蜥操作系统(Anolis OS)。
centos2anolis.py 提供了 -V 选项,用于记录迁移前后的软件包信息,您可以根据需要判断是否添加选项。添加 -V 选项,迁移完成后会在 /var/tmp 目录下生成迁移前后的 rpm 信息,命名格式为:
# 迁移前 $(hostname)-rpms-list-before.log $(hostname)-rpms-verified-before.log # 迁移后 $(hostname)-rpms-list-after.log $(hostname)-rpms-verified-after.log
四、迁移后配置检查
CentOS 在 2021 年 12 月 31 号停止维护,相应的 CentOS 源在 2022 年 1 月 31 号从官网删除,导致 CentOS 实例无法正常使用 repo,阿里云官方给出了切换使用 CentOS Vault 源的指导。
如果您按照该指导切换使用 CentOS Vault 源或者自行配置使用 Vault 源,然后实施迁移 Anolis OS,迁移完成后,需要检查当前系统中是否残留 CentOS Vault 源。
通过命令 yum repolist
检查:
# yum repolist Invalid configuration value: failovermethod=priority in /etc/yum.repos.d/CentOS-Linux-epel.repo; 配置:ID 为 "failovermethod" 的 OptionBinding 不存在 Repository PowerTools is listed more than once in the configuration Repository AppStream is listed more than once in the configuration 仓库 id 仓库名称 AppStream AnolisOS-8 - AppStream BaseOS AnolisOS-8 - BaseOS Extras AnolisOS-8 - Extras PowerTools AnolisOS-8 - PowerTools base CentOS-8.5.2111 - Base - mirrors.aliyun.com epel Extra Packages for Enterprise Linux 8 - x86_64 extras CentOS-8.5.2111 - Extras - mirrors.aliyun.com
如上述结果所示,“CentOS-8.5.2111 - Base - mirrors.aliyun.com” 就是残留的 CentOS repo,需要删除,否则会出现 Anolis OS 和 CentOS 源共存的问题,一旦执行 yum update 可能会错误地安装 CentOS 的包。
删除 CentOS 源的方法和步骤如下:
1.查找提供 CentOS repo 的配置文件
# grep -rn "CentOS-8.5.2111" /etc/yum.repos.d/*.repo /etc/yum.repos.d/Centos-vault-8.5.2111.repo:14:name=CentOS-8.5.2111 - Base - mirrors.aliyun.com /etc/yum.repos.d/Centos-vault-8.5.2111.repo:24:name=CentOS-8.5.2111 - Extras - mirrors.aliyun.com /etc/yum.repos.d/Centos-vault-8.5.2111.repo:34:name=CentOS-8.5.2111 - Plus - mirrors.aliyun.com /etc/yum.repos.d/Centos-vault-8.5.2111.repo:43:name=CentOS-8.5.2111 - PowerTools - mirrors.aliyun.com /etc/yum.repos.d/Centos-vault-8.5.2111.repo:53:name=CentOS-8.5.2111 - AppStream - mirrors.aliyun.com
2.重命名步骤 1 找到的配置文件
mv /etc/yum.repos.d/Centos-vault-8.5.2111.repo /etc/yum.repos.d/Centos-vault-8.5.2111.repo.bak
五、迁移后验证
查看 OS 版本:
# cat /etc/os-release NAME="Anolis OS" VERSION="8.4" ID="anolis" ID_LIKE="rhel fedora centos" VERSION_ID="8.4" PLATFORM_ID="platform:an8" PRETTY_NAME="Anolis OS 8.4" ANSI_COLOR="0;31" HOME_URL="https://openanolis.cn/"
通过命令查看当前系统中是否有残留 CentOS 软件包,如果残留 kernel 包,为正常现象,kernel 包支持多版本共存。
rpm -qa --qf "%{NAME} %{VENDOR}\n" | grep CentOS
六、FAQ
1)就地迁移失败是否可回滚?
迁移工具不支持回滚,迁移失败无法恢复到迁移初始状态,迁移前务必做好系统备份。
2)迁移出现问题怎么办?
a. 先在龙蜥社区知识库查看是否有同样的问题。
b. 保存迁移工具执行报错信息,并提供初始系统信息(系统版本,内核,软件包列表等等),附上迁移日志文件 /var/log/centos2anolis.log,请及时在龙蜥社区交流群(扫描下方二维码或搜索钉钉群号:33311793加入)内联系获取帮助。
【预告】CentOS 7 到 Anolis OS 7、CentOS 7 到 Anolis OS 8 等一站式迁移指导和迁移工具也会陆续输出,还请持续关注龙蜥社区公众号不迷路,第一时间获取迁移相关资讯!