
LS-CHL V2 1.41 Squeezebox-Server aktivieren bzw. nas_feature ändern
Hallo,
ich habe einen Weg gefunden, über eine Modifikation der initrd die nas_feature dauerhaft zu ändern.
Damit lässt sich auch mit der Firmware 1.41 auf der LS-CHL v2 der Squeezebox-Server im Webinterface aktivieren.
Darüber hinaus kann man SUPPORT_SFTP auf 1 setzen, womit sich ein Problem mit dem sshd beseitigen lässt, der auf manchen Boxen nicht automatisch gestartet wird.
Möglicherweise kann man durch das Setzen von MAX_USBDISKNUM auf einen höheren Wert als 1 so auch mehere externe USB-Laufwerke anschliessen. Das habe ich aber noch nicht getestet.
Edit: habe das grade mit einem USB_Hub und 2 USB-Festplatten getestet: Beide werden gemountet und in der Netzwerkumgebung angezeigt. Auch im Webinterface unter "Speicher" sind beide Festplatten vorhanden. Es scheint also zu funktionieren...Die Vorgehensweise über eine Modifikation der initrd ist erforderlich, weil sich die Datei /etc/nas_feature beim Reboot aus der initrd neu aufbaut, sodass ein dumpnf und anschliessendes setnf leider mit der Firmware 1.41 nicht zum Erfolg führt.
Folgende Schritte sind auszuführen:
Vorsicht! Hier bitte nur weitermachen, wenn man mit einer bricked Linkstation im Notfall klarkommt!!!
Bitte gebt mir Rückmeldung, ob das bei Euch funktioniert!
Zuerst kopieren wir die initrd in ein anderes Verzeichnis:
Code:
cd /mnt/disk1/share
cp /boot/initrd.buffalo /mnt/disk1/share
Dann entfernen wir den 64-bit-header, entpacken die Datei und mounten sie:
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 können wir mit cd INITRD in das Dateisystem der initrd und dort Änderungen vornehmen.
Die vorgefertigten nas_feature-Dateien befinden sich unter /root/.nas_features
Also wechseln wir mit
Code:
cd /mnt/disk1/share/INITRD/root/.nas_features
dorthin.
Nun müssen wir herausbekommen, welche der wiederum in mehreren Unterverzeichnissen befindlichen Dateien wir ändern müssen.
Dazu geben wir ein
Ganz oben muss eine PID erscheinen. Bei mir war es die:
Nun gehen wir mit
in den default-Ordner und geben ein
wobei 0x000012 durch die jeweilige PID zu ersetzen ist.
Nun ändern wir die Werte in der Datei (z.B. Squeezebox=1 sowie SUPPORT_SFTP=1 damit der sshd automatisch startet)
Dann speichern wir die Datei.
Ich habe zusätzlich auch noch im Ordner EU die Datei mit der gleichen PID geändert. Ich weiss aber nicht, ob das erforderlich ist!
Anschliessend wird INITRD wieder unmounted, die initrd gezippt (dauert etwas!) und die ursprüngliche initrd.buffalo zur Sicherheit gespeichert:
Code:
umount INITRD
rmdir INITRD
mv initrd.buffalo initrd.backup
gzip initrd
Nun brauchen wir noch das Tool mkimage, um damit die initrd wieder zu erzeugen:
Code:
wget http://downloads.buffalo.nas-central.org/Users/lb_worm/mkimage/mkimage
Jetzt wird noch das Image erzeugt:
Code:
chmod a+rx mkimage
./mkimage -A arm -O linux -T ramdisk -C gzip -a 0x0 -e 0x0 -n initrd -d initrd.gz initrd.buffalo
und nach /boot kopiert
Code:
cp initrd.buffalo /boot/initrd.buffalo
Nach einem
müsste
Code:
cat /etc/nas_feature
die Änderungen enthalten und der Squeezebox-Server wird angezeigt.
Viel Erfolg!
Dirk