[Gelöst] modfs scripte in freetz-ng wie ausführen?

Insti

Aktives Mitglied
Mitglied seit
19 Aug 2016
Beiträge
962
Punkte für Reaktionen
123
Punkte
43
Guten Morgen zusammen,

habe zum ersten Mal mit freetz-ng ein Image für meine 7520 gebaut und als Branding „avm“ gewählt, was aber nicht (siehe screenshot) funktioniert.
Würde jetzt gerne das modfs Script vom Peter einbauen das ich schon einige Jahre problemlos nutze https://github.com/PeterPawn/modfs/blob/master/modscripts/mod_fixed_branding. Leider fehlt mir hierzu das Wissen wie das über den ssh Zugang geht da alles Schreibgeschützt ist.
In paar Tagen bekomme ich eine 7530ax mit 1und1 Branding bei der ich auch gerne modfs nutze möchte und wie ich gelesen habe, geht der Weg leider nur über freetz-ng.
 

Anhänge

  • IMG_6757.jpeg
    IMG_6757.jpeg
    380.9 KB · Aufrufe: 21
  • IMG_6758.jpeg
    IMG_6758.jpeg
    260.2 KB · Aufrufe: 20
  • IMG_6759.jpeg
    IMG_6759.jpeg
    287.5 KB · Aufrufe: 20
Hallo,
[DAU]
Welche Einschränkungen bringt das (UI) denn?
[/DAU]
 
Moin,
irgendwie habe ich gewusst das diese Frage kommt und ich weiß es gibt keine Einschränkungen mit dem 1und1 Branding.
Wenn es nicht mein Hobby wäre, hätte ich mir auch eine weiß-rote Box bestellen können. Habe vor knapp 5 Jahren hier soviel gelernt über modfs und es hat richtig Spaß gemacht und warum jetzt nicht?
 
Laufenden den die Fit-Boxen mit modfs Scripten vom Peter inzwischen auch?
 
habe zum ersten Mal mit freetz-ng ein Image für meine 7520 gebaut und als Branding „avm“ gewählt, was aber nicht (siehe screenshot) funktioniert.
Da würde ich doch aber erst einmal der Ursache nachgehen weshalb das nicht funktioniert (bspw. würde ich unter "/build/modified" erst einmal nachsehen ob die gewünschte Einstellung korrekt umgesetzt wurde). Als ich freetz-ng für so etwas das letzte mal nutze, funktionierte das…

Laufenden den die Fit-Boxen mit modfs Scripten […]
Die 7520 ist keine "fit-image" Box.
 
@Insti War nur reine Neugier :)
 
Vielen Dank für eure Antwort. Hab es nochmals gebaut und jetzt wurde das Enforce branding angenommen.
 

Anhänge

  • Screenshot 2025-01-19 164751.jpg
    Screenshot 2025-01-19 164751.jpg
    106.3 KB · Aufrufe: 19
  • Like
Reaktionen: Gildehauser
Leider habe ich die 7530ax noch nicht. Sobald ich die habe, probiere ich modfs aus. Habe heute erst diese gute Anleitung gefunden https://foss-users.de/i/install.pdf und werde dann probieren bevor das Image wieder gepackt wird, run_modscripts auszuführen. Wenn das funktioniert, fehlt nur noch das signieren mit dem eigenen key.
 
Habe heute erst diese gute Anleitung gefunden
Nicht Dein Ernst, oder?

Das ist eine (sehr rudimentäre) Anleitung, wie man die Firmware einer 4020(!) ändert und installiert. Die hat man sich bei AVM aus den Fingern gelutscht, weil sie jemand verklagt hatte, da die von ihnen bereitgestellten OpenSource-Pakete nicht "out of the box" funktionier(t)en: https://www.heise.de/news/Verwirrung-nach-Klage-gegen-AVM-wegen-Fritzbox-Firmware-10246696.html

