Skip to content
Search Fedora

This page uses Chinese content. Search opens the Chinese documentation.

    Browse this documentation

    Fedora IoT 与边缘设备

    This content is not available in your language yet.

    同样是 Fedora,装到树莓派或边缘网关上时,问题会变成另一套:镜像怎么刷、设备无人值守时怎么更新、升级失败怎么回退。本页讲 Fedora IoT 这条线,以及它与桌面、容器场景的分工。

    Fedora IoT 的官方定位是「面向 IoT 与 Device Edge 生态的基础」。关键词是 foundation:它给出的是一个可以往上叠容器与应用的底座,而不是一套开箱即用的行业方案。

    把它和另外两条不可变路线放在一起看会更清楚:同样走不可变路线的还有桌面侧的 Atomic Desktops 与容器侧的 Fedora CoreOS。三者面向的场景不同,选型时先看设备形态与更新方式,而不是先看名字。

    一句话选型:要刷一块没有显示器、可能放在机房外的设备,先看 IoT;要在笔记本上体验不可变桌面,看 Atomic Desktops;要跑容器集群,走另一条线。

    官方文档列出三种安装方式:Anaconda 安装 ISO、预构建磁盘镜像与简化配置 ISO(零接触安装)。选择哪一种,取决于你手上是什么设备。

    • Fedora-IoT-ostree-XX.XX.iso(Anaconda 安装 ISO):传统安装器,图形化配置文件系统、用户与密码,适合 x86_64 机器或虚拟机;
    • Fedora-IoT-raw-XX.XX.raw.xz(预构建磁盘镜像):直接刷到存储介质,官方文档点名适合树莓派 4 这类单板计算机;
    • Fedora-IoT-provisioner-XX.iso(简化配置 ISO):零接触安装,官方文档给出的配置方式是 FIDO Device Onboarding 或 Ignition。

    这里有一个容易混用的边界:在 Fedora 家族里,Ignition 的官方文档与机制说明属于 Fedora CoreOS,不要把 CoreOS 的 Ignition 说明当成 IoT 或通用 Fedora 的初始化机制。IoT 的零接触安装文档给出的是 FIDO Device Onboarding 或 Ignition 两条配置路径,引用时请按各自的文档来。

    刷写本身没有太多花样,但有两个动作值得固定下来:先核对镜像的版本号与校验值(方法见 Fedora 下载与介质制作),再确认目标设备。raw 镜像尤其要注意:它不是往现有系统里装,而是整盘覆盖。

    Fedora Atomic 的更新、升级与回滚有专门文档;IoT 同属 rpm-ostree 家族(Anaconda 安装镜像的文件名里就带 ostree),更新模型的思路一致:系统以「部署」为单位整体切换,而不是一个个包地改。

    对边缘设备来说,这个模型的好处很直接:升级是可回退的整机切换。你不需要在设备上逐个比对包版本,也不必太担心升级中途断电留下「半新半旧」的系统 —— 出问题时切回上一个部署即可。具体步骤与细节以官方文档为准:

    适合:

    • 没有本地运维人员的远程设备 —— 整机切换加回滚,比现场修系统现实;
    • 以容器为主要交付形态的网关与边缘节点;
    • 需要批量、可复现刷机的设备群:同一镜像可以反复刷。

    不适合:

    • 需要频繁改动系统包、做内核或驱动实验的机器 —— 不可变层的改动成本更高;
    • 依赖传统分区布局与自定义文件系统的场景;
    • 「装完多年不动」的诉求:IoT 镜像同样按 Fedora 版本线发布(文件名里的 XX.XX 就是版本号),设备侧必须有自己的版本升级与替换计划。