跳转到内容

我用的到底是哪种 OpenWrt:原生、ImmortalWrt、iStoreOS 还是厂商固件

  • 这台设备是原生 OpenWrt、ImmortalWrt、iStoreOS,还是厂商定制固件;
  • 发行版、版本、revision、target、架构和硬件型号;
  • 包管理器是 apk 还是 opkg,软件源该用哪一套;
  • 升级时该找 sysupgrade 镜像还是厂商固件,避免刷错变砖。
路由器 Shell读取系统 board 信息
终端窗口
ubus call system board
cat /etc/openwrt_release

ubus call system board 的 release.distribution、release.version、release.target 和 model 是最关键的四个字段。

预期能看到 distribution、version、target、model。

路由器 Shell读取包管理器和架构
终端窗口
command -v apk
command -v opkg
cat /etc/apk/arch 2>/dev/null
opkg print-architecture 2>/dev/null
uname -a

不要按“版本号”猜包管理器:25.12 官方镜像通常用 apk,24.10 用 opkg,但 fork/厂商固件可能不同;以命令是否存在为准。

预期知道是 apk 还是 opkg,以及 CPU 架构。

路由器 Shell读取硬件型号/修订

x86:

终端窗口
cat /sys/class/dmi/id/sys_vendor
cat /sys/class/dmi/id/product_name
cat /sys/class/dmi/id/board_name
cat /sys/class/dmi/id/board_version
cat /sys/class/dmi/id/bios_version

ARM/路由器:

终端窗口
cat /tmp/sysinfo/model
cat /tmp/sysinfo/board_name

model 不是硬件修订;同一个型号可能有不同 revision。刷机前以设备标签、board_name 和厂商下载页为准。

预期型号和 board 名称能对上设备标签。

常见搜索是“ImmortalWrt 和 iStoreOS 有什么区别”“原生 OpenWrt、ImmortalWrt、iStoreOS、厂商固件怎么区分”。先看 distribution、包管理器和软件源,不要只看版本号。

字段/现象 原生 OpenWrt ImmortalWrt iStoreOS 厂商固件
release.distribution OpenWrt 通常 ImmortalWrt 通常 iStoreOS/厂商标识 厂商标识
软件源 downloads.openwrt.org ImmortalWrt 自己的源 iStoreOS 自己的源 厂商源/应用商店
包管理器 apk(25.12)或 opkg(24.10) 以实际命令为准 通常 opkg 可能没有/被限制
Web UI LuCI LuCI + 定制 iStoreOS 界面 厂商界面
升级镜像 OpenWrt sysupgrade ImmortalWrt 对应镜像 iStoreOS 对应镜像 厂商固件
官方支持 OpenWrt 社区 ImmortalWrt 社区 iStoreOS 社区 厂商

不要混用:把 OpenWrt 官方源加到 ImmortalWrt/iStoreOS,或把别的型号的 sysupgrade 刷进来;ABI、内核和分区布局都可能不匹配。

  • 有些厂商固件会把 LuCI 换皮,但底层不是官方 OpenWrt;
  • DISTRIB_DESCRIPTION 可能被定制,不能单独作为判断依据;
  • 版本号相同不代表 target/profile 相同;
  • 包管理器/软件源才是你装插件时真正要匹配的东西。

以 ubus call system board + /etc/openwrt_release + 包管理器三者交叉判断。

路由器 Shell记录 target 和 board_name
终端窗口
ubus call system board

重点:

  • release.target(如 x86/64、mediatek/filogic);
  • board_name;
  • model;
  • 当前版本和 revision。

官方设备去 OpenWrt Firmware Selector 选对应 target/model;ImmortalWrt/iStoreOS/厂商设备去各自下载页。不要跨型号、跨 target 刷 sysupgrade。

预期你能在固件选择器/厂商页面找到完全对应的条目。

路由器 Shell确认镜像类型
  • 已有 OpenWrt,升级通常用 sysupgrade;
  • 从厂商固件首次刷入,通常用 factory/厂商提供的过渡镜像;
  • x86 可能是 combined/ext4 镜像,写入方式不同;
  • 不确定时先查设备页,不要凭文件名猜。

预期知道该用 sysupgrade 还是 factory/厂商镜像。

可能是厂商固件/非 OpenWrt 系统。先用 Web UI 的“关于/系统信息”和设备标签确认;不要直接刷 OpenWrt。

厂商固件可能关闭 SSH。先查厂商文档/保修政策;不要为了拿 root 随意刷机。需要保留原厂功能时,优先用厂商升级流程。

  • 包管理器与固件不匹配(apk/opkg);
  • 软件源架构/版本不匹配;
  • 内核模块 ABI 不匹配;
  • 混用了别的 fork 的源。

先回到 ubus call system board 和包管理器,确认来源,再谈装插件。

停止继续刷。按设备文档进入 failsafe、TFTP 或厂商恢复模式;没有恢复条件时不要尝试“再刷一个试试”。

  • 本页是 E1:字段、判断表和镜像选择方法按公开资料整理;没有在本次实验环境采集具体设备。
  • 不同 fork/厂商的输出可能不同;发布前用真实设备跑一遍 tests/recipes/which-openwrt.md,记录字段和截图,再升级 E2。
  • 本页只做识别,不提供跨型号刷机或绕过厂商限制的步骤。

来源

Router.Homes

独立的 OpenWrt 实操笔记。每页写明固件、设备、包管理器与恢复路径。

图标:Solar by 480 Design, CC BY 4.0