1. 自建nginx通过http方式刷机

1. 自建nginx通过http方式刷机

1.1. 基础条件

  1. 已刷各种底包能启动usb-armbian
  2. onecloud.img 文件见件录
  3. HFS软件 → 打开APP → 拖入文件
  4. 全程无网,直至恢复正确MAC
  5. 确定MAC优先级逐级递减:主板MAC → 玩客云app(玩客云关机) → uboot命令bdinfo中ethaddr
  6. 使用网心云联网和错误MAC联网均会导致此MAC值异常

1.2. 刷机部分

刷机流程:启动usb-armbian → 恢复固件 → 完毕关机 → 拔掉U盘 → 重启系统 → 补丁修复 → 重启等待

1.2.1. 恢复固件

putty → SSH → 10.0.0.100

1EMMC="$(cd /dev/ && ls mmcblk[0-9])"
2wget -O - http://10.0.0.99/onecloud.img | dd of=/dev/${EMMC} bs=1M
3echo 0 > /sys/block/${EMMC}boot0/force_ro
4wget -O - http://10.0.0.99/uboot.bin | dd of=/dev/${EMMC}boot0
5shutdown -h now

1.2.2. 补丁修复

登录路由器查看mac地址

putty → Telnet

1telnet 10.0.0.88 1287
2wget http://10.0.0.99/wkcfix.sh
3sh wkcfix.sh b0:d5:xx:xx:xx:xx
4rm -f wkcfix.sh
5reboot -f

1.2.3. 改为玩客云mac地址

登录手机端玩客云客户端我的-oneCloud-设备信息-MAC地址

1.2.4. 重新执行1.2步骤

1.2.5. 注意事项

1.恢复mac值时,禁止乱填非本机MAC值,否则可能导致系统不分配IP地址,此时可拆机进系统重刷MAC值,或重新刷机; 2. 重启后先查看路由中是否恢复为指定mac,正常后联网等待更新; 3. IP说明:

设备 ip地址
armbian(刷机后的玩客云设备) 10.10.10.100
pc 10.10.10.99
玩客云 10.10.10.88
  1. 需在pc搭建nginx放入相应包文件供刷机使用

2. 使用U盘方式刷机

假设你已成功刷入了armbian。
现在开始刷机:

  1. 把拷贝有onecloud.img的U盘插入靠近网口的usb口后,使用putty的ssh方式进入玩客云。
    输入 fdisk -l查看U盘信息。
    然后请跟着操作
1cd /mnt
2mkdir usb
3mount -t ntfs /dev/sda1 /mnt/usb   # 此处正常应该无报错,报错请重新启动玩客云或者换个U盘。
4dd if=/mnt/usb/onecloud.img of=/dev/mmcblk0 bs=1M   #此处的mmcblk0请根据自己的实际情况,有的可能是mmcblk1;此处DD命令正常差不多3-5分钟完成。无报错的话,请继续下一步,有报错,请更换U盘或重新启动玩客云)
  1. 以上都没有报错,拔下U盘和电源,插入拷贝u-boot的U盘和ttl线,putty串口连接后,启动玩客云进入ttl模式。

在ttl模式下执行

1usb start;fatload usb 0 12000000 u-boot.bin
2store rom_write 12000000 0 60000
3saveenv

3. 附录

刷机文件(包括uboot.bin,wkcfix.sh)

uboot最新版下载地址

1.tar.gz

HFS

onecloud.img

armbian最新版下载地址

armbin使用指南

BRANCH 内核版本 eMMC HDMI VPU
edge v6.1 ✔️¹ ✔️² ✔️²
current v5.15 ✔️¹ ✔️² ✔️²

¹: 需要补丁
²: 通过补丁支持

3.1. 如何从u-boot启动?

3.1.1. 从USB启动

1setenv bootdev "usb 0"
2usb start
3fatload ${bootdev} 0x20800000 boot.scr && autoscr 0x20800000

3.1.2. 从eMMC启动

1setenv bootdev "mmc 1"
2fatload ${bootdev} 0x20800000 boot.scr && autoscr 0x20800000