OpenWrt factory 和 sysupgrade 区别:squashfs、ext4、combined-efi、initramfs 固件怎么选
OpenWrt 固件文件名里的 factory、sysupgrade、initramfs、squashfs、ext4、combined-efi 分别是什么,路由器、NanoPi、树莓派和 x86 各该下载哪个文件、要不要解压。约 8 分钟。
适用于OpenWrt 等第三方系统
先说结论:factory 用于设备第一次从原厂系统刷成 OpenWrt,sysupgrade 用于已经在运行 OpenWrt 的设备升级。这是通用规则,具体以型号为准:GL.iNet 路由器第一次安装也用 sysupgrade 文件,树莓派的 factory 和 sysupgrade 都是完整的存储卡镜像,NanoPi 只有 sysupgrade 一个文件、写卡和升级都用它。文件名里的 squashfs 支持恢复出厂,ext4 不支持;combined-efi 是给 UEFI 电脑写整块硬盘用的;initramfs 只在内存里运行,重启就没了。
本站收录的 OpenWrt 都是 25.12.6 官方原版,每个型号只放日常需要的那一个(或两个)文件。下面先按文件名查用途,再看每个词的含义。
先判断你是哪种情况
| 你的情况 | 用哪个文件 |
|---|---|
| 路由器还是原厂系统,第一次刷 | GL.iNet 用同型号的 sysupgrade.bin:GL-MT3000、MT2500 在 GL 后台“本地升级”里刷入,MT1300、MT3600BE、X3000、XE3000 在 U-Boot 恢复页面上传。小米原厂系统第一次刷需要额外步骤,本站不提供这部分内容。以型号教程为准 |
| 路由器已经是 OpenWrt,要升级版本 | 同型号的 …-squashfs-sysupgrade.bin 或 .itb |
| 树莓派 4 / 5 第一次写卡 | …-squashfs-factory.img.gz |
| 树莓派 4 / 5 已经在用 OpenWrt,要升级 | …-squashfs-sysupgrade.img.gz |
| NanoPi 软路由写 TF 卡、刷 eMMC 或升级 | …-squashfs-sysupgrade.img.gz(只有这一个) |
| x86 小主机、旧电脑、虚拟机(UEFI 启动) | …-x86-64-generic-ext4-combined-efi.img.gz |
本站的 OpenWrt 文件一览
| 设备 | 文件名样式 | 用途 |
|---|---|---|
| GL.iNet(MT1300、MT2500、MT3000、MT3600BE、MT6000、X3000、XE3000) | openwrt-25.12.6-<平台>-glinet_<型号>-squashfs-sysupgrade.bin | 第一次安装和以后升级都用它;第一次安装是在 GL 后台还是 U-Boot 恢复页面上传,各型号不同,见型号教程 |
| 小米 / 红米(原厂分区布局) | openwrt-25.12.6-<平台>-xiaomi_<型号>-squashfs-sysupgrade.bin | 已装 OpenWrt 后的升级包,不能在小米原厂后台刷入 |
| 小米 AX3000T、WR30U、红米 AX6000(OpenWrt U-Boot 布局) | openwrt-25.12.6-mediatek-filogic-xiaomi_<型号>-ubootmod-squashfs-sysupgrade.itb | 只给已经换成 OpenWrt U-Boot 布局的设备升级 |
| NanoPi R2C / R2S / R3S / R4S / R5S / R5C / R6S / R6C / R76S 等 | openwrt-25.12.6-rockchip-armv8-friendlyarm_<型号>-squashfs-sysupgrade.img.gz | 写 TF 卡 / eMMC,也用于升级 |
| 树莓派 4、树莓派 5 | openwrt-25.12.6-bcm27xx-<平台>-rpi-<4或5>-squashfs-factory.img.gz 和 …-squashfs-sysupgrade.img.gz | factory 写卡,sysupgrade 升级 |
| x86-64 电脑和虚拟机 | openwrt-25.12.6-x86-64-generic-ext4-combined-efi.img.gz | 写整块硬盘或 U 盘(UEFI 启动) |
具体文件在固件页下载,例如 GL-MT3000、小米 AX3000T(OpenWrt U-Boot 布局)、NanoPi R4S、树莓派 5、树莓派 4、x86-64 UEFI,全部型号见 固件列表。下载后先 核对 SHA-256。
注意stock 和 ubootmod 是同一型号的两种分区布局,文件不能混用。你的设备是哪种布局,按型号教程里的方法确认,例如 小米 AX3000T、红米 AX6000、小米 WR30U。
factory、sysupgrade 和 initramfs
OpenWrt 官方固件选择器对这几种文件的说明是:
| 文件名里的词 | 官方说明 | 通俗理解 |
|---|---|---|
factory | 首次刷机时使用,通常在原厂固件的网页里刷入 | 给原厂系统“看得懂”的格式 |
sysupgrade | 更新已经运行 OpenWrt 的设备,可在 LuCI 网页或命令行使用 | 带设备校验信息的升级包 |
initramfs | 集成最小文件系统的 Linux 内核,适用于首次安装或故障恢复 | 只在内存里跑的临时 OpenWrt |
kernel / rootfs | 单独的内核 / 单独的根文件系统 | 高级用法,普通用户用不到 |
几个容易误解的地方(来自 OpenWrt 25.12.6 源码中的镜像生成规则):
- sysupgrade 文件末尾带一段设备信息。在 OpenWrt 里刷入时,系统先核对这段信息,型号不对会拒绝刷入,并提示 “Device … not supported by this image”。
- 树莓派的 factory 和 sysupgrade 内容相同,都是完整的存储卡镜像,区别只是 sysupgrade 末尾多了这段设备信息。所以写卡用 factory,在 OpenWrt 里升级用 sysupgrade。
- NanoPi(瑞芯微平台)官方只出 sysupgrade 一种文件,它本身就是完整的存储卡镜像,可以直接写 TF 卡,见 NanoPi R4S 刷机教程。
- GL.iNet 第一次安装也用 sysupgrade.bin,但入口因型号而异。OpenWrt 给 GL-MT3000、MT2500、MT6000 的文件额外附带了 GL 格式的信息,其中 MT3000、MT2500 的官方说明写明可以在 GL 后台直接刷;MT1300、MT3600BE、X3000、XE3000 的文件没有这段信息,官方给出的方法是在 U-Boot 恢复页面上传。见 GL-MT3000 刷 OpenWrt、GL-MT1300 刷 OpenWrt 等型号教程。
- 小米路由器的 OpenWrt 官方目录里还有 `initramfs-kernel.bin`、`initramfs-factory.ubi`、`preloader.bin`、`bl31-uboot.fip` 等文件,它们用于第一次安装或更换引导程序。本站暂未收录这些文件,也不介绍从小米原厂系统第一次刷入的步骤。
- 运行在 initramfs 时,网页顶部会提示 “System running in recovery (initramfs) mode.”,此时的设置重启后全部丢失,应该马上刷入 sysupgrade 文件。
squashfs 和 ext4
squashfs | ext4 | |
|---|---|---|
| 系统分区 | 只读,另有一块可写区域保存你的设置和装的软件 | 整个系统可读写 |
| 恢复出厂 | 支持:Reset 键长按、网页 Perform reset、firstboot 命令 | 不支持(网页上写明 “only possible with squashfs images”) |
| 适合 | 路由器、大多数软路由和树莓派 | x86 电脑,需要扩容系统分区时 |
| 本站收录 | 除 x86 外全部是 squashfs | x86-64 UEFI 镜像 |
OpenWrt 官方也提供 NanoPi、树莓派的 ext4 版本和 x86 的 squashfs 版本,本站暂未收录,从文末“官方资料”进入 OpenWrt 固件选择器获取。本站收录的路由器型号,官方只发布 squashfs 版本。
恢复出厂和忘记密码的具体做法见 OpenWrt 忘记密码与恢复出厂设置。
combined、combined-efi 和 rootfs(x86)
OpenWrt 25.12.6 的 x86-64 目录里有这些文件:
| 文件名 | 内容 | 用在 |
|---|---|---|
generic-ext4-combined-efi.img.gz(本站收录) | 引导分区 + 系统分区的整盘镜像,带 UEFI 引导 | UEFI 启动的电脑、虚拟机 |
generic-squashfs-combined-efi.img.gz | 同上,squashfs 版,支持恢复出厂 | 同上 |
generic-ext4-combined.img.gz / generic-squashfs-combined.img.gz | 整盘镜像,传统 BIOS 引导 | 只支持传统 BIOS 的老电脑 |
generic-ext4-rootfs.img.gz / generic-squashfs-rootfs.img.gz | 只有系统分区 | 高级用法,需要自己准备引导 |
generic-kernel.bin | 只有内核 | 高级用法 |
generic-targz-rootfs.tar.gz | 系统文件打包 | 容器等特殊用途 |
combined 的意思是“合在一起”:一个文件里同时有引导分区(默认 16 MB)和系统分区(默认 104 MB),直接写进整块盘就能启动。写入方法见 OpenWrt x86 安装教程。
.img.gz、.bin、.itb 要不要解压
| 后缀 | 怎么用 |
|---|---|
.img.gz 写卡或写盘 | balenaEtcher、Raspberry Pi Imager 可以直接选 .img.gz;用 Rufus 时,本站教程的做法是先用 7-Zip 解压出 .img 再写入。方法见 写卡教程 |
.img.gz 在 OpenWrt 里升级 | 不用解压,直接上传。OpenWrt 刷入时会自动解压 |
.bin、.itb | 不用解压,按型号教程在网页或命令行刷入 |
写卡工具:balenaEtcher、Raspberry Pi Imager、Rufus。
常见问题
- 网页提示 “The uploaded image file does not contain a supported format. Make sure that you choose the generic image format for your platform.”(中文界面:“不支持已上传的文件,请选择适合当前硬件的固件文件。”):传错了文件。常见原因是传了别的型号、传了 factory 或 initramfs,或者把
stock和ubootmod弄混了。 - 命令行提示 “Device … not supported by this image”:文件和设备型号不匹配,换成同型号的 sysupgrade 文件。不要用
sysupgrade -F强制刷入。 - 提示 “Image metadata not present”:文件末尾没有 sysupgrade 设备信息,例如树莓派的 factory 文件或原厂固件。在 OpenWrt 里升级请改用同型号的 sysupgrade 文件。
- 7-Zip 解压 `.img.gz` 时提示有多余数据:sysupgrade 和 combined 镜像压缩包末尾附带了设备信息,解压出的
.img一般可以正常使用;写卡后不放心,就对照固件页的 SHA-256 重新下载一次。 - 升级时要不要保留设置:OpenWrt 25.12 发布说明称,从 24.10 升级在多数设备上可以保留设置;最稳妥的做法是先备份、不保留设置,升级后参照备份重新设置。从 23.05 直接升到 25.12 官方不支持保留设置。详见 OpenWrt 升级固件。
资料来源
按 OpenWrt 官方固件选择器的文件类型说明、OpenWrt 25.12.6 官方源码中 x86、树莓派(bcm27xx)、瑞芯微(rockchip)、联发科(mediatek)和 ramips 平台的镜像生成规则与 sysupgrade 校验脚本、对应版本的 LuCI 源码,以及 OpenWrt 官方下载站 25.12.6 的文件列表整理(2026-10-22 查阅)。本站文件为 OpenWrt 25.12.6 官方原版,SHA-256 与 OpenWrt 官方公布值一致。
提示本页按 OpenWrt 官方源码与发布资料整理,本站没有在每台设备上实机测试。刷机前以你那台设备的型号教程为准。
适用的固件与系统镜像(40)
按适用范围匹配到 40 个固件条目。下载前仍需核对具体型号和硬件版本。
FriendlyElec 12 个
NanoPi R2C · NanoPi R2C Plus · NanoPi R2S · NanoPi R2S Plus · NanoPi R3S · NanoPi R4S · NanoPi R4S Enterprise Edition · NanoPi R5C · 查看全部 ↗
GL.iNet 8 个
GL-MT3000 / Beryl AX · GL-MT1300 · GL-MT2500 · GL-MT2500 · GL-MT3600BE · GL-MT6000 · GL-X3000 · GL-XE3000
整理:AppGoBox · 依据 · 本站未在实机上逐一验证