Anderes fehlt da auch immer noch bei AVM - m.W. gibt es dort immer noch kein Tool zum Packen der Firmware im AVM-eigenen SquashFS4-Format mit "big endian"-Speicherung und auch das Ersetzen des Kernels ist mit der freigegebenen AVM-Firmware zwar inzwischen möglich (und man muß nicht mehr den Konfigurationsbereich aus dem AVM-Kernel extrahieren), aber das ist so kompliziert und ohne jegliche Dokumentation seitens AVM, daß m.W. auch Freetz-NG immer noch nicht mit diesem Teil der AVM-Quellen arbeitet.

Oder verwendet irgendjemand (mal vorausgesetzt, er/sie liest das IPPF) tatsächlich die AVM-OpenSource-Pakete und hat damit schon einmal (unter Verwendung der dort enthaltenen Skripte nach GPLv2: "For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable.") irgendwie einen funktionsfähigen Kernel (mal ganz zu schweigen von den ganzen anderen Software-Paketen, die da noch in der AVM-Firmware verwurstet wurden) erzeugen können, OHNE erst selbst lang und breit recherchieren zu müssen, welche Voraussetzungen (auch jenseits eines funktionierenden Systems mit einem passenden Cross-Compiler) vorliegen müssen, damit ein solcher Build auch gelingt?

Hier gibt AVM dann den Verwendern die Schuld - Zitat aus dem oben verlinkten Artikel:
AVM verweist etwa darauf, dass andere Entwickler freier Software, etwa der populären Projekte Freetz und OpenWRT, keine Probleme mit den Fritzbox-Quellen hatten, auch 2021 nicht. Die Fehlermeldungen, die der Kläger erhielt, deuteten viel mehr auf Unerfahrenheit bei Cross-Compiling-Prozessen hin. So sei etwa kein Cross-Compiler in den Pfaden seines Entwicklungssystems gefunden worden. Die Umgebungsvariable, die die Ziel-Architektur festlegt, sei nicht gesetzt gewesen, auch wenn diese sich leicht aus den verfügbaren Quelltexten hätte herleiten lassen.
Das ist ziemlicher Unsinn und mittlerweile haben sich auch die OpenWRT-Entwickler dazu geäußert, wie man inzwischen im Update am Ende des Artikels nachlesen kann.

Also bitte das nicht als "gute Anleitung" abfeiern - letztlich ist das sogar ziemlich peinlich für AVM, denn man MUSS dabei auf die Community-Projekte zurückgreifen (und für die ist das alles längst dokumentiert und zwar auch deutlich ausführlicher), weil man selbst eben KEINE Lösungen dafür bereitstellt.
 
  • Like
Reaktionen: Ldwg2002
Also bitte das nicht als "gute Anleitung" abfeiern
Okay, dann lassen wir das "gute" weg.
7530AX ist da und ich konnte auch mit fwmod das FOS8.02 entpacken, run_modscript ohne Fehler ausführen und wieder zusammenpacken. Da mein Ubuntu PC auf dem es gebaut wurde nicht bei mir steht, wollte ich es über meinen WindowsPC mit WSL und der Ubuntu App installieren, aber leider startet die nicht mehr bei mir. Kann ich das fertige Image auch über die Windows Powershell und "EVA-FTP-Client.ps1" installieren?
 
Nein, FIT-Images habe ich noch nicht (fertig) implementiert. Die brauchen andere kernel_args_tmp-Einstellungen, damit das hochgeladene Image gestartet werden kann.
 
Hallo zusammen,
hab es nun hinbekommen das meine 7530AX mit modfs jetzt läuft.
Hier das Logfile vom flashen falls es jemanden hilft.
Code:
root@homeserver:/home/toni/freetz-ng#  ./fwmod -u FRITZ.Box_7530_AX-08.02.image

STEP 1: UNPACK
source firmware file: FRITZ.Box_7530_AX-08.02.image
checking signature: disabled
unpacking firmware image
unpacking fitimg file
unpacking filesystem image
    Filesystem on FRITZ.Box_7530_AX-08.02.image.mod/original/firmware/var/tmp/filesystem.image is xz compressed (4:0)
    Parallel unsquashfs: Using 4 processors
    15938 inodes (17473 blocks) to write
    created 15097 files
    created 917 directories
    created 841 symlinks
    created 0 devices
    created 0 fifos
