第 18 章 系统配置


RHEL 的镜像模式使用容器原生虚拟化方法构建、部署和管理操作系统。镜像模式软件包、操作系统及其配置作为基于 registry.redhat.io/rhel10/rhel-bootc 镜像的容器镜像,其中包含操作系统及其配置为不可变容器层。

18.1. 临时运行时重新配置

Red Hat Enterprise Linux 镜像模式中的临时运行时重新配置涉及对实时系统进行临时调整。在将这些更改永久嵌入到不可变容器镜像之前,您可以安全地测试配置并排除问题。

您可以在基础镜像配置中执行动态重新配置。例如,您可以运行 firewall-cmd --permanent 命令,来在重启后实现永久更改。

警告

默认情况下,/etc 目录是持久的。如果您使用工具(如 firewall-cmd --permanent )进行更改,系统上的 /etc 内容可能与容器镜像中描述的内容不同。

在 deafult 配置中,首先在基础镜像中进行更改。然后,在不重启正在运行的系统的情况下对更改进行排队。最后,同时写入,仅在内存中对现有系统应用更改。

您可以使用绑定挂载将 /etc 目录配置为临时的。在这种情况下,etc 目录是机器的本地 root 文件系统的一部分。例如,如果您使用 Anaconda Kickstart 注入静态 IP 地址,它们会在升级后保留不变。

系统在升级过程中应用三向合并,每个部署都会保留自己的 /etc 副本。

/run 目录
/run 目录是一个 API 文件系统,定义为在系统重启时删除。将 /run 目录用于临时文件。
动态重新配置模型
在 Pull 模型中,您可以直接包含嵌入在基础镜像或特权容器中的代码。此代码联系远程网络服务器进行配置,然后使用 Podman API 启动其他容器镜像。

在 Push 模型中,一些工作负载是通过 Ansible 等工具实现的。

systemd
您可以通过写入到 /run/systemd 目录来对动态临时重新配置使用 systemd 单元。例如,systemctl edit --runtime myservice.service 会动态更改 myservice.service 单元的配置,而不会使更改持久。
NetworkManager
使用 /run/NetworkManager/conf.d 目录应用临时网络配置。使用 nmcli connection modify --temporary 命令仅在内存中写更改。如果没有 --temporary 选项,命令会写入持久的更改。
Podman
使用 podman run --rm 命令在容器退出时自动删除容器。如果不使用 --rm 选项,podman run 命令会创建一个在系统重启后保持不变的容器。
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部