Bootloop-Schutz

M

M1cha

Stammgast
180
Hi,

ich habe mir mal ein wenig Gedanken über Bootloops in Android durch die Manipulation der Apps gemacht.

Der sogenannte Bootloop ist ja eigentlich nur ein fehlerhaftes Laden des Android-Java-Systems(z.B. durch defektem framework). Das Ganze endet folglich in einer Bootloop.
Es geht also nur um den Ordner/Mountpoint "/system"

Nun hatte ich die Idee, vor dem Start des Java-Systems eine Möglichkeit anzubieten(per Tastenkombi?), eine funktionierende Kopie des system-images zu mounten anstatt dem "normalen".
Somit könnte man alle Änderungen rückgängig machen und das System würde ohne reflash wieder laufen.

Also habe ich nach einen Script gesucht, welches sehr früh ausgeführt wird. Dabei bin ich auf die Datei "/init.rc" gestoßen. Leider überstehen Änderungen im rootfs keinen Neustart.

Bitte postet fleißig eure Ideen, damit wir möglicherweise ein funktionierendes Recovery(ohne neu zu flashen), also ähnlich dem abgesicherten Modus erstellen können.

Gruß, M1cha
 
Zuletzt bearbeitet:
Bootloop =/= Brick.

Soviel Korrektur sollte sein :)
 
Danke, Habs korrigiert...
Hoffentlich kommen wir zu einer Lösung :)
 
Den Bootloader und die Custom Recovery kann man ja nicht bearbeiten deshalb glaube ich, dass eine Tastenkombi oder etwas in der Art nicht möglich ist.

Eine Signierte update.zip die, die Framework enthält wäre aber möglich, und so könnte man im Falle des Bootloops diese per Android-Recovery einspielen. Aber wie signiert man update.zip damit sie von der Recovery akzeptiert werden?
 
Es ist ja nicht nötig, den Bootloader zu ersetzen. Denn egal was du tust(im Normalfall), der Kernel bootet immernoch.
Der Ganze Java-Kram(auf dem die Android-Oberfläche basiert) befindet sich im "/system"-Ordner und wird erst etwas später initialisiert. und genau dazwischen habe ich vor, diese Möglichkeit einzubinden.

Das mit der update.zip wäre natürlich auch eine Möglichkeit, wenn auch nicht allzu komfortabel, da man somit(wenn man nicht jedesmal eine neue update.zip macht) alles überschreiben muss.
Aber: Es wäre schonmal eine Lösung. Wenn also jemand weiß, wie man diese signieren muss, bitte melden :)
 
Wenns ginge würde es bestimmt schon eine passende Lösung von den XDAs geben bzw ich würde einfach mal bei denen nen Thread erstellen und Nachfragen ;)
 
Signieren kann nur moto selbst. Wenn wir das können wären custom roms kein problem mehr.

Sent from my defy <3
 
Jo, habe ich auch gerade im XDA erfahren.
Ich frage mich gerade, wie ClockworkMod-Recovery das macht.
Denn trotz restart schaffen die es, ihr eigenes Menü statt das System zu starten.

Das wäre also vllt ein Ansatz. Müsste man vllt mal nachfragen...
 
M1cha schrieb:
Jo, habe ich auch gerade im XDA erfahren.
Ich frage mich gerade, wie ClockworkMod-Recovery das macht.
Denn trotz restart schaffen die es, ihr eigenes Menü statt das System zu starten.

Das wäre also vllt ein Ansatz. Müsste man vllt mal nachfragen...

Ja aber man muss vorher in der App anklicken dass, das Handy in die CustomRecovery booten soll. Das Defy kann aber nicht so modifiziert werden das des von ausgeschaltetem Zustand in das CustomRecovery bootet.

Anders wie beim Desire, Nexus One dort kann man die CMR flashen und kann diese dan auch Kalt booten
 
Ich finde das sehr interesssant den ich hasse Bootloop.
 
M1cha schrieb:
Hi,

ich habe mir mal ein wenig Gedanken über Bootloops in Android durch die Manipulation der Apps gemacht.

Der sogenannte Bootloop ist ja eigentlich nur ein fehlerhaftes Laden des Android-Java-Systems(z.B. durch defektem framework). Das Ganze endet folglich in einer Bootloop.
Es geht also nur um den Ordner/Mountpoint "/system"

