网站搜索

CentOS 7 生命周期结束 - 迁移到 Rocky Linux 9


CentOS 7 于 2024 年 6 月 30 日停止获取更新,这意味着它不再从 Red Hat 获取安全更新或错误修复。像 Rocky Linux 这样的新选项已经出现,可以帮助使用 CentOS 并需要持续支持的用户。

从一种类型的 Linux 迁移到另一种类型需要仔细规划并一步一步进行。首先,您必须从 CentOS 7 切换到 Rocky Linux 8,然后从 Rocky Linux 8 切换到 Rocky Linux 9 使用 Leapp 框架和 ELevate 项目等工具来简化此过程。

本指南将通过提供清晰、易于遵循的步骤来帮助您从 CentOS 7 迁移到 Rocky Linux 9

先决条件

CentOS 7 迁移到 Rocky Linux 9 的先决条件包括:

  • 运行 CentOS 7 的系统。
  • 管理员访问权限。
  • 互联网连接。

将 CentOS 7 升级到 Rocky Linux 8

本文接下来的部分将向您展示如何使用 ELevate 项目和 LeappCentOS 7 迁移到 Rocky Linux 8框架。

这两个项目可以帮助您将系统从一个基于 RHEL 的操作系统迁移到另一个。

步骤1:备份CentOS 7数据

在开始迁移过程之前,备份所有重要文件非常重要,这样可以确保在迁移过程中出现任何问题时,您可以恢复数据而不会造成任何损失。

如果要备份特定文件或目录,可以使用 tar 命令和 -cvzf 选项来创建压缩存档文件。

sudo tar -cvzf /backup/home_user1_backup.tar.gz /home/user1

要备份整个系统,您可以使用 tar 命令--exclude 选项来排除某些目录(例如,/proc/sys/dev 等),然后创建压缩存档文件。

sudo tar -cvzf /backup/full_system_backup.tar.gz --exclude=/proc --exclude=/sys --exclude=/dev --exclude=/backup /

或者,您可以使用 rsync 命令在两个位置(本地或通过网络)之间同步文件和目录。

sudo rsync -av --delete /source_directory /backup

如果您的CentOS 7系统托管MySQLMariaDB数据库,您可以使用mysqldump命令将数据库备份到SQL文件。

mysqldump -u username -p dbname > dbname_backup.sql

第 2 步:安装 Elevate 和 Leapp 软件包

要从最新版本的存储库安装 elevate-release 软件包,您可以使用以下命令:

sudo yum install -y http://repo.almalinux.org/elevate/elevate-release-latest-el$(rpm --eval %rhel).noarch.rpm

接下来,安装用于系统升级和迁移的Leapp升级工具以及包含Rocky Linux特定数据文件的leapp-data-rocky > 分布。

sudo yum install -y leapp-upgrade leapp-data-rocky

第 3 步:运行升级前检查

现在运行以下命令来启动预升级过程,其中 Leapp 通过识别潜在问题、检查兼容性、执行必要的升级前任务以及生成升级前报告来准备系统升级。

sudo leapp preupgrade

预升级过程可能需要一些时间才能完成。完成后,Leapp 工具将在 /var/log/leapp/ 目录中创建文件,其中包含重要文件以及有关在运行过程中可能出现的任何潜在问题的信息。升级以及如何修复它们。

sudo ls -l /var/log/leapp/

以下是您应该查看的关键文件:

  • answerfile – 此文件包含需要答案才能继续升级的问题。
  • leapp-report.txt – 此文件列出了升级之前或之后要修复的所有问题和解决方案。
  • leapp-preupgrade.log – 此文件显示升级前过程的完整日志和详细信息。

在升级系统之前,请检查前两个文件并采取必要的步骤来修复从 CentOS 7 迁移时的以下常见问题。

1.删除pata_acpi内核模块:

sudo rmmod pata_acpi

2.更新/etc/ssh/sshd_config配置文件以允许root登录:

echo PermitRootLogin yes | sudo tee -a /etc/ssh/sshd_config

3.禁用PAM配置中的pam_pkcs11模块,使升级过程不间断。

sudo leapp answer --section remove_pam_pkcs11_module_check.confirm=True

修复所有常见问题后,重新运行预升级命令以确认一切均已修复:

sudo leapp preupgrade

当不再显示“升级禁止”消息时,升级已准备就绪。

第 4 步:执行升级

最后,运行升级命令,这将启动升级过程,其中包括下载必要的软件包、应用系统配置更改以及将系统更新到目标版本等任务。

