Skip to content

Repository files navigation

flash2JDC_ax1800

京东云亚瑟 (JDC AX1800, IPQ6018/eMMC) 刷机、GPT 修复、分区备份与 Web 刷写系统

⚠️ 刷机有变砖风险。所有写操作前请先完整备份;本仓库脚本会在写入前自动备份目标区域并读回校验,但请自行评估风险。

目录

文件/目录 说明
PARTITION_LAYOUT.md 分区布局同步文档(当前 21 分区布局 / 历史 27 分区 / A/B / 修复记录)
get_partitions.py SSH 抓取路由器分区信息
repair_backup_gpt.py 备用 GPT 修复(纯 Python 等价 sgdisk -e
fix_gpt_header.py 修正 GPT 主/备表头为实际磁盘几何(等价大磁盘上的 sgdisk -e,幂等)
backup_partitions.py 备份关键分区(ART/CDT)与 GPT 全表到 PC
flash_partitions.py 刷写 GPT/CDT/U-Boot(容量预检 + 表头几何自动修正 + 备用 GPT 重建;CDT 双槽 p10+p11);--factory 等价 U-Boot web recovery 刷 factory 镜像
webflash/ Web 刷写系统(FastAPI + 单页 UI)

设备要点

  • eMMC mmcblk0,115 GiB;当前为 21 分区 GPT(rootfs=p17 单槽 2G,squashfs + f2fs overlay)
  • 已更换 1G 内存颗粒(原 512M),需 1G CDT 双槽刷写(p10+p11)才能识别 1GB
  • 当前固件 Nwrt 5.4(32 位),SSH root@192.168.5.1 / password(重启后恢复默认 192.168.1.1);flash_partitions.py 等脚本硬编码地址可自行改
  • 0:BOOTCONFIG(p2/p3) 决定 A/B 引导槽;_1 分区为引导组件自动回退备份
  • ART(p15) 含无线校准,不可丢

Web 刷写系统

基于 FastAPI,页面分为「设置」(镜像管理 / RAM(512M/1G)→CDT / GPT / U-Boot / factory 指定)与「配置刷写」(本机网卡设置(DHCP/手动 IPv4,改 PC 以太网卡 IP)+ 目标 IP + root 密码(默认 root)+ RAM 规格 + 阶段勾选 → 确认弹窗 → 刷写 → SSE 实时进度 → 成功后提示手动断电重启(指示灯变绿即成功)→ 备份 zip 下载)。

cd webflash
python -m pip install -r requirements.txt
../.venv/Scripts/python -m uvicorn app:app --host 127.0.0.1 --port 8000
# 浏览器打开 http://127.0.0.1:8000

安全特性:CDT 按用户指定规格(512M/1G)直接刷入,不做 RAM 容量交叉检测,且同时写 p10+p11 双槽;factory 强制最后一步;写前自动备份 + 写后读回 SHA256 校验;刷写完成后不自动重启(刷机可能破坏运行中系统导致 reboot 失效,改为提示手动断电重启);单任务锁;root 密码不入库;默认仅绑定 127.0.0.1;兼容老 dropbear(ssh-rsa 主机密钥)。

命令行刷写

# 换 GPT / CDT / U-Boot(会自动备份、容量预检、修表头几何、重建备用 GPT)
.venv/Scripts/python flash_partitions.py

# 等价 U-Boot web recovery:FIT(kernel+fdt)->0:HLOS,squashfs->rootfs
.venv/Scripts/python flash_partitions.py --factory openwrt_bin/kwrt-factory.bin

刷写会写到哪些分区

  • GPT:磁盘 LBA 0..33(主表) + 磁盘末尾 33 扇区(备用表)
  • CDT:0:CDT(p10) 0:CDT_1(p11) —— 两槽必须刷相同 CDT(SBL 实际使用 CDT_1,只刷 p10 时内存等配置不生效)
  • U-Boot:0:APPSBL(p13) —— 仅 A 槽,B 槽(p14)保留
  • factory:0:HLOS(p16) ← FIT(kernel+fdt);rootfs(p17) ← squashfs。不碰 GPT/引导/ART/校准/overlay

历史

  • 2026-08-05 修复旧布局 Alternate GPT is invalid(备用 GPT 损坏)
  • 2026-08-06 换新 GPT(21 分区);修正新 GPT 主表头 AltLBA/LastUsable 与实际 115GB eMMC 一致;新增 Web 刷写系统
  • 2026-08-06 更换 1G 内存颗粒;根因 SBL 用 CDT_1(p11)(仍为原厂 512M),把 1G CDT 双槽写入后识别 1GB;CDT 刷写改为双槽

详见 PARTITION_LAYOUT.md

About

Flashing OpenWRT on JD Cloud Arthur

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages