fwmod 7390 6.51

oelidoc

Neuer User
Mitglied seit
22 Mai 2010
Beiträge
79
Punkte für Reaktionen
0
Punkte
6
Hallo,
ich habe vor einiger Zeit mit fwmod erfolgreich den telnet Zugang und die debug.cfg in eine Original 6.30 gepatched.
Jetzt wüsste ich gerne, ob dies Vorgehen mit der neuen FW 6.51 für die FB 7390 noch geht / erfolgsversprechend ist.
Brauche telnet und debug.cfg eigentlich nur für den LCR von TSB.
Gruß
oelidoc
 
Danke,
werde ich dann mal wieder ausprobieren.
Gruß
oelidoc

- - - Aktualisiert - - -

Hallo,
nach dem Update mit der gepatchten 6.51 läuft die FB7390 mit dem LCR in der debug.cfg auch nach restart.
Aber telnet funktioniert nicht mehr ("es konnte keine Verbindung mit dem Host hergestellt werden, auf Port 23: Verbindungsfehler")
Klappt das grundsätzlich mit der 6.51 nicht mehr, oder hab ich nur was falsch gemacht?
Gruß
oelidoc
 
Zuletzt bearbeitet:
Nein, du hast nichts falsch gemacht. Nur lange nicht mehr hier gelesen.
 
Ja,
das stimmt, war lange weg.
Soll also heißen, dass ich auch mit dem aktuellsten Freetz-Trunk beim Packen den symlink zu telnetd vergessen kann, weil telnet gar nicht mehr in der FW enthalten ist (oder so ähnlich) ????
Gruß
oelidoc
 
Nabend,
Gibts eine Anleitung um die 7390 mit 6.51 zu patchen? Also vergleichbar zu der 7490 mit minimalen rumbauen. Freetz-Build scheint ja aktuell noch nicht so rund zu laufen
 
Hallo BurningCrash,
hier der vorgeschlagene Ablauf :
1.) VirtualBox installieren
2.) Freetz-VM downloaden
siehe: http://www.ip-phone-forum.de/showthread.php?t=199449&p=2151478&viewfull=1#post2151478
3.) freetz-trunk auschecken
Code:
svn checkout http://svn.freetz.org/trunk freetz-trunk
4.) Freetz-Setup für FB7390 einstellen
Code:
cd freetz-trunk
make menuconfig
make tools
5.) FW-Image patchen
Code:
# Firmware-Image entpacken:
./fwmod -u -d unpacked_firmware FRITZ.Box_Fon_WLAN_7390.84.06.51.image

# Telnet-Daemon verfuegbar machen:
[ -x unpacked_firmware/original/filesystem/usr/sbin/telnetd ] || ln -s  ../../bin/busybox unpacked_firmware/original/filesystem/usr/sbin/telnetd

# Debug.cfg reaktivieren (Auszug aus https://github.com/PeterPawn/modfs/blob/master/modscripts/mod_rc_tail_sh):
FILESYSTEM_MOD_DIR=unpacked_firmware/original/filesystem
sed -e '$ircuser=/var/tmp/rc.user;mkconfigfile $rcuser.tffs 98;!  checkempty $rcuser.tffs && cat $rcuser.tffs >$rcuser  && delay -d 1 USER "/bin/sh $rcuser";rm $rcuser.tffs' -i "$FILESYSTEM_MOD_DIR/etc/init.d/rc.tail.sh"

# Firmware-Image packen:
./fwmod -p -d unpacked_firmware FRITZ.Box_Fon_WLAN_7390.84.06.51.image

6.) Image kann nun installiert werden

weiterführende/vertiefende Doku, siehe http://www.freetz.org/wiki/help/howtos/common/newbie
http://www.freetz.org/wiki/help/howtos/common/first_trunk, http://freetz.org/wiki/help/howtos/development/repack_fw

LG Riverhopper

EDIT: Schritt 4 erweitert; "make tools" eingepflegt.
Zeilenumbruch bei debug.cfg richtiggestellt
 
Zuletzt bearbeitet:
Hoffe nicht nur vorgeschlagen sondern auf ein Weg der funktioniert ;-)

Seit längerer Zeit habe ich mit freetz nichts gemacht aber im Endeffekt wird nix neu gebaut (wie bei Freetz sondern) nur das vorhandene gepatcht oder?
 
Hallo Riverhopper,
heißt das
Riverhopper # Telnet-Daemon verfuegbar machen: [ -x unpacked_firmware/original/filesystem/usr/sbin/telnetd schrieb:
|| ln -s ../../bin/busybox unpacked_firmware/original/filesystem/usr/sbin/telnetd
dass man damit telnet wieder in die 6.51 reinbekommt, obwohl laut AVM nicht mehr vorhanden?

