Daten|teiler
Kopieren als Kulturtechnik

Hallo CyanogenMod 10.2

28. Dezember 2013 von Christian Imhorst

Ich habe es in diesem Jahr doch noch geschafft, mein HTC One X zu bricken flashen. Meine Entscheidung fiel auf die aktuell letzte stable Version von CyanogenMod (CM) 10.2 und ich bin einer Anleitung für Ubuntu und für CM 10.1 gefolgt. Es hat mit Debian 8.0 Jessie und der neueren CM-Version auch sehr gut funktioniert. Daher ist dieser Artikel eher eine Übersetzung inklusive eigener Erfahrung des Blog-Posts von James. Es ist trotzdem keine Gewähr dafür, dass es bei eurem HTC One X auch klappt. Falls ihr es versuchen wollt, ist es immer auf eigene Gefahr. Aber es lohnt sich, wenn es klappt, auch wenn die Garantie dann weg ist. Letzteres ist auch mit ein Grund, warum ich über ein Jahr mit dem Flashen gewartet habe.

1. Schritt – Den Bootloader entsperren

Auch unter Jessie habe ich zuerst adb und fastboot installiert:

sudo apt-get install android-tools-adb
sudo apt-get install android-tools-fastboot

Danach muss man den Bootloader entsperren. Ich bin hier ebenfalls der Variante über htcdev.com gefolgt. Dafür habe ich mich bei HTC als Entwickler registriert und bin den Schritten auf der Website gefolgt: Auf der Seite „Unlocking Your Bootloader“ ist das HTC One X nicht unter den unterstützten Geräten aufgeführt. Also habe ich „All Other Supported Models“ ausgewählt. Nachdem man abgenickt hat, dass man seine Garantie verliert, bringt man sein HTC One X in den Fastboot-Modus. Vorher muss man allerdings noch die Entwickler-Option aktivieren, die seit Android 4.2 versteckt ist. Bei HTC findet man in den Einstellungen unter „Software-Informationen“ und „Mehr“ die Build-Nummer. Jetzt tippt man sieben Mal auf den Bereich, dabei zeigt eine Meldung, wie oft man noch tippen muss, bis das System einen als „Entwickler“ erkennt. Außerdem muss unter „Power“ noch die Schnellstart-Funktion deaktiviert werden, damit das Telefon auch richtig herunterfährt. Wenn es aus ist, hält man die Power- und die Leiser-Taste gleichzeitig gedrückt. Im Menü wählt man mit der Lauter- und Leiser-Taste den Eintrag „Fastboot“ aus und bestätigt mit der Power-Taste. Dann muss das Telefon noch mit einem USB-Kabel mit dem Rechner verbunden werden.

Ist das Telefon im Fastboot-Modus, kann man als Linux-User Step 4 überspringen, die Tools wurden schon weiter oben installiert, und macht weiter bei Step 5. Die folgenden Schritte sind zwar für die Microsoft Shell beschrieben, die Befehle funktionieren aber auch in der Bash als Root oder mit dem sudo-Befehl. Den Token zur Identifizierung des Bootloaders erhält man mit

sudo fastboot oem get_identifier_token

Den Token muss man inklusive

<<<< Identifier Token Start >>>>

und

<<<<< Identifier Token End >>>>>

ausschneiden, aber ohne das INFO oder (bootloader) davor. Das Ergebnis fügt man dann in das Feld „My Device Identifier Token“ und schickt ihn an HTC. Als Antwort erhält man eine E-Mail mit der Datei „Unlock_code.bin“, die man in sein Arbeitsverzeichnis kopiert. Anschließend führt man folgenden Befehl im Terminal aus:

sudo fastboot flash unlocktoken Unlock_code.bin

Der Bootloader ist jetzt entsperrt und das Flashen kann beginnen.

2. Schritt – ClockworkModRecovery installieren

Das ClockWorkModRecovery ist mittlerweile eines der am häufigsten verwendeten Recoverys unter Android. Ein Recovery ist ein menügeführtes Wiederherstellungssystem für Androiden, die nicht nur verschiedene Funktionen zum Wiederherstellen anbieten, sondern auch zum Einspielen neuer Firmware. für das HTC One X kann man das ClockWorkModRecovery herunterladen. Aus der Zeile „HTC One X (GSM)“ habe ich die Datei recovery-clockwork-touch-5.8.4.0-endeavoru.img genommen, wobei sich die Versionsnummer mittlerweile geändert haben kann, und mit dem Befehl

sudo fastboot flash recovery recovery-clockwork-touch-5.8.4.0-endeavoru.img

auf das Telefon geflasht. Das Telefon muss vorher wieder im Fastboot-Modus sein (im ausgeschalteten Zustand Power- und Leiser-Taste gleichzeitig drücken und mit den Lautstärke-Tasten im Menü den Eintrag „Fastboot“ wählen) und über das USB-Kabel mit dem Rechner verbunden werden.

