• FanchmWrt

    • 系统简介
    • 安装教程
    • itb固件
    • 第三方插件安装
    • X86设备如何扩容

itb固件

itb固件简介

在openwrt新版本中,部分型号的设备编译出来的sysupgrade固件为itb格式,itb是一种新型的固件格式,相对于传统bin文件,配置更加灵活, 但是itb固件升级需要用对应的uboot,在openwrt官方发布的固件中,都对应发布了itb固件对应的uboot(fip文件),后面会讲解如何升级itb固件, 先来看看itb固件和bin固件的具体区别。

ITB (Image Tree Blob) 固件:

  • 基于设备树(Device Tree)的固件格式
  • 使用 Flattened Image Tree (FIT) 格式
  • 本质是一个包含多个镜像的容器格式 下面是itb image定义示例代码:
IMAGE/sysupgrade.itb := append-kernel | \
	fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata

传统 .bin 固件:

  • 单一二进制镜像文件
  • 直接包含内核、根文件系统等所有内容
  • 格式相对简单,是连续的二进制数据

下面是bin image定义示例代码:

IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata

fanchmwrt mt798x设备固件格式

fanchmwrt基于openwrt24.10.4较新的版本,所以固件包含了itb格式文件,无法通过不死uboot(传统uboot)升级,但是后面会对热门型号适配传统固件,如果不会itb固件升级的用户可以等后面的兼容固件。

型号bin固件itb固件
Cudy TR3000(128&256)✅✅
JCG Q30 Pro✅✅
H3C NX30 Pro✅✅
Cetron CT3003✅❌
CMCC RAX3000M(nand)❌✅
小米AX3000T✅✅
红米AX6000✅✅
360T7❌✅
Nokia ea0326gmp❌✅
jdcloud re-cp-03❌✅
OpenWrt One✅✅
GL-inet MT3000✅❌
GL-inet MT6000✅❌

itb固件如何升级

  1. 升级openwrt官方发布的uboot 下载地址(以openwrt24.10.5为例):
https://downloads.openwrt.org/releases/24.10.5/targets/mediatek/filogic/

这是mt798x系列设备固件的下载地址,里面包含了preloader(bl2)和uboot(bl31),比如jcg_q30-pro的对应文件名为:

jcg_q30-pro-preloader.bin
jcg_q30-pro-bl31-uboot.fip

下载后通过当前系统后台mtd刷入,注意两个文件都要刷入,写入的分区不一样,具体要参考详细的刷入教程,对于小白用户不要随便操作,刷uboot是非常危险的行为, 除非自己又百分百把握没有弄错教程。 建议新手还是使用最开始刷机使用的uboot,等后续传统的bin固件。

  1. 刷入itb固件
    如果你已经成功升级了openwrt官方的uboot,通过uboot升级itb固件了。 该uboot是没有web界面的,但是内置了tftp客户端,需要在电脑中开启tftp服务,并且要关闭防火墙。 将需要的recovery文件放在tftp根目录(注意名称不要随便修改,否则uboot不认识,直接保留openwrt那几个文件的原名称) 比如jcg q30的recovery文件名称为jcg_q30-pro-initramfs-recovery.itb 启动tftp服务后重启设备,
Prev
安装教程
Next
第三方插件安装