Convert2RHEL:从其他 Linux 发行版迁移至红帽企业 Linux

什么是 convert2RHEL?

Convert2RHEL 是一款命令行实用程序,可分析您的系统的就绪度并将基于 RPM 的 Linux 操作系统(OS)转换至红帽企业 Linux。这是在红帽企业 Linux 上实现标准化的一种自动化方式,无需您手动重新部署任何工作负载。
Convert2RHEL 可在转换过程中保持现有操作系统中的自定义项、配置和偏好,从而最大限度减少对高成本重新部署项目的需求并减轻管理负担。
阅读文档

为什么使用 convert2RHEL?

CentOS 项目将于 2024 年 6 月 30 日之后停止对 CentOS Linux® 7 的更新和发布。这意味着当前的 CentOS Linux 用户需要选择一条迁移路径才能继续接收安全补丁和更新。
查看 CentOS 迁移的信息页面

Convert2RHEL 只是第一步。您可了解它与红帽第三方 Linux 迁移特惠之间的联系。视频时长:5:22。

将从 CentOS Linux 7 迁移至红帽企业 Linux 的企业现已可以利用红帽智能分析以更简单的方式进行转换:

  1. 注册 CentOS Linux 7 系统以使其出现在智能分析清单列表中。
  2. 启动对所选 CentOS Linux 7 系统的转换前分析并接收修复建议,以帮助解决可能会使转换过程变得复杂或影响向红帽企业 Linux 转换的问题。
  3. 解决转换前分析中发现的任何问题后,直接从红帽智能分析完成向红帽企业 Linux 的转换

如需深入了解,请浏览我们的分步迁移指南
如果企业组织希望从基于 RPM 的其他 Linux 发行版迁移或更偏向于通过 convert2RHEL 命令行工具迁移至红帽企业 Linux,请参阅下方的操作指导及后续步骤。

如何使用 convert2RHEL

确定转换路径

从 CentOS Linux 7 迁移至红帽企业 Linux 的许多用户都会先转换至红帽企业 Linux 7。将系统迁移至红帽企业 Linux 7 之后,用户可以升级至红帽企业 Linux 8(可就地完成),也可以了解我们的延长生命周期支持(ELS)订阅。如需了解更多,请查看 Convert2RHEL 备忘单
支持的转换路径包括:

  • 从 CentOS Linux 8 转换至红帽企业 Linux 8
  • 从 Oracle Linux 7 转换至红帽企业 Linux 7
  • 从 Oracle Linux 8 转换至红帽企业 Linux 8
  • 从 Alma Linux 8 转换至红帽企业 Linux 8
  • 从 Rocky Linux 8 转换至红帽企业 Linux 8

不支持从 CentOS Linux 6 和 Oracle Linux 6 转换至红帽企业 Linux,因为红帽企业 Linux 6 已超出生命周期维护阶段,但本文档提供了相关指导。
通过定制途径简化从 CentOS Linux 的转换

为转换做准备

您可通过阅读此文档获得相关指导并了解附加功能和已知限制信息。确认您的系统支持转换至红帽企业 Linux,然后进行备份。参考该文档(包含有关如何评估系统应用和数据的分步说明)确定工作负载、配置或应用可能存在的难点,然后主动解决问题。在迁移之前确定兼容性问题和分层应用,以便将风险降至最低并进行系统优化。
如果在此阶段遇到挑战或复杂情况,请联系红帽咨询。我们的专家可帮助转换较复杂的应用和工作负载,协助对流程进行标准化改造、分析工作负载并自动执行迁移变体,所有这些工作均有助于最大限度降低与操作系统转换相关的风险。

查看转换前分析报告

要评估您的系统是否可以转换至红帽企业 Linux,请运行转换前分析。完成分析后生成的报告中会汇总潜在问题并提供解决方案建议。此报告还有助于您确定是否可以或是否适合继续转换至红帽企业 Linux。

转换

