[gelöst] filesystem.image einer Fritzbox SL bearbeiten

Ja, sogar zwei davon.

Aber soweit ich weiß ist der Unterschied ja nur, daß es sich bei der SL um ein Contiguous SquashFS handelt, was ja diesen Umstand mit dem kernel.image und filesystem.image erfordert. Ich vermute aber, daß dies nicht das Problem ist, sondern daß es etwas mit dem 70KB-Unterschied zu tun hat.

Ich habe jetzt auch nicht vor mir eine neue anzuschaffen, nur um eine 20KB-Datei darauf zu speichern. Gibt es vielleicht noch eine andere Möglichkeit Dateien beständig zu machen? Ich meine, die /var/flash/debug.cfg merkt sich ja auch, was man in sie einträgt; die kann ich bloß blöderweise nicht benutzen, da sie als Skript ausgeführt wird und nicht als binäres Programm, für daß ich Parameter definieren kann.
 
Zuletzt bearbeitet:
20kB-Datei kannst du auch im RAM platzieren. Du kannst die Datei irgendwo auf FTP oder HTTP hinlegen und dann in debug.cfg per wget holen. Ist zwar etwas umständlich, dafür gibt es aber hier fertige Beispiele. Bitte verwende aber nicht unendliche while-Schleifen, sondern lass sie in einem endlichen Zeitraum eine begrenzte Anzahl der Iterationen durchführen.
Wenn die SL-Box einen USB-Host hätte, könnte man die Datei auf einem USB-Stick laufen lassen.
Gibt es denn FREETZ oder ds-mod für diese Box?

MfG
 
Die busybox der SL hat, wie geschrieben, kein wget.

Gruß
Oliver
 
Das ist natürlich schlecht. Habe ich oben überlesen. Dann muss der Autor leider mit dem Packen / Entpacken weiter kämpfen. Gab es da nicht irgendwann mal Änderungen am Packer/Entpacker, sodass wir extra einen speziellen tar von einer früheren Version zum Packen nehmen müssten?
@trompke: Poste bitte auch daten zu deiner build-Umgebung und versuch rauszufinden, welche Version vom tar zum Packen benutzt wird.

MfG
 
Vielen Dank für die Resonanz.

Mittlerweile konnte ich die Fritzbox SL doch "besiegen".

In meinem squash_sl-Skript waren zwei Fehler drin:

Code:
#! /bin/bash

TOOLS_DIR="./werkz"
TARGET_DIR="unsquash"
UNTAR_DIR="untar"

"$TOOLS_DIR/mksquashfs[B][U]_alt[/U][/B]" "$TARGET_DIR" filesystem.image -b [B][U]65536[/U][/B] -noappend -all-root
cat kernel.raw filesystem.image > alles.image
split -d -b 640k alles.image teil-
mv teil-00 "$UNTAR_DIR/var/tmp/kernel.image"
cat teil-01 teil-02 > "$UNTAR_DIR/var/tmp/filesystem.image"
"$TOOLS_DIR/tichksum" "$UNTAR_DIR/var/tmp/filesystem.image"
"$TOOLS_DIR/tichksum" "$UNTAR_DIR/var/tmp/kernel.image"
"$TOOLS_DIR/tar" -C "$UNTAR_DIR/" -cf - --owner=0 --group=0 --mode=0755 --format=oldgnu . > neue_firmware.image
rm -rf unsquash untar alles.image filesystem.image kernel.raw kernelsquashfs.raw teil-*

Ob das Programm mksquashfs_alt, (alias v2.2 oder so ähnlich) wirklich ein Fehler war, weiß ich nicht; könnte aber gut sein, weil es bei mir Kompilierfehler gab, die ich notdürftig beheben mußte. Ist aber eigentlich auch nicht so wichtig; für die Lösung gilt das, was ich anfangs schon schrieb:

Einfach alle Programme aus der DS-Mod übernehmen.

