Warum ist Root-Zugriff für ein benutzerdefiniertes ROM erforderlich?

15

Ich möchte klarstellen, und wie meine Frage zeigt, kenne ich mobile Geräte im Allgemeinen nicht. Daher entschuldige ich mich, wenn dies allgemein bekannt ist.

Angenommen, ich möchte ein benutzerdefiniertes ROM auf einem Gerät installieren, dann brauche ich anscheinend Root-Zugriff. Ich kann auf jeder Webseite herausfinden, wie ich ein Gerät rooten kann, aber ich kann nicht herausfinden, warum ich ein Gerät rooten muss. Ich verstehe, dass das Rooten eines Geräts mir einfach Root-Zugriff auf das Gerät gewährt, aber warum wird dies benötigt? Wenn ich das Telefon an einen PC anschließe, kann ich dann nicht auf das gesamte Dateisystem des Geräts zugreifen? Wenn ja, warum kann ich dann nicht einfach die relevanten Teile des FS mit dem gewünschten ROM überschreiben?

Warum wird ein Gerät beim Rooten und Verwenden eines benutzerdefinierten ROM blockiert? Könnte ich nicht einfach das ROM überschreiben, das das Problem mit dem Original verursacht hat?

R4D4
quelle
5
If I connect the phone to a PC then doesn't that give me access to the entire file system of the device?- Standardmäßig nicht. Sie erhalten Zugriff auf einen bestimmten Teil des Dateisystems (den "externen" Speicher).
Eldarerathis
1
Here and Here
t0mm13b
@ t0mm13b Keine dieser Fragen beantwortet den WARUM- Teil. Ich schätze, ich gehe voran und stelle etwas hierher.
Izzy

Antworten:

16

Kurze Antwort:

Aus Sicherheits- und Gewährleistungsgründen.

Ausführliche Antwort:

Dies ist meistens eine Vorsichtsmaßnahme, die von den meisten (nicht allen!) Geräteherstellern getroffen wurde, um sie vor zu vielen Serviceanfragen von "spielenden Kindern" (und den Leuten, die alles ausprobieren möchten, auch wenn sie nichts verstehen) zu bewahren. Daher haben diese Hersteller spezielle Maßnahmen ergriffen, um zu verhindern, dass "benutzerdefinierte ROMs" (oder genauer gesagt ROMs, die nicht von ihnen selbst bereitgestellt werden) geflasht werden.

Wie t0mm13b bereits in seinen Kommentaren oben, müssen Sie standardmäßig darauf hingewiesen , nicht durch den Anschluss über USB bekommen einfach Geräte - Dateisystem auf Ihrem physischen Zugang. Je nach Gerät, Android-Version und einigen weiteren Kriterien werden nur Teile angezeigt. Dies kann die gesamte SD-Karte sein (physisch, im UMS- Modus) oder auch nur der "logische" Zugriff auf Teile davon über MTP . Wenn Sie USB-Debug aktivieren, können Sie über ADB etwas mehr privilegierten Zugriff erhalten. Mit einem Standard-ROM erhalten Sie jedoch in keinem dieser Fälle vollen Zugriff .

Wie werden dann Updates durchgeführt? Eine sehr verbreitete Praxis ist die Verwendung einer speziellen ZIP-Datei ( update.zip). Diese wird auf die SD-Karte gelegt, die in das Gerät eingelegt ist, und das Gerät wird in einen speziellen Modus (Recovery) gebootet, von dem aus das update.zipangewendet werden kann. ABER: Das Gerät prüft die Integrität update.zip- es muss mit dem Herstellerschlüssel signiert sein. Aus offensichtlichen Gründen ist dieser Schlüssel nicht frei verfügbar. Auf diese Weise kann kein benutzerdefiniertes ROM auf einem solchen Basissystem installiert werden.

All diese Dinge können nur mit Superuser-Zugriff auf das Gerät umgangen werden - das heißt: Sie müssen es rooten.

Das ist also der WARUM- Teil - während der WIE- Teil des Rootens nicht behandelt wird. Genau so, wie du es dir gewünscht hast :)


Update für noch mehr Details

Während Liam in seinem Kommentar darauf hinwies, dass die Verwendung von fastbooteine Methode zum Flashen von benutzerdefinierten ROMs ohne die Voraussetzung des Rootens des Geräts sein würde, habe ich etwas mehr nachgeforscht, um dies herauszufinden. Ich werde mich weiter damit beschäftigen, wollte hier aber schon meine ersten Ergebnisse hinzufügen.