备份好您的现有操作系统后,请运行 convert2RHEL 工具并遵循本文档中的说明。Convert2RHEL 可自动识别操作系统软件包并将您的原始 Linux 发行版中的操作系统软件包替换为等效的红帽企业 Linux 操作系统软件包,且 convert2RHEL 享受红帽官方支持,有助于对转换版本问题进行故障排除。
转换成功后,需重启系统才能进入红帽企业 Linux。转换后,可能需要重新安装第三方 RPM 或重新配置系统服务。

升级

如果您的系统在 convert2RHEL 完成后运行的是红帽企业 Linux 7,请花些时间评估您的支持情况。如果您使用的是支持第三方 Linux 迁移的红帽企业 Linux 产品或购买了延长生命周期支持(ELS)附加订阅,那么您有额外的时间来升级到较新版本。如果您没有上述任何延长支持选项,我们建议在红帽企业 Linux 7 维护终止(2024 年 6 月 30 日)之前升级到较新的受支持版本
进一步了解升级
可帮助用户扩展功能的另一款工具是红帽开发人员订阅团队版。借助该工具,在生产环境中运行红帽技术的现有红帽客户有机会免费部署红帽企业 Linux。红帽企业 Linux 让开发人员可以轻松使用更加可靠且安全至上的操作系统,企业组织构建和测试应用的平台即生产型工作负载所用的同一个创新且可靠的平台。
从简报中了解更多

回归正轨

完成转换和升级后,您便可以访问红帽企业 Linux 的所有最新更新,以及红帽企业 Linux 中包含的所有性能、支持、管理和安全功能。
如需详细了解转换流程,请参阅技术文档红帽知识库

Views: 98

使用红帽 Ansible 自动化 CentOS7 Linux到RHEL的迁移过程

2024年 6月 27日Nuno Martins
Automation and management自动化和管理 Linux Migration迁移


CentOS Linux 7的生命周期即将结束,更新将于2024年6月30日结束。这一即将到来的最后期限意味着安全更新和维护的结束,为继续依赖过时操作系统的组织带来了重大风险。需要升级到更新且受支持的平台,如Red Hat Enterprise Linux(RHEL),以保持最新的安全状态和持续的功能。
这些系统可能在您组织的IT基础设施中发挥关键作用,迁移这些系统并非易事。红帽Ansible自动化平台可以帮助简化和自动化此流程,降低复杂性,同时实现可扩展性,并能够协调对周围基础设施的更改,以支持迁移。
在本文中,我将探讨使用Ansible Automation Platform在整个组织中大规模推动这种迁移的可能性,以及实现这一目标所需的步骤。

从CentOS Linux迁移到RHEL

当然,登录到CentOS Linux系统并启动Convert 2 RHEL命令行过程非常容易。但是,如何在多个系统中实现这一点呢?那么可能存在的所有基础设施依赖性呢?
使用Ansible Automation Platform进行此过程可帮助您解决规模和依赖关系,同时允许您为迁移构建逻辑工作流。还有什么比大规模转化更强大的呢?大规模整治!我们可以自动修复所有这些阻断剂。
我们经常将Ansible Automation Platform称为简单而强大的平台,但它真正的强大功能是覆盖多个领域和用例。我们可以自动化迁移过程,但我们也可以使用多域方面来解决基础设施和平台依赖性。

让我们来看一个典型的系统示例,我们现在希望将其迁移到RHEL。我有一组应用程序服务器托管我的流应用程序。这些系统并不是孤立运行的,可能会有防火墙、负载平衡甚至与数据库的连接。还可能需要其他的前期工作。我可能需要:

  • Update dependent systems 更新依赖系统
  • 备份数据或快照系统
  • 在我们的监控解决方案中从通知中删除系统
  • 在我们开始之前,在我们的ITSM中打开服务票证

有了我们需要做的一切操作知识,我们可以构建我们的Ansible Playbook并标准化流程以实现一致性。使用Ansible自动化平台,通过提供红帽Ansible Lightspeed(我们用于剧本创建的生成式AI),我们可以实现终极“ops-life”破解。我们可以利用我们的知识,让Ansible Lightspeed帮助我们更快地构建剧本,同时遵循最佳实践。
一旦我们创建了我们的内容,我们就可以使用自动化控制器来构建自动化工作流,并在我们继续自动化实际的Convert2RHEL流程之前逻辑地绘制流程。

