Kompatibilitätsproblem bei der Installation von GrapheneOS auf Pixel 6 unter Linux

Hallo
Vorab muss ich euch warnen. Meine Kenntnisse in IT sind eher begrenzt. Wenn man dass mal so ausdrücken möchte.
Ich habe mir heute ein Pixel 6 gekauft und möchte dort darauf GrapheneOS installieren. Ich habe einige YT Videos dazu geschaut und Anleitungen im Web dazu gelesen. Das erschien mir alles ziemlich simpel und für mich machbar.
Es hat auch alles problemlos funktioniert, bis zu dem Punkt an dem ich das Pixel mit dem Rechner verbinden muss. Also in der Installationsanleitung von GrapheneOS ist beginnt mein Problemdas mit dem Punkt „Unlocking the Bootloader“. Wenn ich den entsprechenden Button betätige findet das Programm mein Pixel nicht.
Bei Recherche zu dem Problem hab ich einen Hilfe- bzw Infotext gefunden der mir mit meinem mangelnden Wissen nicht wirklich weiterhilft. Den ich übersetzt mal aus den Hilfeseiten der GrapheneOS Org. zitieren möchte:

„Unter Linux verfügt GNOME über einen Fehler, der Probleme mit dem Installationsprozess verursacht.Es erkennt das Telefon fälschlicherweise im Fastboot -Modus oder im Fastbootd -Modus als MTP -Gerät und behauptet exklusive Steuerung darüber.Dadurch blockiert der Installationsprozess aus dem Verfahren.Wir haben noch keine spezifischeren Anweisungen, um dieses Problem zu umgehen, als GNOME oder eine andere Desktop -Umgebung zu vermeiden, die die GNOME -Dienste wie GVFs ausführt.Wir erwarten, dass das Problem in GVFs liegt. Daher sollte das Beenden aller Dienste funktionieren, aber Sie müssen sie maskieren oder sie werden automatisch neu starten.“

Ich verstehe leider nur einen Bruchteil. Also GNOME vermeiden kann ich nicht. Hab nur Linux Mint. Ich arbeite bei der Installation mit dem „Brave Browser“. Ich habe ein „sudo update und upgrade“ durchgeführt. Aber wenn ich es richtig verstehe hängt das Problem eher mit einem Gnomedienst namens GVS zusammen. Das übersteigt jetzt meine Fähigkeiten.
Es wäre echt nice wenn mir jemand einen Tipp geben könnte^^

Ich hab kein Gnome, kein Pixel und kein Graphene, kann Dir also konkret bei Deinem Problem nicht weiterhelfen.

Aber Du kannst jederzeit Dir ein beliebiges Linux-ISO auf einen USB-Stick kopieren und booten. Du kannst auch Software installieren, allerdings ist die nach einem reboot wieder weg (es sei denn, Du findest eine Variante, wo Du die Installation verändern kann, das läuft häufig unter der Bezeichnung „persistierend“). Für Deinen Zweck reicht vermutlich einmal booten. Natürlich ein Linux ohne Gnome und am besten eins, was nach den Angaben bei Graphene funktioniert. Vielleicht Kubuntu?

Edit: Mint hat doch gar kein Gnome? Sondern Cinnamon oder Mate? Aber vermutlich nutzen die trotzdem gvfs. Egal, bei KDE wird gvfs nicht genutzt, deshalb mein Hinweis auf Kubuntu.

1 „Gefällt mir“

Das ist natürlich möglich :see_no_evil:
Du meinst Kubuntu über eine VM nutzen? Wenn nach einem Reboot wieder alles weg ist das doch eigentlich kein Problem. Hauptsache das OS ist auf dem Handy. Danke für den Tipp. Werd gleich mal schauen ob ich das so umsetzen kann

In einer VM hast Du Probleme, auf den USB-Port zuzugreifen. Das geht, aber vermutlich kriegst Du das nicht hin.

Am einfachsten ist es, ein Installations-ISO runterzuladen und auf nem USB-Stick zu speichern. Das ist meistens auch gleichzeitig ein Live-System. Dann Rechner runterfahren und neu booten, aber jetzt vom USB-Stick (als ob Du neu installieren willst). Dann das Handy anschließen usw.

1 „Gefällt mir“

Ich habe hier eine Liste der unterstützten Systeme:

  • Windows 10
  • Windows 11
  • macOS Big Sur (11)
  • macOS Monterey (12)
  • macOS Ventura (13)
  • Arch Linux
  • Debian 10 (buster)
  • Debian 11 (bullseye)
  • Ubuntu 20.04 LTS
  • Ubuntu 22.04 LTS
  • Ubuntu 22.10
  • ChromeOS
  • GrapheneOS
  • Google Android (stock Pixel OS) and other certified Android variants
    Damit fällt Kubuntu wieder raus, oder?
    Ist aber auch seltsam dass mein System dabei, aber eigentlich nicht wirklich kompatibel ist