Gruß
oelidoc
 
# Debug.cfg reaktivieren (Auszug aus https://github.com/PeterPawn/modfs/blob/master/modscripts/mod_rc_tail_sh):
FILESYSTEM_MOD_DIR=unpacked_firmware/original/filesystem
sed -e '$ircuser=/var/tmp/rc.user;mkconfigfile $rcuser.tffs 98;! checkempty $rcuser.tffs && cat $rcuser.tffs >$rcuser && delay -d 1 USER "/bin/sh $rcuser";rm $rcuser.tffs' -i
"$FILESYSTEM_MOD_DIR/etc/init.d/rc.tail.sh"

Hallo @Riverhopper,

damit es einfacher wird sollte man vielleicht in deiner Anleitung schreiben :

  • cd unpacked_firmware/original/filesystem && sed -e '$ircuser=/var/tmp/rc.user;mkconfigfile $rcuser.tffs 98;! checkempty $rcuser.tffs && cat $rcuser.tffs >$rcuser && delay -d 1 USER "/bin/sh $rcuser";rm $rcuser.tffs' -i etc/init.d/rc.tail.sh
 
Die Busybox 1.20.2, die von AVM mit der Firmware "84.06.51" vom "25.04.2016 12:45:38" ausgeliefert wird, enthält nach wie vor den Telnet-Daemon (ich wüßte auch nicht, wo jemand das Gegenteil behauptet hätte) ... damit fehlt auch dort (wahrscheinlich) nur der passende Symlink. Da ich die Busybox komplett ersetze bei der 7390, ist das aber nur das Ergebnis der "Zeichenketten-Analyse" der Busybox und keine getestete Variante.

Bei der 7390 ist es halt wegen des begrenzten Platzes (AVM selbst hat etwas zusätzlichen Raum geschaffen, indem man große Teile - gepackt immerhin 1,2 MB - der WLAN-Initialisierung in ein Plugin ausgelagert hat) etwas komplizierter, die Firmware zu entpacken und nach entsprechenden Modifikationen wieder so zusammenzupacken, daß sie immer noch in den begrenzten Flash-Speicher paßt.

Aber dank der Vorarbeit von AVM kann man tatsächlich sogar die Busybox gegen eine eigene austauschen (die dann am besten aber die uClibc von AVM nutzen sollte und nicht statisch gelinkt ist) und auch für die diversen anderen (kleineren) Modifikationen ist noch genug Platz vorhanden.

Erst dann, wenn es um die zusätzliche Installation größerer Software-Pakete geht, muß man sich etwas anderes einfallen lassen (selbst kleinere zusätzliche Skript-Dateien sind eher unproblematisch, weil die sich in aller Regel sehr gut komprimieren lassen) ... theoretisch kann man aber das "Umpacken" der Firmware sogar auf der FRITZ!Box selbst ausführen, wenn man zu seiner Box noch einen Shell-Zugang unterhält und ansonsten kein passendes Linux-System besitzt.

Ein Problem ist es dann nur, an die passenden SquashFS-Tools für die 7390 (die arbeitet eben mit SquashFS3 mit LZMA-Kompression unter einem 2.6.28.10-Kernel) zu gelangen ... aber da wird sich sicherlich früher oder später auch eine "Tauschbörse" etablieren.

Auch bei der 7390 wäre ich persönlich jedoch im Moment noch sehr vorsichtig mit der Verwendung der diversen "remove patches" (zumindest wenn die auch Auswirkungen im GUI haben soll(t)en), weil die im Freetz natürlich derzeit alle noch auf das alte GUI angepaßt sind. Hier sollte man (zumindest vorerst, bis die Freetz-Patches entsprechend angepaßt wurden) eher auf die Anwendung dieser "remove patches" verzichten und stattdessen auf den "external"-Mechanismus mit der Speicherung der Daten im NAND-Flash zurückgreifen.
 
Hoffe nicht nur vorgeschlagen sondern auf ein Weg der funktioniert
ich habe keine FB7390 zur Hand, jedoch ist das repacking per fwmod eine der einfachsten Freetz-Übungen, die eigentlich bis auf Filesystem (squashfs3/4) boxunabhängig ist und üblicherweise problemlos funktioniert; Wichtig ist hier, dass keine Freetz-Anpassungen (z.B. remove patches) per "menuconfig" selectiert werden; Kontrolle per "grep -v ^# .config".

Seit längerer Zeit habe ich mit freetz nichts gemacht aber im Endeffekt wird nix neu gebaut (wie bei Freetz sondern) nur das vorhandene gepatcht oder?
die Freetz-Entwickler pflegen im Trunk Entwicklungsumgebung ggf. die vorhandene Packages (z.B. stunnel letzte Woche), ferner werden ggf. neue Boxen aufaufgenommen (z.B. FB4020, FB6810, FB6842, FB7412, FB7430 in den letzten 6 Monaten).

