I have been using 25.10 since early January. Installed factory image from original Linksys image which I used to keep in its separate partition.
Everything went well and is still going well... however, no matter what method I try, I cannot install any newer version:
Seems like 25.10 no longer exposes the boot_part FW variable, so I haven't been able to boot back to Linksys FW to install 25.10.1/2 from scratch
Attended sysupgrade method fails with the following error
Traceback (most recent call last):
File "/app/.venv/lib/python3.14/site-packages/rq/worker/base.py", line 1463, in perform_job
return_value = job.perform()
File "/app/.venv/lib/python3.14/site-packages/rq/job.py", line 1318, in perform
self._result = self._execute()
~~~~~~~~~~~~~^^
File "/app/.venv/lib/python3.14/site-packages/rq/job.py", line 1378, in _execute
result = self.func(*self.args, **self.kwargs)
File "/app/asu/build.py", line 489, in build
result = _build(build_request, job)
File "/app/asu/build.py", line 75, in _build
bin_dir.mkdir(parents=True, exist_ok=True)
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/.local/share/uv/python/cpython-3.14.3-linux-x86_64-gnu/lib/python3.14/pathlib/__init__.py", line 1011, in mkdir
os.mkdir(self, mode)
~~~~~~~~^^^^^^^^^^^^
OSError: [Errno 28] No space left on device: '/srv/store/cd1f6697f05657a267cd12aab2af7d06a361e8452eacb384b36bc9c0abb3426a'
However, there should not be anything installed over the factory image (used to have OpenVPN/Wireguard on 24.x, but wiped that out when installing 25.10). Output for df command below:
When installing a downloaded squashfs image downloaded from OpenWRT.com, after uploaded and a somewhat longer than usual wait, the router reboots back to 25.10.0 (guessing that installation over the second parition failed and router reverted to last good configuration?)
I know the WRT32X is ancient but for my use, it really does the job well. Have another somewhat newer (Qualcomm based) router that I could try, but was wondering if anyone still using Linksys routers have faced (and solved) this issue already,
Logs are all in RAM by default, plus the sysupgrade tool kills all processes (including logging) as part of the installation, so it's not possible to see what's going on. We might be able to get some output by turning on shell tracing (and although that will die when stdout goes away, it may tell us something).
Get an image that fails into /tmp/firmware.bin, look at its metadata, then run sysupgrade with shell tracing on.
$ owut download
# or if that fails
# wget -O /tmp/firmware.bin https://downloads...
$ fwtool -i - /tmp/firmware.bin
{ "metadata_version": 1.1, ...
# Copy the above output before you proceed.
$ sh -x /sbin/sysupgrade /tmp/firmware.bin
+ . /lib/functions.sh
+ N='
'
+ _C=0
+ NO_EXPORT=1
+ LOAD_STATE=1
... for 1000s of lines of output ...
We're interested in the last 30-40 lines, as that's most likely to show the error message.
{ "metadata_version": "1.1", "compat_version": "2.0", "compat_message": "Partition design has changed compared to older versions (up to 19.07) due to kernel size restrictions. Upgrade via sysupgrade mechanism is not possible, so new installation via factory style image is required.", "new_supported_devices": ["linksys,wrt32x","armada-385-linksys-venom","linksys,venom"], "supported_devices": ["linksys,wrt32x armada-385-linksys-venom linksys,venom - Image version mismatch: image 2.0, device 1.0. Please wipe config during upgrade (force required) or reinstall. Reason: Partition design has changed compared to older versions (up to 19.07) due to kernel size restrictions. Upgrade via sysupgrade mechanism is not possible, so new installation via factory style image is required."], "version": { "dist": "OpenWrt", "version": "25.12.2", "revision": "r32802-f505120278", "target": "mvebu/cortexa9", "board": "armada-385-linksys-venom" } }
So I guess no sysupgrades possible with this system?
In any case, blindly attempting the upgrade yields:
That's a one-time thing, sysupgrade can't handle this specific upgrade because it requires concurrent partition editing and so on. You'll need to consult the wiki page for your device to see what you need to do to convert to the new partition design. Once you've done that, sysupgrade should start working again for future upgrades.
Yeah, that's the step where everything gets shut down so as not to interfere with deleting the old image and packages et cetera. Everything looks ok up to that point, then it enters the black hole.
Managed to move to 25.12.2 by doing the following:
Backup router configuration to zip
Boot from 2nd partition where I have the original Linksys firmware
Install factory image from Linksys firmware
Restore the configuration backup
To boot into the second partition I went to Software, updated packages and installed luci-app-advance-reboot, which surprisingly worked for me...
I say surprisingly because I had expected the previous failed upgraded to have messed up the second partition, but luckily it wasn't.
Normally I would do the boot partition switch using fw_printenv and fw_setenv on the boot_part uboot variable, but I could not find that one once I migrated to 25.12... I guess the maintainers of the luci app know the new method.
Maybe in the future a sysupgrade is possible again, but for the time being I have a workaround that works for me (besides, l personally like to keep the old Linksys partition there just in case, only reason I tried sysupgrade this time is because I could not switch boot partitions in the way I was used to).