在我们继续之前,我想指出这个工作流的一个关键组成部分:自动化系统快照的能力。这对于CentOS Linux到RHEL的迁移和RHEL的自动升级都很重要。当我们讨论RHEL升级时,我将向您展示一个Ansible验证的infra.lvm_snapshots内容的示例。
那么,转换我们系统的实际过程是怎样的呢?通过我们的Ansible自动化平台订阅,我们可以访问Ansible验证的内容,这些内容提供专家,固执己见的自动化内容,所有内容都位于console.redhat.com上的Ansible自动化中心。

我们将使用infra.convert2rhel集合开始。这个集合提供了我们可以用来使用Convert 2 RHEL框架执行转换的角色。使用Ansible验证内容中提供的示例剧本,我可以简单地将其添加到我的工作流程中,并在完成前期工作任务后启动迁移。

---
- name: Convert CentOS Linux to RHEL
hosts: centos
strategy: free
become: true
force_handlers: true
vars:
  rhsm_username: "{{ rhsm_username }}"
  rhsm_password: "{{ rhsm_password }}"
  rhsm_org: "{{ rhsm_org }}"
  rhsm_activation_key: "{{ rhsm_activation_key }}"
tasks:
  - name: Perform OS conversion
    ansible.builtin.import_role:
      name: infra.convert2rhel.convert

如果你看了示例剧本,注意策略的使用是很重要的。如果您不熟悉这一点,这使我们能够控制如何跨主机执行任务。在我们的示例中,我们使用strategy:free -允许任务尽快执行而无需等待其他主机,并且它独立运行每个主机。这是大规模升级多台机器的理想选择。
一旦我们迁移系统,我们就可以利用Ansible Automation Platform自动化测试和检查端口和配置,作为迁移到RHEL工作流程的最后一步。

“RHEL-come” to Enterprise Linux!

“RHEL-来”到企业Linux!
一旦我们的CentOS Linux系统已经迁移,我们现在将在RHEL 7。建议使用类似的过程升级到RHEL 8-我们使用LEAPP升级工具框架来帮助我们。Red Hat还为RHEL 7系统提供延长生命周期支持(ELS)附加订阅,有关更多信息,请参阅宣布为Red Hat Enterprise Linux 7提供长达4年的延长生命周期支持(ELS)。
与Convert 2 RHEL一样,红帽也为infra. leapp提供了经Ansible验证的内容。infra.leapp内容包含帮助我们进行预升级步骤的角色,例如生成预升级报告、常见问题/抑制因素的补救角色以及升级我们的系统。
当我们在RHEL的主要版本之间升级时,我们通常使用LEAPP来评估系统并创建升级前报告。LEAPP将收集数据,并提供关于潜在问题/抑制因素的报告,以及解决这些问题的可能建议。 虽然我们可以使用Ansible Role来修复LEAPP发现的常见问题,但是,第三方依赖关系或某些配置更改可能需要单独解决。

步骤1:评估您的系统

我们可以再次求助于Ansible Automation Platform,通过解决报告中的问题,构建补救行动手册,并将大规模的更改应用于我们想要升级的系统,来简化我们系统的补救过程。此外,如果我们不确定所需的任务,我们可以利用Ansible Lightspeed来生成一些补救措施。
示例:我们的系统有一个root远程登录的抑制器,我们使用Ansible Lightspeed来构建修复:

步骤2:触发升级:

通过使用自动化网格(Ansible自动化平台的一部分)等技术,我们可以大规模部署具有工作流程的剧本,甚至在全球范围内部署,甚至在地球仪。
使用我们的Ansible验证的内容,我们可以创建我们的LVM的快照,这样我们就可以在下一个升级步骤中恢复失败。

---
- name: Create/revert/remove/check LVM snapshots of node
hosts: "{{ rhel_inventory_group | default(omit) }}"
become: yes
environment:
  LANG: en_US.UTF-8
  LC_ALL: en_US.UTF-8
  TERM: linux
