Werfen Sie doch bitte einen Blick auf das Flash Layout. Der OpenWrt-Sysupgrade-Prozess wird den Linux Kernel und den SquashFS Inhalt überschreiben, und außerdem die komplette JFFS2 Partition löschen. Sie können einige oder alle ihrer Konfiguration-Dateien mitnehmen, doch bitte beachten Sie, dass es vorkommen kann, dass alte Konfigurations-Einstellungen nicht mit neueren OpenWrt Versionen arbeiten werden! Anders als bei Debian, werden Sie nicht automatisch darüber in Kentnis gesetzt, Sie müssen sich selber im Vorhinein informieren!
Sie müssen das Image-File in das /tmp-Verzeichnis herunterladen, ein tmpfs-Lauwerk ist auf dieses Verzeichnis gemountet. Das muss so sein, weil nur der Arbeisspeicher genug Platz für ein Firmware-Image bietet. Das bedeutet, dass Sie unter Umständen Arbeitsspeicher freiräumen müssen, wenn nicht genug zur Verfügung stehen sollte.
free
Falls nicht genug übrig sein sollte, →Free up RAM.
/etc/sysupgrade.conf mit Dateien und Verzeichnisen, die erhalten bleiben sollencd /tmp wget http://downloads.openwrt.org/snapshots/trunk/PLATFORM/xxx-sysupgrade.bin wget http://downloads.openwrt.org/snapshots/trunk/PLATFORM/md5sums
md5sum -c md5sums
Wenn es md5sum: WARNING: 195 of 196 computed checksums did NOT match ausspuckt, ist alles in Ordnung
sysupgrade -v /tmp/openwrt-ar71xx-generic-wzr-hp-ag300h-squashfs-sysupgrade.bin
-v (“verbose”) sollte etwas änhliches ausgeben wie das hier:root@openwrt:/tmp$ sysupgrade -v openwrt-ar71xx-generic-tl-wr1043nd-v1-squashfs-sysupgrade.bin Saving config files... root/zeit root/statistics root/quelen root/auswurfeln etc/sysupgrade.conf etc/sysctl.conf etc/shells etc/rc.local etc/TC_hfsc.sh etc/profile etc/passwd etc/inittab etc/init.d/trafficc etc/hotplug.d/iface/30-trafficc etc/hosts etc/group etc/firewall.user etc/dropbear/dropbear_rsa_host_key etc/dropbear/dropbear_dss_host_key etc/crontabs/root etc/config/wireless etc/config/timeserver etc/config/system etc/config/network etc/config/firewall etc/config/dropbear etc/config/dhcp etc/collectd.conf Switching to ramdisk... Performing system upgrade... Unlocking firmware ... Writing from <stdin> to firmware ... Appending jffs2 data from /tmp/sysupgrade.tgz to firmware...TRX header not found Error fixing up TRX header Writing from <stdin> to firmware ... Upgrade completed Rebooting system...
/etc/sysupgrade.conf auf die JFFS2-Partition schreiben. Warten bis das abgeschlossen ist und jetzt bitte nochmal manuell neu starten.dmesg uname -a iptables -V ...
opkg update opkg install tc iptables-mod-ipopt wol
| | Ein Kalt-Reset scheint notwendig zu sein, das ist im Falle eines sysupgrades aus der Ferne sehr sehr schlecht! |
/tmp-Verzeichnis kopiertEinige sind hier zu finden: upgrading.openwrt.
sysupgrade ihr Gerät (noch) nicht unterstützt, können Sie mtd benutzen, z.B.:mtd -r write /tmp/openwrt-ar71xx-generic-wzr-hp-ag300h-squashfs-sysupgrade.bin firmware
Netcat könnte eingesetzt werden, wenn nicht genug Arbeitsspeicher frei gemacht werden kann. Siehe netcat. Netcat needs to be installed first.
| | Diese Methode wird NICHT empfohlen! |
nc -l -p 1234 | mtd write - firmware
nc -q0 192.168.1.1 1234 < openwrt-ar71xx-tl-wr1043nd-v1-squashfs-sysupgrade.bin
Sie können auch, auch wenn dies nicht empfohlen wird, nectat mit pipes benutzen anstatt das Image auf die RAMFS-Partition zu kopieren:
nc -l -p 5050 -q 1 < openwrt-XXXX-XXXX.trx
nc 192.168.1.6 5050 | mtd -e linux -r write - linux
Diese Vorgehensweise wird nicht empfohlen, könnte aber im Falle von wenig freiem Arbeitsspeicher auf dem Gerät notwendig werden.
First check memory usage with the free or top or cat /proc/meminfo commands; proceed if you have as much free RAM as the image is in size plus an some additional MiB of free memory.
root@openwrt:/$ free
total used free shared buffers
Mem: 29540 18124 11416 0 1248
-/+ buffers: 16876 12664
Swap: 0 0 0 |
In this example there are precisely 11.416 KiB of RAM unused. All the rest 32.768 - 11.416 = 21.352KiB are used somehow and a portion of it can and will be made available by the kernel, if it be needed, the problem is, we do not know how much exactly that is. Make sure enough is available.
opkg-Package-Dateien zu löschen:rm -r /tmp/opkg-lists/
echo 3 > /proc/sys/vm/drop_caches
rm /etc/modules.d$/*80211* rm /etc/modules.d$/*ath9k* reboot