unpacking var.tar
detected firmware version: 7530-AX_de-es-fr-it-nl-pl 256.08.02 rev117981 {ALL} [Smart24 P1 NL1] <20.12.2024 16:46:16>
done.

FINISHED
root@homeserver:/home/toni/freetz-ng# cd /opt/Fritzbox-Image
root@homeserver:/opt/Fritzbox-Image# cd modfs
root@homeserver:/opt/Fritzbox-Image/modfs# ./run_modscripts /home/toni/freetz-ng/FRITZ.Box_7530_AX-08.02.image.mod/original/filesystem/
Running script 'mod_enable_calllog' ...
Finished script 'mod_enable_calllog', rc=0
Running script 'mod_fixed_branding' ...
Das Branding für das neue System wurde fest auf 'avm' eingestellt.
Finished script 'mod_fixed_branding', rc=0
Running script 'mod_rc_tail_sh' ...
Finished script 'mod_rc_tail_sh', rc=0
Running script 'mod_telnet_enable' ...
Finished script 'mod_telnet_enable', rc=0
root@homeserver:/opt/Fritzbox-Image/modfs# cd ..
root@homeserver:/opt/Fritzbox-Image# cp image_signing.asc /home/toni/freetz-ng/FRITZ.Box_7530_AX-08.02.image.mod/original/filesystem/etc/avm_firmware_public_key9
root@homeserver:/opt/Fritzbox-Image# cd /home/toni/freetz-ng/FRITZ.Box_7530_AX-08.02.image.mod/original/filesystem/etc/
root@homeserver:/home/toni/freetz-ng/FRITZ.Box_7530_AX-08.02.image.mod/original/filesystem/etc# ls
Country_iso               default.0256  default.0372  default.048              fbconf.cfg                     ftpd_control    internal_memory_default_de  resolv.conf
TZ                        default.0264  default.0376  default.049              fritzbox_configexport.html     group           luacgi_script_access.cfg    rest_api_resources.json
adsl                      default.0267  default.0382  default.054              fritzbox_connect.html          host.conf       mime.cfg                    rt_policy_info.d
avm_firmware_public_key1  default.027   default.0385  default.061              fritzbox_diagnose.html         hosts           modprobe.d                  samba_control
avm_firmware_public_key2  default.030   default.0386  default.064              fritzbox_fwupdatehint.html     hotplug         modules-load.d              securetty
avm_firmware_public_key3  default.031   default.0387  default.066              fritzbox_fwupdatestatus.html   htmltext.db     mtab                        services
avm_firmware_public_key9  default.032   default.0389  default.0972             fritzbox_ha_energy.html        htmltext_de.db  net_basic.sh                shadow
avm_root_ca.pem           default.033   default.039   default.99               fritzbox_info.html             htmltext_en.db  nsswitch.conf               shells
boot.d                    default.034   default.041   default.Fritz_Box_HW256  fritzbox_notify.html           htmltext_es.db  onlinechanged               sysctl.d
bpjm.data                 default.0351  default.0420  default.language         fritzbox_resetpassword.html    htmltext_fr.db  passwd                      templates
cms_entity_info.d         default.0352  default.0421  default.language.avme    fritzbox_security.html         htmltext_it.db  profile                     term.sh
default                   default.0353  default.043   devnodes.d               fritzbox_supportdatamail.html  htmltext_nl.db  profile.d                   terminal-colors.d
default.0                 default.0357  default.044   dsl                      fritzbox_testmail.html         htmltext_pl.db  protocols                   udev
default.0.avme            default.0358  default.045   ethertypes               fritzbox_wlangastzugang.html   inetd.conf      puma6_helper.sh             version
default.0234              default.036   default.046   ewnw_devfiles.sh         fritznasdb_control             init.d          puma_helper.sh              webdav_control
default.0255              default.0371  default.047   fallback.language        fstab                          inittab         rc3.d
root@homeserver:/home/toni/freetz-ng/FRITZ.Box_7530_AX-08.02.image.mod/original/filesystem/etc# cd /home/toni/freetz-ng/
root@homeserver:/home/toni/freetz-ng# ./fwmod -p FRITZ.Box_7530_AX-08.02.image

STEP 3: PACK
WARNING: Modifications (STEP 2) and this step should never
         ever be run with different configurations!
         This can result in invalid images!!!make
WARNING: firmware does not seem to be modified by the script
invoking custom scripts
  fwmod_custom
  enforcing branding 'avm'
    hardcoding branding in /etc/init.d/rc.conf
    patching FRITZ.Box_7530_AX-08.02.image.mod/modified/filesystem/etc/init.d/rc.conf
  checking for left over version-control-system files
packing var.tar
creating filesystem image (SquashFS4_le-xz)
  SquashFS block size: 64 kB (65536 bytes)
copying kernel image
  kernel image size: 3.1 MB
copying filesystem image
  filesystem image size: 38.4 MB
packing fitimg file
  fitimg file size: 41.8 MB, max 50.0 MB, free 8.2 MB (8634325 bytes)
packing FRITZ.Box_7530_AX-08.02.image.mod/7530AX_08.02.all_20250125-133237.image
  packed image file size: 41.8 MB (43806720 bytes)
source firmware: 7530-AX_de-es-fr-it-nl-pl 256.08.02 rev117981 {ALL} [Smart24 P1 NL1] <20.12.2024 16:46:16>
  source image file size: 41.8 MB (43827200 bytes)
done.

FINISHED
root@homeserver:/home/toni/freetz-ng#

#Mit dem alten PC auf dem ich Ubuntu installiert habe um das Image zu installieren

toni@toni-Vostro-260:~/freetz-ng/tools$ ./push_firmware 7530AX_08.02.all_20250125-133237.image -prg ftp -afu

 * Analyzing '7530AX_08.02.all_20250125-133237.image' ...

 * Warning: It seems your network is not able to reach
   192.168.178.1 directly. This command could help to fix:
   $ sudo ifconfig enp3s0:0 192.168.178. up
   Proceed anyway? ([y]/n) y
 * Product: Fritz_Box_HW256 (FRITZ!Box 7530 AX)
 * Using dos2unix binary: dos2unix
 * Using tar binary: tar-gnu
 * Using ftp binary: /usr/bin/tnftp
 * Target host: 192.168.178.1
 * Outgoing IP: unknown
 * Flash mode: fit-boot
 * Allowed memory size: 512 MB
 * Designated linux_fs_start: <other>

 !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!!
 !!!  THERE IS NO WARRANTY AT ALL !!! USE AT YOUR OWN RISK   !!!

 * Are you sure, that you want to flash this file to the device?
   7530AX_08.02.all_20250125-133237.image
   Proceed? (y/[n]) y

 * You should now reboot your box (192.168.178.1). Waiting for shut down.
   Switch off, if reboot is not detected because it happens too quickly.
   Some newer bootloader versions allow to flash on power-cycle only.
   ping: connect: Das Netzwerk ist nicht erreichbar

 * No reply from box, assuming switch-off or restart. Trying to re-detect box.
   Waiting ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.ping: connect: Das Netzwerk ist nicht erreichbar
.. found!

 * Reading 'env' file to /tmp/freetz_env_ITt
Connected to 192.168.178.1.
220 ADAM2 FTP Server ready
331 Password required for adam2
230 User adam2 successfully logged in
Remote system type is AVM.
Debugging on (debug=1).
---> TYPE I
200 Type set to BINARY
---> SYST
215 AVM EVA Version 1.11177 0x0 0x4640D
---> MEDIA SDRAM
200 Media set to MEDIA_SDRAM
local: /tmp/freetz_env_ITt remote: env
---> SIZE env
ftp: setsockopt SO_DEBUG (ignored)502 Command not implemented
: Keine Berechtigung
---> EPSV
502 Command not implemented
disabling epsv4 for this connection
---> PASV
227 Entering Passive Mode (192,168,178,1,95,32)
---> RETR env
150 Opening BINARY data connection
Timeout!!!!!!!!!!!!!!!!!!
   ProductID:          Fritz_Box_HW256
   HWRevision:          256
   HWSubRevision:          4
   memsize:          0x20000000
   linux_fs_start:          1

 * MAPSTART=0x00000000
 * FULLSIZE=0x20000000     (512 MB)
 * MAPLIMIT=0x20000000
 * FILESIZE=0x029c4100     (~41 MB)
 * ALIBYTES=0x0000bf00     (~47 kB)
 * FILLSIZE=0x029d0000     (~41 MB)
 * FREESIZE=0x1d630000     (~470 MB)
 * MTDSTART=0x1d630000

 * Box is back up again, initiating transfer.