Ich nehme an, der eigentliche Fehler war dann doch die Blockgröße 65536, dabei verließ ich mich einfach auf danisahne (dieser Thread). Mit

Code:
unsquashfs -stat kernelsquashfs.raw

fand ich dann heraus, daß die Superblockgröße 16384 Byte betragen müsse. Ferner fand ich noch heraus, daß der Größenunterschied tatsächlich von tar verursacht wurde, was aber, wie ich nun weiß, bedeutungslos ist und ignoriert werden kann.

Somit war ich dann in der Lage, das Dateisystem meiner Box zu verändern. Und dann ging es los:

Sobald mein eigenes Image auch nur einen schlappen Byte größer war, als das originale, war Ende im Gelände. Die Box hörte nicht mehr auf zu flashen. Leider war die 20KB-arp-Busybox, von der ich vorhin sprach eine dynamisch gelinkte, die eine Bibliothek benötigte, die auf der SL wohl nicht zur Verfügung steht. Die Version die ich benutzen mußte war dann doch 96KB groß, also ein fetter Brocken für 1,2 MB nicht-Kernel-Speicher.

Ich werde also nun die vier Jahre alte Frage von joha.ma beantworten:
Was man bei der Fritzbox (SL) alles rausschmeißen kann.

Was gibt es Unnützes auf einer 2-MB Box, dem sogar Grundprogrammen wie wget, usw. der Vorzug gegeben wurde? Klar, alles was eine Fritzbox äußerlich zu einer AVM-Fritz!Box macht.

Die Lösung ist also, den Webserver zu verstümmeln. Die Hilfe wird gelöscht, die style-Sektionen aus den HTML-Dokumenten entfernt und vor allem die ganzen .gif-Bildchen rausgeworfen.

Die Webpräsenz der Box ist zwar jetzt keine Augenweide mehr, aber es geht alles wie ich es wollte: Der Arp-Cache wird nicht mehr geleert und ich kann meinen Rechner auch nach Jahren Tiefschlaf wieder aufwecken, selbst wenn ich am Südpol sitze :cool:.

Im Anhang ist nochmal ein Tutorial, in dem steht, was ich alles machte.

Vielen Dank für eure Hilfe!
 

Anhänge

  • Aufwecken.tar.bz2
    4.1 KB · Aufrufe: 5
Zuletzt bearbeitet:
Sorry, dass ich das erst jetzt sehe: du hättest dir viel Mühe sparen können (aber wohl nicht so viel gelernt ;)):
Es gibt hier im Forum einen Thread zum Thema “sl-mod“, der das ganze schonmal behandelt hat (hier)
 
Zuletzt bearbeitet:
Danke für den Hinweis, aber da arp scheinbar nicht dabei ist, hätte ich die Mod eh nicht gebrauchen können (oder ist das in der busybox drin?).

Ich hätte dann zwar arp über wget laden können (und wahrscheinlich auch gemacht, um den ganzen Ärger nicht zu haben), aber so ist das Ding wenigstens fest auf der Box und ich bin von keinem russischen Warez-Server abhängig ^^ (denn ein anderer wäre mir nicht eingefallen). Außerdem sagst du es ja: In ein paar Jahren ist die Box wahrscheinlich weg und ich werde keine Gelegenheit haben mich je wieder mit einem 2-MB-Speicher auseinanderzusetzen; da ist es gut, das noch einmal ausgekostet zu haben.
 
Zuletzt bearbeitet:
Nee, arp war nicht dabei, von daher hättest du die BB sowieso nochmal selbst bauen müssen, aber zumindest der "Ein- uns Auspackteil" mit der Blocksize 16384 und so wäre da drin gewesen ;-)
Aber du bist ja auch so zum gewünschten Ergebnist gekommen und hast zudem noch netter Weise deine "Erkenntnisse" zuückgegeben, danke dafür, denn das Vergessen leider so manche Nutzer...
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.