第 16 章 对 RHEL bootc 镜像执行软重启
通过执行 systemd 软重启来为 Red Hat Enterprise Linux bootc 系统应用更新。这个过程重新加载操作系统组件,而无需完全硬件重启,确保更快地部署更改,并最大程度减少维护停机时间。
16.1. 对 RHEL bootc 镜像执行软重启概述 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
软重启允许您在不执行完整硬件重启的情况下对 Red Hat Enterprise Linux bootc 镜像应用更新。这个过程通过重新载入操作系统组件并跳过固件初始化阶段来最小化停机时间,确保更快地应用更改。
软重启主要解决通常与软件相关的问题,且风险最小。它是针对以下问题的标准故障排除步骤:
- 轻微的软件故障 :软重启解决导致应用程序冻结、崩溃或运行异常的临时错误。
- 性能问题:随着时间的推移,打开应用程序和后台进程会消耗资源并减慢系统的速度。软重启会清除这些进程,并刷新 RAM,这可以提高性能。
- 网络问题 :对于连接中断等问题,重启会刷新系统的网络设置。
- 完成更新:有些系统更新需要重启才能正确完成。
在带有 systemd 的 RHEL 环境中,软重启会在离开内核和硬件运行时重启用户空间,这比传统的完全重启提供了显著的好处:
-
减少停机时间:软重启可显著降低停机时间,因为它跳过了涉及 BIOS/UEFI、引导装载程序、内核和初始 RAM 磁盘(
initrd)的耗时引导过程。系统可以快速恢复响应,这对于关键服务器来说非常重要,因为最大限度地减少停机时间至关重要。 - 提高了操作效率:对于不涉及内核的软件和配置更改,您可以使用软重启来应用更新,而无需完全重启系统。这对于容器化或基于镜像的系统特别有用,其中新的 root 文件系统快照可以立即激活。
调用时,systemd-soft-reboot.service 系统服务执行以下操作:
-
向任何仍在运行的进程发送一个
SIGTERM信号,而无需等待进程退出。 -
继续一个
SIGKILL信号,以立即停止任何进程。 -
如果
/run/nextroot/目录存在,其可以是一个常规目录、一个目录挂载点或一个符号链接,它会将文件系统 root 切换到该目录。 - 从 root 文件系统(更新)重新运行服务管理器,并正常重启时为新引导事务排队。
-
soft-reboot.target在此服务中拉取,并执行仅用户空间重启操作。