Partitionslayout vom Telekom Move Huawei U8600 veraendern?

JonasOS

JonasOS

Fortgeschrittenes Mitglied
86
Hallo alle zusammen,
ich würde gerne das Partitionslayout vom Telekom Move zu folgendem abändern.

  • /cache verkleinern auf 30 MB
  • /system verkleinern auf 125 MB
  • /data2 (userdata2) eleminieren und den Speicher für /data benutzen
  • /cust eleminieren und den Speicher für /data benutzen (notfalls belassen, mit 1 MB falls das Gerät diese XMLs & Co zwingend benötigt.)
Dadurch hätte ich/wir eine neue /data mit insgesamt 299 MB Speicher. (60 + 33 + 20 + 20 + 160 = 299 MB)
Praktischer Nebeneffekt, zum richtigen sichern der yaffs2-Partitionen userdata2 & cust wird nicht mehr das Script von xda benötigt, da diese ja nicht mehr vorhanden wären.

Anmerkung:
Für die die es noch nicht kennen, mit restore / backup_by_Gulyuk.zip werden die cust/userdata2 als yaffs2-image mit ins Backup einbezogen und können auch wiederhergestellt werden!
cat erzeugt nur Datenmüll bei cust & userdata2 ;)

Meine Frage(n) jetzt natürlich, wie mache ich das am besten?

  • Geht das überhaupt ohne die Kernelsourcen bzw. "Kconfig"?
  • Reicht es eventuell nur "vold" neu zu kompilieren? Falls ja, wie mache ich das?
  • Meine Versuche mit dem Command Line Parameter "mtdparts=" sind alle gescheitert, vermute das CONFIG_MTD = "y" nicht gesetzt wurde in der Kconfig beim Move. Android ist allerdings Neuland für mich, vielleicht hab ich als Noob auch nur einen Fehler gemacht.

Infos zu meinem bisherigen Partitionslayout:

Alles ganz normal, bis darauf das ich die init.rc angepasst habe und meine userdata2 jetzt als data2 immer rw gemountet wird.
Kein Mensch brauch doch mMn diese virtuelle SD die dort normalerweise abgelegt wird.



P.S.
Da ich mehrfach gelesen habe das manche die doch nutzen und es bei ihnen nicht mehr geht. Einfach in der ADB Shell die sd.img neuerstellen lassen mit (vorher die userdata2, data natürlich mounten mit rw, ist aber glaub eh der fall) HWUserdata ist nur gelinkt, die 18 MB werden in userdata2 geschrieben, sollten bei /data 18 MB abgezogen werden habt ihr irgendetwas falsch gemacht...

dd if=/dev/zero of=/data/HWUserData/sd.img bs=512 count=36864

beim nächsten anstöpseln, (vorher Move neustarten oder sd.img selber in der ADB Shell mounten) zumindest unter Windoof fragt er dann, ob das Ding formatiert werden soll. Als FAT16 formatieren und gut ist, das USB deaktivieren funktioniert dann wieder richtig. Alternativ kann man natürlich auch in der ADB Shell das ding formatieren, aber mMn viel zu umständlich.
 
Zuletzt bearbeitet:
Kennst du diesen Thread von @fuchsteufel schon?: Klick!
(man beachte, es ist vom X3!)
 
ElTonno schrieb:
Kennst du diesen Thread von @fuchsteufel schon?: Klick!
(man beachte, es ist vom X3!)
Ja den kannte ich schon das mit den "mtdparts=" hatte ich ja probiert, deshalb vermute ich das


  • CONFIG_MTD="y"
nicht getzt wurde im Kernel, .config kann man ja leider auch nicht ziehen per cat bzw. ich halt einen Fehler gemacht habe. Probiere es später/morgen aber sicherheitshalber noch einmal.

