Hallo!
Bin neu hier im Forum und möchte mich zunächst 'mal bedanken (vor allem wohl bei Jan)! Ich habe aufgrund der Infos hier und Jan's ausführlicher Anleitung aus meiner LS-Live eine LS-Pro machen können. Cool!!! Da jetzt Standby und Resume möglich sind, spare ich mir einiges an "Rennerei", wenn ich wieder 'mal vergessen habe das NAS einzuschalten

.
Allerdings, die Fehlermeldung beim Aufruf von "resume.cgi" hat mich etwas genervt und da ich hier im Forum nicht gleich "fündig" geworden bin, habe ich mich selbst auf die Suche begeben. Nun dachte ich die Ergebnisse könnten für andere vielleicht auch interessant sein.
Also... das Script "resume.cgi" befindet sich in der RAM-Disk "initrd.buffalo", die das System beim booten zuerst lädt (übrigens nur dort, daher findet man es im laufenden System nicht.). Bei
http://buffalo.nas-central.org/wiki/How_to_modify_an_initrd gibt es eine Anleitung zum Ändern einer "Initrd". Mit deren Hilfe habe ich mir die Initrd näher angesehen (die Initrd der LS-Pro ist übriges nicht eingepackt und verschlüsselt.). Das Original resume.cgi-Script sieht wie folgt aus:
Code:
#!/bin/sh
echo Content-type: text/plain
echo
/usr/local/sbin/PowerSave.sh resume
return 0
Die Info ab hier sollte nur verwenden, wer sich ein wenig mit Linux auskennt und kein Problem mit einer "bricked" Linkstation hat. Also ... alles auf eigene Gefahr!!!
Die Fehlermeldung wird wegen "return 0" in Zeile 8 des Scripts generiert. Wenn man diese Zeile auskommentiert, bekommt man auch keine Fehlermeldung mehr. Das kann man folgendermaßen bewerkstelligen:
Zunächst die Original-Initrd in ein entsprechendes Verzeichnis kopieren:
Code:
mkdir /home/tmp
cd /home/tmp
cp /boot/initrd.buffalo .
Dann aus dem uboot Image die ZIP-Datei erstellen, auspacken und als Loop-Device mounten:
Code:
dd if=initrd.buffalo of=initrd.gz ibs=64 skip=1
gunzip initrd.gz
mkdir INITRD
mount -t ext2 -o loop initrd INITRD
Jetzt kann man das Script editieren, z.b. mit "vi" (ich selbst verwende lieber den Editor des Midnight Commander). Das geänderte Script sieht so aus; letzte Zeile auskommentiert:
Code:
#!/bin/sh
echo Content-type: text/plain
echo
/usr/local/sbin/PowerSave.sh resume
#return 0
Bevor wir das uboot image wieder erstellen können brauchen wir noch "mkimage". Auch das findet man wieder bei Buffalo NAS-Central (
http://buffalo.nas-central.org/download/Users/lb_worm/mkimage/). Damit geht's dann wie folgt weiter:
Code:
umount INITRD
rmdir INITRD
mv initrd.buffalo initrd.stock
gzip initrd
mkimage -A arm -O linux -T ramdisk -C gzip -a 0x0 -e 0x0 -n initrd -d initrd.gz initrd.buffalo
Das Einpacken mit "gzip" dauert einen Moment. Also nicht ungeduldig werden. Zum Schluß die neue RAM-Disk wieder ins boot-Verzeichnis kopieren; mit Sicherheitskopie des Originals.
Code:
mv /boot/initrd.buffalo /boot/initrd.stock
cp initrd.buffalo /boot/initrd.buffalo
Wenn man dis LS-Pro jetzt in den Standby schickt und dann wieder aufweckt, sollte keine Fehlermeldung mehr erscheinen. (Meine LS-Pro ist übrigens beim ersten Resume--ohne vorheriges Reboot--nicht aufgewacht sondern hat sich ausgeschalten). Nach erfolgreichem Testen sollte man noch aufräumen....
Code:
rm /home/tmp/initrd.buffalo
cd /home
rmdir tmp
Wie gesagt, benutzt die Info auf eigene Gefahr!!! Bei mir hat alles klaglos funktioniert. Ob es irgendwelche Nebeneffekte gibt, kann ich nicht sagen. Mir ist jedenfalls bisher "nix" aufgefallen.
Gruß und fröhliches "Hacken",
tungdil