Hallo redoom.
Wollte mal vorsichtig nachfragen ob Du für die neuen Images für den XpeedLx1/2 schon ein neues Backup-Plugin gebastelt hast?
Hallo redoom.
Wollte mal vorsichtig nachfragen ob Du für die neuen Images für den XpeedLx1/2 schon ein neues Backup-Plugin gebastelt hast?
Warum eigentlich plugin, ich nutze einstellungen sichern ist im image mit drin und kannst doch einstellen was du sichern willst. bei mir sind so alle nötigen sachen sofort wieder da.
GigaBlue Quad Plus 2xDVB-S2 1xDVB-C,Gigablue Ultra UE, Octagon 1008 HD DVB-S2, Golden Interstar LX1 DVB-S2, Phillips Dbox2
Gibertini 90cm,Motorantenne 100cm, Fernseher Hicense 55 Zoll UHD 4K, Fritzbox 6490 UNITYMEDIA 150000 ,NSA 325-v2 2TB
Für Fullbackup, wenn ich mal mit anderen Images spiele und will den Urzustand schnell wieder herstellen.
Installier dir myscript vom feed und kopier das script per ftp in den ordner /usr/lib/enigma2/python/Plugins/Extensions/MyScripts/scripts/
Rechte anpassen chmod 755
Benötigten Pakete per telnet installieren: opkg update ; opkg install mtd-utils ; opkg install mtd-utils-ubifs
Es fehlen in dem script noch einige "user too stupid error" Abfänge, momentan echt keine Zeit für Spielereien. Funktioniert auf allen gängigen Mips Boxen. Gespeichert wird das image unter /media/hdd, dort sollte also ein Datenträger mit ausreichend Speicherplatz gemountet sein (Der Check fehlt auch noch).
Code:#!/bin/sh # # #opkg update ; opkg install mtd-utils ; opkg install mtd-utils-ubifs ########################## DECLARATION OF VARIABLES ########################### MKFS=/usr/sbin/mkfs.ubifs UBINIZE=/usr/sbin/ubinize WORKDIR="/media/hdd/backup" ###################### DEFINE CLEAN-UP ROUTINE ################################ clean_up() { umount /tmp/backup/root > /dev/null 2>&1 rmdir /tmp/backup/root > /dev/null 2>&1 rmdir /tmp/backup > /dev/null 2>&1 } ############################################################################### abbruch() { clean_up echo "Image erstellen fehlgeschlagen" exit 0 } #ubifs check ################################################################## if grep rootfs /proc/mounts | grep ubifs > /dev/null; then ROOTFSTYPE=ubifs else echo"Kein UBIFS" abbruch fi ####### TESTING IF ALL THE TOOLS FOR THE BUILDING PROCESS ARE PRESENT ######### if [ ! -f /usr/sbin/mtdinfo ] ; then echo "NO MTDINFO FOUND, ABORTING" abbruch fi if [ ! -f $MKFS ] ; then echo "NO MKFS.UBIFS FOUND, ABORTING" abbruch fi if [ ! -f $UBINIZE ] ; then echo "NO UBINIZE FOUND, ABORTING" abbruch fi ##################### PREPARING THE BUILDING ENVIRONMENT ###################### rm -rf "$WORKDIR" mkdir -p "$WORKDIR" mkdir -p /tmp/backup/root sync mount --bind / /tmp/backup/root #rootfs.bin erstellen########################################################## ROOTFS=`cat /proc/mtd | grep "rootfs" | cut -d ":" -f1` MINIMUMIOUNITSIZE=`mtdinfo /dev/$ROOTFS -u | grep "Minimum input/output unit size:" | awk {'print $5'}` ERASEBLOCKSIZE=`mtdinfo /dev/$ROOTFS -u | grep "Eraseblock size" | awk {'print $3'}` SUBPAGESIZE=`mtdinfo /dev/$ROOTFS -u | grep "Sub-page size:" | awk {'print $3'}` DEFAULTUBILEBSIZE=`mtdinfo /dev/$ROOTFS -u | grep "Default UBI LEB size:" | awk {'print $5'}` AMOUNTOFERASEBLOCKS=`mtdinfo /dev/$ROOTFS -u | grep "Amount of eraseblocks:" | awk {'print $4'}` echo \[ubifs\] > "$WORKDIR/ubinize.cfg" echo mode=ubi >> "$WORKDIR/ubinize.cfg" echo image="$WORKDIR/root.ubi" >> "$WORKDIR/ubinize.cfg" echo vol_id=0 >> "$WORKDIR/ubinize.cfg" echo vol_type=dynamic >> "$WORKDIR/ubinize.cfg" echo vol_name=rootfs >> "$WORKDIR/ubinize.cfg" echo vol_flags=autoresize >> "$WORKDIR/ubinize.cfg" touch "$WORKDIR/root.ubi" chmod 644 "$WORKDIR/root.ubi" echo "creating rootfs.bin - this will take some time" /usr/sbin/mkfs.ubifs -m "$MINIMUMIOUNITSIZE" -e "$DEFAULTUBILEBSIZE" -c "$AMOUNTOFERASEBLOCKS" -r /tmp/backup/root -o "$WORKDIR/root.ubi" -x none /usr/sbin/ubinize -o "$WORKDIR/rootfs.bin" -m "$MINIMUMIOUNITSIZE" -p "$ERASEBLOCKSIZE" "$WORKDIR/ubinize.cfg" >/dev/null chmod 644 "$WORKDIR/rootfs.bin" if [ -f "$WORKDIR/rootfs.bin" ] ; then IMAGEVERSION=`date +%Y%m%d` echo $IMAGEVERSION > $WORKDIR/imageversion touch $WORKDIR/force rm "$WORKDIR/root.ubi" rm "$WORKDIR/ubinize.cfg" echo "dumpe kernel.bin" KERNEL=`cat /proc/mtd | grep "kernel" | cut -d ":" -f1` dd if=/dev/$KERNEL of=$WORKDIR/kernel.bin echo "done" echo "" echo "dumpe splash.bin" SPLASH=`cat /proc/mtd | grep "splash" | cut -d ":" -f1` dd if=/dev/$SPLASH of=$WORKDIR/splash.bin echo "done" echo "" else abbruch fi clean_up
Geändert von redoom (16.09.2014 um 21:12 Uhr)
@sirtobie
Denke nicht das es an der box liegt, habe Mist im script gebaut *g*
Nandtest geht so:
per telnet einloggen:
cat /proc/mtd
nandtest -m -k /dev/mtdx ( x durch die Nummer des Kenels bzw des rootfs ersetzen).
Hier keinen Mist bauen, damit kann man sich den bootloader killen.
usage: nandtest [OPTIONS] <device>
-h, --help Display this help output
-m, --markbad Mark blocks bad if they appear so
-s, --seed Supply random seed
-p, --passes Number of passes
-o, --offset Start offset on flash
-l, --length Length of flash to test
-k, --keep Restore existing contents after test
PS: Habe das script nochmal aktualisiert, ist ungetestet. Wenn das nicht hinhaut Gibt es erst wieder ein update wenn ich sicher bin das alles funktioniert :-)
Beim Ersten start nach dem flashen ist es normal das es etwas länger dauert, das UBIFS denht sich beim ersten mount auf die ganze flash partition aus.
Geändert von redoom (16.09.2014 um 13:51 Uhr)
Der kennt den Befehl nandtest gar nicht!
Code:markus@markus-Satellite-A100:~$ telnet 192.168.2.30Trying 192.168.2.30... Connected to 192.168.2.30. Escape character is '^]'. hdmu 4 xpeedlx xpeedlx login: root Password: Last login: Tue Sep 16 13:16:31 CEST 2014 on pts/1 HDMU 12979 Git 1771 # # ###### # # # # # # # # ## ## # # # # # # # # # # # # ####### # # # # # # # # # # # # # # # # # # # # # # # # # ###### # # ##### +++++++++++++++++: System Data :+++++++++++++++++++ + Box = xpeedlx + HDMU Rev = 12979 + GIT Rev = 1771 + Hostname = xpeedlx + Kernel = 3.12.1 + Uptime = 13:53:14 up 2:57, load average: 0.17, 0.23, 0.22 + CPU = Broadcom BMIPS3300 V3.2 +Memory Total = 235720 kB + Memory Free = 90476 kB root@xpeedlx:~# cat /proc/mtd dev: size erasesize name mtd0: 1f900000 00020000 "rootfs" mtd1: 20000000 00020000 "entire_device" mtd2: 00600000 00020000 "kernel" mtd3: 00080000 00010000 "cfe" mtd4: 00200000 00010000 "splash" mtd5: 00080000 00010000 "macadr" mtd6: 00080000 00010000 "nvram" mtd7: 00040000 00010000 "bootconfig" mtd8: 00040000 00010000 "facconfig" root@xpeedlx:~# nandtest -m -k /dev/mtd2 -sh: nandtest: not found root@xpeedlx:~# nandtest -m -k /dev/mtd2
per telnet:
opkg update ; opkg install mtd-utils ; opkg install mtd-utils-ubifs
Uups....
Stimmt ja.
Nach dem neuen Flashen ist ja Alles wieder weg.
So. noch mal Update gemacht und wieder zurück geflasht.
Box zeigt seit 15Min. nur boot an.
Warum machst Du nicht mit dem MAT ein Fullbackup?
MfG
2x Kathrein UFS 910/ 1x UFS 912/ 2x UFS 913 / Quad Plus / Samsung Galaxy S5
>>>Hilfe zur Selbsthilfe: FAQ <<<