Finde in dem Thread leider nirgends einen Hinweis darauf, was genau bei vold angepasst werden muss. Geschweige denn wie eine eigene Version davon erstellt wird :(
 
Was steht in der vold vom u8600?
Obwohl das ja uninteressant ist, da man darüber ja einfach nur die interne mit der externen sdcard tauschen kann.
Hat also nix mit den eigentlichen Partitionen an sich zutun.
 
Zuletzt bearbeitet:
Hey,

die kernel .config ist nicht im U8600 kernel compiliert, die Mühe kannst du Dir sparen. :thumbdn:

Und schreib doch das nächste mal etwas kleiner bitte.

gruß
 
Habe jetzt einfach die original zIMAGE aus der update.app vom S8600 geflasht.
Leider Eure/Deine Infos dazu übersehen gehabt
Jedenfalls, funktioniert damit bis jetzt alles 1A, nur eine SIM wird benutzt/angezeigt, im Logcat auch keine größeren Fehler (VOLD meckert halt).
Telefonieren, BT und WLAN funktioniert.

Das keine CUST | USERDATA2 Partition mehr vorhanden ist, stört das Handy nicht.
Leider liest er jetzt natürlich die XMLs auf cust nicht mehr und man muss die Toolbox & Co Einträge wieder umständlich per hand setzen in der settings.db
Kennt vielleicht jemand eine andere Lösung dafür?

@ALL
Sorry die Schriftgröße lag wohl an irgendeiner Word Formatierung. Netter MOD hat es ja dann korrigiert.
 
Zuletzt bearbeitet:
Verstehe zwar gerade mal dein problem nicht. Aber mal die apn´s kopiert?

Ah jetzt, mussste deinen beitrag 6 mal lesen.

1. glaube kaum das wlan bei dir funzt wenn du den Kernel tauscht!
2. deine gewünschte lösung liegt in der init.rc
 
Zuletzt bearbeitet von einem Moderator:
segler11 schrieb:
Verstehe zwar gerade mal dein problem nicht.
Da es bei mir jetzt keine CUST Partition mehr gibt wird natürlich auch nicht mehr die Datei /cust/t-mobile/de/xml/hw_defaults.xml geparsed. Und in dieser stehen ja bekannterweise unter anderem die Einträge für den Huawei Vorhang (toolbox.apk) usw. was ich sehr praktisch fand. Da man ja so gleich auch noch seine kompletten Grundeinstellung kurz definieren konnte. Das nachträglich über eine zip einzuspielen oder mit einem sqllitescript nervt doch.

segler11 schrieb:
1. glaube kaum das wlan bei dir funzt wenn du den Kernel tauscht!
Das funktioniert 1A, man muss nur die \wifi\dhd.ko vom S8600 natülich beim U8600 einfügen im Boot.img. Ansonsten kommt nur "Fehler" Bis auf die dhd.ko und zIMAGE verwende ich nix vom S8600. Ist ja klar das man NICHT die init.rc vom S8600 verwenden sollte. Leider geht bei mir die Camera nicht... :(

2. deine gewünschte lösung liegt in der init.rc
Könntest du das bitte näher erläutern?

Der ursprüngliche Beitrag von 19:36 Uhr wurde um 21:03 Uhr ergänzt:

ElTonno schrieb:
Was steht in der vold vom u8600?
Obwohl das ja uninteressant ist, da man darüber ja einfach nur die interne mit der externen sdcard tauschen kann.
Hat also nix mit den eigentlichen Partitionen an sich zutun.
Finde ich schon. Ich habe bei mir z.B die autorun.iso entfernt, so wie dieses nervende virtuelle CDROM aus der vold.fstab und VOLD versucht trotzdem noch geschätzte 50x dieses zu mounten bzw. natürlich erst recht das nicht existente sd.img aus der bei mir nicht mehr vorhandenen userdata2, wie ich im im Logcat gut sehen kann. Das das USB deaktivieren deshalb nicht richtig funktioniert nervt mich perönlich schon.
 
Zuletzt bearbeitet:
Update => Mittlerweile funktioniert alles.
Falls genügend Interesse besteht werde ich das ROM auf einen OCH oder Dropbox hochladen.

2013-03-04_001118.png


h8600.png
 
na immer doch;)
 
  • Danke
Reaktionen: JonasOS
JA gerne!!! Hab auf jedenfall Interesse
 
  • Danke
Reaktionen: JonasOS
was hast du denn nun eigentlich angepasst, um das partitionalayout zu ändern:confused2:
 
ronson3 schrieb:
was hast du denn nun eigentlich angepasst, um das partitionalayout zu ändern
Es wurde die commandline in der recovery/boot.img umgeschrieben (per Hex-Editor):
Code:
CMDLINE=console=ttyDCC0 androidboot.hardware=huawei mtdparts=msm_nand:5120K@0x3200000(boot),5120K@0x37c0000(recovery),1280K@0x000003cc0000(misc),384K@0x000003e00000(splash),131072K@0x000003e60000(system),32768K(cache),-(userdata)
-----
Aktueller ROM-Thread: Klick!
-----
Lektüre dazu: Klick!
 
  • Danke
Reaktionen: JonasOS
Allerdings braucht man dazu nicht wirklich einen HEX Editor. Habe mich Anfangs auch an fuchsteufels Thread/Anleitung gehalten. Man sollte gute Kenntnisse im Umgang mit Hex-Editoren haben, man kann(sollte) da nicht einfach per Hand zusätzliche Zeichen(bytes) reinschreiben in ein boot.img/recovery.img. Die Wahrscheinlichkeit das dann nichts mehr geht ist sehr hoch ;)