Nun hatte ich die Idee, vor dem Start des Java-Systems eine Möglichkeit anzubieten(per Tastenkombi?), eine funktionierende Kopie des system-images zu mounten anstatt dem "normalen".
Somit könnte man alle Änderungen rückgängig machen und das System würde ohne reflash wieder laufen.

Also habe ich nach einen Script gesucht, welches sehr früh ausgeführt wird. Dabei bin ich auf die Datei "/init.rc" gestoßen. Leider überstehen Änderungen im rootfs keinen Neustart.

Bitte postet fleißig eure Ideen, damit wir möglicherweise ein funktionierendes Recovery(ohne neu zu flashen), also ähnlich dem abgesicherten Modus erstellen können.

Gruß, M1cha

Ich könnte mir ein Script vorstellen, das sofort nach den laden
des Kernels ausgeführt wird. Problem ist nur, dass der Kernel mit
den Bootloader geladen wird... Und wärend der Bootloader aktiv ist
, hat man keine Schnitte irgend ein Script auszuführen..Schön wäre
allerdings: Auswahl 1 normal boot und Auswahl 2 Recovery. Wenn
innerhalb von 3 Sekunden nichts ausgeführt wird, gibts den normalen
Startvorgang. Die RC ist ja mit eines der ersten Scripte die nach
den Bootloader ausgeführt werden. Ob es bis zum
Auslesen der Rc nicht schon zuspät ist, ist die andere Frage. Das
müsste mal jemand ausprobieren und herumdoktorn ;). Ich denke,
dass es noch keiner ausprobiert hat. Immerhin haust in dem Handy
ein Linuxkernel:) Linux=Geht nicht, gibts nicht! :winki:
 
Zuletzt bearbeitet:
Ich denke mal, dass haben die bei den XDAs schon ausprobiert.

Beim Backflip funktioniert nandroid direkt über den Bootloader, aber ich glaube, dass ist auch das einzige Motorola ohne signierten Bootloader.
Ist auf jeden Fall viel bequemer. Da kann man wenigstens immer direkt ein Image einspielen, wenn man mal Mist gebaut hat :lol:.
 
Eigentlich möchte der Threadersteller nur nen offen Bootloader und
das Recovery gleich von Anfang an als Startmöglichkeit haben.
"Nur" ist gut, wieviel Codes müssen wir zum hacken durchlaufen
lassen? :D
 
Wir meinen im Moment das gleiche! Das nandroid ist das Recovery :D.
Falls Du das jetzt missverstanden hast.
 
Wir versuchen hier eine Möglichkeit zu finden, ohne den Bootloader zu entschlüsseln.
Die init.rc sitzt leider auf der Bootpartition und ist somit nicht beschreibbar.
Gibt es eine Möglichkeit diese zu ändern oder sitzt diese im Bootloader?
 
M1cha schrieb:
Wir versuchen hier eine Möglichkeit zu finden, ohne den Bootloader zu entschlüsseln.
Die init.rc sitzt leider auf der Bootpartition und ist somit nicht beschreibbar.
Gibt es eine Möglichkeit diese zu ändern oder sitzt diese im Bootloader?

Dann gilt der erste Post von mir. Also die Möglichkeit mit Script.
Nur wird die Frage offen bleiben, ob es bis zur RC dann
nicht schon zu spät ist. Viele Dinge passieren ja bereits
vorher. Allerdings an dem Punkt, wo das Clockwork
startet, müsste man ansetzen. Wenn man auf Reboot
recovery geht, wo schreibt der das rein?
Wenn man das weis,, dann ist man schonmal weiter.
 
In der guten alten Zeit als HTC Magic chef habe ich meine Skripte die vor startup laufen sollten einfach in den system/etc/init.d ordner gehauen...
6.2 Init-Skripte
kann natürlich auch sein, dass es von cyanogen eingebaut wurde... lang ists her.
Trozdem weiß ich sicher, dass die Skripte das aller erste waren - direkt nachdem der Kernel gestartet ist. (Kann man schön mit DDMS prüfen)
Grüße und ein fröhliches Gelingen
Dominik

/edit: ok, sorry - sieht schlecht aus :thumbdn:
(init.d scripts not running? [Archive] - xda-developers)
 
Zuletzt bearbeitet:

Ähnliche Themen

solaris63
Antworten
1
Aufrufe
1.819
Cua
Cua
9
Antworten
34
Aufrufe
6.433
Dirk64
Dirk64
fighterchris
Antworten
681
Aufrufe
128.653
mm2
M
Zurück
Oben Unten