tasks:
  - ansible.builtin.set_fact:
      snapshot_create_set_name: "{{ snapshot_set_name }}"
      snapshot_remove_set_name: "{{ snapshot_set_name }}"
      snapshot_revert_set_name: "{{ snapshot_set_name }}"
  - name: "Execute snapshot check"
    ansible.builtin.include_role:
      name: "infra.lvm_snapshots.snapshot_create"
    vars:
      snapshot_create_check_only: true
      # Additional snapshot_* vars provided via AAP2 job template and associated surveys
    when: lvm_snapshots_action == "check"
  - name: "Execute snapshot {{ lvm_snapshots_action }}"
    ansible.builtin.include_role:
      name: "infra.lvm_snapshots.snapshot_{{ lvm_snapshots_action }}"
      # Additional snapshot_* vars provided via AAP2 job template and associated surveys
    when: (lvm_snapshots_action == "create") or (lvm_snapshots_action == "remove") or (lvm_snapshots_action == "revert")

一旦我们有了快照,我们就可以使用Ansible集合中的内容升级RHEL系统。

---
- name: Upgrade
hosts: "{{ rhel_inventory_group | default(omit) }}"
strategy: free
become: true
force_handlers: true
# vars:
#   ansible_python_interpreter: /usr/libexec/platform-python
tasks:
  - name: Perform OS upgrade
    ansible.builtin.import_role:
      name: infra.leapp.upgrade
...

一旦系统升级,我们就可以使用Ansible自动化平台来检查系统的状态。如果一切顺利,我们还可以使用自动化将系统重新投入生产。

步骤3:升级后的附加组件

我们的升级已经完成,但我们仍然可以使用Ansible自动化平台做更多事情。升级后的配置和集成可以作为我们自动化工作流程的一部分进行,简化我们在升级系统时经常忘记的所有额外任务。Ansible自动化平台允许您将新的RHEL系统集成到红帽洞察中,从而简化合规性检查和执行。我们还可以配置Performance Co-Pilot向Event-Driven Ansible报告系统指标,以及您能想到的所有其他第2天任务!
自动化分析可以帮助我们明确自动化流程,或者帮助我们识别流程中主机中可能存在的异常,然后我们可以稍后解决这些异常。

Views: 31

CentOS 迁移 TencentOS Server 指引

操作系统版本 停止维护时间 使用者影响
CentOS 8 2022年01月01日 停止维护后将无法获得包括问题修复和功能更新在内的任何软件维护和支持。
CentOS 7 2024年06月30日

针对以上情况,若您需新购云服务器实例,建议选择使用 TencentOS Server 镜像。若您正在使用 CentOS 实例,则可参考本文替换为 TencentOS Server。

版本说明

源端主机支持操作系统版本
支持 CentOS 7系列操作系统版本:
CentOS 7.2 64位、CentOS 7.3 64位、CentOS 7.4 64位、CentOS 7.5 64位、CentOS 7.6 64位、CentOS 7.7 64位、CentOS 7.8 64位、CentOS 7.9 64位。
支持 CentOS 8系列操作系统版本:
CentOS 8.0 64位、CentOS 8.2 64位、CentOS 8.3 64位、CentOS 8.4 64位、CentOS 8.5 64位。
目标主机建议操作系统版本
CentOS 7系列建议迁移至 TencentOS Server 2.4 (TK4)。
CentOS 8系列建议迁移至 TencentOS Server 3.1 (TK4)。

注意事项

以下情况可能会影响业务在迁移后无法正常运行:
业务程序安装且依赖了第三方的 rpm 包。
迁移后的目标版本是 tkernel4,基于5.4的内核。该版本较 CentOS 7及 CentOS 8的内核版本更新,一些较旧的特性在新版本可能会发生变化。建议强依赖于内核的用户了解所依赖的特性,或可咨询 在线客服
业务程序依赖某个固定的 gcc 版本。 目前 TencentOS Server 2.4默认安装 gcc 4.8.5,TencentOS Server 3.1默认安装 gcc 8.5。
迁移结束后,需重启才能进入TencentOS Server 内核。
迁移不影响数据盘,仅 OS 层面的升级,不会对数据盘进行任何操作。
注意:
操作系统迁移会将内核升级为基于 5.4 版本的 tkernel4 内核,因此可能下列情况的系统可能受到影响:

  1. 业务程序依赖于某个固定的内核版本,或者自行编译了内核模块,如 GPU 机型迁移后内核需要重新安装 GPU 驱动;
  2. 原操作系统的某个模块由 rpm 包提供,在迁移后此 rpm 包可能无法为新的内核提供模块,如:
    xpmem-modules-2.6.3-2.54310.kver.3.10.0_1160.108.1.el7.x86_64.x86_64 为 kernel-3.10.0-1160.108.1.el7.x86_64 提供 ko 文件, 但无法为迁移后的 tkernel4 内核提供。这种情况下用户可获取源码重新编译安装该模块。

    资源要求

    空闲内存大于500MB。
    系统盘剩余空间大于10GB。
    若/boot挂载分区,该分区空间需要大于500MB。

    操作步骤

    迁移准备

  3. 迁移操作不可逆,为保障业务数据安全,强烈建议您在执行迁移前通过 创建快照 备份系统盘数据。
  4. 操作系统迁移需要用户具有 root 权限。

    执行迁移

    CentOS 7系列迁移至 TencentOS Server 2.4(TK4)

    1. 登录目标云服务器,详情请参见 使用标准登录方式登录 Linux 实例

    2. 执行以下命令,获取迁移工具。

    注意:
    若您的系统安装了旧版本的迁移工具,请卸载后再安装新的工具包。

    wget https://mirrors.cloud.tencent.com/tencentos/2.4/tlinux/x86_64/RPMS/migrate2tencentos-1.07-6.tl2.x86_64.rpm

    3. 执行以下命令,安装迁移工具。

    rpm -ivh migrate2tencentos-1.07-6.tl2.x86_64.rpm

    4. 执行以下命令,开始迁移。

    4.1 通过下面命令之一进行迁移
    4.1.1 全量迁移

    将 CentOS 发行版的用户态软件包替换为 TencentOS 发行版,为系统安装 TencentOS 自主研发的 tkernel4,基于5.4的内核。

    /usr/local/bin/EasyMigration -d remote -k

    image.png
    image.png
    最后 reboot 重启

4.1.2 minimal 软件组迁移

将系统的核心组件包迁移成 TencentOS 发行版,为系统安装 TencentOS 自主研发的 tkernel4,基于5.4的内核。
该模式下迁移的用户态软件包规模较小,系统上其他非核心组件的软件仍然保留为 CentOS 发行版。

/usr/local/bin/EasyMigration -d remote -k -g minimal

minimal 软件组默认列表参考 附录一
迁移需要一定时间,请耐心等待。脚本执行完成后,输出如下图所示信息,表示已完成迁移。

5. 重启实例,详情请参见 重启实例

6. 检查迁移结果。

6.1 执行以下命令,检查 os-release。

cat /etc/os-release

返回如下图所示信息:

6.2 执行以下命令,检查内核。

uname -r

返回如下图所示信息:

说明:
内核默认为 yum 最新版本,请以您的实际返回结果为准,本文以图示版本为例。

6.3 执行以下命令,检查 yum。

yum makecache

返回如下图所示信息:

若您在迁移过程中遇到问题,或对迁移有更多需求,请联系 在线客服
Minimal 软件组列表见下表格:

