Oracle Linux 是由 Oracle 开发的基于 RHEL 的 Linux 发行版。 它是 CentOS Linux 的最佳替代品之一。 本指南解释了如何使用 CentOS Linux 迁移到 Oracle Linux centos2ol
脚本。
CentOS 社区经理 Rich Bowen 宣布将重点从 CentOS Linux 转移到 CentOS Stream 后,在开发者和用户中引起了极大的不满。
许多用户强烈谴责这一决定。 然而,决定已经做出,似乎已经没有回头路了。
当 CentOS Linux 8 于 2021 年 12 月 31 日结束时,您最好也是唯一的选择就是 迁移到 CentOS Stream 8.
由于 CentOS Stream 是滚动预览(即开发),很多用户对其稳定性提出了担忧。
目前,稳定可行的基于 RHEL 的 CentOS 替代方案是 阿尔玛Linux, 甲骨文Linux 和 洛奇Linux (它还是 beta)。 如果您想将 CentOS Linux 迁移到 Oracle Linux,本教程将教您如何操作。
Centos2ol (CentOS To Oracle Linux) 脚本
Oracle 开发团队创建了一个名为 "centos2ol.sh"
将您的 CentOS 8、7 和 6 系统转换为 Oracle Linux。
Centos2ol 脚本主要有以下两个功能:
- 它将 CentOS 系统的 yum 配置切换为使用 Oracle Linux yum 服务器来更新一些核心包。
- 它安装最新的 Oracle Unbreakable Enterprise Kernel (UEK)。
而已! 切换后您甚至不需要重新启动系统。 但是,如果您想利用 UEK,请重新启动系统并登录到 Oracle Linux 内核。
一句小心的话:
我用这个脚本将 CentOS 7 迁移到 Oracle Linux 7。第一次迁移没有成功。 然而,我在第二次尝试时很幸运。 我不建议在生产中使用此脚本。 因为,它在第一次尝试时破坏了我的 CentOS 7 服务器并且服务器没有启动。 幸运的是,它只是一个测试虚拟机,我只是重新安装了它。 所以我不能保证这个脚本将 CentOS 转换为 Oracle Linux 没有任何问题。 你被警告了!
让我们开始迁移。
将 CentOS Linux 迁移到 Oracle Linux
步骤1: 首先, 备份您的重要数据, 以防万一。
第2步: 然后,将您的 CentOS 7 系统更新到最新版本:
$ sudo dnf update
在 CentOS 6 上,运行以下命令来更新它:
$ sudo yum update
第 3 步: 更新系统后,重新启动它。
$ sudo reboot
让我们检查一下 CentOS 7 版本:
$ cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core)
步骤4: 接下来,确保您已安装 蟒蛇 2.x,这是由 centos2ol
脚本。 如果 python2
不可用,您可能会得到以下输出:
Checking for required packages... 'python2' command not found. Please install or add it to your PATH and try again. For assistance, please email <[email protected]>.
要安装 Python2,只需运行:
$ sudo dnf install python2
或者,
$ sudo yum install python2
第 5 步: 下载 centos2ol.sh
脚本:
$ curl -O https://linux.oracle.com/switch/centos2ol.sh
或者,从 GitHub 下载:
$ curl -O https://raw.githubusercontent.com/oracle/centos2ol/main/centos2ol.sh
第 6 步: 跑 centos2ol
脚本为 root
或者 sudo
将 CentOS Linux 迁移到 Oracle Linux 的用户:
$ sudo sh centos2ol.sh
或者,
$ sudo bash centos2ol.sh
现在将开始 Oracle Linux 迁移过程。 centos2ol 脚本将备份现有的 CentOS 存储库文件,添加 Oracle Linux 存储库,用 oracle 徽标替换 centos 徽标,更新一些核心包并安装最新的 Oracle Unbreakable Enterprise Kernel。
所有这些都是全自动的。 只需运行脚本并坐下来!
这将需要一段时间,具体取决于您的 Internet 连接速度。 请耐心等待。
切换成功,但有一些 Python 包错误。
[...] Error: Package: python2-dnf-plugins-core-4.0.2.2-3.el7_6.noarch (@extras/7) Requires: python2-hawkey >= 0.7.0 Removing: python2-hawkey-0.22.5-2.el7_9.x86_64 (installed) python2-hawkey = 0.22.5-2.el7_9 Downgraded By: python2-hawkey-0.6.3-4.el7.x86_64 (ol7_latest) python2-hawkey = 0.6.3-4.el7 Error: Package: python2-dnf-4.0.9.2-1.el7_6.noarch (@extras/7) Requires: python2-hawkey >= 0.22.5 Removing: python2-hawkey-0.22.5-2.el7_9.x86_64 (installed) python2-hawkey = 0.22.5-2.el7_9 Downgraded By: python2-hawkey-0.6.3-4.el7.x86_64 (ol7_latest) python2-hawkey = 0.6.3-4.el7 You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest Could not automatically sync with Oracle Linux repositories. Check the output of 'yum distro-sync' to manually resolve the issue. For assistance, please email <[email protected]>.
第 7 步: 运行以下命令将已安装的包同步到最新的可用版本。
$ sudo yum distro-sync
我一直收到与以前相同的 python 包错误。 我想不出如何解决。 所以我忽略了这个消息并重新启动了系统。
好主啊! 有效! 我可以看到 Grub 已更新为 Oracle Linux 条目。
登录新转换的Oracle Linux 7系统后,查看分发版本和Kernel详情,验证Oracle Linux迁移是否成功:
$ cat /etc/redhat-release Red Hat Enterprise Linux Server release 7.9 (Maipo)
$ uname -r 5.4.17-2036.100.6.1.el7uek.x86_64
是的! 我已成功将 CentOS Linux 7 转换为 Oracle Linux 7。
第 8 步: 更改 Oracle Linux 7 的主机名:
# systemctl set-hostname ol7
注销并重新登录以应用更改。 现在一切都很完美!
希望这可以帮助。
相关阅读:
- 使用 Almalinux-deploy 脚本从 CentOS 8 迁移到 AlmaLinux
资源:
- Centos2ol 脚本 GitHub 存储库
- Centos2ol 脚本链接
- Oracle Linux 网站
CentOSLinuxLinux 迁移OracleOracle LinuxRedhatRedHat Enterprise LinuxRHEL