LineageOS 18.1 auf dem Samsung Galaxy A5 (2017) installieren
Die Installation von LineageOS wird hier schrittweise am Beispiel des Samsung Galaxy A5 (2017) (Codename: a5y17lte) beschrieben, wobei das Gerät für Teile dieses Vorgangs an einen PC mit Linux Mint angeschlossen wird. Diese Anleitung sollte daher auch mit anderen, auf Debian basierenden Linux-Distributionen funktionieren (wie beispielsweise Ubuntu). Die Installation mit Hilfe von Windows oder macOS wird hier nicht beschrieben. Bei der Installation auf anderen Geräten können einzelne Schritte von diesem Beispiel erheblich abweichen.
► Übersichtsseite von LineageOS zum Samsung Galaxy A5
► Offizielle Installationsanleitung von LineageOS
Android aktualisieren
Für die Installation von LineageOS ist es erforderlich, das vorinstallierte Android zunächst auf die neueste Version 8.0 zu aktualisieren. Dies erfolgt über Einstellungen ► Software-Update ► Updates manuell herunterladen. Die aktuelle Versionsnummer von Android kann über Einstellungen ► Telefoninfo ► Softwareinformationen angezeigt werden.
Bootloader entsperren
Die alternative Firmware wird mit dem Tool Team Win Recovery Project (TWRP) auf das Gerät geflasht. TWRP wird durch einen besonderen Bootvorgang geladen. Dazu muss der Bootloader des Gerätes entsperrt sein (unlocked), was herstellerseitig in der Regel nicht der Fall ist und daher manuell nachgeholt werden muss.
Zunächst muss man auf dem Gerät die Entwickleroptionen aktivieren: Einstellungen ► Telefoninfo ► Softwareinformationen, dann 7× auf die Option Buildnummer tippen.
Dann aktiviert man auf dem Telefon die Option Einstellungen ► Entwickleroptionen ► OEM-Entsperrung.
Zusätzliche Pakete installieren
Für einzelne Schritte dieser Anleitung sind folgende zusätzliche Pakete erforderlich, die in der Regel auf dem Desktop-Rechner nachinstalliert werden müssen (s. auch ADB und Heimdall):
sudo apt-get install adb heimdall-flash git python3 python3-pip
Installation per apturl
Unter Einstellungen ► Entwickleroptionen aktiviert man nun die Option USB-Debugging.
Um die Funktion von adb zu testen, verbindet man das eingeschaltete Gerät über das USB-Kabel mit dem Desktop-Rechner, öffnet dort das Terminal (Strg+Alt+T) und gibt dort den Befehl adb devices
ein. Die Ausgabe sollte ungefähr so aussehen:
List of devices attached
* daemon not running; starting now at tcp:5037
* daemon started successfully
5210e5eb420434c1 unauthorized
Auf dem Telefon erscheint ein Dialog ›Zugriff auf Telefondaten erlauben?‹, über den man den USB-Zugriff vom Desktop-Rechner dauerhaft erlauben muss, um die folgenden Befehle ausführen zu können.
Um die Funktion von heimdall zu prüfen, geht man folgendermaßen vor:
Download-Modus: Am Telefon bootet man nun mit bestehender USB-Verbindung in den sogenannten Download-Modus, indem man die Tasten Lautstärke ▾+Home+Power für ca. 8 Sekunden gedrückt hält, bis eine Warnmeldung bezüglich der Installation eines Custom OS erscheint. Diese bestätigt man durch Drücken von Lautstärke ▴. Es erscheint die Anzeige von ›Downloading…‹
Auf dem Desktop-Rechner gibt man dann im Terminal den Befehl heimdall print-pit
ein. Das Gerät sollte nun erneut booten und ist damit bereit für die Installation von TWRP. Ist dies nicht der Fall, war der Vorgang fehlerhaft und muss wiederholt werden.
Zunächst werden aber sämtliche für die Installation erforderlichen Dateien heruntergeladen.
TWRP herunterladen
► Offizielle Installationsanleitung von TWRP
TWRP (Team Win Recovery Project) ist eine alternative Recovery-Software, mit der LineageOS auf das Smartphone geflasht werden kann. Außerdem lässt sich mit diesem Tool ein Backup des vorhandenen Android-Systems erstellen, um es bei Bedarf wiederherstellen zu können.
Jetzt lädt man sich von der TWRP-Website eine aktuelle Version des Tools (ca. 32 MB, nicht das tar-Archiv) sowie dessen digitale Signatur und die SHA256-Prüfsummendatei herunter.
Um die Signatur prüfen zu können, wird außerdem noch der öffentliche Schlüssel benötigt, den man hier herunterladen muss. Nachdem man mit cd Downloads
in den Download-Ordner gewechselt hat, kann dieser Schlüssel importiert werden:
gpg --import public.asc
Nun kann die TWRP-Datei geprüft werden (Versionsnummer ggf. anpassen):
gpg --verify .img.asc .img
Die Ausgabe sollte folgendermaßen aussehen, wenn die TWRP-Datei eine korrekte Signatur aufweist. Die Warnung besagt lediglich, dass der Fingerabdruck des öffentlichen Schlüssels nicht verifiziert wurde (s. hier).
gpg: Signatur vom Mi 07 Apr 2021 21:15:44 CEST
gpg: mittels RSA-Schlüssel 95707D42307C9D41D09BF7091D8597D7891A43DF
gpg: Korrekte Signatur von "TeamWin <admin@teamw.in>" [unbekannt]
gpg: WARNUNG: Dieser Schlüssel trägt keine vertrauenswürdige Signatur!
gpg: Es gibt keinen Hinweis, daß die Signatur wirklich dem vorgeblichen Besitzer gehört.
Haupt-Fingerabdruck = 9570 7D42 307C 9D41 D09B F709 1D85 97D7 891A 43DF
Anschließend wird die SHA256-Prüfsumme der Datei mit der Angabe in der Prüfsummendatei verglichen:
sha256sum -c .img.sha256
Das Ergebnis sollte hier lauten: .img: OK
LineageOS-Abbild herunterladen
Als nächstes lädt man sich die aktuellste Version der Firmware sowie die SHA256-Prüfsumme der Datei bei LineageOS herunter und überprüft dann die Prüfsumme, um die Integrität des Downloads sicherzustellen (Versionsnummer ggf. anpassen):
wget .zip -P ~/Downloads
wget .zip?sha256 -P ~/Downloads
sha256sum -c .zip?sha256
Das Ergebnis sollte hier lauten: .zip: OK
Die digitale Signatur der Datei überprüft man mit folgenden Befehlen
(s. Verifying Build Authenticity):
git clone https://github.com/LineageOS/update_verifier
cd update_verifier
pip3 install -r requirements.txt
python3 update_verifier.py lineageos_pubkey ~/Downloads/.zip
Das Ergebnis sollte hier lauten: verified successfully
Mit cd ..
wechselt man nun wieder zurück in den Download-Ordner.
GApps herunterladen (optional)
Bei Bedarf können die Google Apps (Google Play Store, Google Mail, Google Maps etc.) als externes Paket zusätzlich installiert werden. Dazu lädt man die entsprechende Datei sowie die MD5-Prüfsumme bei opengapps.org herunter (ARM64, Android 11, nano).
Die Prüfsumme vergleicht man mit folgendem Befehl (Versionsnummer ggf. anpassen):
md5sum -c .zip.md5
Das Ergebnis sollte hier lauten: .zip: OK
TWRP flashen
Jetzt bootet man das Smartphone wieder wie oben beschrieben in den Download-Modus.
Mit folgendem Befehl wird TWRP nun auf das Telefon geflasht:
heimdall flash --RECOVERY .img --no-reboot
Sobald im Terminal die Meldung RECOVERY upload successful erscheint, kann nach TWRP gebootet werden. Dazu schaltet man das Gerät zunächst aus, indem man Lautstärke ▾+Power für etwa 8 bis 10 Sekunden gedrückt hält und lässt diese unmittelbar los, sobald der Bildschirm schwarz wird.
Dann bootet man mit Lautstärke ▴+Home+Power in den Recovery-Modus (TWRP), um LineageOS auf das Telefon zu flashen.
LineageOS-Abbild flashen
Mit adb devices
überprüft man jetzt, ob die USB-Verbindung zum Gerät besteht.
Am Startbildschirm von TWRP wischt man zunächst über Swipe to Allow Modifications.
Vor dem eigentlichen Flashen muss der Speicher des Geräts zunächst bereinigt werden. Dazu wählt man im Hauptmenü von TWRP die Option Wipe, dann Format Data und bestätigt den Vorgang durch Eingabe von yes.
Über die Zurück-Taste des Geräts gelangt man zurück zum Hauptmenü und wählt dort Wipe ► Advanced Wipe, wählt hier die Partitionen Cache und System und wischt dann über Swipe to Wipe.
Sideload starten: Anschließend geht man zurück zum Hauptmenü, wählt dort Advanced ► ADB Sideload und wischt über Swipe to Start Sideload, um mit der Übertragung der zip-Dateien zu beginnen.
Am Desktop-Rechner erfolgt nun die Übertragung von LineageOS mit folgendem Befehl im Terminal:
adb sideload .zip
Sobald im Terminal die Bestätigung der erfolgten Übertragung erscheint, kann fortgefahren werden. Die GApps werden anschließend (falls gewünscht) mit diesem Befehl übertragen (zuvor wieder Sideload starten):
adb sideload .zip
Sind alle benötigten Datein auf das Gerät übertragen worden, wird das Gerät nun mit adb reboot
neu gestartet, was beim ersten Booten ein paar Minuten dauern kann, da das System neu eingerichtet wird. Das USB-Kabel kann jetzt entfernt werden.
Fertig!