如何从 CentOS Stream 切换到 Centos 8

如何从 CentOS Stream 切换到 Centos 8

询问撤销这个问题的:如何切换从 CentOS 8到 CentOS 流

我认为按照雷内的回答(在链接的问题中)直接删除额外的软件包是一样的。即那些标记为CentOS-Stream

$ dnf repolist enabled | grep CentOS
AppStream                 CentOS-8 - AppStream
BaseOS                    CentOS-8 - Base
PowerTools                CentOS-8 - PowerTools
Stream-AppStream          CentOS-Stream - AppStream    #
Stream-BaseOS             CentOS-Stream - Base         #
Stream-extras             CentOS-Stream - Extras       #
centosplus                CentOS-8 - Plus
extras                    CentOS-8 - Extras
fasttrack                 CentOS-8 - fasttrack

但有没有人真正做到了这一点,或者可以从他们更大的 *nix 经验中证实我的假设?

- 编辑 -

我今天去实际调查了一下,发现我没有上面列出的 CentOS 8 存储库......所以我猜 Stream 本身并不是一个“附加组件”。我想这是有道理的。

appstream          CentOS Stream 8 - AppStream
baseos             CentOS Stream 8 - BaseOS
epel               Extra Packages for Enterprise Linux 8 - x86_64
epel-modular       Extra Packages for Enterprise Linux Modular 8 - x86_64
extras             CentOS Stream 8 - Extras
nginx              nginx repo

因此,就有了“这应该很容易”的想法。有人有什么想法吗?

答案1

所以,我找到了上面的答案,它取代了我的问题,非常好,但我从上面找到了一种更简单、更可逆的方法来做到这一点。

  1. mv /etc/yum.repos.d 到 /etc/yum_stream.repos.d
    这会在您切换回来的日期复制存储库文件的状态,并且也使它们不会被 yum/dnf“看到”
  2. cp -ax /etc/authselect ~/AuthSelect
  3. 从正确的虚拟机中创建 /etc/yum.repos.d 的副本(包括 epel 以及您之前拥有且仍然想要的任何其他存储库)。
  4. dnf 发行版同步
  5. cp -ax ~/AuthSelect /etc/authselect

瞧,看起来效果很好。现在,如果您想定期切换,这很容易,并且您已经准备好“您拥有的”来切换回来。

顺便说一句,对于任何喜欢 NVIDIA 驱动程序或(但愿不会)想要安装 CUDA 开发系统的人,请勿观看直播。没有意识到这一点,但 NVIDIA 专有驱动程序根本不可用。

我正在看《洛基》,现在刚刚看到了《斯普林代尔》,看起来不错。我过去也曾拥有 RHEL 许可证,但现在我感到左右为难,因为我不想奖励当前 RH 所有权的不良行为。但我确实理解希望人们花钱购买一个稳定、安全的发行版。不知道我现在在做什么...

答案2

所以看来你需要做的就是:

  1. 从其他 CentOS 8 机器获取 CentOS-*.repo 文件(名称中不带 Stream)。 (我必须使用新的虚拟机)
  2. 复制并粘贴 /scp到相关框中
  3. 禁用所有 CentOS-Stream-*.repo 文件/etc/yum.repos.d/
  4. 运行dnf distro-sync这会降级一些东西(很多很多东西)
  5. 重启

这给出了答案:https://centosfaq.org/centos/moving-from-centos-8-to-stream-and-possibility-back-again/

该链接的“切换回命令”还包含一条指令dnf remove centos-release-stream,以及删除现已失效的 CentOS-Stream-*.repo 文件。假设我没有杀死有问题的盒子,我可以这样做。

一旦知道该盒子的命运,我将更新此答案。

-- 编辑:发布上述操作 --

该框现在似乎无法完全启动到 Gnome。并且 root 无法通过 SSH 登录。所以这很有趣。我仍然可以使用 Webmin,这很好。虽然我可以在那里重置 root 密码,但这与拒绝 root 登录没有任何区别。

问题是 PAM 配置文件丢失了。无法登录的解决方案是复制该文件的所有内容文件在 /etc/authselect (不是 /etc/authselect/custom 中的那些)中添加到有问题的框。 (显然,只有当您有权访问计算机文件系统时才能执行此操作。但正如我所说,我运行了 Webmin,所以这对我有用)

万岁!

现在,对于dnf remove centos-release-stream,它返回:

Repository extras is listed more than once in the configuration
Error: 
Problem: The operation would result in removing the following protected packages: setup
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

但我不相信我需要关心这一点。由于回购被禁用,我无法预见这里会出现问题。 (但为了完成目的,最好将其删除。)

-- 编辑:评论 --

我已经确定了一个移动/删除的理由.repo 文件 - yum/dnf不喜欢这些文件在两个文件中具有相同的 repo= 。我只是移动了 CentOS-Stream文件复制到一个新的子目录中,并将chmod该目录设置为 000,这样就看不到它们。现在一切似乎都运行良好:)

相关内容