ich denke Mitmacher sind bei Freetz gerne gesehen.

LG Riverhopper
 
So Patchen hat geklappt (keine Fehlermeldung) jedoch lässt sich telnet nicht aktivieren (mit #96*7*) aber lustigerweise kommt wenn ich #96*8* reaktivere kriege ich am Telefon eine Meldung.

Jetzt ist die Frage hat es geklappt mit dem Symlink oder nicht? Wenn die Box (zum Glück meine Testbox) auf 6.51 ist kann ich bei einer wie oben gepatchten FW Telnet aktiveren?


Gruß
BC
 
Jetzt ist die Frage hat es geklappt mit dem Symlink oder nicht?
Hallo BC,
bitte mal folgenden Output posten:
Code:
ls -la unpacked_firmware/original/filesystem/usr/sbin/telnetd
grep -v ^# .config

LG Riverhopper
 
Oder einfach über die Support-Daten nachsehen, ob sich der telnetd in der Liste der laufenden Prozesse finden läßt.

Die Geschichte mit dem (De-)Aktivieren von Telnet über die Telefoncodes ist etwas ausführlicher zu beschreiben, zumindest für die 7490 habe ich das mal ausgiebig getestet und m.W. auch hier irgendwo aufgeschrieben. Eine Quittung a la "telnetd ein" kommt bei mir auf einem MT-F jedenfalls schon lange nicht mehr - bei "telnetd aus" ist das etwas anderes. Ansonsten war (bei der 7490) die Reaktion auf die Telefoncodes davon abhängig, welcher Zustand beim Systemstart vorgefunden wurde - aber das steht haarklein an der anderen Fundstelle (wo die ist, weiß ich aus dem Stand aber auch nicht, daher kein Link von mir dorthin).
 
Code:
ls: Zugriff auf unpacked_firmware/original/filesystem/usr/sbin/telnetd nicht möglich: Datei oder Verzeichnis nicht gefunden

glaube das erklärt es. Wobei ich nur deinen Befehl aus geführt habe

Code:
[COLOR=#3E3E3E]# Telnet-Daemon verfuegbar machen:
[/COLOR][COLOR=#3E3E3E][ -x unpacked_firmware/original/filesystem/usr/sbin/telnetd ] || ln -s  ../../bin/busybox unpacked_firmware/original/filesystem/usr/sbin/telnetd[/COLOR]
 
Ich stelle mal die Behauptung auf (ohne das belegen zu können, das dauert mir jetzt zu lange), daß man bei der Verwendung von fwmod zum Entpacken und Packen der Firmware auch wirklich nach jedem Packen der Firmware das temporär verwendete Verzeichnis (also sowohl "original" als auch "modified") komplett löschen sollte (am besten sogar die eigentliche Basis - hier also "unpacked_firmware") ... ich habe bei einem Test da mal sehr sehr merkwürdige Ergebnisse erzielt, wenn man nach dem ersten Packen noch weitere Änderungen an der "modified"-Struktur vornehmen und diese dann erneut packen wollte. Damals habe ich das auf die Verwendung von "fakeroot" geschoben ... ob das absolut richtig war oder wo der beobachtete Effekt ansonsten herkommen könnte, habe ich nie wieder richtig untersucht - ich führe solche Aktionen halt nur noch als Benutzer "root" aus (und nicht auf Ubuntu, wo das ja eigentlich immer über "sudo" laufen soll) und dann traten/treten diese Phänomene nicht mehr auf.

Nur als "Hinweis" aus meiner Sicht, warum ansonsten (angeblich) fehlerfrei ausgeführte Änderungen sich am Ende nicht im erzeugten SquashFS-Image niederschlagen ...
 
Hallo BC,
dies sollte etwa so aussehen:
Code:
freetz@freetz-vm:~/freetz-devel$ ls -la unpacked_firmware/original/filesystem/usr/sbin/telnetd
lrwxrwxrwx 1 freetz freetz 17 Apr 16 19:58 unpacked_firmware/original/filesystem/usr/sbin/telnetd -> ../../bin/busybox
freetz@@freetz-vm:~/freetz-devel$

Bitte mal
Code:
cd unpacked_firmware/original/filesystem/usr/sbin
ln -s ../../bin/busybox  telnetd
ausführen

LG Riverhopper
 
Hab den Freetz-Trunk nochmal aufgesetzt und jetzt sieht es genauso aus :) So gleich mal flashen und schauen ob es geht...
______

EDIT: irgendwas ist schief gelaufen.. Box bootet nicht mehr..
 
Zuletzt bearbeitet:
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.