PS
Wer Kernels Builden kann, brauch das nicht! Der mtdpart Parameter überschreibt ja nur die im Kernel vorhandenen Werte für die Partitionen beim Booten. Mir egal was segler11 jetzt bestimmt gleich sagt, so steht das in der offiziellen Anleitung für mtdparts. Der schenke ich mehr glauben. :flapper:

Zitat: "mtdparts - define a Linux compatible MTD partition scheme"
Zitat: "Customized Flash partitioning can be achieved temporarily, at kernel boot time, by using the argument mtdparts in the command line."
 
JonasOS schrieb:
Wer Kernels Builden kann, brauch das nicht! Der mtdpart Parameter überschreibt ja nur die im Kernel vorhandenen Werte für die Partitionen beim Booten.
Jepp, seh ich auch so!
Beim X3 ging es allerdings immer 'n zacken schneller mal eben den Editor aufzurufen, als den Kernel mit der entsprechenden Line neu zusammenzupacken ;-)
Mir egal was segler11 jetzt bestimmt gleich sagt...
xD
 
Ich sage da, @ JonasOS

gut gemacht!!!! Was ich nicht geblickt hatte, war das du auch die Recovery bearbeitet hast. Kann ich nirgendwo so richtig raus lesen.

Muss ich denn wenn ich deine Firmware geflasht habe, diese nicht mehr möchte, die "normale" Recovery flashen. Oder geht das auch mit der von dir geänderten?

PS. ich bin mit sicherheit kein "ich habe immer Recht" Typ, ich bin hier im Forum um zu lernen!

sonnige grüße
 
  • Danke
Reaktionen: JonasOS
ORIGINAL Partitionen vor Modification
0x000003200000-0x000003700000(boot)
0x0000037c0000-0x000003cc0000(recovery)
0x000003cc0000-0x000003e00000(misc)
0x000003e00000-0x000003e60000(splash)
0x000003e60000-0x00000f860000(system)
0x00000f860000-0x000013760000(cache)
0x000013760000-0x00001d800000(userdata)
0x00001d800000-0x00001ec00000(userdata2)
0x00001ec00000-0x000020000000(cust)

Von mir aus HEX in DEC umgewandelte Werte vor Modifikation:
Ich wollte sicher gehen und habe NICHT einfach die Werte aus Fuchsteufels's Thread blind übernohmen,
sind beim Move aber die selben Werte für Recovery, Boot, Mics,Splash wie beim X3)

5120K@51200(boot)
5120K@57088(recovery)
1280K@62208(misc)
384K@63488(splash)
190464K@63872(system)
64512K@254336(cache)
164480K@318848(userdata)
20480K@483328(userdata2)
20480K@503808(cust)


NEUE PARTITIONSWERTE in meinem ROM (Boot.img|recovery.img)
0x000003200000-0x000003700000 : "boot"
0x0000037c0000-0x000003cc0000 : "recovery"
0x000003cc0000-0x000003e00000 : "misc"
0x000003e00000-0x000003e60000 : "splash"
0x000003e60000-0x00000be60000 : "system"
0x00000be60000-0x00000de60000 : "cache"
0x00000de60000-0x000020000000 : "userdata"

