QNAP 301w 免拆刷机方法
@coolsnowwolf @asushugo 等一众牛B的开发者适配301w路由器!
特别感谢lede开源固件测试通过,衍生固件刷机请自行测试。
本教程仅限在lean的qsdk闭源固件和QNAP QHora-301W 产品介绍
QNAP QHora-301W OpenWRT官网介绍
QNAP QHora-301W 第三方带Web操作&支持原厂双分区Uboot
一. 开启SSH服务
在开启路由器可以正常进系统的状态下,长按路由器后的 WPS 键,直到听到第二声“嘟”松开(大约 12 秒)就 OK。
二. SSH连接路由器后台
这里需要注意一点
-
路由器默认开启的SSH的端口号是 22200
-
用户名是
admin
,密码是路由器网页登录密码
ssh命令就是 ssh admin@192.168.100.1 -p 22200
( 如果端口没开重复步骤1 )
或者使用putty连接
三. 将启动分区切换到第二分区
sudo fw_setenv current_entry 1
提示要输入的密码就是刚刚你登录 ssh 的密码,以下不再赘述
sudo reboot
重启
四. 检查路由器当前启动分区
按照上述步骤二操作重新打开ssh
sudo fw_printenv -n current_entry
查看分区,确保这里会输出 1,如果不是,重复步骤 三。
五. 使用 Winscp 上传QSDK的 kernel.bin 和 rootfs.bin 到 /tmp
kernel文件和rootfs文件可以从sysupgrade格式的固件解压获得
六. 将QSDK到dd刷入第一分区
注意:强烈建议使用dd命令(方法自行搜索引擎)备份一些重要的分区例如mtd闪存分区以及mmc闪存分区,以便以后可以恢复官方固件
sudo dd if=/tmp/kernel.bin of=/dev/mmcblk0p1
sudo dd if=/tmp/rootfs.bin of=/dev/mmcblk0p4
sudo fw_setenv current_entry 0
sudo fw_setenv boot_0 good
sudo reboot
截图参考:
执行完上述命令之后即可刷入QSDK并从第一分区启动QSDK,注意由于目前还没有刷10G PHY的firmware,需刷入firmware。
七. 刷入 10G PHY 的 firmware
- 将AQR_ethphyfw_5.6.7.mbn用scp命令或者winscp工具传输到QSDK的/tmp目录下
- 使用putty或其他ssh工具进路由器后台,抹除原ethfw分区 mtd10的数据:
mtd erase /dev/mtd10
- 刷入fw文件:
mtd -n write /tmp/AQR_ethphyfw_5.6.7.mbn /dev/mtd10
- 修改bootcmd环境变量:
fw_setenv bootcmd "aq_load_fw 0; aq_load_fw 8; bootipq"
fw_printenv
看下是否有这条记录 bootcmd=aq_load_fw 0; aq_load_fw 8; bootipq ,如果有就没问题。- 重启