如何将 CentOS Linux 6、7、8 服务器迁移到 Oracle Linux
概述
Oracle Linux基于 RedHat 的操作系统,这就是它与大多数 RHEL 或 CentOS 的二进制文件兼容的原因。它可以免费下载、使用和分发(甚至是源代码)甚至企业也可以在生产环境中免费使用它,而无需对 Oracle 的承担任何义务。每当发布每个 Red Hat Enterprise Linux (RHEL) 的主要版本,Oracle 也会发布自己的版本,因此最新版本的 Oracle Linux 是 8。CentOS 6 或 8的流行替代方案之一是Oracle Linux,它是免费的,并且可以与 CentOS 使用的相同二进制文件,毕竟两者都是基于 RPM 的并且是 Redhat 的后代。
如果您担心在迁移过程中在 CentOS 8/7/6 Linux 上安装应用程序和软件包,那么您不必担心太多,因为即使切换到 Oracle Linux,它们中的大多数也会保持原样。
Oracle 声称,RedHat 发布的更新通常在五天内在 Oracle Linux 上可用。迁移时,用户可以选择 Oracle 支持的内核,有两种,一种是流行的适用于 Oracle Linux 的 Unbreakable Enterprise Kernel (UEK),另一种是 Red Hat Compatible Kernel (RHCK)。
将 CentOS 8/7/6 Linux 迁移到 Oracle Linux 的步骤
由于 CentOS 7 使用 RHEL 7 的 LTS 版本维持其周期。因此,迁移是暂时不必要的。但对于使用 6 或 8 版本的 CentOS用户来说,他们也许对感兴趣。在这里我们使用 CentOS 8 Linux 来完成本教程,但是,这些步骤将适用于所有 6,7 和 8三个版本。
先决条件:
- Yum 或 DNF已经配置。
- 不应该有不再使用的旧存储库。
- /var/cache至少需要 5GB 的可用空间。
- 需要有sudo 权限。
1、运行系统更新&&升级命令
首先,运行系统更新和升级命令,它不仅会更新 CentOS Linux 上所有已安装的软件包,还会让它们达到最新状态。
sudo yum update
2、下载Oracle迁移脚本
curl -O https://raw.githubusercontent.com/oracle/centos2ol/main/centos2ol.sh
3、 运行脚本
我们从 GitHub 下载的迁移脚本,在这里我们将运行相同的脚本,它会自动识别系统版本并将 CentOS Linux 6、7 或 8 切换到等效版本的 Oracle Linux。我的意思是 CentOS 7 到 Oracle 7,CentOS 8 到 Oracle 8。
sudo bash centos2ol.sh
等待几分钟到几小时,具体取决于您打算迁移的现有系统上安装的应用程序,该过程需要一些时间。该脚本不仅将 CentOS 的存储库与 Oracle 交换,还会重新安装软件包以使其兼容。
4、 迁移完成…检查可用内核
从 CentOS Linux Oracle 切换完成后,命令终端屏幕上将显示相同的通知。
由于该过程还将默认为我们刚刚迁移的 CentOS安装Unbreakable Enterprise Kernel -UEK 。因此,要检查所有可用的内核以及哪个是默认内核。
sudo grubby --info=ALL | grep ^kernel
上面的命令将列出所有可用的内核。
要查看默认值,请运行如下命令:
sudo grubby --default-kernel
而默认的将是来自 Oracle 的 UEK。
( Opiotnal ) 如果您想用任何其他可用的更改它然后运行:
sudo grubby –info kernel-version index=1
用可用的版本替换内核版本,例如:
- /boot/vmlinuz-4.18.0-240.1.1.el8_3.x86_64
- /boot/vmlinuz-4.18.0-240.8.1.el8_3.x86_64
- /boot/vmlinuz-4.18.0-147.8.1.el8_8.x86_64
5、重启系统并检查Oracle Linux版本
一旦完成所有上述步骤,只需重新启动系统即可。
登录并运行以下命令,检查我们系统上的 Oracle Linux 版本。
cat /etc/os-release
在我们的例子中,结果是:
小结
oracle linux是后centos时代,又一个不错的选择,毕竟有商业公司的支持,其稳定性和长期更新还是有保证的。