Seite 1 von 1

Vollständiges Imagebackup HD60

Verfasst: Mo 7. Dez 2020, 10:03
von dryeye
@all
zur info .....
leider wird die hd60 vom imagebackup-plugin nicht unterstützt (screenshot) .....
jedoch....mittels umweg über das openatv 6.4 kann man ein vollständiges imagebackup eines eingerichteten :NI:-images hinbekommen.
letzteres kann man dann auch ohne probleme in eine bank der hd60 flashen.
screenshot.png

Re: Vollständiges Imagebackup HD60

Verfasst: Do 10. Dez 2020, 10:47
von BPanther
Das haben wir halt nicht eingebaut - muß man halt noch nachrüsten für die 60/61 - die Partitionen sind ja bekannt. Kannst Du auch ggf. selbst nachtragen...

Re: Vollständiges Imagebackup HD60

Verfasst: Do 10. Dez 2020, 11:40
von dryeye
BPanther hat geschrieben: Do 10. Dez 2020, 10:47 die Partitionen sind ja bekannt. Kannst Du auch ggf. selbst nachtragen...
habe mir das script gerade mal angeguckt....ich könnte mit den richtigen root und kernel-partionsnamen bestimmt eine hd60 ergänzen.
ich bezweifel aber sehr, dass ich als professioneller laie mit einem sehr gefährlichen sechzehntelwissen ein funktionierendes ergebnis produzieren kann!

Re: Vollständiges Imagebackup HD60

Verfasst: Do 10. Dez 2020, 13:08
von annie
Ich hatte mir das auch schon mal angeschaut für die HD61, auch mal probiert es zu erweitern, aber dafür bin ich auch zu blöd :)

wie gesagt, schon mal angefangen aber bei zImage weiß ich nicht weiter ?
1screenshot.png

Re: Vollständiges Imagebackup HD60

Verfasst: Do 10. Dez 2020, 14:08
von vanhofen
Der Code ist auch nicht besonders lesbar geschrieben. Der Author hat das Problem nicht. Er hat es ja verfasst. Aber andere, die da reinsehen, werden wirr im Kopf. :)

Code: Alles auswählen

	[ "$model" == "solo4k" -o "$model" == "ultimo4k" -o "$model" == "uno4k" -o "$model" == "uno4kse" ] && [ "$rootmtd" == "mmcblk0p5" ] && bkp_part=1
	[ "$model" == "solo4k" -o "$model" == "ultimo4k" -o "$model" == "uno4k" -o "$model" == "uno4kse" ] && [ "$rootmtd" == "mmcblk0p7" ] && bkp_part=2
	[ "$model" == "solo4k" -o "$model" == "ultimo4k" -o "$model" == "uno4k" -o "$model" == "uno4kse" ] && [ "$rootmtd" == "mmcblk0p9" ] && bkp_part=3
	[ "$model" == "solo4k" -o "$model" == "ultimo4k" -o "$model" == "uno4k" -o "$model" == "uno4kse" ] && [ "$rootmtd" == "mmcblk0p11" ] && bkp_part=4
	[ "$model" == "zero4k" ] && [ "$rootmtd" == "mmcblk0p8" ] && bkp_part=1
	[ "$model" == "zero4k" ] && [ "$rootmtd" == "mmcblk0p10" ] && bkp_part=2
	[ "$model" == "zero4k" ] && [ "$rootmtd" == "mmcblk0p12" ] && bkp_part=3
	[ "$model" == "zero4k" ] && [ "$rootmtd" == "mmcblk0p14" ] && bkp_part=4
	[ "$model" == "duo4k" -o "$model" == "duo4kse" ] && [ "$rootmtd" == "mmcblk0p10" ] && bkp_part=1
	[ "$model" == "duo4k" -o "$model" == "duo4kse" ] && [ "$rootmtd" == "mmcblk0p12" ] && bkp_part=2
	[ "$model" == "duo4k" -o "$model" == "duo4kse" ] && [ "$rootmtd" == "mmcblk0p14" ] && bkp_part=3
	[ "$model" == "duo4k" -o "$model" == "duo4kse" ] && [ "$rootmtd" == "mmcblk0p16" ] && bkp_part=4
