Skip to content

HomeLede懒人升级指南

Richard Yu edited this page Dec 1, 2020 · 2 revisions

刷固件是玩OpenWrt的必备技能,物理机可以通过PE工具,虚拟可以替换虚拟磁盘,方法很多。

为何切换固件推荐重新刷机?

想不重刷无非是想保留配置和数据,如果直接换固件,软件还是配置好的,太美了。

不过理想和现实总是有差距的:

不同固件磁盘分区参数未必相同,软件版本及配置也各异。保留的配置很有可能在新固件上无法工作,或者与新固件其他配置冲突,导致各种奇怪现象。

与其花时间去分析这些奇怪现象,莫不如重新设置一次。

所以,你会发现绝大多数固件都推荐大家不要保留配置,直接重刷。

我就是懒,就想直接在原系统上刷机,怎么办?

如果你想试试,可以,不过这种操作通常都会有比较严格的场景限制,版本,环境必须严格一致,一步操作错了,可能就无法挽回了。

不过即使操作错了,你仍旧可以重新刷机来解决。x86软路由不存在刷成砖的可能,折腾吧,骚年。

刷机前,还是建议你把一些常用的配置备份下

HomeLede DNS内置的,如果你用着没什么问题,这块,你是不用动的。

通常需要备份的(根据你自己情况):

  • dhcp静态地址分配:/etc/config/dhcp
  • 防火墙端口转发、端口开放:/etc/config/firewall
  • SSH远程登录:/etc/config/dropbear,如果设置了密钥登录,备份:/etc/dropbear/authorized_keys
  • DDNS:/etc/config/ddns
  • PSW节点:/etc/config/passwall

v2020.06.20刷机到v2020.06.27

只验证过v2020.06.20到v2020.06.27,使用MBR分区表的固件(openwrt-x86-64-combined-squashfs.img, 看好了,不带gpt)别的没有验证过。本方法不保留配置,不保留配置,不保留配置!!!

首先,拿到v2020.06.27固件的IMG格式镜像,得到openwrt-x86-64-combined-squashfs.img。

把文件上传到路由/tmp路径下。(可使用固件图形界面"文件传输",也可以用sftp,随意)

执行下面操作前,把固件上应用都关了,断开外网,内网设备。如果可以直接Console操作,就把网络都断开。

在命令行执行:

dd if=/tmp/openwrt-x86-64-combined-squashfs.img of=/dev/sda bs=512 skip=33792 seek=33792 count=655360

等待命令完成后:

reboot 2>&1 > /dev/null

等待固件重启。

如果顺利,开机即可获得全新的v2020.06.27。且会保留硬盘上一切分区。只是软件配置需要重新设置。

v2020.10.01之后版本,支持Web升级

请注意,固件默认分区是16M+320M,如果你更改了分区,Web升级会重置分区,会导致数据丢失。

如果两次固件分区大小一致,大概率可以直接刷。

还是一句话,重刷最靠谱。

Clone this wiki locally