序号 名称
1 audit
2 basesystem
3 bash
4 btrfs-progs
5 coreutils
6 cronie
7 curl
8 dhclient
9 e2fsprogs
10 filesystem
11 firewalld
12 glibc
13 hostname
14 initscripts
15 iproute
16 iprutils
17 iptables
18 iputils
19 irqbalance
20 kbd
21 kexec-tools
22 less
23 man-db
24 ncurses
25 openssh-clients
26 openssh-server
27 parted
28 passwd
29 plymouth
30 policycoreutils
31 procps-ng
32 rootfiles
33 rpm
34 rsyslog
35 selinux-policy-targeted
36 setup
37 shadow-utils
38 sudo
39 systemd
40 tar
41 tuned
42 util-linux
43 vim-minimal
44 xfsprogs
45 yum
46 NetworkManager
47 NetworkManager-team
48 NetworkManager-tui
49 aic94xx-firmware
50 alsa-firmware
51 biosdevname
52 dracut-config-rescue
53 ivtv-firmware
54 iwl100-firmware
55 iwl1000-firmware
56 iwl105-firmware
57 iwl135-firmware
58 iwl2000-firmware
59 iwl2030-firmware
60 iwl3160-firmware
61 iwl3945-firmware
62 iwl4965-firmware
63 iwl5000-firmware
64 iwl5150-firmware
65 iwl6000-firmware
66 iwl6000g2a-firmware
67 iwl6000g2b-firmware
68 iwl6050-firmware
69 iwl7260-firmware
70 kernel-tools
71 libsysfs
72 linux-firmware
73 lshw
74 microcode_ctl
75 postfix
76 sg3_utils
77 sg3_utils-libs
78 dracut-config-generic
79 dracut-fips
80 dracut-fips-aesni
81 dracut-network
82 initial-setup
83 openssh-keycat
84 rdma-core
85 selinux-policy-mls
86 tboot
87 gdb
88 kexec-tools
89 latrace
90 libreport-cli
91 strace
92 systemtap-runtime
93 abrt-addon-ccpp
94 abrt-addon-python
95 abrt-cli
96 crash
97 crash-gcore-command
98 crash-ptdump-command
99 crash-trace-command
100 elfutils
101 kernel-tools
102 libreport-plugin-mailx
103 ltrace
104 memstomp
105 ps_mem
106 trace-cmd
107 valgrind
108 abrt-java-connector
109 gdb-gdbserver
110 glibc-utils
111 memtest86+
112 systemtap-client
113 systemtap-initscrip

CentOS 8系列迁移至 TencentOS 3.1(TK4)

  1. 登录目标云服务器,详情请参见 使用标准登录方式登录 Linux 实例

  2. 执行以下命令,获取迁移工具。
    注意:
    若您的系统曾经安装了旧版本的迁移工具,请卸载后再安装新的工具包。

    wget https://mirrors.cloud.tencent.com/tlinux/3.1/extras/x86_64/os/Packages/migrate2tencentos-1.07-6.tl3.x86_64.rpm
  3. 执行以下命令,安装迁移工具。

    rpm -ivh migrate2tencentos-1.07-6.tl3.x86_64.rpm
  4. 执行以下命令,开始迁移。
    4.1 通过下面命令之一进行迁移
    4.1.1 全量迁移
    将 CentOS 发行版的用户态软件包替换为 TencentOS 发行版,为系统安装 TencentOS 自主研发的 tkernel4,基于5.4的内核。

    /usr/local/bin/EasyMigration -d remote -k

    4.1.2 minimal 软件组迁移
    将系统的核心组件包迁移成 TencentOS 发行版,为系统安装 TencentOS 自主研发的 tkernel4,基于5.4的内核。
    该模式下迁移的用户态软件包规模较小,系统上其他非核心组件的软件仍然保留为 CentOS 发行版。

    /usr/local/bin/EasyMigration -d remote -k -g minimal

    minimal 软件组默认列表参考附录一。
    迁移需要一定时间,请耐心等待。脚本执行完成后,输出如下图所示信息,表示已完成迁移。

  5. 重启实例,详情请参见 重启实例

  6. 检查迁移结果。
    6.1 执行以下命令,检查 os-release。

    cat /etc/os-release

    返回如下图所示信息:

    6.2 执行以下命令,检查内核。

uname -r

返回如下图所示信息:

说明:
内核默认为 yum 最新版本,请以您的实际返回结果为准,本文以图示版本为例。
6.3 执行以下命令,检查 yum。

yum makecache

返回如下图所示信息:

若您在迁移过程中遇到问题,或对迁移有更多需求,请联系 在线客服
Minimal 软件组列表见下表格:

