京东云亚瑟 ax1800 Pro 资料分享通刷教程代码

京东云亚瑟通刷教程代码(完整版)

 

 

京东云亚瑟通刷教程代码(简化版)适合小白刷机

一、解锁ssh(必须步骤)

1、1.5.40.r2181(2022-03-01)及之前版本开启SSH的方法:

直接浏览器登录路由器,浏览器上按F12打开控制台,在Console选项卡下方编辑区域粘贴并回车运行下方代码。

$.ajax({
    url: "/jdcapi",
    async: false,
    data: JSON.stringify({
        jsonrpc: "2.0",
        id: 1,
        method: "call",
        params: [
            $.cookie("sessionid"),
            "service",
            "set",
            {
                "name": "dropbear",
                "instances": {"instance1": {"command": ["/usr/sbin/dropbear"]}}
            }
        ]
    }),
    dataType: "json",
    type: "POST"
})

如果无法复制的话,直接在 Console 输入 allow pasting 后 Enter 即可开启 (右键)复制贴上等功能

然后就可以SSH登录路由器了,IP 192.168.68.1,端口22,用户名root,密码是路由器登录密码。 注:如果Console不能输入代码,先解除浏览器上的限制。

  1. r2262之前固件版本开SSH(参考教程:https://mao.fan/article/72)

输入下面命令查看U盘挂载:

lsblk

这一步主要目的是确认下分区二的名称,建立软链接会用到,输入下面命令:

ln -s /etc/rc.local /mnt/sda2/rc.local
ln -s /etc/init.d/done  /mnt/sda2/done

20240701091045213-descript-1-1

这里系统出现了报错,我仔细看了下。sda2挂载的路径与命令行里的不同。把/mnt 替换成现在这个路径也可以。

或者我们可以创建一个/mnt/sda2 的路径 然后把sda2挂载过去

#创建文件夹
mkdir -p /mnt/sda2
#挂载sda2 注意这里的路径不能照抄,需要根据自己的实际路径
mount /dev/sda2 /mnt/sda2
#再查看是否挂载成功
lsblk

20240701091046914-descript-1-1

挂载成功之后再进入文件夹:

cd /mnt/sda2

然后再去执行创建软链接的命令:

ln -s /etc/rc.local /mnt/sda2/rc.local
ln -s /etc/init.d/done  /mnt/sda2/done

ls -l
cd /
umount /mnt/sda2
poweroff

在视频教程里我给给出更简单的解决方案。直接把我提供的映像文件刷入一个大于空间16G的u盘或者移动硬盘就可以达到同样的效果。(注意这步操作会格式化u盘,要提前备份好u盘上的资料)

20240701091051392-descript-1-1

然后绑定亚瑟,开启webdav

这一步的重点是绑定路由器后,关闭系统自动升级!防止京东云给我们升级了系统!

20240701091057971-descript-1-1

▲ 打开无线宝APP,手机连接亚瑟WiFi网络,路由器WAN口接入互联网,然后搜索设备、立即绑定、输入后台密码、绑定成功后关机自动升级。

20240701091058528-descript-1-1

来到外置存储设置→智能加速服务→选择sda1分区→确认

这一步完成后打开WIN10系统连接亚瑟的网络,准备进行下一步。(注:2.win11和win10在创建网络位置是一样的,不过因为地址是http的,需要修改一下注册表设置,网上搜webdav+http即可。 )

挂载sda2分区,修改文件开启SSH

打开→此电脑→右键空白处→添加一个网络位置→自定义网络位置

20240701091059407-descript-1

▲ 填入:http://192.168.68.1:56589 如果56589端口不行,换56590端口试试,一般就这俩端口 ,剩下的一直下一步,默认会打开sda5文件夹。

20240701091101177-descript-1-1

webdav挂载成功,可以编辑done和rc.local这两个文件了,这里使用Notepad++编辑器

20240701091102950-descript-1

▲ rc.local是配置开机自启动的,在exit 0前一行加上/usr/sbin/dropbear,意思是开启SSH服务,保存即可。

20240701091104214-descript-1-1

▲ done默认14 15 16这三行被注释掉了,把注释#号去掉,意思是让rc.local这个文件生效,保存即可。

然后可以拔掉U盘了,可以在系统后台重启路由器,咱直接断电、通电重启,简单粗暴,不出意外的话,SSH打开了!

  1. r2262之后到R2279之前的固件可以参考链接:

https://www.bilibili.com/read/cv21907565/

ln -s /lib/config/uci.sh /mnt/sda2/uci.sh

这个uci.sh文件我已经做好了,一并放到了映像文件里。

注:因为固件联网会自动接收下发的热补丁干掉SSH进程,所以需要先断网,再重置系统才能开门。

SSH开门后,只要联网也会下方补丁,SSH就没了。

详见https://www.right.com.cn/forum/forum.php?mod=redirect&goto=findpost&ptid=8278061&pid=18501460

1.5.80.r2262方法中在Linux或带USB的openwrt中生成uci.sh文件的快捷方式,将系统中的uci.sh映射到移动硬盘第二分区的uci.sh,以便通过添加网络位置编辑uci.sh,后面通过网络位置编辑uci.sh需要不报错正常保存才可以。

1.5.81.r2279(2023-04-06)、新版本4.0.0.r4015(2023-10-16)目前未见公开解锁SSH方法。

二、备份分区(非必须步骤,备份分区是为了以后可以吃后悔药,或者方便机器被刷坏了以后恢复。如果没有以上需求也可以选择不备份)

刷其他第三方OP固件再备份也可,自行选择。

第三方OP固件是单分区的,刷固件只是覆盖0:HLOS和rootfs这两个分区,不会影响其他分区数据。

固件启动后SSH输入ls -l /mnt查看是是否挂载了/mnt/mmcblk0p27

root@JDBoxV2:~# ls -l /mnt
drwxrwxrwx    4 root     root          4096 Mar 24 15:20 mmcblk0p27

刷其他OP没有挂载的,自己新建文件夹并挂载,然后再ls -l /mnt检查:

mkdir /mnt/mmcblk0p27
mount -t ext4 /dev/mmcblk0p27 /mnt/mmcblk0p27

然后按照老方法备份到eMMC的storage分区即/mnt/mmcblk0p27,再通过WinScp登录路由器下载保存。

WinScp软件登录原厂系统,协议SCP,IP 192.168.68.1,端口22。

WInScp下载大文件会提示主机超过15秒无通信,需要登录时点击高级,高级站点设置-连接 去掉勾选“优化连接缓冲大小”,再登录。如果心疼读写2G数据到eMMC的话,备份到USB移动硬盘也可以,命令中/mnt/mmcblk0p27替换为USB的挂载点例如/mnt/sda1即可。

确保USB移动硬盘有2G剩余空间,插上后查看移动硬盘的挂载点,这里是/mnt/sda1。

root@JDBoxV2:~# ls -l /mnt
drwxrwxrwx    4 root     root          4096 Mar 24 15:20 mmcblk0p27
drwxrwxrwx    2 root     root          1024 Mar  1  2022 sda1

只备份GPT分区表和mmcblk0p1-26,mmcblk0p27是京东云跑分缓存数据,太大且恢复跑分可以重新缓存,不备份了。

建议分开备份分区,后面需要的时候只要按顺序合并就得到了mmcblk0p0-26.img镜像了。

复制命令粘贴一起执行:

dd if=/dev/mmcblk0 bs=512 count=34 of=/mnt/mmcblk0p27/mmcblk0_GPT.bin conv=fsync
dd if=/dev/mmcblk0p1 of=/mnt/mmcblk0p27/mmcblk0p1_0SBL1.bin conv=fsync
dd if=/dev/mmcblk0p2 of=/mnt/mmcblk0p27/mmcblk0p2_0BOOTCONFIG.bin conv=fsync
dd if=/dev/mmcblk0p3 of=/mnt/mmcblk0p27/mmcblk0p3_0BOOTCONFIG1.bin conv=fsync
dd if=/dev/mmcblk0p4 of=/mnt/mmcblk0p27/mmcblk0p4_0QSEE.bin conv=fsync
dd if=/dev/mmcblk0p5 of=/mnt/mmcblk0p27/mmcblk0p5_0QSEE_1.bin conv=fsync
dd if=/dev/mmcblk0p6 of=/mnt/mmcblk0p27/mmcblk0p6_0DEVCFG.bin conv=fsync
dd if=/dev/mmcblk0p7 of=/mnt/mmcblk0p27/mmcblk0p7_0DEVCFG_1.bin conv=fsync
dd if=/dev/mmcblk0p8 of=/mnt/mmcblk0p27/mmcblk0p8_0RPM.bin conv=fsync
dd if=/dev/mmcblk0p9 of=/mnt/mmcblk0p27/mmcblk0p9_0RPM_1.bin conv=fsync
dd if=/dev/mmcblk0p10 of=/mnt/mmcblk0p27/mmcblk0p10_0CDT.bin conv=fsync
dd if=/dev/mmcblk0p11 of=/mnt/mmcblk0p27/mmcblk0p11_0CDT_1.bin conv=fsync
dd if=/dev/mmcblk0p12 of=/mnt/mmcblk0p27/mmcblk0p12_0APPSBLENV.bin conv=fsync
dd if=/dev/mmcblk0p13 of=/mnt/mmcblk0p27/mmcblk0p13_0APPSBL.bin conv=fsync
dd if=/dev/mmcblk0p14 of=/mnt/mmcblk0p27/mmcblk0p14_0APPSBL_1.bin conv=fsync
dd if=/dev/mmcblk0p15 of=/mnt/mmcblk0p27/mmcblk0p15_0ART.bin conv=fsync
dd if=/dev/mmcblk0p16 of=/mnt/mmcblk0p27/mmcblk0p16_0HLOS.bin conv=fsync
dd if=/dev/mmcblk0p17 of=/mnt/mmcblk0p27/mmcblk0p17_0HLOS_1.bin conv=fsync
dd if=/dev/mmcblk0p18 of=/mnt/mmcblk0p27/mmcblk0p18_rootfs.bin conv=fsync
dd if=/dev/mmcblk0p19 of=/mnt/mmcblk0p27/mmcblk0p19_0WIFIFW.bin conv=fsync
dd if=/dev/mmcblk0p20 of=/mnt/mmcblk0p27/mmcblk0p20_rootfs_1.bin conv=fsync
dd if=/dev/mmcblk0p21 of=/mnt/mmcblk0p27/mmcblk0p21_0WIFIFW_1.bin conv=fsync
dd if=/dev/mmcblk0p22 of=/mnt/mmcblk0p27/mmcblk0p22_rootfs_data.bin conv=fsync
dd if=/dev/mmcblk0p23 of=/mnt/mmcblk0p27/mmcblk0p23_0ETHPHYFW.bin conv=fsync
dd if=/dev/mmcblk0p24 of=/mnt/mmcblk0p27/mmcblk0p24_plugin.bin conv=fsync
dd if=/dev/mmcblk0p25 of=/mnt/mmcblk0p27/mmcblk0p25_log.bin conv=fsync
dd if=/dev/mmcblk0p26 of=/mnt/mmcblk0p27/mmcblk0p26_swap.bin conv=fsync

三、上传uboot文件

上传uboot文件uboot-JDC_AX1800_Pro-AX6600_Athena-20240510.bin到tmp文件夹,然后SSH输入命令刷写uboot到0:APPSBL和0:APPSBL_1分区

dd if=/tmp/uboot-JDC_AX1800_Pro-AX6600_Athena-20240510.bin of=$(blkid -t PARTLABEL=0:APPSBL -o device) conv=fsync
dd if=/tmp/uboot-JDC_AX1800_Pro-AX6600_Athena-20240510.bin of=$(blkid -t PARTLABEL=0:APPSBL_1 -o device) conv=fsync

这里可以输入命令检查分区md5 hash值,和我这版2024.05.10编译的md5一致即可(注意这步不是必须得,为了保险起见大家可以检查一下):

md5sum $(blkid -t PARTLABEL=0:APPSBL -o device) && md5sum $(blkid -t PARTLABEL=0:APPSBL_1 -o device)
#以下分别是两个分区的MD5值
5e1817f795ada48335fda9f22545a43e  /dev/mmcblk0p13
5e1817f795ada48335fda9f22545a43e  /dev/mmcblk0p14

方法2:在线下载uboot并安装

#我是上传到了阿里云的 oss 上,通过 curl 下载,也可以通过其他方式比如 WinSCP 上传到路由器里面
# 如果是通过 curl 下载,此时路由器需要插上 WAN 口连上互联网,可以给 WAN 口接上网线
curl -o u-boot.mbn http://oss-hk4.oss-cn-hongkong.aliyuncs.com/tmp/u-boot.mbn 
备用下载
curl -o u-boot.mbn http://121.41.169.137:5212/f/lgFy/u-boot.mbn
# 确认文件存在且大小正确,我编译的文件大小是 644624
ls -l /root/u-boot.mbn

# 刷入 u-boot,此步骤需要谨慎,刷错可能导致路由器无法启动,需要确保文件存在且完整
# 如果文件不完整这一步可能会导致路由器无法启动,所以一定要确认文件大小和完整性
dd if=/root/u-boot.mbn of=/dev/mmcblk0p13 
dd if=/root/u-boot.mbn of=/dev/mmcblk0p14
  1.  

四、修改分区表文件夹中的gpt文件,rootfs512M对应rootfs是512MB大小,依次类推(一般是针对体积比较大的固件才需要扩容,如果可以刷的下的话我们可以在系统中再扩容)
详细内容可以看原文链接:https://github.com/lgs2007m/Actions-OpenWrt/blob/main/%E5%88%B7%E6%9C%BA%E6%95%99%E7%A8%8B/%E4%BA%AC%E4%B8%9C%E4%BA%91AX1800-Pro%E4%BA%9A%E7%91%9F_AX6600%E9%9B%85%E5%85%B8%E5%A8%9C%E5%88%86%E5%8C%BA%E5%A4%87%E4%BB%BD+TTL%E5%8F%8C%E5%88%86%E5%8C%BA%E5%88%B7%E6%9C%BA+%E5%9B%9E%E5%8E%9F%E5%8E%82+USB%E6%95%91%E7%A0%96%E6%95%99%E7%A8%8B20240510.md
上传你需要的rootfs大小的gpt分区表文件到tmp文件夹,先验证md5:

root@JDBoxV2:~# md5sum /tmp/gpt-JDC_*_dual-boot_rootfs*M_no-last-partition.bin
##亚瑟gpt md5
9d9e3803ba541ff38449acd181026b28  /tmp/gpt-JDC_AX1800_Pro_dual-boot_rootfs512M_no-last-partition.bin
5aaf1b606458fbffc72342540db9bc52  /tmp/gpt-JDC_AX1800_Pro_dual-boot_rootfs1024M_no-last-partition.bin
b93b4823af2b4fc31d22c25468181e7a  /tmp/gpt-JDC_AX1800_Pro_dual-boot_rootfs2048M_no-last-partition.bin

你上传的文件的md5信息和上面对应文件的md5对比,没问题即可。

接着修改下面命令中的gpt文件名为你上传的文件名,然后复制命令粘贴一起执行:

(只修改gpt文件名,其他不变,这里以rootfs512M的分区表为例)

第1条dd命令是写入gpt文件到/dev/mmcblk0的前34个扇区

第2条是dd读取分区表传递给md5sum校验数据的md5值

## 亚瑟 rootfs size 512M GPT
dd if=/tmp/gpt-JDC_AX1800_Pro_dual-boot_rootfs512M_no-last-partition.bin of=/dev/mmcblk0 bs=512 count=34 conv=fsync
dd if=/dev/mmcblk0 bs=512 count=34 | md5sum

查看输出的md5,和上传文件的md5一样即可断电进uboot刷factory.bin固件了。

刷第三方OP固件后再进行新建分区、还原分区操作。

  1. 刷好系统之后,在系统中扩容

参考教程:https://post.smzdm.com/p/a7p2opw5/

# 格式化 mmcblk0p27 大分区
umount /dev/mmcblk0p27
mkfs.ext4 -F /dev/mmcblk0p27
# 复制当前 overlay 文件到 mmcblk0p27
mkdir -p /mnt/mmcblk0p27
mount /dev/mmcblk0p27 /mnt/mmcblk0p27
cp -r /overlay/* /mnt/mmcblk0p27
ls /mnt/mmcblk0p27
# 修改分区
block detect > /etc/config/fstab
sed -i s#/mnt/mmcblk0p27#/overlay# /etc/config/fstab
sed -i '12s/1/0/g' /etc/config/fstab
# 重启路由器
reboot

原方法有大概10步操作,对于不熟悉命令行的小白来说,有点复杂,我写了一个一键脚本,两步操作即可完成软件包扩容!

扩容软件包空间

这个一键扩容脚本针对亚瑟刷istore版OpenWrt系统,其他版本可以确认下分区是否一致,酌情使用。

20240701091105187-descript-1-1

▲ 系统→文件传输→选择文件expand_overlay.sh上传脚本

打开TTYD终端,输入下面命令:

chmod +x /tmp/upload/expand\_overlay.sh && /tmp/upload/expand\_overlay.sh

20240701091106719-descript-1-1

▲ 等待几分钟,扩容成功后,路由器会重启。

20240701091107969-descript-1-1

▲ 查看扩容成功!可以愉快的安装各种插件了~

  1. TTl刷机

先拆机,找到主板上的

电脑设置ip 192.168.10.1/24,关闭防火墙,把uboot文件放在tftp服务软件根目录,打开tftp服务软件。

USB转TTL,亚瑟建议使用1.8V的TTL电平,雅典娜建议使用3.3V的,连接路由器串口,电脑使用串口软件打开串口。

串口TTL接线可以教程文件夹中的图片。

路由器上电后不停按回车,中断启动,然后输入命令上传uboot文件

tftpboot u-boot.mbn

然后再执行如下命令后回车

tftpboot u-boot.mbn && flash 0:APPSBL && flash 0:APPSBL_1

等待执行完成后即可,给路由器断电,断开TTL连接,网线连接保留。

接下来我们可以进入uboot模式 如果要备份原来的系统分区。可以刷入一个低版本的固件。通过第一种方法解锁ssh,解锁后就可以进行分区备份了。

不想备份的也可以直接刷第三方的系统。

工具集合:

123pan

蓝奏云

https://zmd396.lanzout.com/b016j0djje密码:5ql1

© 版权声明
THE END
喜欢就支持一下吧
点赞11赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容