—— 完 ——
编者按:CentOS 8 已于 2021 年年底正式停止维护,龙蜥社区已上线「CentOS 停服专区」,为受 CentOS 停服影响的用户提供迁移方案及长期稳定支持。龙蜥操作系统(Anolis OS)8 全面兼容 CentOS 8 软件生态,且兼容其它主流 Linux 发行版,是完全开源、中立且开放的发行版。
为方便广大 CentOS 用户平滑迁移到龙蜥操作系统(Anolis OS),降低用户迁移成本,现整理如下迁移手册及迁移注意事项!作者:徐春梅,龙蜥社区 Anolis 迁移 SIG 负责人。
一、迁移原理与注意事项
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 架构的软件包,则无法正常迁移。
二、部署迁移工具
下载迁移脚本(此处有代码)
安装迁移脚本运行依赖(此处有代码)
三、迁移执行
(此处有代码)
迁移完成后,系统会提示如下信息,表示迁移成功,重启即可进入龙蜥操作系统(Anolis OS)。

centos2anolis.py 提供了 -V 选项,用于记录迁移前后的软件包信息,您可以根据需要判断是否添加选项。添加 -V 选项,迁移完成后会在 /var/tmp 目录下生成迁移前后的 rpm 信息,命名格式(此处有代码)
四、迁移后配置检查
CentOS 在 2021 年 12 月 31 号停止维护,相应的 CentOS 源在 2022 年 1 月 31 号从官网删除,导致 CentOS 实例无法正常使用 repo,阿里云官方给出了切换使用 CentOS Vault 源的指导。
如果您按照该指导切换使用 CentOS Vault 源或者自行配置使用 Vault 源,然后实施迁移 Anolis OS,迁移完成后,需要检查当前系统中是否残留 CentOS Vault 源。
通过命令 yum repolist 检查(此处有代码)
如上述结果所示,“CentOS-8.5.2111 - Base - mirrors.aliyun.com” 就是残留的 CentOS repo,需要删除,否则会出现 Anolis OS 和 CentOS 源共存的问题,一旦执行 yum update 可能会错误地安装 CentOS 的包。
删除 CentOS 源的方法和步骤如下:
1.查找提供 CentOS repo 的配置文件(此处有代码)
五、 迁移后验证
查看 OS 版本(此处有代码)
1)就地迁移失败是否可回滚?
迁移工具不支持回滚,迁移失败无法恢复到迁移初始状态,迁移前务必做好系统备份。
2)迁移出现问题怎么办?
a. 先在龙蜥社区知识库查看是否有同样的问题。
相关链接或代码,因平台关系,读者可进入龙蜥社区公众号(OpenAnolis龙蜥)点击2022年3月2日相同推送查看。
加入龙蜥社群
加入微信群:添加社区助理-龙蜥社区小龙(微信:openanolis_assis),备注【龙蜥】与你同在;加入钉钉群:扫描下方钉钉群二维码。欢迎开发者/用户加入龙蜥社区(OpenAnolis)交流,共同推进龙蜥社区的发展,一起打造一个活跃的、健康的开源操作系统生态!

龙蜥社区( OpenAnolis)是由 企事业单位、高等院校、科研单位、非营利性组织、个人等在自愿、平等、开源、协作的基础上组成的非盈利性开源社区。龙蜥社区成立于 2020 年 9 月,旨在构建一个开源、中立、开放的Linux 上游发行版社区及创新平台。
龙蜥社区成立的短期目标是开发龙蜥操作系统(Anolis OS)作为 CentOS 停服后的应对方案,构建一个兼容国际 Linux 主流厂商的社区发行版。中长期目标是探索打造一个面向未来的操作系统,建立统一的开源操作系统生态,孵化创新开源项目,繁荣开源生态。
目前, 龙蜥OS 8.4 已发布,支持 X86_64 、Arm64、LoongArch 架构,完善适配飞腾、海光、兆芯、鲲鹏、龙芯等芯片,并提供全栈国密支持。
欢迎加入我们,一起打造面向未来的开源操作系统!