序号 名称
1 audit
2 basesystem
3 bash
4 btrfs-progs
5 coreutils
6 cronie
7 curl
8 dhclient
9 e2fsprogs
10 filesystem
11 firewalld
12 glibc
13 hostname
14 initscripts
15 iproute
16 iprutils
17 iptables
18 iputils
19 irqbalance
20 kbd
21 kexec-tools
22 less
23 man-db
24 ncurses
25 openssh-clients
26 openssh-server
27 parted
28 passwd
29 plymouth
30 policycoreutils
31 procps-ng
32 rootfiles
33 rpm
34 rsyslog
35 selinux-policy-targeted
36 setup
37 shadow-utils
38 sudo
39 systemd
40 tar
41 tuned
42 util-linux
43 vim-minimal
44 xfsprogs
45 yum
46 NetworkManager
47 NetworkManager-team
48 NetworkManager-tui
49 aic94xx-firmware
50 alsa-firmware
51 biosdevname
52 dracut-config-rescue
53 ivtv-firmware
54 iwl100-firmware
55 iwl1000-firmware
56 iwl105-firmware
57 iwl135-firmware
58 iwl2000-firmware
59 iwl2030-firmware
60 iwl3160-firmware
61 iwl3945-firmware
62 iwl4965-firmware
63 iwl5000-firmware
64 iwl5150-firmware
65 iwl6000-firmware
66 iwl6000g2a-firmware
67 iwl6000g2b-firmware
68 iwl6050-firmware
69 iwl7260-firmware
70 kernel-tools
71 libsysfs
72 linux-firmware
73 lshw
74 microcode_ctl
75 postfix
76 sg3_utils
77 sg3_utils-libs
78 dracut-config-generic
79 dracut-fips
80 dracut-fips-aesni
81 dracut-network
82 initial-setup
83 openssh-keycat
84 rdma-core
85 selinux-policy-mls
86 tboot
87 gdb
88 kexec-tools
89 latrace
90 libreport-cli
91 strace
92 systemtap-runtime
93 abrt-addon-ccpp
94 abrt-addon-python
95 abrt-cli
96 crash
97 crash-gcore-command
98 crash-ptdump-command
99 crash-trace-command
100 elfutils
101 kernel-tools
102 libreport-plugin-mailx
103 ltrace
104 memstomp
105 ps_mem
106 trace-cmd
107 valgrind
108 abrt-java-connector
109 gdb-gdbserver
110 glibc-utils
111 memtest86+
112 systemtap-client
113 systemtap-initscrip

Views: 22

CentOS 7原地迁移到版本 8 的 AlmaLinux、Rocky Linux、Oracle Linux

CentOS 官方计划停止维护 CentOS Linux 项目,CentOS 8及 CentOS 7维护情况如下表格。如需了解更多信息,请参见 CentOS 官方公告

操作系统版本 停止维护时间 使用者影响
CentOS 8 2022年01月01日 停止维护后将无法获得包括问题修复和功能更新在内的任何软件维护和支持。
CentOS 7 2024年06月30日

针对以上情况
Elevate 是一个由 AlmaLinux 团队开发的开源项目,它允许将 CentOS 7 迁移到基于 RHEL 的较新和主要版本的发行版,例如 AlmaLinux 8、Rocky Linux 8、Oracle Linux 8 和 CentOS Stream 8。它结合了 RedHat 的 Leapp 框架带有一个社区开发的库来协助迁移。
本教学指南为您提供了使用 Elevate 将 CentOS 7 升级/迁移到 AlmaLinux 8 的步骤。
注意:Elevate仍处于开发的早期阶段,应该仅用于测试目的。不应该在生产服务器中测试迁移工具。
当前可用的迁移路径:

  • CentOS 7 到 AlmaLinux 8
  • CentOS 7 到 Rocky Linux 8
  • CentOS 7 到 Oracle Linux 8
  • CentOS 7 到 CentOS Stream 8

第 1 步:完全更新系统

首先,更新所有系统包和存储库。
[linuxmi@localhost www.linuxmi.com]$ sudo yum update -y
image.png
然后重启CentOS 7服务器。
[linuxmi@localhost www.linuxmi.com]$ sudo reboot

第 2 步:安装elevate-release包

