跳转到内容
搜索 Fedora 文档

    浏览当前文档目录

    Fedora IoT 与边缘设备

    同样是 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 就是版本号),设备侧必须有自己的版本升级与替换计划。