Bis zu einem gewissen Punkt hat Liam Recht damit: Es scheint nicht nur für Samsung-Geräte (wie ich zuerst annahm) gültig zu sein, sondern auch für einige andere Geräte (nicht alle), die diese Methode unterstützen, ohne dass Root beteiligt ist (abgesehen davon, dass Die meisten benutzerdefinierten ROMs werden natürlich als Root ausgeliefert - Sie haben also nach der Installation Root- Rechte). Es gibt jedoch Geräte, für die anscheinend sogar root erforderlich ist fastboot flash(siehe z. B. TheUnlockr für das Iconia A100 , Zitat: Sie müssen Ihr Gerät gerootet haben, bevor Sie diesen Vorgang ausführen . - und ja, sie werden fastboot flash recovery recovery.imgdanach verwendet).

Selbst wenn dies fastbootfür Ihr Gerät ohne Root-Zugriff möglich ist, ist Folgendes zu beachten:

Um ein ROM für Ihr Android-Gerät mit Fastboot flashen zu können, benötigen Sie einen entsperrten Bootloader oder einen technischen Bootloader

( Flashing Guide - Android - XDA-Entwickler )

Das bedeutet: Wenn Ihr Bootloader gesperrt ist, müssen Sie ihn zuerst entsperren, wodurch Ihr Gerät gelöscht (auf die Werkseinstellungen zurückgesetzt) ​​wird. Auf diese Weise gehen alle Daten endgültig verloren - während Sie mit root vor diesem Schritt eine vollständige Sicherung (Nandroid, Titanium Backup) hätten durchführen können. Ab Android 4.0 ist dies jedoch kein wirkliches Problem mehr, da Sie eine vollständige Sicherung über ADB durchführen können (siehe: Vollständige Sicherung nicht verwurzelter Geräte ).


Zusammenfassung:

Es gibt Geräte, die gerootet werden müssen, bevor Sie ein benutzerdefiniertes ROM flashen können. Wenn Ihr Gerät in diese Kategorie fällt, sind die oben genannten Gründe für den Root-Zugriff zum Flashen eines benutzerdefinierten ROMs erforderlich .

Allerdings: Es gibt auch Geräte, die ohne vorheriges Rooten per Flash gebootet werden fastboot können . Wenn Ihr Gerät in diese Kategorie fällt, wird die Frage, warum zum Flashen eines benutzerdefinierten ROMs Root-Zugriff erforderlich ist, ungültig (die Antwort lautet nicht, da eine ex falso quodlibet sequitur ("von falsch kann auf alles folgen") Sie können aus einer falschen Prämisse eine Schlussfolgerung ziehen :)

Das heißt: WENN Rooting erforderlich ist, ist oben WARUM .

Izzy
quelle
1
Sie nicht wirklich benötigen root ein Custom ROM auf den meisten Geräten zu installieren;)
Liam W
@LiamW Wie meine Frage schon sagt - Ich bin mit mobilen Betriebssystemen sehr unwissend, und Izzy hat einen Ruf von 13,3.000, was darauf hinweist, dass er zwei Dinge mehr darüber weiß als ich. als solches nehme ich an, dass seine Antwort völlig richtig ist, da ich nichts Gegenteiliges weiß; Auch seine Antwort wurde am höchsten bewertet (was wiederum anzeigt, dass es technisch korrekt ist). Wenn Sie jedoch der Meinung sind, dass seine Antwort falsch ist, können Sie Ihre Antwort jederzeit aktualisieren. Wenn die Stimmen schwanken, werde ich die akzeptierte Antwort ändern.
R4D4
1
@LiamW Du meinst "auf den meisten Samsung Geräten". Ich habe noch nie ein Gerät gesehen, mit dem Sie ein benutzerdefiniertes ROM flashen können, ohne sich zu rooten, und leider habe ich einige Geräte gesehen. Nun, ich habe mich von Plastikbombern ferngehalten ... XD Also technisch gesehen ist Ihr letzter Kommentar falsch: D
Izzy
1
Es ist ein Hühnchen und Ei ... Sie benötigen root, um ein benutzerdefiniertes ROM flashen zu können, und um ein benutzerdefiniertes ROM flashen zu können, benötigen Sie im Allgemeinen einen entsperrten Bootloader mit einer gerooteten Wiederherstellungsumgebung ... und einer gerooteten Wiederherstellungsumgebung, z als CWM / TWRP .... catch-22!
t0mm13b
1
@ R4D4 Eine akzeptierte Antwort sollte diejenige sein, die Ihnen am meisten hilft. Wenn Sie nicht in der Lage sind, die Antwort vollständig zu bewerten, ist es vollkommen in Ordnung, eine Antwort nicht zu akzeptieren. Es ist definitiv verpönt, die höchste Antwort zu akzeptieren, nur weil sie die höchste ist oder von jemandem mit hoher Wiederholung stammt. Letztendlich sollte es Ihnen niemand anders sagen, obwohl es Ihre Entscheidung ist.
Matthew Read
7