下一步是安装 elevate-release 包,如下所示。
[linuxmi@localhost www.linuxmi.com]$ sudo yum install -y http://repo.almalinux.org/elevate/elevate-release-latest-el7.noarch.rpm
image.png
安装完成后,现在是时候为要迁移到的首选操作系统安装 Leapp 包和迁移数据了。迁移数据包的可能选项包括:

  • leapp-data-oraclelinux
  • leapp-data-almalinux
  • leapp-data-rocky
  • leapp-data-centos
  • leapp-data-oraclelinux

在我们的例子中,我们正在迁移到 AlmaLinux 8,因此,我们将安装leapp-data-almalinux 包。
[linuxmi@localhost www.linuxmi.com]$ sudo yum install -y leapp-upgrade leapp-data-almalinux
image.png

第 3 步:运行升级前检查

此后,启动升级前检查,如下所示。该命令会运行检查以查看升级是否成功,并提供有关在测试失败时您可以采取的可能补救措施的报告。
[linuxmi@localhost www.linuxmi.com]$ sudo leapp preupgrade
image.png
事实上,测试失败的原因有两到三个,这些原因记录在/var/log/leap /answerfile文件中,带有true/false的问题。有各种各样的建议可以解决无法升级的问题,但是,下面的建议是强制性的。
image.png
image.png
因此, 需要删除多余开发内核依赖以及回答 answerfile 文件
删除其余未使用的内核
image.png
sudo yum remove kernel-devel-3.10.0-1160.88.1.el7 -y
sudo yum remove kernel-devel-3.10.0-1160.108.1.el7 -y
sudo yum remove kernel-devel-3.10.0-1160.118.1.el7 -y
清除并重建缓存
sudo yum clean all
sudo yum makecache

移除已经加载到内核中的模块pata_acpi
[linuxmi@localhost www.linuxmi.com]$ sudo lsmod | grep pata_acpi
[linuxmi@localhost www.linuxmi.com]$ sudo rmmod pata_acpi
image.png
回答 answerfile 文件
[linuxmi@localhost www.linuxmi.com]$ sudo leapp answer --section remove_pam_pkcs11_module_check.confirm=True
image.png

升级还要求 sshd 服务设置允许通过 root 登录, 解决办法
[linuxmi@localhost www.linuxmi.com]$ echo PermitRootLogin yes | sudo tee -a /etc/ssh/sshd_config
PermitRootLogin yes

重启你的系统以确保所有的更改生效:
sudo reboot
再次执行预升级检查
$ sudo leapp preupgrade
image.png

第 4 步:从 CentOS 7 升级到 Almalinux 8

升级前首先备份关键数据
提前创建快照用于回滚

开始升级,请运行以下命令并重新启动系统
[linuxmi@localhost www.linuxmi.com]$ sudo leapp upgrade
image.png
image.png
[linuxmi@localhost www.linuxmi.com]$ sudo reboot
如果使用的时云服务器, 重启后切换 VNC 登录方式
image.png
可以发现升级过程还在继续
image.png
image.png
reboot 重启服务器

在重新启动过程中,将出现一个标有“Elevate-Upgrade-Initramfs”的新引导选项。选择此选项。

问题:

腾讯轻应用服务器, 重启后找不到引导项,尝试在菜单处按 c 进入 grub shell, 查找引导镜像
image.png
但是如何手动加载引导项暂时没找到办法...只能作罢。 并且进入Almalinux系统后输入用户名后直接显示认证失败(无法输入密码). 暂时找不到解决办法, 感觉这种办法不适合在云服务器上使用。最终根据官方指引 https://cloud.tencent.com/document/product/213/70900
从 Centos7 升级到了 TencentOS Server

如果以上没有出现问题, 升级将继续进行,大约需要 25 分钟。
最后,系统将再次重新启动。这次使用 AlmaLinux grub 菜单选项。
登录后,请验证您使用的操作系统版本。
[linuxmi@localhost www.linuxmi.com]$ cat /etc/redhat-release

就我而言,输出确认我已成功从 CentOS 7 升级到 AlmaLinux 8.4。就是这样。我希望本指南可以让你现在可以从 CentOS 7 无缝升级到任何基于 RHEL 8.x 的主要发行版,而不会出现问题。
来自:Linux迷
链接:https://www.linuxmi.com/centos-7update-almalinux-8-rocky-linux-8.html

Views: 38