13.8. 执行镜像模式系统的工厂重置


要将系统恢复到其原始状态,请将 /var/etc 重置为容器镜像的状态,并撤销对系统的任何修改,您可以对现有 bootc 系统执行非破坏性工厂重置。当您执行工厂重置时,您的系统将重启到全新的状态。在这个状态中,/etc 目录仅包含来自容器镜像的配置,/var 目录为空,这意味着您丢失了来自以前系统的所有用户数据或状态。

重要

对镜像模式系统执行工厂重置作为技术预览提供。红帽产品服务级别协议(SLA)不支持技术预览功能,且其功能可能并不完善,因此红帽不建议在生产环境中使用它们。这些预览可让用户早期访问将来的产品功能,让用户在开发过程中测试并提供反馈意见。

有关红帽技术预览功能支持范围的更多信息,请参阅红帽客户门户网站中的 技术预览功能支持范围 以了解有关技术预览功能的支持范围。

先决条件

  • 您有一个可引导的容器系统。
  • 您可以访问容器 registry 中要重置的容器镜像。
警告

您可能丢失用户 Anaconda 或其他工具,如 cloud-init,添加了。任何安装程序(如 bootc-image-builder 工具和 Anaconda)都会在 bootc install reset 命令删除的镜像之上添加状态。

流程

  1. 执行工厂重置。根据您的目标,运行以下命令之一:

    • 要重置为当前正在运行的同一镜像:

      $ sudo bootc install reset --experimental
    • 要重置并切换到其他镜像:

      $ sudo bootc install reset --experimental --target-imgref quay.io/example/myimage:latest
    • 要重置并立即重启:

      $ sudo bootc install reset --experimental --apply
    • 添加自定义内核参数:

      $ sudo bootc install reset --experimental --karg=console=ttyS0,115200n8
    • 要跳过继承 root 文件系统内核参数:

      $ sudo bootc install reset --experimental --no-root-kargs

      重新引导到新部署后,您仍然可以通过检查 /sysroot/ostree/deploy/<old-stateroot>/ 中的文件来访问旧系统的数据。

      注意

      执行工厂重置并重新引导至新的 stateroot 后,您仍会在磁盘上保留 /sysroot/ostree/deploy/ <old-stateroot> / 的旧 stateroot。如果需要,您可以访问之前系统中的文件。如需了解更多详细信息,请参阅 清理旧 stateroot

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

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

让开源更具包容性

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

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部