Da Debian auf der Liste ist, könntest Du auf diese Seite gehen https://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/current-live/amd64/iso-hybrid/ und z.B. debian-live-11.6.0-amd64-kde+nonfree.iso nehmen. Das auf ne DVD oder auf einen USB stick „brennen“ - beim USB stick nicht einfach draufkopieren, sondern eine geeignete Software zum Erstellen von Installations-Sticks nehmen (ich glaub da ist bei Mint was dabei, könnte USB Creator heißen oder Ventoy - dd geht auch, gibt Anleitungen dazu).

Vermutlich geht Kubuntu auch, obwohl es nicht auf der Liste steht.

1 „Gefällt mir“

Besteht die Gefahr dass ich mein eigentliches Mint damit lösche oder so?
Ich verstehe dass jetzt so, dass ich dann Debian auf dem Stick boote ähnlich einer VM.
Wenn ich alles erledigt habe fahre ich Debian runter und wenn ich dann den Lappy neu starte läuft alles wie gewohnt.?

Nein, du installierst das System nicht.

So kann man es ausdrücken. Technisch gesehen bootet dein Computer nicht das installierte System, in deinem Fall Mint, von der Festplatte, sondern jenes auf dem USB-Stick. Dadurch hat das System auch auf alle Schnittstellen, wie den USB-Port, Zugriff. In einer VM kann man den USB-Port des Host-Systems der VM auch zugänglich machen, ist aber etwas kniffliger. Wenn du deinen Computer anschließend neustartest, startet er normal Mint (sofern der USB-Stick vor dem erneuten hochfahren entfernt wurde).

1 „Gefällt mir“

Hallo @Ayabo
entschuldigt, wenn ich hier etwas Haare spalten möchte: Es ist nicht geplant, das Mint zu löschen, aber eine Gefahr, das zu tun, könnte an zwei Stellen vorhanden sein:

  • Wenn Du das Debian Image bootfähig auf den USB Stick schreibst, musst Du sicher sein, dass Du es nicht aus Versehen auf Deine Festplatte schreibst. (Ich meine hier nicht das Herunterladen auf Deine Festplatte, das ist genauso ungefährlich wie jeder andere Download)

  • Wenn Du das Debian von dem USB Stick startest, musst Du mit dem laufenden Debian arbeiten, Du darfst damit nicht Debian installieren

Ich will hier nicht den Teufel an die Wand malen - nur die Frage, ob eine „Gefahr besteht“ realistisch beantworten.

1 „Gefällt mir“
Screenshot

Screenshot_20221221_092741

Nach dem Booten vom USB-Stick siehst du folgenden Screen. Wähle einfach einer der ersten beiden Variante aus, damit machst du nichts verkehrt. Solange du nichts mit „Installer“ wählst, wirst du nicht ausversehen dein Mint löschen.

1 „Gefällt mir“

Danke der Infos euch allen. Ich werde mich jetzt nochmal daran versuchen. Neuer Tag, neues Glück.
Ihr sitzt wahrscheinlich kopfschüttelnd vor dem Bildschirm dass ein IT Neandertaler sowas machen will, bzw macht. Aber die Umstände hinnehmen will ich einfach nicht. Und wenn ich manchmal Wochen dafür brauche Ideen umzusetzen oder Probleme zu lösen, meist gelingt es mir dann auf irgendeiner Weise :muscle:

Das finde ich gut und dazu sind solche Foren ja da: wir wollen, daß viel mehr Benutzer bei der Arbeit mit den Rechenknechten nachdenken und eben nicht nur Software von der Stange konsumieren und sich als willfährige Datenspender hergeben.

Also weiterhin: viel Erfolg, bei der Eroberung des Wissens!

1 „Gefällt mir“

Nein, wie finden das absolut super und wünschen uns, mehr Leute würden so denken und handeln wie Du! Dann wäre es normaler, besser unterstützt (dokumentiert usw.) und für alle einfacher! Und am Ende würde das Geschäftsmodell mit den privaten Daten hoffentlich einfach nicht mehr funktionieren und das eigentliche Problem wäre gelöst.

1 „Gefällt mir“

