Ich verwende CyanogenMod 12 jeden Abend auf meinem G900T (klte). Alles funktioniert einwandfrei, bis auf das Standard-Verschlüsselungskennwort, das dazu führt, dass mein Telefon eine Startschleife ausführt.
Ich habe Daten formatiert und auf die Werkseinstellungen zurückgesetzt, bin aber /data
immer noch verschlüsselt und wird als angezeigt /dev/dm-0
.
Gibt es einen Befehl, mit dem ich die Verschlüsselung entfernen kann? Die Daten sind mir egal, ich möchte, dass alles weg ist. Ich möchte nur darauf zurückkommen, dass /data
der interne Speicher im Klartext auf der Festplatte gespeichert ist, um CyanogenMod starten zu können.
Wie kann ich adb shell
die Verschlüsselung auf diesen Partitionen entfernen?
recovery-mode
encryption
Naftuli Kay
quelle
quelle
dd if=/dev/zero
die Datenpartition manuell und dann zu formatieren.Antworten:
Die Antwort für mich beinhaltete eine Reihe von Dingen, aber ich denke, eines ist wirklich der Schlüssel.
Verwenden Sie den Befehl "Wiederherstellung", Bruder
Dies verwendet das
recovery
Programm von CyanogenMod / AOSP , um die Benutzerdaten zu löschen und die Verschlüsselung zu deaktivieren. (in dieser Antwort unter Stapelüberlauf zu finden ) Starten Sie Ihre Wiederherstellung und führen Sie sie dann von Ihrem Computer ausIhr Telefon wird im System neu gestartet und die Dinge sollten hoffentlich wie geplant funktionieren.
Wenn Sie es vom Telefon selbst aus ausführen müssen (dh Sie haben keinen Computer in der Nähe
adb
):Es sollte das System löschen, die Verschlüsselung deaktivieren und neu starten.
Wenn alle Stricke reißen
Verwenden Sie diese Methode nur, wenn die oben genannten Methoden nicht funktionieren oder auf Ihr Szenario zutreffen.
Zerstören Sie den LUKS-Header für die Dateisystemverschlüsselung
root
, sodass TWRP in meinem Fall funktioniert.userdata
Partition, indem Sie sich in umschauen/dev/block/platform/*/by-name/userdata
.Schreiben Sie eine Menge Nullen an den Anfang dieser Partition, um den LUKS-Header zu löschen:
Ich übernehme keine Verantwortung dafür, was Sie mit diesem Befehl tun. Wenn Sie dies vermasseln, können Sie Ihr Telefon blockieren, indem Sie Ihren Bootloader oder andere kritische Partitionen überschreiben.
$PATH_TO_YOUR_USERDATA
Stellen Sie sicher, dass dies auf die realeuserdata
Partition verweist . Überprüfen Sie die Größe dieser Partition, um sicherzustellen, dass Sie das Richtige löschen. Ich habe ein 16-GB-Telefon und habeuserdata
10,4 GB , der Rest ist dafür vorgesehensystem
, aber Ihr Telefon wird anders sein.Formatieren Sie diese Partition wie
ext4
folgt neumake_ext4fs $PATH_TO_YOUR_USERDATA
.Es kann Fehler geben, aber normalerweise beziehen sie sich darauf, dass die interne "SD-Karte" nicht gefunden werden kann. Dies ist in Ordnung.
Starten Sie nach all dem die Wiederherstellung erneut und führen Sie dann aus Sicherheitsgründen einen Werksreset durch.
Warum funktioniert das?
Nur einen Werksreset durchzuführen, schien nichts für mich zu tun, das Telefon würde dort immer noch eine LUKS-Partition sehen. Ich gehe davon aus, dass dies daran liegt, dass der LUKS-Header noch auf Festplattenebene vorhanden war und die ext4-Partition nur darüber gelegt wurde. Aus irgendeinem Grund hat Android die Erkennung einer LUKS-Partition gegenüber einer ext4-Partition priorisiert und versucht (und ist erfolgreich), diese bereitzustellen.
Wohin von hier aus?
(Wenn Sie wissen, was Sie tun, möchten Sie möglicherweise auch
system
Ihr ROM von Grund auf löschen und installieren. Auch hier übernehme ich keine Verantwortung für alles, was Sie mit den in diesem Beitrag enthaltenen Informationen tun. )Arbeitete für mich auf einem
klte
G900T (Samsung Galaxy S5 T-Mobile). Ihr Kilometerstand kann variieren.quelle
dd
Kommando hat es endlich geschafft. Vielen Dank!recovery
Befehl schien für mich nicht zu funktionieren. Ich habe esADB Shell
in derTWRP
Genesung genannt. Mein Hauptproblem ist, dass das USB-Debugging nicht aktiviert und/system
beschädigt ist, sodass ich es nicht starten und aktivieren kann. Außerdem ist die Festplattenverschlüsselung aktiviert und scheint mich von derfastboot flash system system.zip
korrekten Leistung abzuhalten .dd
konnte ich mit dem Befehl am Ende den Vorgang abschließen. Danke!ls -l /dev/block/platform/soc.0/7824900.sdhci/by-name/userdata
sagt:lrwxrwxrwx 1 root root 21 Sep 16 06:04 /dev/block/platform/soc.0/7824900.sdhci/by-name/userdata -> /dev/block/mmcblk0p26
df -h /dev/block/mmcblk0p26
sagt: `` `Verwendete Dateisystemgröße Verfügbar Verwendung% Mounted on / dev / block / mmcblk0p26 10.5G 27.2M 10.5G 0% / data`` `` also habe ich getan:dd if=/dev/zero of=/dev/block/platform/soc.0/7824900.sdhci/by-name/userdata bs=4096 count=512
Stimmt das?Auf meinem Moto G 3rd Gen (Fischadler) funktionierte weder das Aufrufen der Wiederherstellung noch das Löschen des LUKS-Headers (zu Beginn und am Ende der Partition). Ich musste während des Starts von Cyanogen Mod immer noch das Verschlüsselungskennwort eingeben und blieb dann mit der Meldung "Verschlüsselungsfehler" hängen .
Ich habe schließlich festgestellt, dass meine TWRP 3.0.1-Wiederherstellung eine Option "Daten formatieren" im Abschnitt "Löschen" enthält. Dies führt einen vollständigen Werksreset durch, wodurch auch die Verschlüsselung deaktiviert wird.
Lief wie am Schnürchen. Wenn Sie Zugriff auf eine anständige TWRP-Version haben (leicht zu flashen, z. B. mit Flashify), versuchen Sie dies zuerst.
quelle
dd
Ansatz ist auch nützlich, wenn die Verschlüsselung in Skripten bereinigt wird, da die Option "Daten formatieren" in TWRP-Befehlen nicht verfügbar ist, während vorhandene Befehle die Verschlüsselung nicht löschen können. Hoffe, dass sie in Zukunft einen solchen Befehl hinzufügen ...Vorausgesetzt, Sie verwenden TWRP oder ähnliches.
Data
Partition auf externSD
oderOTG Drive
f2fs
Data
Partition wieder herquelle
Die Lösung, den von Naftuli Tzvi Kay bereitgestellten LUKS-Header manuell zu löschen, funktioniert bis auf eine Sache einwandfrei. Ich weiß nicht, worauf es ankommt, aber meiner Erfahrung nach behält Android den LUKS-Header am Ende der Partition. Und wenn dies bei Ihrem Gerät der Fall ist, laufen Sie
Der Header (Fußzeile?) kann nicht entfernt werden, da nur der Anfang der Partition gelöscht wird. Man könnte natürlich die gesamte Partition löschen, aber das würde unnötig lange dauern. So...
Führen Sie diesen Befehl auch aus, um das Ende der Partition (beliebiger Größe) zu löschen , nachdem Sie den obigen Befehl ausgeführt haben:
quelle
Verwenden Sie die benutzerdefinierte Wiederherstellung?
Wenn ja, tun Sie dies nach dem Booten zu einer benutzerdefinierten Wiederherstellung ( in meinem Fall TWRP ):
Entschlüsseln Sie das Gerät beim Start der Wiederherstellung NICHT . Tippen Sie einfach auf Abbrechen, wenn Sie nach einem Passwort oder Muster gefragt werden.
Löschen Sie die Datenpartition. (Auf TWRP nach dem Wischen, um das System zu ändern: Löschen> Erweitert> Überprüfen: Daten)
Dadurch wird natürlich alles in der
userdata
Partition gelöscht. Die gesamte Datenpartition wird einschließlich der Verschlüsselungsschlüssel neu formatiert .quelle
Meine Stimmen gehen an @Naftuli Kay und andere hilfreiche Antworten hier, aber ich habe einige Informationen, die ich gerne teilen möchte. Es ist zu lang für einen Kommentar, dann sei es eine Antwort.
Seit einer TWRP-Version befindet sich auf dem Löschbildschirm das Element "Daten formatieren". Es löscht nicht nur die Datenpartition, sondern behandelt auch die verschlüsselte FS-Angelegenheit. In meinem Fall löscht TWRP 3.0.2 auf dem Samsung J500H die Verschlüsselung, und es war die einzige Möglichkeit, dass das Zurücksetzen auf die Werkseinstellungen nicht funktioniert. CMR (das, das entlang meiner CM 12.1-ROM für J500H erstellt wird) kann die Verschlüsselung ebenfalls nicht löschen.
--set_encrypted_filesystem=off
funktionierte auch nicht in TWRP und CMR.Das Löschen von Daten über OpenRecoveryScript https://twrp.me/faq/openrecoveryscript.html funktioniert ebenfalls nicht
Android 3.0 hat begonnen, / sdcard / data / media zuzuordnen, daher mussten sie / data wipe auf not / data / media überarbeiten und werden
rm -rf
stattdessen ausgeführt. Weitere Informationen finden Sie unter https://twrp.me/faq/datamedia.html .Wenn Sie 'Daten formatieren' ausführen, werden im Wiederherstellungsprotokoll (/ cache / recovery / log oder / cache / recovery / last_log) folgende Informationen angezeigt:
bevor es Formate / Daten mit
make_ext4fs
. Der TWRP-Code enthält eine Reihe von Überprüfungen, um festzustellen, wo sich der LUKS-Header befindet, und in meinem Fall wurde er in der Fußzeile gefunden.Ich habe mir die TWRP-Quelle angesehen und keine Möglichkeit gefunden, Daten über die Befehlszeile zu formatieren (ich muss den verschlüsselten Speicher einer Anwendung in einem benutzerdefinierten ROM löschen). Daher ist diese Option nur in der Benutzeroberfläche verfügbar. Mit der einzigen Ausnahme: Wenn TWRP mit
TW_OEM_BUILD
aktiviert kompiliert wird , werden beim Zurücksetzen auf die Werkseinstellungen Daten formatiert, der Krypto-Header gelöscht und die Datenpartition formatiert. Andernfalls wird das reguläre Löschen ohne Formatierung verwendet.Ich werde es
dd
mit Nullen versuchen , tatsächlich macht TWRP dasselbe, um die Verschlüsselung zu löschen, nur weiß es, wo genau nach dem Header gesucht werden muss))quelle
Die Antwort von Naftuli Tzvi Kay oben erweitern ...
Nun, diese Antwort brachte mich an den richtigen Ort, aber mein Telefon (CM11 / i9300) hatte keinen
recovery
Befehl und derwipe
Befehl hatte keine Option zum Deaktivieren der Verschlüsselung. Also habe ich es manuell gemacht, indem ich mir die Kommentare im Quellcode für denrecovery
Befehl angesehen habe (Datei, die mit der Antwort in der obigen Frage verknüpft ist):Also manuell (mit adb):
Fügen Sie den folgenden Text entweder mit echo oder vi in die Datei / cache / recovery / command ein:
Starten Sie CWM oder eine ähnliche Wiederherstellung neu
Du solltest einen schönen Fortschrittsbalken sehen und er sollte fertig sein :)
quelle
Die beste Arbeitsmethode besteht darin, TWRP zu starten und es mit dem eingebauten Terminal als ext2 zu formatieren (da dies das einzige ist, was direkt vom Terminal unterstützt wird), und die Partition mithilfe der Option "Dateisystem reparieren" unter "Mounten" in "ext4" zu ändern
So formatieren Sie als ext2:
mkfs.ext2 /dev/block/mmcbl0p23
(Ersetzen Sie den Wert Ihrer Benutzerdatenpartition, indem Sie sich in / dev / block / platform / * / by-name / userdata umsehen.)Ändern Sie das Dateisystem als ext4:
Löschen -> Erweitertes Löschen -> Wählen Sie "Daten" -> Reparieren oder Ändern des Dateisystems -> Ändern des Dateisystems -> EXT4
Jetzt sollten Sie die Verschlüsselung entfernt haben und in der Lage sein, / data partition von TWRP zu mounten. Hoffe das hilft :)
quelle