One of the most frustrating tasks in regard to OpenWRT is needing to upgrade. There are several factors that instigate it further.
Firstly, with any given router's traditional WAP/router firmware (as well as OpenWRT's White Russian), configuration settings were stored in NVRAM and survived up/downgrades. This was comforting in that you knew that no matter what you flashed (with caveats) you would not lose your configuration. This assurance is gone with Kamikaze. Upgrading is much more of PITA, ensuring that I've saved all my settings from /etc/[config] and having to reload them back, but only after I've gone through the gyrations of fixing up the default router address re-assignment [you all know the rigmarole], etc., etc. Along with all of this is the always uncertainty as to the stability of the upgraded firmware. Maybe it will be unsuitable for some reason, so now you have to downgrade again and go through the whole process a second time. Maybe your downgrade also does not roll everything back properly. Now where do you go? I mitigate some of this by keeping my / on USB storage. That way, I can to some degree, take comfort in upgrades by first duping my USB key to another key (or just some other storage) so that know that I can get back my previous / after I downgrade to my previous flashed image (IOW, kernel). But all this flashing to up/downgrade a kernel and essentially what is an initrd (given that I mount USB storage on /) seems silly. I wonder what the feasibility is of instead of putting a linux kernel in the kernel portion of the flash image and essentially what's an initrd in the filesystem portion (because remember, all the / in the flash image does for me is mount USB storage on /), putting a simple boot loader that can load the kernel from the USB storage based filesystem. Given that model the kernel is coupled with the rest of the system on a single USB storage device which you just plug in and boot. Pull the device and replace with another and get the kernel that goes along with it. It's worth recognizing and mentioning that perhaps this boot loader could actually be a full linux kernel and a very small / that simply "kexec"s a new kernel from the USB storage once it's mounted at /. I wonder how portable kexec is amongst the processors Linux runs on. Being able to operate like this would take a lot of the fear (and work) of upgrading away since you can upgrade simply by using a new USB storage device (which you might even have prepared on some machine other than the router) and keep the old one sitting around in case you need to quickly back out to plan B. FWIW, this is all in reference to my particular WAP which is an ASUS WL-500g Premium, but portability where USB storage devices can be used would be ideal. Thots? b.
signature.asc
Description: This is a digitally signed message part
_______________________________________________ openwrt-devel mailing list [email protected] http://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
