Upgrading TL-WR710N on OpenWrt

Story is that I have several TP-Link WR710N access points in use, flashed with OpenWrt. The preinstalled (factory) OS is a bit too limiting, resource-intensive and cannot be checked for flaws (or modified for that matter). Whilst reading the website, I saw they merged with the LEDE project and they are merging their efforts. Hooray for this/these amazing project(s).

Since my installations are a bit stale (and they still work like a charm), it was time to do updates. The project has a fine page about sysupgrade, which describes the process for both the GUI (webinterface) and commandline (preferred). As such I'd like to share the experience, together with some examples.

0 - Check (and modify, if applicable) preserved files

Use these 3 commands to check changed configuration files and/or which files are preserved during upgrades:

opkg list-changed-conffiles
ls /lib/upgrade/keep.d/
cat /etc/sysupgrade.conf

I noticed some files that were missing and added them to the /etc/sysupgrade.conf as such:

echo "/etc/config/dhcp" >> /etc/sysupgrade.conf
echo "/etc/config/network" >> /etc/sysupgrade.conf
echo "/etc/config/wireless" >> /etc/sysupgrade.conf
echo "/etc/passwd" >> /etc/sysupgrade.conf
echo "/etc/group" >> /etc/sysupgrade.conf
echo "/etc/shadow" >> /etc/sysupgrade.conf
echo "/etc/sudoers" >> /etc/sysupgrade.conf
echo "/home/user/.ssh/authorized_keys" >> /etc/sysupgrade.conf

1 - Take note of custom packages and enable SSH

Note that I know exactly which "custom" packages I've installed previously and don't have to look those up. These are unavailable after an upgrade and need to be reinstalled, take that into account.

Since that means I won't be able to use 'su' or 'sudo' after upgrading, I need to reset my dropbear SSH config back to a 'default' compatible configuration. So edit /etc/config/dropbear and ensure these settings are set:

option PasswordAuth         'on'
option RootPasswordAuth     'on'
option RootLogin            'on'

https://openwrt.org/docs/guide-user/troubleshooting/failsafe_and_factory_reset Wait for a flashing LED and press a button. This is usually the easiest method once you figure out the correct moment. mount_root

System Message: ERROR/3 (<string>, line 53)

Unexpected indentation.
Once failsafe mode is triggered, the router will boot with a network address of 192.168.1.1/24, usually on the eth0 network interface, with only essential services running. Using SSH or a serial connection, you can then mount the JFFS2 partition with the following command:

System Message: WARNING/2 (<string>, line 54)

Block quote ends without a blank line; unexpected unindent.