CentOS 7 生命周期结束

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

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

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

先决条件

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

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

将 CentOS 7 升级到 Rocky Linux 8

本文的接下来部分将向您展示如何使用 ELevate项目和 Leapp 框架从 CentOS 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 系统托管 MySQL 或 MariaDB 数据库,您可以使用 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

在 CentOS 7 中安装 Elevate Repo在 CentOS 7 中安装 Elevate Repo

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

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

在CentOS 7中安装Leapp升级工具在CentOS 7中安装Leapp升级工具

第 3 步:运行升级前检查

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

sudo leapp preupgrade

在 CentOS 7 上运行升级前检查在 CentOS 7 上运行升级前检查

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

sudo ls -l /var/log/leapp/

Leapp 升级前报告Leapp 升级前报告

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

  • 答案文件 – 此文件包含需要回答是或否才能继续升级的问题。
  • leafp-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

Leapp 升级前检查Leapp 升级前检查

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

第 4 步:执行升级

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

sudo leapp upgrade

运行 Leapp 升级运行 Leapp 升级

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

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

reboot

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

提升升级 Initramfs提升升级 Initramfs

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

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

Grub 中的 Rocky Linux 8 入门Grub 中的 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

在 Rocky Linux 8 中安装 Elevate Repo在 Rocky Linux 8 中安装 Elevate Repo

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

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

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

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

第 2 步:运行升级前检查

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

sudo leapp preupgrade

在 Rocky Linux 8 上运行升级前检查在 Rocky Linux 8 上运行升级前检查

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

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

Leapp 升级前检查Leapp 升级前检查

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

步骤 3:执行升级

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

sudo leapp upgrade

运行 Leapp 升级到 Rocky Linux 9运行 Leapp 升级到 Rocky Linux 9

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

sudo dnf remove rocky-logos make-devel

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

sudo leapp upgrade

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

reboot

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

提升升级 Initramfs提升升级 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 脱颖而出成为首选之一。

资讯来源:由0x资讯编译自TECMINT。版权归作者Ravi Saive所有,未经许可,不得转载

资讯来源:由a0资讯编译自THECOINREPUBLIC。版权归作者A0资讯所有,未经许可,不得转载

上一篇 2024年 5月 31日
下一篇 2024年 5月 31日

相关推荐