sudo leapp upgrade

等待升级完成。如果不起作用,请返回之前的步骤并修复升级前检查期间遗漏的任何问题。

升级过程顺利完成后,重新启动计算机。

reboot

重新启动后,您将在 GRUB 菜单中看到一个名为 Elevate-Upgrade-Initramfs 的条目。

等待五秒后,系统将自动开始升级过程。

升级完成后,系统将重新启动两次。重启完成后,你会在GRUB菜单中看到Rocky Linux 8选项,这意味着从CentOS 7升级到Rocky Linux 8强>成功了。

现在以 root 用户身份登录并验证版本。

cat /etc/redhat-release

Rocky Linux release 8.9 (Green Obsidian)

第 5 步:升级后步骤

迁移到Rocky Linux 8后,您需要清理之前CentOS版本留下的所有软件包。

sudo rpm -qa | grep el7 
sudo rpm -qa | grep elevate
sudo rpm -qa | grep leapp
sudo rpm -qa | grep el7 | xargs sudo rpm -e
sudo rm -fr /root/tmp_leapp_py3
sudo dnf clean all

将 Rocky Linux 8 升级到 Rocky Linux 9

要从 Rocky Linux 8 升级到 Rocky Linux 9,您需要使用相同的 ELevate 存储库和 Leapp框架。

第 1 步:安装 Elevate 和 Leapp 软件包

首先,安装elevate-release软件包,它为系统上安装的操作系统的特定版本提供最新版本的软件包。

sudo yum install -y http://repo.almalinux.org/elevate/elevate-release-latest-el$(rpm --eval %rhel).noarch.rpm

接下来,运行以下命令设置排除规则,允许 yum 安装或更新所有软件包,而无需任何排除。

sudo yum config-manager --save --setopt exclude=''

接下来,安装 leapp-upgradeleapp-data-rocky 软件包,它们提供的功能可促进从一个版本的操作系统升级到另一个版本的过程。

sudo yum install -y leapp-upgrade leapp-data-rocky

第 2 步:运行升级前检查

现在运行以下命令来启动预升级过程,其中 Leapp 通过识别潜在问题、检查兼容性、执行必要的升级前任务以及生成升级前报告来准备系统升级。

sudo leapp preupgrade

预升级过程会创建与以前类似的文件,但具有不同的建议解决方案。查看应答文件以查找所有建议的步骤并按所示修复它们。

1.调整firewalld的设置。

sudo sed -i "s/^AllowZoneDrifting=.*/AllowZoneDrifting=no/" /etc/firewalld/firewalld.conf

2.删除不支持的网络设备类型的网络设置文件。

sudo rm /etc/sysconfig/network-scripts/ifcfg-[device_name]

3. 跳过应答文件中的VDO设备检查要求。

sudo leapp answer --section check_vdo.no_vdo_devices=True

修复所有常见问题后,重新运行升级前命令以确认一切均已修复。

sudo leapp preupgrade

当不再显示“升级禁止”消息时,升级已准备就绪。

步骤 3:执行升级

最后,运行升级命令,这将启动升级过程,其中包括下载必要的软件包、应用系统配置更改以及将系统更新到目标版本等任务。

sudo leapp upgrade

等待升级完成。如果不起作用,请查看报告是否显示任何有问题的包。通常,make-develrocky-logos 软件包会在升级过程中引起问题。

sudo dnf remove rocky-logos make-devel

删除有问题的软件包后再次运行升级。

sudo leapp upgrade

升级过程顺利完成后,重新启动计算机。

reboot

重新启动后,您将在 GRUB 菜单中看到一个名为 Elevate-Upgrade-Initramfs 的条目。

等待五秒后,系统将自动开始升级过程。

升级完成后,系统将重新启动两次。重启完成后,您会在GRUB菜单中看到Rocky Linux 9选项,这意味着从Rocky Linux 8升级到Rocky Linux 9 成功了。

启动计算机后,登录并查看迁移进行得如何。确保您使用正确的操作系统。检查旧操作系统版本中的日志和任何剩余的软件包。您可能想自己删除或更新它们。


cat /etc/redhat-release
cat /etc/os-release
rpm -qa | grep el8
cat /var/log/leapp/leapp-report.txt
cat /var/log/leapp/leapp-upgrade.log

按照本指南中的步骤操作后,您现在已从 CentOS 7 升级到 Rocky Linux 9。探索有关 CentOS 替代方案的更多信息,以及为什么 Rocky Linux 脱颖而出,成为最佳选择之一。