Jo. Das ist jetzt voll in die Hose gegangen :face_with_spiral_eyes:.
Hab während die Isodatei geladen hat noch ein Video geschaut in dem erwähnt wurde dass das flashen auch mit einem anderen Android geht. Super. wäre ja erstmal unkomplizierter. Handys verbunden und Pixel wurde von dem Webinstaller erkannt. Geilo. Konnte den Bootloader unlocken, Release downloaden und bei dem Button „Flash Release“ hat sich auch was getan. Als sich dann eine ganze Weile nix mehr getan hat Handy neu gestartet, Google-Logo erschienen aber das war’s dann auch :scream:
Bootloader aufgerufen und Recoverymode gestartet. Wieder Google-Logo erschienen und danach ist toter Android mit Info „no command“ zu sehen. Schweissgebadet recherchiert und mit Tastenkombi im Recoverymode gelangt. Dort steht oben nun „GrapheneOS Recovery“?! Also ist Graphene wohl doch irgendwie auf dem Handy. Will jetzt nicht noch mehr falsch machen. Hab ein Hilfegesuch gegen einer Aufwandsentschädigung von 25 Euro in einem anderen Forum gepostet, für das erfolgreiche in Gang bringen von Graphene (gilt jetzt auch für hier^^)
Wenn ich bis nächste Woche Dienstag nichts erreichen kann werde ich versuchen das Pixel im Mediamarkt nochmal umzutauschen/ zurückzugeben. Wäre zumindest noch innerhalb einer Woche. Hoffe dass ich das zumindest dann noch hinkrieg

Vielleicht hilft die CLI Installation weiter: https://grapheneos.org/install/cli

Ist sicherlich etwas komplizierter, aber was anderes fällt mir nicht ein. Den Part mit OEM Unlock einfach überspringen.

Die andere Möglichkeit wäre zu versuchen das factory image zu flashen und erneit gtaphene os. Aber um die CLI kommst du vermutlich nicht herum.

1 „Gefällt mir“

Eine Suche nach

GrapheneOS Recovery reboot „no command“

findet ne ganze Menge, das solltest Du Dir erstmal anschauen, bevor Du @o0ps Rat folgst. Etliche sind mit „solved“ gekennzeichnet, also kein Grund zu verzweifeln.

Aber da steht auch: „Conclusion: Don’t use the webinstaller!“

Sehr witzig auch diese Lösung:

No worries fixed now! I just let my phone battery die, charged it till 40% and then turned it on and it worked.

Das soll kein Ratschlag sein, ich hab von Graphene keine Ahnung.

2 „Gefällt mir“

Danke der Anteilnahme und der Hinweise. Schaue ich mir nach der Arbeit an. In der „Paniksituation“ sieht man manchmal den Wald vor lauter Bäumen nicht. Mit Sicherheit könnte ich an einem freien Tag, vormittags mit frischem Kopf die Sache effektiver angehen. Das ist leider erst wieder nächsten Freitag. Mittlerweile bereue ich dass ich so ungeduldig bin und nicht gewartet habe den Flash am Windows PC meines Vaters machen zu können. Ich werde heute Abend mal euren Hinweisen folgen.
Ich wünsche euch einen schönen Tag :vulcan_salute:

Ich möchte nicht für meine Version werben, möglicherweise hat die Installation schon funktioniert und dein Pixel braucht nur etwas Starthilfe. Sollte die Suche im Internet keine weitere Lösung bieten, hier eine kurze Zusammenfassung für CLI. Da Mint eine auf Ubuntu basierende Distribution ist, könnte es möglicherweise auch mit Mint funktionieren. In einem kurzen Test in einer virtuellen Machine konnte ich zumindest alle benötigten Programme installieren.

  1. Öffne das Terminal
  2. Führe folgende Befehle in dieser Reihenfolge aus:
sudo apt install libarchive-tools
curl -O https://dl.google.com/android/repository/platform-tools_r33.0.3-linux.zip
echo 'ab885c20f1a9cb528eb145b9208f53540efa3d26258ac3ce4363570a0846f8f7  platform-tools_r33.0.3-linux.zip' | sha256sum -c
bsdtar xvf platform-tools_r33.0.3-linux.zip
export PATH="$PWD/platform-tools:$PATH"
  1. Nun prüfst du, ob die fastboot-Version korrekt ist:
fastboot --version

Folgende Auskunft sollte dann im Terminal erscheinen:
fastboot version 33.0.3-8952118
Installed as /pfad/zu/platform-tools/fastboot

Wenn dem so ist, fahre fort. Führe folgende Zeile im Terminal aus:

  1. sudo apt install android-sdk-platform-tools-common

  2. Starte in den fastboot-Modus/Bootloader-Interface. Drücke hierzu zunächst die Volume down Taste und halte diese gedrückt. Dann drücke die Power on Taste zum starten. Die Volume down Taste bleibt solange gedrückt. Du solltest jetzt folgenden Screen sehen:

  3. Verbinde nun das Pixel mit deinem PC

  4. Führe folgenden Befehl aus:

fastboot flashing unlock

