Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Ich verwende postmarketOS auf einem Pocophone F1 und würde gern bald den Wechsel zum Shift6mq wagen. Zugleich würde ich gern mein altes Android-Handy stilllegen; schwatzt mir zu viel mit Google ...
Daher meine Frage: Kann man das Shift6mq schon als Dualboot betreiben, also postmarketOS plus ein weiteres Betriebssystem?
@amartinz jetzt doch mal mit getagge, die Email die uns zum ShiftOS G Update erreicht, reichts bei Lineage einfach die woechentlichen updates zu installieren oder sind eure vendor updates da nicht mit dabei? :/
Everything is in here.
On one partition the Android, on the other (installed as a system) Postmarketos. Remember the developer settings in the bootloader to switch Slots by need. Furthermore, almost every Android update must be installed from within the recovery. But before that you have to switch to the Postmarketos slot, otherwise it will be overwritten with Android. An OTA from the system may no longer be work without crashing the PMOs-Partition.
I can't say how it behaves with a shared user data partition. It gives me a headache. I think they are redirected to an external SD card for PostmarketOS.
But amartinz can probably provide information when he has finished his vacation .
Think I'll try that out when I get a chance. Actually seems solid.
greetz
Hier steht alles drin.
Auf einer Partition das Android, auf der anderen (als System installiert) Postmarketos. Denke an die Entwicklereinstellungen im Bootloader zum wechseln. Weiterhin muss dann quasi jedes Android-Update aus dem Recovery installiert werden. Vorher muss aber auf den Postmarketos-Slot gewechselt werden, da dieser sonst mit Android überschrieben wird. Ein OTA aus dem System darf nicht mehr gemacht werden.
Wie es sich mit einer gemeinsamen Userdata-Partition verhält kann ich nicht sagen. Die macht mir Kopfzerbrechen. Denke die lenkt man für PostmarketOS auf eine externe SD-Karte um.
Da kann aber wahrscheinlich @amartinz Auskunft geben wenn er seinen Urlaub beendet hat .
Denke bei Gelegenheit probiere ich das auch Mal aus. Wirkt eigentlich solide.
Das wäre mein nächster Link gewesen. Noch was bei der "Recherche" übersehen.
Edit: Die Anleitung enthält ja zwei Möglichkeiten. Vermutlich ist die komplette Installation in userdata sicherer als in die Super Partition (ist sowieso noch WIP) auch wenn es kein richtiges Dualboot erlaubt.
Aber der Experte kann da sicher mehr drüber sagen.
Die Installation nach userdata verhindert ein Betreiben von zwei Betriebssystemen.
(kein Android, pmOS hat 100+ GB zur Verfügung)
Wenn pmOS mit dem zweiten Installationsweg (also Installation in die super Partition) eingerichtet wird, nutzt Android die userdata partition und pmOS die restliche Größe innerhalb der super Partition.
(Dual Boot mit Android möglich, pmOS hat weniger Speicher zur Verfügung)
Ein Teilen von der userdata Partition ist nicht möglich wegen der File Based Encryption von Android.
Es ist möglich die logischen Partitionen innerhalb der super Partition zu resizen, damit pmOS mehr Platz zur Verfügung steht.
Edit: Oder/Und wie @@Lhotze geschrieben hat, eine externe SD-Karte einlegen und manuell via LVM oder einfach als extra Mountpoint für Speichernutzung einbinden.
Habe mir über pmbootstrap die letzte aktuelle 22.12er Version von PostmarketOS erstellt. Diese will ich jetzt auf Partition B installieren um das Gerät im Dualboot zu nutzen.
Das Funktioniert auch mit dem Kernel
auszuführen, bekomme ich im Fastbootd vom Stock-Recovery die Meldung "no such file or directory" und im LineageRecovery Fastbootd die Meldung "Not enough space to resize partition".
Mir leuchtet also ein, dass die System-Partition in der Super-Partition zu klein ist.
Gibt es dafür eine Möglichkeit das irgendwie anzupassen. Hab aus (optischen) und Speicherplatzgründen schon POSH als Interface gewählt.
Das Image wäre bei mir 2,6 GB im Gesamten. Im Abgleich zu den generic images von PMOS scheint das tatsächlich ein bissel zu groß. Das ist nur mit 1.6 GB gelistet.
Das Installationsproblem tritt unabhängig der gewählten Partition a/b auf.
Gibt es eine Möglichkeit, die selbst erstellten oder die generic Images manuell, ohne Nutzung von pmbootstrap zu flashen? Bspw. nur über Fastbootd mit dem Befehl
nachdem ich bereits das PMOS Bootimage über pmbootstrap installiert und die DTBO-Partition gelöscht habe? Will es jetzt auf Verdacht nicht ausprobieren, da das Gerät mein Daily Driver ist .
Ich weiß nicht, ob das hilft. Aber für den Fall, dass "pmbootstrap flasher" scheitert, ist bei einigen Devices beschrieben, wie man ein split-Image erzeugt und nur mit fastboot installiert. Für mein OnePlus 6 (s. https://wiki.postmarketos.org/wiki/OnePlus_6_(oneplus-enchilada)) hat z.B. Folgendes funktioniert:
pmbootstrap install --split
pmbootstrap export
fastboot erase dtbo
fastboot flash <PARTITIONSNAME-FUER-ROOT> /tmp/postmarketOS-export/oneplus-enchilada-root.img # man sieht oft userdata für <...>, aber das darf man bei Dualboot mit Android nie nehmen! s.u. Lhotze
fastboot flash vendor /tmp/postmarketOS-export/oneplus-enchilada-boot.img
fastboot reboot
Anderes Device und anderer Anwendungsfall (kein Dualboot): also Vorsicht
Außerdem ist das OnePlus 6 dem 6mq zwar in den Specs sehr ähnlich, hat aber bspw. keine eigene Recovery-Partition. Ist also von der Partitionierung ganz anders aufgebaut
Dafür musst du die super Partition anpassen, wie in den Spoilern bei dem Issue beschrieben.
Zuerst in den fastbootd Modus booten, danach die logischen Partitionen, welche nicht für pmOS benötigt werden, entfernen und die system Partition um den nun freigewordenen Wert resizen.
Als Beispiel für den Slot B:
Nach dem Resizen in den fastbootd Modus neustarten (einfach für den Fall der Fälle) und die super Partition Installationsanleitung befolgen:
Code:
$ # Flash rootfs to system_b partition
$ pmbootstrap flasher flash_rootfs --partition system_b
$ # Flash kernel to boot
$ pmbootstrap flasher flash_kernel --partition boot_b
$ # Reboot to bootloader, as erasing dtbo is not working in fastbootd
$ fastboot reboot bootloader
$ # Erase dtbo_b partition, as it conflicts with our mainline kernel
$ # Note: this operation takes some time to complete
$ fastboot erase dtbo_b
$ # Reboot into postmarketOS
$ fastboot reboot
Den hatte ich nicht auf dem Schirm. Vielen Dank dafür.
Kurze Verständnisfrage:
Wenn ich irgendwann dann wieder ein reguläres AndroidOS mit Dual-Partition auf beiden Partitionen betreiben wollen würde, müsste ich die Partitionierung dann wieder rückgängig machen mit
Den hatte ich nicht auf dem Schirm. Vielen Dank dafür.
Kurze Verständnisfrage:
Wenn ich irgendwann dann wieder ein reguläres AndroidOS mit Dual-Partition auf beiden Partitionen betreiben wollen würde, müsste ich die Partitionierung dann wieder rückgängig machen mit
Du kannst am laufenden Gerät lpdump aufrufen (für Beispiel Output siehe obiges Issue) und dann die Größen von den Partitionen im Slot A hernehmen, da sie identisch sind.
Kurzer Zwischenstand zum Dualboot Androis / PostmarketOS:
So wie es hier beschrieben ist habe ich mir zweimal mein System in den Abgrund geschossen. Konnte aber zumindest mal die Fehler ausmachen.
Bis zu dem Punkt, an dem die logische Systempartition vergrößert wird startet mein installiertes Android noch. Nach dem Vergrößern startet es nur noch in den Bootloader.
Wird es (nach dem Vergrößern, vor dem Installieren von PostmarketOS) dann über das "gegenüberliegende" Recovery in den Ursprungsslot installiert, läuft es wieder wie vorher mitsamt Nutzerdaten auf der Userdata-Partition.
Nachdem PostmarketOS in die Resized Partition geflashed wurde startet das Android ebenfalls nicht mehr. Hier kann es auch nicht mehr über das gegenüberliegende Recovery installiert werden. Wir kennen den mitgeteilten Fehler bereits: kInstallDeviceOpenError
Hier hilft dann nichts mehr als die Userdata-Partition zu Löschen bevor Android wieder installiert werden kann.
Fun Fact: Bei mir nutzte PostmarketOS doch tatsächlich nach seiner Installation auf der System-Partition den Speicher der Userdata-Partition. So habe ich mir das nicht vorgestellt.
Ein Wipe der Userdata mit nachträglicher Installation von Android in den ursprünglichen Slot machte übrigens, dass PostmarketOS nicht mehr bootete.
Meine Vermutung ist nun, dass entweder die Partition mit dem Befehl
zu krass vergrößert wird und eine andere Beschädigt oder meine über PostmarketOS erstellte Image fehlerhaft ist. Das würde aber nicht erklären, warum das Android nach dem Vergrößern der System-Partition nicht mehr läuft, wenn noch nichts in Richtung PostmarketOS installiert wurde.
Um meine Nerven zu schonen Probiere ich hier erst mal nicht mehr rum. Nervt hart jedesmal 1.000 Backups wieder einzuspielen .
Eigenartig, wir haben das Setup auf Test Geräten genau so laufen wie beschrieben.
Danke für das Feedback, gehört anscheinend nochmal gründlich durchgegangen, bevor es so übernommen wird.
Übrigens kann pmOS auch auf der SD-Karte installiert werden.
Das müsste ich auch mal testen und ggf Support dafür in den Bootloader miteinbauen, wenn es nicht auf Anhieb klappt.
Wäre dann etwas "sicherer" als mit der super Partition herumzuhandieren.
Kein Problem. Ich feiere euch und das 6mq ja für die Möglichkeiten. Da ich aber auch weiß, dass die alternativen Betriebssysteme (die ich tatsächlich unbedingt auf Herz und Niere geprüft haben will, weil da auch geile Sache mit drin sind) leider nur in manchen Teilen eine Alternative zum Marktführer Android darstellen (denke im Bereich Usability und bspw. Kamera und Mobile Anwendungen kommt momentan nix dran. Klar kann man sich mit Waydroid helfen, das wirkt aber weder wie Fisch und Fleisch) ist so ein Dualboot ne geile Sache.
Ich weiß auch nicht, wie viel Einfluss du auf den UB-Port-Installer hast und ob es da überhaupt die technischen Möglichkeiten für gibt. Der Installiert das Generic PostmarketOS immer in der Userpartition. Vll kann man das anpassen, dass man zusätzlich einen Slot auswählen kann und das dort als Systemimage installiert wird.
Würde die Installation für jeden ohne ein Linux (wobei die meisten Nutzer von Ubuntu Touch und PostmarketOS wahrscheinlich von dort kommen ) oder ohne großes Terminal und Fastbootwissen massiv vereinfachen und würde eine bereits vorhandene Ressource nutzen.
Gut zu Wissen ist übrigens auch, dass (mindestens) die Lineage-Zip eine veränderte Systempartition beim Flashen wiederherstellt. Man muss die Partitionen also beim Weg zurück nicht manuell einpflegen .
Ich weiß auch nicht, wie viel Einfluss du auf den UB-Port-Installer hast und ob es da überhaupt die technischen Möglichkeiten für gibt. Der Installiert das Generic PostmarketOS immer in der Userpartition. Vll kann man das anpassen, dass man zusätzlich einen Slot auswählen kann und das dort als Systemimage installiert wird.
Würde die Installation für jeden ohne ein Linux (wobei die meisten Nutzer von Ubuntu Touch und PostmarketOS wahrscheinlich von dort kommen ) oder ohne großes Terminal und Fastbootwissen massiv vereinfachen und würde eine bereits vorhandene Ressource nutzen.
Hört sich gut an. Aber kein Stress. Denke die wenigsten werden zeitnah auf PmOS umsteigen wollen und ich bleibe erstmal auf Android. Lässt die Nerven heiler, außerdem haben ich (nachdem ich mir mein System abgeschossen und neu aufgesetzt habe) demnächst noch ein LOS 20 zu testen .
Wow,... Ich hätte halt die Sorge, dass dir das "um die Ohren fliegt" wenn ein OTA-Update von OS-L in den inaktiven Slot installiert wird.
Du wirst jedes Update per Sideload in den richtigen Slot installieren müssen...
Spannend! Berichte bitte weiter, wie es dir damit ergeht
Ich hatte mal eine ähnliche Konstellation. Das Problem war, wenn ich das system ein wenig eingerichtet hatte, und dann das OS (SLOT) wechseln wollte ging das dann nur mit Full Wipe. Hatte ich den Full Wipe gemacht, und das andere OS (im anderen Slot) gewählt und ein bisschen eingerichtet, und wollte wieder den Slot wechseln (OS) ging das Spiel wieder von vorne los (Full Wipe). Aber villeicht hast du mehr Glück. Viel spass beim probieren.
In der Super Partition ist Platz vorreserviert, den pmOS aber nicht vollständig nutzt.
Du könntest somit beim Slot, in den du pmOS installiert hast, alle logischen Partitionen bis auf die system Partition, löschen und dann system resizen.
Dazu musst du in den fastbootd Modus booten, z.B.:
Im Bootloader starten via Lautstärke Rauf + Power Button
fastboot reboot fastboot
Danach kannst du die Größe der jeweiligen Partitionen rausfinden:
Anhand der Information, kannst du die ungenutzten Partitionen löschen und deine super Partition um die freigewordene Größe erweitern mit:
fastboot delete-logical-partition NAME
fastboot resize-logical-partition NAME SIZE
Code:
delete-logical-partition NAME
Delete a logical partition with the given name.
resize-logical-partition NAME SIZE
Change the size of the named logical partition.
Beispiel: Ich hab bei meinem derzeitigen Stand Android 13 im Slot A installiert, kann also folgende Partitionen für pmOS löschen:
product_b - 0x9110C000
system_ext_b - 0x152F2000
vendor_b - 0x1B842000
Größe von A hernehmen, da A == B
Beim Rechnen bin ich leider nicht so gut, deswegen bitte selbst überprüfen
Denke so geht das am Einfachsten (und sollte stimmen?):
product_b
echo "ibase=16; 9110C000"|bc
Ergebnis: 2433794048
system_ext_b
echo "ibase=16; 152F2000"|bc
Ergebnis: 355409920
vendor_b
echo "ibase=16; 1B842000"|bc
Ergebnis: 461643776
Also wurden dadurch 2433794048 + 355409920 + 461643776 = 3250847744 frei.
Dann nimmst du die Größe von deiner derzeitigen system_b Partition her, addierst 3250847744 und hast die neue Größe für das resize command.
Auch die userdata konnte ich erfolgreich verkleinern. Allerdings war ein Factory Reset notwendig, bevor Android die neue Größe korrekt erkannte. (Vielleicht gibt es auch eine sanftere Methode?)
Per parted resizepart hatte ich die userdata (in meinem Fall sda9) auf 1 GB reduziert und dann eine neue (sda10) erstellt. In pmOS passte alles:
Zum Test habe ich versucht das Dateisystem mit Nullen zu füllen, was in Ein-/Ausgabefehler mündete:
Code:
axolotl:/storage/self/primary/Download $ split -b 1000m < /dev/zero ; sync
split: xaa: I/O error
axolotl:/storage/self/primary/Download $ ls x* | wc -l
17
axolotl:/storage/self/primary/Download $ du -ch ./
16G ./
16G total
Obwohl 16G angezeigt wurden, vermute ich, dass vielleicht nicht wirklich so viel (und vor Allem über die Partition hinaus) geschrieben wurde.
Android konnte danach neu starten. Die x*-Dateien waren allerdings verschwunden und der Zugriff auf /storage/emulated defekt:
Code:
axolotl:/ $ ls /storage/emulated/
ls: /storage/emulated/: Permission denied
Interessant: Über den Dateimanager konnte ich eine apk (die noch von früher dort lag) erfolgreich installieren. Ich habe dann noch mit der Kamera Fotos gemacht. Diese schienen auf und ich konnte sie öffnen. Danach habe ich Android nochmals neu gestartet und kam an der Fehlermeldung "SHIFT Home keeps stopping" nicht mehr vorbei.
Nach einem Versuch das Problem per adb sideload <SHIFT6MQ>.zip zu behandeln war Android dann gar nicht mehr bootfähig und das Telefon schlug mir den besagten Factory Reset vor.
Nach dem Factory Reset funktionieren nun jedenfalls beide Systeme wie gewünscht!
Boote mal pmOS und mach alle Bootloader Updates via fwupd.
Code:
# Geräte listen und überprüfen, dass der Bootloader wohl aktualisierbar ist
fwupdmgr get-devices
# Nach Aktualisierungen suchen
fwupdmgr refresh
# Verfügbare Aktualisierungen anzeigen
fwupdmgr get-updates
# Aktualisierungen installieren
fwupdmgr update
Das Aktivieren des Entwicklermodus muss nicht per Bootloader gemacht werden, sondern das wird in der devinfo Partition abgespeichert und geladen.
Wenn es nicht angezeigt wird, ist der Bootloader zu alt, da das Feature erst ab einer gewissen Version von uns eingebaut wurde.
WARNING: UEFI capsule updates not available or enabled in firmware setup
See https://github.com/fwupd/fwupd/wiki/PluginFlag:capsules-unsupported for more information.
WARNING: This package has not been validated, it may not work properly.
shift SHIFT SHIFT6mq
│
└─H2xxxxxxxxxx:
Device ID: caXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Summary: UFS device
Current version: 03
Vendor: SKhynix (SCSI:SKhynix)
Serial Number: SKhynix
GUIDs: eXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX ← SCSI\VEN_SKhynix&DEV_H2xxxxxxxxxx
1XXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX ← SCSI\VEN_SKhynix&DEV_H2xxxxxxxxxx&REV_03
Device Flags: • Internal device
• Updatable
Code:
WARNING: UEFI capsule updates not available or enabled in firmware setup
See https://github.com/fwupd/fwupd/wiki/PluginFlag:capsules-unsupported for more information.
WARNING: This package has not been validated, it may not work properly.
Updating lvfs
Downloading… [***************************************]
Successfully downloaded new metadata: 0 local devices supported
Code:
WARNING: UEFI capsule updates not available or enabled in firmware setup
See https://github.com/fwupd/fwupd/wiki/PluginFlag:capsules-unsupported for more information.
WARNING: This package has not been validated, it may not work properly.
Devices with no available firmware updates:
• H2xxxxxxxxxx
No updatable devices
Mhm, der Bootloader taucht hier nicht auf.
Welche Version hat der Bootloader im Slot A?
Die 2 Boot Optionen wurden schon vor langer Zeit entfernt, sollte also eine richtig alte Version sein.
Du könntest sonst direkt den Bootloader von LVFS downloaden: https://fwupd.org/lvfs/devices/eco.shift.axolotl.abl.firmware (abl_5.0.20221224.cab)
Die Datei entpacken und das Image flashen: fastboot flash abl abl_5.0.20221224.img reboot bootloader
Danach sollte das Menü angezeigt werden und auch fwupdmgr get-devices sollte den Bootloader listen.
Diese Seite verwendet Cookies, um Inhalte zu personalisieren und dich nach einem Login angemeldet zu halten, wenn du registriert bist.
Durch die weitere Nutzung unserer Webseite erklärst du dich damit einverstanden.