Im Allgemeinen müssen Sie das Telefon nicht rooten, um das benutzerdefinierte ROM zu installieren. Sie müssen das Telefon rooten, um einen Mechanismus zum Installieren des benutzerdefinierten ROM zu installieren (z. B. ein benutzerdefiniertes Wiederherstellungsabbild).

Einige Telefone verfügen über freischaltbare Bootloader. Sie können Boot- und system.img-Dateien über den Bootloader flashen, ohne dass Sie sich rooten müssen.

Sie können ein benutzerdefiniertes Wiederherstellungsimage auch mithilfe von Fastboot flashen, ohne dass Sie als Root angemeldet sind .

Sie müssten eine benutzerdefinierte Wiederherstellung installieren, da bei der Wiederherstellung des Bestands überprüft wird, ob die Update-ZIP-Datei signiert ist. Die meisten benutzerdefinierten ROM-ZIP-Dateien sind nicht signiert.

Möglicherweise müssen Sie sich als Root anmelden, um ein benutzerdefiniertes Wiederherstellungs-Image zu installieren, wenn Ihr Gerät Fastboot nicht unterstützt. Dies ist jedoch im Allgemeinen nicht erforderlich. Es wird nur mit dem von Ihnen installierten Image geliefert.

Samsung-Geräte verfügen über einen Download-Modus - Sie müssen dafür nicht rooten, sondern nur ODIN.

Wenn ich das Telefon an einen PC anschließe, kann ich dann nicht auf das gesamte Dateisystem des Geräts zugreifen? Wenn ja, warum kann ich dann nicht einfach die relevanten Teile des FS mit dem gewünschten ROM überschreiben?

Nein, das tut es nicht. Sie haben nur Lesezugriff, sodass Sie keine Dateien im /systemVerzeichnis überschreiben können . Root kann verwendet werden, um das /systemLesen und Schreiben zu ermöglichen.

Liam W
quelle
1
"Sie müssen das Telefon im Allgemeinen nicht rooten, um das benutzerdefinierte ROM zu installieren. Sie müssen das Telefon rooten, um einen Mechanismus zum Installieren des benutzerdefinierten ROM zu installieren (z. B. ein benutzerdefiniertes Wiederherstellungs-Image)." läuft sicher darauf hinaus, dass Sie root benötigen, um vom Standardbetriebssystem auf ein benutzerdefiniertes ROM umzusteigen?
GAThrawn
1
@ Gathrawn Nope. Sie können eine benutzerdefinierte Wiederherstellung mit Fastboot aktualisieren. Sie müssen sich nicht als Root anmelden, um auf Fastboot zuzugreifen (und manchmal müssen Sie Fastboot verwenden, um auf Root zuzugreifen)
Liam W
1
Viele Geräte, die nicht von Samsung stammen, verfügen jedoch nicht über freischaltbare Bootloader (insbesondere ältere). Sie können also keine benutzerdefinierte Wiederherstellung aktualisieren, ohne den Bootloader zuerst zu nutzen oder die Wiederherstellung auf eine andere Weise zu installieren (ROM Manager / Goo Manager). Häufig handelt es sich dabei um Rooting, obwohl dies möglicherweise nicht immer der Fall ist. Ich denke, das versuchen @GAThrawn und andere zu erreichen. Immer mehr Hersteller haben begonnen, ein Tool zum Entsperren von Bootloadern anzubieten, aber viele haben dies noch nicht getan. Beispielsweise ist es für Motorola-Geräte im Vergleich zu anderen bekanntermaßen schwierig, benutzerdefinierte ROMs zu installieren.
Eldarerathis