小米路由 R1D 发挥余热,刷 TOMATO 固件并开启软件中心

先来 2 张效果图:

楔子

原来家里很早以前买的一个小米 R1D 路由,因为后面玩软路由了,就闲置在家里了。最近有需要就又把他拿起来发挥点余热,不过用了几天感觉小米的系统太难用了。所以动手把路由固件改造刷新一下。做个笔记,下面是改造步骤:

小米路由刷 TOMATO 系统

1. 小米路由 R1D 开启 SSH。

先将小米路由器刷成开发版。然后使用官方的 SSH 工具,在 http://d.miwifi.com/rom/ssh 上开启 SSH 功能,下载 SSH 工具包,将 ssh_rom.bin 文件拷贝到 U 盘,然后长按 RESET 键进入 U 盘恢复模式。

2. 下载刷机工具包及固件。

刷机包工具地址
链接: https://pan.baidu.com/s/1Si54WbEGaJRFmfjVFC0doQ 提取码: qkq4

TOMATO 固件下载服务器地址
http://firmware.koolshare.cn/Koolshare_tomato-arm_firmware/

可自行选择当前最新版本下载。

2020/2/6 最新 TOMATO 固件下载地址:
http://firmware.koolshare.cn/Koolshare_tomato-arm_firmware/X1.4/tomato-R1D-KoolShare-AT-ARM-3.4-140-X1.4-Custom-64K.trx

3. 前期准备工作

由于小米路由器引导和 tomato 不同,需要修改 cfe.bin 并且稍后更换。两步走,一是打开小米路由器管理后台,按截图记下你小米路由器的 MAC 。

用工具包的 cfe 编辑器,打开 cfe_stock.bin 文件,按下面截图提示修改并且保存 cfe.bin 文件备用

把修改后的 cef.bin 文件以及工具包里的 backup.sh、flash-cfe.sh 共 3 個文件放到 U 盘中,插入小米路由器 USB 待用。

4. 开始刷机
  1. 用 Xshell 4 或者 putty.exe 之类打开 SSH 操作。进入 U 盘。

    1
    cd /extdisks/sdb1  

    这个 U 盘位置各人可能不同,自己修正。

  2. 原有小米路由器备份。这一步非常重要。因为我们刷机第三方系统,今后要恢复原系统要靠这些备份。

    1
    ./backup.sh

    约半分钟左右,备份完毕。

  3. 更换 cfe.bin。

    1
    ./flash-cfe.sh

    几秒钟后 cfe,更换完成,拿下 U 盘,备份妥善保存。

  4. 确认刷机后门打开。

    1
    nvram set boot_wait=on && nvram set wait_time=10 && nvram commit && nvram show |grep wait

    屏幕上有
    boot_wait=on
    wait_time=12
    显示为成功。

  5. 把本地 IP 设置成 192.168.1.2

  6. 小米路由器 lan 口用网线和电脑连接,路由器拔下电源重启,指示灯转黄灯,稍等一会用网页打开 192.168.1.1. 会有以下显示:

按选择文件找到你下载的 tomato 固件,再按上传 (Upload)注意左下角有正在上传文件的百分比。

  1. 等待固件安装和重启,需要时间较长,等 3-5 分钟或者更长时间,到黄灯转蓝灯即成功。这里如果重启不能显示 cfe 刷机服务标志,又或者上传不能开始,上传时间过长(超过 1 分钟),上传中途中断等,不用灰心。黄灯不可怕,可能是缓存问题,只需要拔下电源,长按 reset键再插电 30 秒以上。重新操作直到黄灯转蓝灯,最后在网页输入 192.168.1.1,会弹出要求的登录名和密码框框,同样都输入 admin 即可进入 tomato 设置。

    到此 TOMATO 固件就已经刷完了,但是还没有软件中心功能。

TOMATO 固件安装部署软件中心

1. 挂载硬盘到 TOMATO.

ssh 登陆 192.168.1.1, 检查硬盘挂载情况。

1
df -h


我的硬盘识别出来是 sda1, 所以按下面的命令建立一个 jffs 目录。

1
mkdir /mnt/sda1/jffs

接着把这个目录挂载到路由器的 /jffs 目录上。

1
mount -o bind /mnt/sda1/jffs /jffs
2. 软件中心安装

输入以下命令来进行软件中心的安装:

1
eval `/usr/bin/wget -q -O - https://ttsoft.ngrok.wang/softcenter/ttsoft`

安装完后,重新登陆 192.168.1.1 就可以看到软件中心了。

3. TOMATO 开机启动设置

软件中心安装完成后,需要做一些启动设置,不然重启路由后,软件中心就会没有了。
进入系统管理 -> 脚本 -> 初始化脚本 , 添加下面这段代码。(挂载的硬盘路径,自己根据情况修改)

1
2
3
mount -o bind /mnt/sda1/jffs /jffs
/jffs/koolshare/bin/kscore.sh
/jffs/koolshare/bin/ks-wan-start.sh

以上设置完成后,建议重启一下路由器看看软件中心是否能正常访问和运行。