Allein dieser Block ist nicht nur nicht lesbar sondern auch technisch gesehen echter Quatsch. Es geht darum, einen einzigen Fall zu erkennen. Wenn das bei der Zeile 1 schon geschieht, werden dennoch die folgenden 11 Zeilen abgearbeitet. Bei solch kleinen Scripten ist das noch OK, denn es ist egal, ob der Prozessor 0,2 oder 0,4 Sekunden benötigt, aber man verballert doch in diesem speziellen Fall über 90% CPU-Kapazität und muss auf die Ausgabe am TV länger warten, als das eigentlich nötig wäre.

Das soll bitte nicht als plumper Vorwurf an die Authoren gesehen werden, aber das geht wirklich schöner.

Ich schaue mir das Script mal an. Vielleicht bekomme ich ja die HD6x hineingefrickelt.

Re: Vollständiges Imagebackup HD60

Verfasst: Fr 11. Dez 2020, 10:22
von annie
Ich würde das Script für die HD6x schon gerne umsetzen.
Das rootfs ist kein Problem, das klappt schon hier.

Code: Alles auswählen

		[ "$model" == "hd61" -o "$model" == "hd60" ] && [ $new_layout == 1 ] && kernelnumber=19 && rootsubdir="linuxrootfs1" && rootmtd=mmcblk0p23 && multi=1
		
		[ "$model" == "hd61" -o "$model" == "hd60" ] && [ $new_layout == 1 ] && kernelnumber=20 && rootsubdir="linuxrootfs2" && rootmtd=mmcblk0p23 && multi=1
		
		[ "$model" == "hd61" -o "$model" == "hd60" ] && [ $new_layout == 1 ] && kernelnumber=21 && rootsubdir="linuxrootfs3" && rootmtd=mmcblk0p23 && multi=1
		
		[ "$model" == "hd61" -o "$model" == "hd60" ] && [ $new_layout == 1 ] && kernelnumber=22 && rootsubdir="linuxrootfs4" && rootmtd=mmcblk0p23 && multi=1					
Ich scheitere eigentlich nur am Kernel,
denn da sind für die anderen Boxen feste Werte drin wie:
magic_number="0x016f2818" # HD51 / BRE2ZE4K / ZGEMMA H7 / VUSOLO4K / VUDUO4K / VUDUO4KSE / VUZERO4K / UTLIMATE4K / UNO4K / UNO4KSE
dtb_magic_number="0xd00dfeed"

HD61 hat da einen magic_number Wert : 0x2e342d78

Wie würdest du denn den Kernel auslesen ?

Re: Vollständiges Imagebackup HD60

Verfasst: Do 17. Dez 2020, 09:14
von BPanther
Zum Block: Man hätte natürlich auch mit mehreren case, for schleifen, || oder was auch immer arbeiten können, damit die anderen Zeilen nicht auch noch abgefragt werden können. Ist aber auch so recht übersichtlich, man sieht doch, was da wann bei welcher Box und Partition passieren soll. Es werden zwar so derzeit noch alle Zeilen durchlaufen/abgefragt, aber ob das nun 1 Sek. länger deswegen braucht macht das nun auch beim Backup nicht wirklich aus. Es sollte halt relativ einfach gehalten sein. Aber mal schauen, vielleicht wird das ja nochmal bei Gelegenheit überarbeitet...

Zum Magic: Ein ARM Kernel sollte eigentlich das Magic 0x016f2818 haben (siehe hier). Falsche Partition verwendet? Nochmal nachschauen, ob die Kernelparts auch wirklich passen.

Re: Vollständiges Imagebackup HD60

Verfasst: Do 17. Dez 2020, 10:52
von TangoCash