Die Antwort auf diesen Befehl sollte entweder lauten, dass der Bootloader bereits entsperrt ist oder er nun entsperrt wurde. Bei Device state sollte unlocked in rot stehen. Wenn nicht, einfach Gerät ausschalten und erneut in den fastboot-Modus/Bootloader-Interface booten.

  1. Nun führst du folgende Zeilen nacheinander aus:
sudo apt install signify-openbsd
alias signify=signify-openbsd
  1. Download der Dateien.
curl -O https://releases.grapheneos.org/factory.pub

Der Inhalt sollte dieser sein:

untrusted comment: GrapheneOS factory images public key
RWQZW9NItOuQYJ86EooQBxScfclrWiieJtAO9GpnfEjKbCO/3FriLGX3

Findest du heraus, in dem du einfach

nano factory.pub

ausführst. Danach schließt du mit STRG + x.

  1. Nun muss das entsprechende Abbild heruntergeladen werden. Für Pixel 6 wäre das:
curl -O https://releases.grapheneos.org/oriole-factory-2022122000.zip
curl -O https://releases.grapheneos.org/oriole-factory-2022122000.zip.sig
  1. Nun folgendes Kommando ausführen:
signify -Cqp factory.pub -x oriole-factory-2022122000.zip.sig && echo verified

Wenn verified erscheint, fahre fort.

  1. Nun entpacken wir das Archiv:
bsdtar xvf oriole-factory-2022122000.zip
  1. Wechseln in den entpackten Ordner:
cd oriole-factory-2022122000
  1. Führe folgende Datei aus, in dem wir dies ins Terminal eingeben und Enter drücken:
./flash-all.sh

Wenn das durchgelaufen ist, sollte grapheneOS installiert sein.

Boah, geil. Das sieht idiotensicher aus. Das probiere ich als allererstes aus. Vielen Dank für die Mühe die du dir gibst mir zu helfen :man_bowing:

Das Problem konnte gelöst werden. Hier zur Dokumentation der Lösungsweg, der zum Erfolg geführt hat:

Die Lösung sieht die Erstellung einer neuen Datei vor, die genauere udev-Regeln explizit für das Gerät definiert. Durch lsusb müsste exakt diese ID 18d1:4ee0 angezeigt werden.
Sollte nach dem Doppelpunkt nicht 4ee0 stehen, so muss diese vor dem Ausführen diese unter ATTR{idProduct}==„Product_ID“ geändert werden.

Folgender Code wurde komplett in das Terminal eingegeben und ausgeführt:

sudo cat > /usr/lib/udev/rules.d/51-android-extra.rules << _EOF
# Skip this section below if this device is not connected by USB
SUBSYSTEM!="usb", GOTO="android_extra_usb_rules_end"

LABEL="android_extra_usb_rules_begin"
# Devices listed here in android_usb_rules_{begin...end} are connected by USB
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4ee0", ENV{adb_user}="yes"

# Enable device as a user device if found
ENV{adb_user}=="yes", MODE="0660", GROUP="plugdev", TAG+="uaccess"

LABEL="android_extra_usb_rules_end"
_EOF

Quelle: https://forums.linuxmint.com/viewtopic.php?p=2160762#p2160762

Desweiteren wurde grapheneOS nicht mittels dem installationsscript (flash-all.sh) automatisch installiert, sondern jeder einzelne Schritt des Scripts manuell. Dabei nach jedem Schritt warten, bis das Handy wieder in den bootloader gestartet hat. Sollte der Computer das Handy nach einem Schritt nicht erkennen, einfach austecken und erneut mit dem Computer verbinden. Ebenso ist jede Zeile einzeln auszuführen. Die nachfolgende Anleitung dient als Beispiel, da sich vorallem die Dateibezeichnungen nach einem Update verändern können. Sie wurde anhand der oriole-factory-2022122000.zip erstellt.

Schritt 1

fastboot flash --slot=other bootloader bootloader-oriole-slider-1.2-9152140.img
fastboot --set-active=other
fastboot reboot-bootloader

Schritt 2

fastboot flash --slot=other bootloader bootloader-oriole-slider-1.2-9152140.img
fastboot --set-active=other
fastboot reboot-bootloader

Die dopplung ist korrekt. Wird auch im Script so gemacht.
Schritt 3

fastboot flash radio radio-oriole-g5123b-107485-221101-b-9242015.img
fastboot reboot-bootloader

Schritt 4

fastboot erase avb_custom_key
fastboot flash avb_custom_key avb_pkmd.bin
fastboot reboot-bootloader

Schritt 5

fastboot oem uart disable
fastboot erase fips
fastboot erase dpm_a
fastboot erase dpm_b
fastboot snapshot-update cancel
fastboot -w --skip-reboot update image-oriole-2022122000.zip
fastboot reboot-bootloader