Connected to 192.168.178.1.
220 ADAM2 FTP Server ready
331 Password required for adam2
230 User adam2 successfully logged in
Remote system type is AVM.
Debugging on (debug=1).
---> TYPE I
200 Type set to BINARY
---> MEDIA SDRAM
200 Media set to MEDIA_SDRAM
---> SETENV memsize 0x1d630000
200 SETENV command successful
---> SETENV kernel_args_tmp "mtdram1=0x1d630000,0x20000000 mtdparts_ext=update-image.0:0x029d0000@0x0(fit-image)"
200 SETENV command successful
local: /tmp/freetz_TIS/fitboot.flash remote: 0x1d630000 0x20000000
ftp: setsockopt SO_DEBUG (ignored): Keine Berechtigung
---> EPSV
502 Command not implemented
disabling epsv4 for this connection
---> PASV
227 Entering Passive Mode (192,168,178,1,165,5)
---> STOR 0x1d630000 0x20000000
150 Opening BINARY data connection
100% |***************************************************************************************************************************************************************| 42768 KiB   47.40 MiB/s    00:00 ETA
226 Transfer complete
43794688 bytes sent in 00:23 (1.79 MiB/s)
---> QUIT
221 Thank you for using the FTP service on ADAM2

done

Telnet funzt auch
Code:
Fritz!Box user: root
password:


BusyBox v1.36.1 () built-in shell (ash)

ermittle die aktuelle TTY
tty is "/dev/pts/1"
disable start/stop characters and flowcontrol
# cat /proc/sys/urlader/environment
DMC     SL1
HWRevision      256
HWSubRevision   4
ProductID       Fritz_Box_HW256
SerialNumber    N151************
annex   B
autoload        yes
bootloaderVersion       1.11177
country 049
firstfreeaddress        0x1CE00000
firmware_info   256.08.02,slot1=08.02-117981,slot0=08.02-117981
firmware_version        1und1
flashsize       nor_size=0MB sflash_size=0KB nand_size=128MB
language        de
linux_fs_start  0
maca    DC:**:C8:**:4C:87
macb    DC:15:C8:**:4C:88
macwlan DC:**:C8:**:4C:89
macwlan2        DC:**:C8:B2:**:8A
macdsl  DC:**:C8:**:**:84
memsize 0x20000000
mtd0    0x0,0x0
mtd1    0xB00000,0x3D00000
mtd2    0x100000,0x300000
mtd3    0x300000,0xB00000
mtd4    0x3D00000,0x6F00000
mtd5    0x0,0x100000
mtd6    0x6F00000,0x7F00000
my_ipaddress    192.168.178.1
prompt  Eva_AVM
ptest
usb_board_mac   DC:**:C8:*:4C:**
usb_device_name USB DSL Device
usb_manufacturer_name   AVM
usb_rndis_mac   DC:**:C8:**:**:86
webgui_pass     o*****16
wlan_key        587**********63171
wlan_ssid       FRITZ!Box#7530#NT

# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 03200000 00020000 "fit0"
mtd1: 00200000 00020000 "urlader"
mtd2: 00800000 00020000 "nand-tffs"
mtd3: 03200000 00020000 "fit1"
mtd4: 00100000 00020000 "nvram"
mtd5: 01000000 00020000 "ubi"
mtd6: 02700000 00001000 "rootfs_ram"
mtd7: 0020f000 0001f000 "config"
mtd8: 00c79000 0001f000 "nand-filesystem"
#
 
  • Like
Reaktionen: prisrak1
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.