Spätestens jetzt sollte man über ein Backup des Betriebssystems auf dem Smartphone nachdenken. Alles was einem wichtig ist, sollte man vorher sowieso gesichert haben, aber auch ein Image kann im Fehlerfall helfen, das System wieder herzustellen. Dazu navigiert man im Fastboot-Menü auf den Punkt „Recovery“. Jetzt wird das ClockworkModRecovery geladen und aus dem Menü wählt man „backup and restore“ und dann „backup“. Wenn das Backup gemacht ist, startet man das Telefon nochmal neu, verbindet es mit dem Rechner und kopiert es aus dem Dateisystem des Telefons auf den PC. Ich habe das mit USB-Kabel und dem Dateibrowser Thunar in XFCE gemacht, und mich gewundert, dass Thunar beim Kopieren nicht die Dateinamen behält, sondern Zahlen daraus macht. Das Backup ist im Ordner „clockworkmod“ auf der obersten Ebene der „SD-Karte“. Nachdem ich den Ordner kopiert hatte, hieß er etwa „54321“ und die Datei „54321.img“. Das ist ein Bug in gvfs-mtp, das Thunar dabei hilft, Dateien via MTP von einem Androiden auf einen Linux-PC zu kopieren. Ein anderer Weg das Image inklusive richtigen Dateinamen zu kopieren, wäre AirDroid, oder die Installation eines SSH-Clients oder -Server auf Telefon und/oder PC. Sollte beim Flashen etwas schief laufen, kann man die Image-Datei mittels „Restore“ aus dem ClockworkModRecovery wieder herstellen.

3. Schritt – CyanogenMod installieren

Ich habe mich für das aktuell letzte stable Release von CM 10.2 entschieden und heruntergeladen. Dazu habe ich die passenden Google Apps gewählt. Nach dem Download wird die Datei boot.img aus der Zip-Datei mit CM 10.2 extrahiert:

unzip -p cm-10.2.0-endeavoru.zip boot.img > boot.img

Die Datei boot.img sollte eine Größe von etwa 5 MB haben. Sollte die tatsächliche Größe stark davon abweichen, ist beim Entpacken irgendetwas schief gelaufen und man sollte sich den Befehl zum Entpacken nochmal genauer angucken. Die beiden Zip-Dateien mit CM 10.2 und den Google Apps werden auf die „SD-Karte“, also dem externen Speicher des One X kopiert, zum Beispiel auf die oberste Ebene oder unter den Ordner „Downloads“. Dazu das Telefon starten und die Dateien übertragen. Nach dem Kopieren wird das Telefon ausgeschaltet, in den Fastboot-Modus gebootet und das USB-Kabel angesteckt. Das Boot-Image wird mit folgendem Befehl auf das Telefon geflasht:

sudo fastboot flash boot boot.img

Wenn der Befehl mit einer Erfolgsmeldung beendet ist, wählt man „HBOOT“ aus dem Fastboot-Menü und anschließend „RECOVERY“. Es startet wieder ClockworkModRecovery, in dem man den Eintrag „wipe data/factory reset“ wählt und bestätigt. Ist das erledigt wählt man „install zip from sdcard“, dann „choose zip from sdcard“ und wählt die Zip-Datei mit CM 10.2, indem man mit den Lautstärke-Tasten hoch oder runter geht und die Auswahl mit der Power-Taste bestätigt. Nach der Installation wählt man nochmal „choose zip from sdcard“ und wählt dieses Mal die Zip-Datei mit den Google Apps. Ist das erledigt geht man im Menü zurück, bis man „reboot system now“ wählen kann. Der erste Start von CyanogenMod dauert nach einer frischen Installation etwas länger, danach kann man sein Google-Account anmelden und das Telefon wieder einrichten.

Schluss

Sollte beim Flashen etwas schief laufen, sollte man auf jeden Fall die Nerven behalten und sich die Fehlermeldung notieren, falls es eine gibt. Nach einer Recherche im Internet findet man häufig die Lösung. Der Lohn der Mühe ist ein vom Hersteller und seiner Update-Politik, Zwangs-Apps und Verdongelung freies Betriebssystem. Als einziger Wermutstropfen ist mir bislang nur aufgefallen, dass die vollstänfige Verschlüsselung des Telefons nicht funktioniert. Das Startbild der Verschlüsselung ist zwar kurz zu sehen, sie beginnt aber nicht. Stattdessen bootet das Handy erneut. Dafür habe ich jetzt die Chance, Debian auf den Androiden zu installieren, zum Beispiel Lil’Debi.

Geschrieben in Android, Gnu/Linux