3

关于 CentOS 迁移龙蜥操作系统,这里有一份详细指南,请查收!

 2 years ago
source link: https://www.techug.com/post/for-centos-migration-dragon-lizard-operating-system-here-is-a-detailed-guide-please-check-it.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

编者按: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 架构的软件包,则无法正常迁移。

二、部署迁移工具下载迁移脚本:

下载迁移脚本:

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 等一站式迁移指导和迁移工具也会陆续输出,还请持续关注龙蜥社区公众号不迷路,第一时间获取迁移相关资讯!

相关链接地址

【1】阿里云 CentOS Vault 源链接:

https://help.aliyun.com/document_detail/405635.html

【2】龙蜥社区知识库链接地址:

https://www.yuque.com/anolis-docs/kbase

—— 完 ——

加入龙蜥社群

加入微信群:添加社区助理-龙蜥社区小龙(微信:openanolis_assis),备注【龙蜥】与你同在;加入钉钉群:扫描下方钉钉群二维码。欢迎开发者/用户加入龙蜥社区(OpenAnolis)交流,共同推进龙蜥社区的发展,一起打造一个活跃的、健康的开源操作系统生态!

关于龙蜥社区

龙蜥社区(OpenAnolis)是由企事业单位、高等院校、科研单位、非营利性组织、个人等在自愿、平等、开源、协作的基础上组成的非盈利性开源社区。龙蜥社区成立于 2020 年 9 月,旨在构建一个开源、中立、开放的 Linux 上游发行版社区及创新平台。

龙蜥社区成立的短期目标是开发龙蜥操作系统(Anolis OS)作为 CentOS 停服后的应对方案,构建一个兼容国际 Linux 主流厂商的社区发行版。中长期目标是探索打造一个面向未来的操作系统,建立统一的开源操作系统生态,孵化创新开源项目,繁荣开源生态。

目前,龙蜥OS 8.4已发布,支持 X86_64 、Arm64、LoongArch 架构,完善适配飞腾、海光、兆芯、鲲鹏、龙芯等芯片,并提供全栈国密支持。

欢迎下载:

https://openanolis.cn/download

加入我们,一起打造面向未来的开源操作系统!

https://openanolis.cn

本文文字及图片出自 InfoQ


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK