Come creare un firmware con Freetz (ex ds-mod) partendo dal mtd1

Da Vocesuip.
(Differenze fra le revisioni)
m
m
Riga 68: Riga 68:
  
 
andiamo ora su 7170.47.image.mod--> firmware-->troviamo la cartella var. all'interno troviamo la cartella tmp, dove dovremo mettere l'mtd1 e rinominarlo (sostituirà l'esistente) in '''kernel.image'''.
 
andiamo ora su 7170.47.image.mod--> firmware-->troviamo la cartella var. all'interno troviamo la cartella tmp, dove dovremo mettere l'mtd1 e rinominarlo (sostituirà l'esistente) in '''kernel.image'''.
torniamo ad un livello sopra var e compattiamo in tar la cartella var che sarò il  nuovo firmware da cui estrarremo (finalmente) l'mtd1 decompresso.
+
torniamo ad un livello sopra la cartella '''var''' e compattiamola utilizzando un archivio '''tar'''. Il file che otterremo, sarà il  nuovo firmware da cui estrarremo (finalmente) l'mtd1 decompresso.
 +
Per fare cioò utilizziamo nuovamente il metodo alpamayo, avendo l'accortezza di mettere il file var.tar nella cartelal principale del fretz.
 +
PEr scompattare var.tar digitiamo:
 +
./fwmod -u var.tar
 +
 
 +
Nella cartella principale di Freetz troviamo una sottocartella denominata
 +
var.tar.mod
 +
di questa cartelal ci interessa solo la sotto cartella contenuta in original-->filesystem

Versione delle 12:45, 11 set 2008

5 3.jpg Questa pagina si trova ancora allo stadio di BOZZA di conseguenza potrebbe contenere informazioni erronee e/o incomplete. Grazie.

Konvmessagenl4.png ATTENZIONE: questa pagina contiene una guida consigliata ai soli utenti esperti!

Introduzione al Freetz

Per cominciare diamo un infarinatura di cosa è Freetz e a che serve. Freetz (ex ds-mod) serve per poter modificare in ambiente Linux i firmware di molte versioni del fritz box fon. E' composto da una serie di script tra loro interrelati e da una semplice interfaccia grafica da cui si possono fare le scelte per così dire "di base" per poter modificare il firmware del nostro Fritz!Box ed aggiungere particolari pacchetti di software non originariamente presenti nel firmware originale.

E' altresì possibile utilizzare il Freetz per poter modifcare i firmware in maniera più libera, indipendente, o quasi, dall'interfaccia grafica.

In questo caso studieremo come da una singola partizione della memoria del fritz precedentemente salvata (la partizione in questione è la fondamentale mtd1, il processo di estrazione è spiegato QUI), si possa giungere alla compilazione di un intero firmware.


MODIFICHE AL FREETZ

PRIMA MODIFICA: cartella freetz --> file fwmod--> mettiamo 2 pause nel processo di make del firm, la prima all'inizio quando scompatta il firm e l'altra prima di ricompattare. Utilizziamo un comune editor Linux.

1) all'interno di fwmod trovare la seguente riga

echo "splitting kernel image"  (numro riga 382 circa)

aggiungere sotto le due righe seguenti.

echo "Pausa... Premi Invio"
read ln

2) trovare questa riga

echo "creating firmware image" (numero riga 1032)

e aggiungere sotto le due righe seguenti:

echo "Pausa... Premi Invio"
read ln

Salviamo e chiudiamo l'editor.

in questo modo abbiamo la possibilità di far estarre al Freetz un kernel a nostro piacere, semplicemente. .


Ora disabilitiamo tutte le patch così nel caso in cui gli diamo in pasto un firmware gia modifcato non si creano problemi di compilazione.

SECONDA MODIFCA: cartella freetz --> cartella tools--> file freetz_patch

riga 63 e riga 67 che cominciano con:

patch ${backup}-d "$1"....

devono essere commentate utilizzando il carattere # in questo modo:

# patch ${backup}-d "$1"....

In questo modo abbiamo disabilitato le patch che il fritz compie ogni volta che compila il firmware. Ora per il sicuro, andiamo anche sull'interfaccia web del Freetz dando il comando

make

Da qui è consigliabile disabilitare tutte le Patch e i pacchetti e selezionar e il solo modello di fritz di cui dobbiamo creare (o meglio modificare) il firmware. E' inoltre consigliato impostare un livello di Verbose pari a 2, nelle opzioni avanzate del freetz. Salvare i ltutto, siamo pronti per la compilazione del nuovo firmware.


SCOMPATTAMENTO DI MTD1

Per scompattare l'mtd1 precedntemente salvato abbiamo bisogno di un firmware della medesima versione per l'identico modello di fritz. Es. se abbiamo un fritz 7170 e la versione del firmware è 58.04.40.. l'mtd1 avrà chiaramente stessa versione, per cui necessita di un firmware completo 7170 56.04.40. Prendiamo il firmware completo e lo poniaamo all'interno della cartella principale del Fritz.

dalla consolle diamo il seguente comando

./fwmod -u 7170.47.image

questo comando scompatta il firmware (vedi metodo Alpamayo)e crea una cartella

[nomefirmware].mod

in questo caso se il firmware si chiama 7170.47.image la cartella sarà:

7170.47.image.mod

andiamo ora su 7170.47.image.mod--> firmware-->troviamo la cartella var. all'interno troviamo la cartella tmp, dove dovremo mettere l'mtd1 e rinominarlo (sostituirà l'esistente) in kernel.image. torniamo ad un livello sopra la cartella var e compattiamola utilizzando un archivio tar. Il file che otterremo, sarà il nuovo firmware da cui estrarremo (finalmente) l'mtd1 decompresso. Per fare cioò utilizziamo nuovamente il metodo alpamayo, avendo l'accortezza di mettere il file var.tar nella cartelal principale del fretz. PEr scompattare var.tar digitiamo:

./fwmod -u var.tar

Nella cartella principale di Freetz troviamo una sottocartella denominata

var.tar.mod

di questa cartelal ci interessa solo la sotto cartella contenuta in original-->filesystem

Strumenti personali