Netgear GS308T not mounting /overlay

Summary: I have installed OpenWRT (yesterday's snapshot) to a Netgear GS308T and it loses all settings between reboots. Everything is in tmpfs, the /overlay is not being mounted, and fstab is empty. Running firstboot and sysupgrading has no effect.

Here is the sequence I followed:

  • Downloaded the initramfs image (openwrt-realtek-generic-netgear_gs308t-v1-initramfs-kernel.bin)
  • Flashed the initramfs image to Image2 using the Netgear web interface
  • Set the active image to Image2
  • On restart, the GS308T had a running OpenWRT,
  • Downloaded the sysupgrade image (openwrt-realtek-generic-netgear_gs308t-v1-squashfs-sysupgrade.bin)
  • Ran sysupgrade -T, no errors.
  • Ran sysupgrade -v openwrt-realtek-generic-netgear_gs308t-v1-squashfs-sysupgrade.bin, following output
root@OpenWrt:/tmp# sysupgrade -v openwrt-realtek-generic-netgear_gs308t-v1-squashfs-sysupgrade.bin 
Cannot save config while running from ramdisk.
Wed Jul 21 08:37:37 UTC 2021 upgrade: Commencing upgrade. Closing all shell sessions.
Connection to 192.168.1.1 closed by remote host.
Connection to 192.168.1.1 closed.
  • On reboot, it's still running from tmpfs, no overlay
  • On the advice of this thread I tried
mtd -r write openwrt-realtek-generic-netgear_gs308t-v1-squashfs-sysupgrade.bin firmware
  • On reboot, it's still running from tmpfs, no overlay

df -h shows:

df -h
Filesystem                Size      Used Available Use% Mounted on
tmpfs                    60.1M      7.3M     52.9M  12% /
tmpfs                    60.1M     56.0K     60.1M   0% /tmp
tmpfs                   512.0K         0    512.0K   0% /dev

I don't think it's a problem with swap, there's plenty of memory free and swapoff -a doesn't change the result of a sysupgrade.

It's not a problem with running processes, I've tried killing them and running the same sysupgrade, same result.

Solution: sysupgrade was writing to image1, not overwriting image2.

Fixed with fw_setsys bootpartition 0 to use image1.

(Creit where due: taken from the RTL838x post, but note that setsys is not available as a command, it's fw_setsys. There seems to be no need to run savesys.)

From my Install instructions in the commit:

The Image0 slot should be used in order to enable sysupgrade.