[SIZE="4"]
[color="Red"]Schreibgeschützten Bereich eines Neutrino-Images bearbeiten[/color]
[/SIZE]
[color="White"](A) MIT EINER KNOPPIX-CD[/color]
Es wird gezeigt wie man mit Hilfe von Linux den schreibgeschützten root-Bereich des Neutrino-Images auf der DBox bearbeiten kann.
Alle Angaben beziehen sich auf das [color="White"]Keywelt 2006 Squashfs Juni Image V4[/color] und als Linux System wurde [color="white"]KNOPPIX 5.0.1 Public Release am 2.6.2006[/color] verwendet.
Für die die Knoppix nicht kennen, es handelt sich um ein Linux-Betriebssystem welches dirket von CD bootet. Es ist also keine Installation von Linux am PC notwendig.
Die Anleitung funzt natürlich auch bei jedem anderen Image, und wenn man Linux fix auf dem Rechner hat ändert sich auch kaum was.
Alle Linux-Konsolenbefehle sind in gelber Schrift hervorgehoben.
Bevor man beginnt sollte man sich sicherheitshalber ein Backup seines Images machen.
[SIZE="2"][color="White"](1)[/color][/SIZE]
[INDENT]Linux downloaden: http://www.knopper.net/knoppix/
Was man hier bekommt ist ein CD-Image der angesprochenen Linux-Boot-CD.
Weiters benötigt man [color="White"]mksquashfs[/color], ein Tool zum Erstellen des Squash-Filesystems. Dieses Datei habe ich angehängt (mksquashfs.rar), man bekommt sie aber auch auf http://yadi.org/anleitungen/build.php.[/INDENT]
[SIZE="2"][color="White"](2)[/color][/SIZE]
[INDENT]CD-Image auf CD brennen und von dieser CD booten.[/INDENT]
[SIZE="2"][color="White"](3)[/color][/SIZE]
[INDENT]Netzwerkkarte einrichten:
[color="white"]K-Menü --> KNOPPIX --> Netzwerk/Internet --> Netzwerkkarte konfigurieren[/color][/INDENT]
[SIZE="2"][color="White"](4)[/color][/SIZE]
[INDENT]mksquashfs auf den Desktop legen.[/INDENT]
[SIZE="2"][color="White"](5)[/color][/SIZE]
[INDENT]Konsole öffnen und mksquashfs installieren:
[color="Yellow"]sudo install /home/knoppix/Desktop/mksquashfs /usr/bin[/color][/INDENT]
[SIZE="2"][color="White"](6)[/color][/SIZE]
[INDENT]Eine weiter Konsole öffnen und eine Telnetverbindung mit der DBox herstellen:
[color="yellow"]telnet 192.168.0.2[/color] (IP der DBox)[/INDENT]
[SIZE="2"][color="White"](7)[/color][/SIZE]
[INDENT]Nachsehen in welcher Partition des Flashspeichers der root-Bereich liegt:
[color="yellow"]cat /proc/mtd[/color]
Man erhält eine Ausgabe die etwa so aussieht:
dev: size erasesize name
mtd0: 00020000 00004000 "BR bootloader"
mtd1: 00520000 00020000 "root (squashfs)"
mtd2: 002a0000 00020000 "var (jffs2)"
mtd3: 00020000 00020000 "FLFS (U-Boot)"
mtd4: 007e0000 00020000 "Flash without bootloader"
mtd5: 00800000 00020000 "Complete Flash"
00520000 ist die Größe der Partition in der der root-Bereich liegt. Die Zahl ist die Größe in Byte, allerdings in Hexadezimal-Form. Umgerechet bedeutet 520000, dass diese Partition 5373952 Bytes oder 5248 kB groß ist.
In meinem Fall liegt der root-Bereich also in mtd1, sollte das anders sein, muss die Nummer unter Punkt (9) und (16) entsprechend abgeändert werden.[/INDENT]
[SIZE="2"][color="White"](8)[/color][/SIZE]
[INDENT]Ein neues Verzeichnis auf der DBox anlegen:
[color="Yellow"]mkdir /var/tmp/root[/color][/INDENT]
[SIZE="2"][color="White"](9)[/color][/SIZE]
[INDENT]Den root-Bereich in dieses Verzeichnis mounten:
[color="yellow"]mount -t squashfs -o ro /dev/mtdblock/1 /var/tmp/root[/color][/INDENT]
[SIZE="2"][color="White"](10)[/color][/SIZE]
[INDENT]In den Ordner [color="White"]/tmp[/color] wechseln:
[color="yellow"]cd /var/tmp[/color][/INDENT]
[SIZE="2"][color="White"](11)[/color][/SIZE]
[INDENT]Den Ordner [color="white"]root[/color], in den der root-Bereich gemountet wurde, packen:
[color="yellow"]tar -cf root.tar root[/color]
Geduld, das dauert ein bissl.[/INDENT]
[SIZE="2"][color="White"](12)[/color][/SIZE]
[INDENT]Eine FTP Verbindung mit der DBox herstellen. Dafür reicht der Webbrowser. Einfach in die Adresszeile [color="White"]ftp://192.168.0.2[/color] (IP der DBox) eingeben.
Dann die Datei root.tar in [color="white"]/var/tmp[/color] auf den Desktop kopieren.
Anschließend sollte man diese Datei auf der DBox wieder löschen um den Platz frei zu geben.[/INDENT]
[SIZE="2"][color="White"](13)[/color][/SIZE]
[INDENT]Eine Konsole öffnen und auf den Desktop wechseln:
[color="Yellow"]cd Desktop[/color][/INDENT]
[SIZE="2"][color="White"](14)[/color][/SIZE]
[INDENT]Den root-Bereich auspacken:
[color="yellow"]tar -xf root.tar[/color][/INDENT]
[SIZE="2"][color="White"](15)[/color][/SIZE]
[INDENT]Jetzt liegt der gesamte root-Bereich der DBox auf dem Desktop im Ordner [color="White"]root[/color]. Man kann nun die notwendigen Änderungen an dieser Kopie des root-Bereichs vollziehen.[/INDENT]
[SIZE="2"][color="White"](16)[/color][/SIZE]
[INDENT]Aus dem bearbeiteten root-Bereich ein Image machen:
[color="yellow"]fakeroot mksquashfs root mtd1.img -be[/color][/INDENT]
[SIZE="2"][color="White"](17)[/color][/SIZE]
[INDENT]Über FTP die Datei mtd1.img auf die DBox nach [color="white"]/var/tmp[/color] kopieren.
Die Datei darf nicht größer als die zuvor berechneten 5248 kB sein. Allerdings ist es möglich, dass Linux eine viel kleinere Größe anzeigt, in dem Fall sollte man sicherheitshalber vor dem nächsten Schritt Linux beenden und den Rechner wieder mit Windows hochfahren. Dann kann man sich die Datei mtd1.img wieder von der DBox runter kopieren um zu prüfen ob sie nicht zu groß ist.[/INDENT]
[SIZE="2"][color="White"](18)[/color][/SIZE]
[INDENT]Mit den Experten-Funktionen das Image einspielen:
[color="White"]Servive --> Software-Aktualisierung --> Experten-Funktionen --> einzelne Partition einspielen --> root (squashfs)[/color][/INDENT]
[color="White"][SIZE="5"]______________________________[/SIZE][/color]
[color="White"](B) MIT WINDOWS UND EINEM GEMOUNTETEM VERZEICHNIS[/color]
Es wird gezeigt wie man mit Hilfe von Windows und einem auf der DBox gemountetem Verzeichnis den schreibgeschützten root-Bereich des Neutrino-Images auf der DBox bearbeiten kann.
Alle Angaben beziehen sich auf das [color="White"]Keywelt 2006 Squashfs Juni Image V4[/color].
Die Anleitung funzt natürlich auch bei jedem anderen Image.
Alle Konsolenbefehle sind in gelber Schrift hervorgehoben.
Bevor man beginnt sollte man sich sicherheitshalber ein Backup seines Images machen.
[SIZE="2"][color="White"](1)[/color][/SIZE]
[INDENT]Die angehängte Datei mksquashfs_dbox.rar downloaden, entpacken, das File mit FTP auf die DBox in das Verzeichnis [color="white"]/var/bin[/color] kopieren und die Rechte auf 755 setzen.[/INDENT]
[SIZE="2"][color="White"](2)[/color][/SIZE]
[INDENT]Im Verzeichnis welches auf die DBox gemountet wurde ein neues Verzeichnis mit dem Namen [color="White"]root[/color] anlegen.
Bei mir wurde das Verzeichnis [color="white"]DBox2[/color] in das Verziechnis [color="white"]/var/autofs/filme[/color] gemountet. Also erstelle ich das neue Verzeichnis entweder über FTP in [color="white"]/var/autofs/filme[/color] oder direkt auf dem PC im Verzeichnis [color="white"]DBox2[/color] (bewirkt beides das selbe).[/INDENT]
[SIZE="2"][color="White"](3)[/color][/SIZE]
[INDENT]Die Eingabeaufforderung öffnen und eine Telnetverbindung mit der DBox herstellen:
[color="Yellow"]telnet 192.168.0.2[/color] (IP der DBox)[/INDENT]
[SIZE="2"][color="White"](4)[/color][/SIZE]
[INDENT]Nachsehen in welcher Partition des Flashspeichers der root-Bereich liegt:
Siehe [color="White"](A) (5)[/color][/INDENT]
[SIZE="2"][color="White"](6)[/color][/SIZE]
[INDENT]Den root-Bereich in das zuvor erstellte Verzeichnis mounten:
[color="yellow"]mount -t squashfs -o ro /dev/mtdblock/1 /var/autofs/filme/root[/color][/INDENT]
[SIZE="2"][color="White"](7)[/color][/SIZE]
[INDENT]In den Ordner [color="white"]/var/autofs/filme[/color] wechseln:
[color="yellow"]cd /var/autofs/filme[/color][/INDENT]
[SIZE="2"][color="White"](8)[/color][/SIZE]
[INDENT]Den Ordner [color="white"]root[/color], in den der root-Bereich gemountet wurde, packen:
[color="yellow"]tar -cf root.tar root[/color][/INDENT]
[SIZE="2"][color="White"](9)[/color][/SIZE]
[INDENT]Das Mounten des root-Bereiches rückgängig machen:
[color="Yellow"]umount root[/color][/INDENT]
[SIZE="2"][color="White"](10)[/color][/SIZE]
[INDENT]Den root-Bereich auspacken:
[color="Yellow"]tar -xf root.tar[/color][/INDENT]
[SIZE="2"][color="White"](11)[/color][/SIZE]
[INDENT]Jetzt liegt der gesamte root-Bereich der DBox im Verzeichnis [color="White"]/var/autofs/filme/root[/color]. Man kann nun die notwendigen Änderungen an dieser Kopie des root-Bereichs vollziehen.[/INDENT]
[SIZE="2"][color="White"](12)[/color][/SIZE]
[INDENT]Aus dem bearbeiteten root-Bereich ein Image machen:
[color="Yellow"]mksquashfs root mtd1.img -be[/color][/INDENT]
[SIZE="2"][color="White"](13)[/color][/SIZE]
[INDENT]Mit dem erstellten Image das vorhandene DBox-Image updaten:
Siehe [color="White"](A) (17)[/color] und [color="white"](A) (18)[/color][/INDENT]