Flashen und Backup per Kommandozeile

Anleitungen, häufig gestellte Fragen und mehr ...
Gesperrt
Nachricht
Autor
Benutzeravatar
Pedant
admin-c
admin-c
Beiträge: 4285
Registriert: Mo 04 Aug 2003, 16:22
Wohnort: Bad Vilbel
Kontaktdaten:

Flashen und Backup per Kommandozeile

#1 Beitrag von Pedant » Mi 24 Nov 2004, 22:11

Eine Anleitung wie ein Image, ganz oder teilweise per Kommandozeile aus der "Ferne" gesichert und/oder geflasht werden kann.

Das ist nur für erfahrene oder mutige User.


0. Partitionstabelle abfrage:
telnet ~ > cat /proc/mtd

Dies sollte ungefähr folgende Ausgabe liefern:

Code: Alles auswählen

dev:    size   erasesize  name
mtd0: 00020000 00020000 "BR bootloader"
mtd1: 00020000 00020000 "FLFS (U-Boot)"
mtd2: 00660000 00020000 "root (SquashFS)"
mtd3: 00160000 00020000 "var (JFFS2)"
mtd4: 007e0000 00020000 "Flash without bootloader"
mtd5: 00800000 00020000 "Complete Flash"
Das ist wichtig, um herauszufinden wie bei der dbox die Partitionen nummeriert sind, da die Nummerierung nicht bei jedem Image identisch ist.
Im folgenden Beispiel wird mtd4 gesichert und mtd2 aktualisiert. Also wird, gemäß der abgefragten Beispiel-Tabelle, ein Komplett-Backup ohne Bootloader erstellen und einen Snapshot eingespielt.


1. Backup erstellen:
telnet ~ > cat /dev/mtd/4 > /tmp/image_ohne_bl.img
Das geht überraschend schnell.

2. Backup sichern:
1.) ftp> cd /tmp
2.) ftp> get image_ohne_bl.img
Zur Sicherheit nachsehen, ob die Imagedatei auf dem PC gelandet ist.
(In dem Ordner in dem ftp gestartet wurde.)

3.) ftp> delete image_ohne_bl.img

3. Partition löschen:
telnet ~ > eraseall /dev/mtd/2
Das dauert einen Moment. Der Fortschritt wird angezeigt.

4. Neues Image hochladen:
1.) ftp> cd /tmp
2.) ftp> put snapshot-200705242113.squashfs
snapshot-200705242113.squashfs muss dabei in dem Ordner liegen, in dem ftp gestartet wird.

5. Image flashen:
telnet ~ > cat /tmp/snapshot.cramfs > /dev/mtd/2
Dauert 1 bis 2 Min. und ist beendet, sobald das Prompt "~ >" wieder erscheint, bis dahin blinkt nur der Cursor ohne Prompt.

6. dbox Reset:
1.) telnet ~ > reboot

7. dbox startet neu und ist wieder bereit.
Tut sie das nicht, dann per Flash-Assistenten oder per Bootmanager das Backup wieder einspielen.

Hinweise:

Von folgenden Partitionen muss man die Finger lassen, zumindest was deren Löschung angeht:
mtd0 "BR bootloader", mtd1 "FLFS (U-Boot)" und mtd5 "Complete Flash".

Wenn nur gesichert werden soll, dann reichen natürlich die Schritte 0.-2.

telnet wird in der Eingabeaufforderung durch Eingabe von telnet gestartet und durch Eingabe von exit beendet.
ftp wird in der Eingabeaufforderung durch Eingabe von ftp gestartet und durch Eingabe von quit beendet.

Sowohl telnet als auch ftp fragen zunächst nach dem Login-Namen root und danach nach dem entsprechenden Kennwort dbox2 (default).

Ftp lasst sich auch per Skript mit folgender Zeile ausführen:
ftp -s:ftpscript.txt
Alle gewünschten Eingaben werden vorher in eine Nur-Textdatei geschrieben. Hier im Beispiel die ftpscript.txt
Beispielhafter Inhalt für ftpscript.txt:
open 192.168.0.202
root
dbox2
cd /tmp
get image_ohne_bl.img
delete image_ohne_bl.img
quit


Das Telnet aus den Windows-Boardmitteln, lässt sich leider nicht per Skript automatisieren.

Die Anleitung stammt aus folgendem Thread:
http://www.jackthegrabber.de/viewtopic.php?t=4935
Kommentare und/oder Anregungen bitte dort posten.

Gesperrt