@segler11
Passt schon.
Nehme mal an das Du kein native German bist. Gleich zu schreiben, das meine Erklärung Mist ist fand ich halt nicht so toll.
Habe mich wie gesagt, hauptsächlich an den Supertoast Thread gehalten und selber recherchiert.

Dieser ist auf Englisch und erklärt es GANZ GENAU. Verständlicher.
[DEV][GUIDE][REF] Customize Internal Partition Layout for MTD Devices - xda-developers

Muss ich denn wenn ich deine Firmware geflasht habe, diese nicht mehr möchte, die "normale" Recovery flashen.
Solltest Du,
alternativ kannst Du einfach beim neuen ROM im Boot.img den CMD an den des Recovery anpassen.

Im verlinkten XDA Thread: bei "Troubleshooting/Recovering from modified partitions" lesen
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: ronson3
supi, mein tablet hat jetzt auch 2,3gb statt 0,5gb app space:scared:
 
Könnte man dafür eventuell eine Anleitung für "Dummies" (d.h. ich habe keine Kenntnisse über das Kompilieren des Kernels und verstehe vieles hier nicht) Online stellen?

Super wäre etwa sowas wie ein Batch Skript und/oder eine Update.zip zur eigenen Anpassung! Leider scheint keine Rom ausser dem inaktiven JonasOS die Partitionsgrößen zu optimieren.
 
Um meine Anfrage noch zu verfeinern...

Es muss ja keine komplett vorgekaute Lösung sein, nur muss ich hoffentlich nicht das Rad neu erfinden. Um das Kompilieren und Zusammensuchen, Testen, etc... verschiedener Dateien würde ich gern drumrumkommen, da ich damit wohl eh nicht fertigwerden würde (bezüglich des Kompilierens hatte ich mich schon mal erfolglos einige Tage rumgeärgert). Ich bin aber auch nicht ganz unbewandert und weiß wie man eine funktionsfähige Update.zip bastelt.

Nach etwas recherchieren habe ich auch einen Startpunkt, und schreibe jetzt mal was ich machen würde. Bitte korrigieren und schreiben falls ich was wichtiges vergessen haben sollte.

  • Zuerst mal Backup in CWM. Sicherheitshalber noch DATA2 und CUST mit Fuchsteufels "Backup Partitions" Script (von hier) sichern.
  • Update.zip basteln, hierfür \boot.img, \recovery.img, system\bin\vold und system\etc\vold.fstab aus JonasOS v0.9 übernehmen. Sonst sind keine weiteren Dateien vom JonasOS notwendig(?). Ich werde damit auch keine der Fehler aus dem JonasOS übernehmen(?).
  • vold und vold.fstab passen schon, diese versuchen nicht mehr die CUST und USERDATA2 zu mounten(?).
  • In boot.img und recovery.img die Partitionsgrößen wie von Fuchsteufel beschrieben mit einem Hex-Editor anpassen (jeweils am Beginn der Datei). Ich überschreibe dabei einfach die bestehenden Nullen und verändere die ursprünglichen Dateigrößen der beiden Dateien nicht(?).
  • Neue recovery.img mit ADB permanent flashen(?).
  • Factory Reset und Wipe Cache.
  • Die neue Update.zip mit CWM flashen.
  • Backup von vorher zurückspielen (natürlich nicht die CUST und USERDATA2 Backups)(?). Dabei drauf achten dass die vorherigen Backups in den neuen Partitionsgrößen auch Platz finden.
  • Neustarten, fertig. Das System ist im vorherigen Zustand, aber die Partitionsgrößen sind angepasst.
  • Offene Frage[1]: Ich nutze ja Link2SD - gibts damit nach der ganzen Prozedur Probleme?
  • Offene Frage[2]: Kann mir jemand die originalen Huawei recovery.img und boot.img irgendwo hochladen? Nur falls was schiefgeht!


Das wars. Richtig so?
 
Zuletzt bearbeitet:

Ähnliche Themen

Shinji
  • Shinji
Antworten
0
Aufrufe
1.707
Shinji
Shinji
X
Antworten
0
Aufrufe
2.132
xy-2007
X
F
  • FranzFranzi
Antworten
6
Aufrufe
2.634
FranzFranzi
F
Zurück
Oben Unten