Firefox Update 57 -> 96 – keine gute Idee

Admins reden sich den Mund fusselig, aber einige Benutzer interessieren sich einfach nicht für Updates der von Ihnen genutzen Software. Was das für Firefox bedeuten kann, beleuchten wir heute.

Firefoxupdate 57 -> 96 – keine gute Idee

Vor ein paar Wochen sollte ich einen defekten Laptop retten.. es war hoffungslos :

Totalschaden

Da haben wir, auch aufgrund des Alters, einfach einen neuen bestellt. Leider hatte der neue nur noch M2 Schnittstellen, aber keine internen SATA Anschlüsse mehr. Also mußte das OS auf eine SSD geclont werden, was an sich eine leichte Übung ist.

Das N15 Acer Extensa EX215-51-52AW

Das mit einem i5 10te Generation, 8GB Ram sowie 256 GB M2.SSD ausgestattete ist ein nettes Gerät, wenn man denn Linux darauf installieren könnte. Natürlich habe ich eine LiveDisk reingesteckt, konnte aber die versprochene SSD nicht finden, egal mit welcher Distro ich es probierte 🙁 Auch im Bios tauchte das Gerät nicht auf. Sachen gibt es.

Stunden später tauchte einem ACER-Forum ein Beitrag auf, daß jemand glaubt vergessen hatte, den Raidmodus des Controllers auf AHCI umzustellen, nur leider gab es da keine Möglichkeit zu im Bios des Geräts.. dachte ich.. eine Weile.. dann stolperte ich immer wieder über diesen Artikel und beiläufig erwähnte jemand eine geheime Tastenkombination, die diesen Wechsel überhaupt erst möglich machte.

Und tatsächlich, die Kombination gab es wirklich: CTRL-s

Danach war es ganz leicht, weil sich die SSD endlich meldete. Ein externer SATA-Adapter und ein DD später bootete das Laptop die bisherige Installation. Datenverluste: 0.00 .. so lob ich es mir. Dann der Schock, nicht ganz so unerwartet 😉 Das installierte OS hatte seit 5 Jahren keine Updates gesehen. Eine wandelnde Sicherheitslücke. Installiert war noch Fedora 25 und somit ein Firefox 57, was uns zum eigentlichen Thema des Artikels führt 🙂

5 Jahre keine Updates

Natürlich habe ich in großen Schritten von Fedora 25 auf Fedora 35 aktualisiert. Das Laptop ist echt schnell, also haben 5 Distributionsupgrades nur 2h gedauert ( man muß es ja auch mal runterladen ). Dabei wurde der Firefox von 57 auf 96 aktualisiert, allerdings nur der Firefox, nicht das Profil. Als der Kunde dann seinen neuen Laptop ausprobierte, waren alle Bookmarks, Logins und Passwörter weg. 5 Jahre ohne Updates gehen an keinem Programm spurlos vorbei. Merke: UPDATEN ! UPDATEN ! UPDATEN !

Nun waren die Logins und Passwörter noch in den Profildatenbanken enthalten, es kam aber nichts mehr raus, und kurioserweise ging auch nichts mehr rein.Die übliche Lösung, ein neues Profil anlegen und Key4.db, logins.json und places.db zu kopieren, half nichts, also mußte Mozilla ran. Zur großen Überraschung von den beteiligten Mozilla Devs gab es den Fehler auch bei Ihnen: Beweisvideo von Mozilla

Ein paar Wochen später stand fest: Man kann nicht von 57 auf irgendwas 73+ updaten, ohne daß es zum kompletten Verlust kommt. In Version 72.0.2 wurden die Datenbanken des Profiles intern umstrukturiert und sind damit zu früheren Versionen inkompatibel.

Der Workaround

Der Workaround sieht vor, einfach auf Version 72.0.2 zu downgraden, den dort befindlichen Updatevorgang durch Start von Firefox zu aktivieren und dann die Versionen wieder auf 96, oder jetzt schon 97, hochziehen.

Mit Fedora ist das eher schmerzlos von einem erfahrenen Benutzer zu machen, für Laien aber zu schwierig. Da der Kunde alle seine Passwörter schon von Hand eingegeben hatte, was auch nicht ganz ohne war, gab es für Mozilla und mich nichts mehr zu tun.

Gehen wir das mal theoretisch durch:

su root
dnf downgrade firefox –releasever=32
exit
firefox
su root
dnf update firefox -y

Das wäre es schon. Es könnte sein, daß auf dem Weg noch andere Pakete mit downgegraded werden müssen, was im Einzelfall bei der Zeitspanne von 2,5 Jahren echt spannend sein wird. Natürlich gibt es eine bessere Lösung:

Installiert Euch ein altes System in eine CHROOT-Umgebung 🙂

DNF ist in der Lage eine komplette Basisinstallation in ein beliebiges Verzeichnis vorzunehmen, einfach mit –installroot pfadname angeben. Wenn man da Firefox als Wunschpaket mit angibt, dann zieht das alle Pakete nach, die man dazu braucht, auch einen Desktopmanager usw. Achtet darauf, daß es der gleiche ist, wie der, der gerade läuft, weil Ihr dann natürlich kein System im System mehr startet müßt, was eh nicht geht.

In der Chroot-Umgebung wird dann einfach das alte Profil ins Home kopiert und der Firefox gestartet. Problem gelöst.

Noch bessere Methode

Nichts geht über eine Iteration von Ideen hinaus, oder? 🙂 Vergesst einfach die Chroot, ist viel zu viel Aufwand dafür. Macht Gnome-Boxen auf, startet eine alte, versionsmäßig passende, LIVE-Disk von Eurer Distro, aktualisiert den Firefox auf die 72.0.2 und dann schiebt z.b. per SCP das Profil in die Box und startet den Firefox. Idealerweise legt Ihr vorher noch passend einen Benutzer gleichen Namens an, damit die Pfade stimmen, aber das sollte auch ohne gehen. Danach das geänderte Profil in Eurer Home verschieben. Fertig.

An die Updatemuffel dieser Welt

Eure Strategie ist genauso, wenn nicht noch, riskanter als einfach die Updates mitzumachen!

Sollte nämlich mal ein Update unter Linux nicht laufen, kann man mit einem einfachen Downgrade zurück und schon geht es wieder, außer der Bug wäre in einer Version wie 72.0.2, die die Datenbank an das neue Format anpasst, dann ist das Profil erst einmal unbrauchbar geworden. Deswegen.. Backups! Backups! Backups!

neue Features für PVA Carola

Erst war es nur eine Idee, dann wurde es doch Realität: MP3 Metadaten 😉

neue Features für PVA Carola

Als ich in 2021 angefangen habe mit Carola einfachste Anweisungen umzusetzen, kamen schnell möglich Anwendungsfelder ins Spiel z.b. ein naheliegender Gedanke: auf Zuruf Musik abspielen können. Also schaute ich mir meinen Lieblingsplayer QMMP genauer an und der konnte alles per Kommandozeile mitgeteilt bekommen, was für ein Programm, daß eigentlich nur Bashbefehle absetzt naheliegend ist.

Natürlich reicht das nicht, weil man Musik ja auch suchen muß. Wer wie ich jetzt Spotify in Klein zu hause hat, der macht aus der kleinen Aufgabe, mal eben das ~/Musik Verzeichnis zu durchsuchen eine abendfüllende Angelegenheit, weil trotz M2.SSD der Suchvorgang recht lange braucht. Also cacht man trotzdem alles, was man so cachen kann, in diesem Fall alle Pfade und Dateinamen, damit man nur noch eine Datei laden und durchsuchen muß, was nicht mehr Minuten, sondern nur (Bruchteile von) Sekunden dauert.

Jetzt kann man mit einer vernünftigen Benennungsstrategie, recht gute Treffer für Begriffe wie „Queen“, „Elton John“ oder „Alles nur geklaut“ erzielen, aber grundlegende Suchen nach dem Genre fallen weg, weil man das üblicherweise nicht in den Dateinamen schreibt. Da andere Sachen wichtiger waren, blieb es also erst einmal bei dieser simplen Methode.

com.mpatric.mp3agic hat das geändert

Da es noch keine Methode gab, die Musiksammlung durch Metadaten nach Genres abspielen zu lassen, ohne dabei auf andere Audioplayer zu setzen, die nicht das Look&Feel von QMMP hatten, gab es auch keinen Grund die Musiksammlung dahin gehend zu indizieren und die Tags in die MP3-Dateien zu überführen. Wir hatten also ein Henne-Ei-Problem 😉

Github ist ein Hort von Software für fast alles und die JAVA Bibliothek com.mpatric.mp3agic konnte sehr einfach MP3Files auf alles mögliche analysieren. Leider dauerte ein Scan meiner fünfstelligen Sammlung bequeme 10 Minuten. Der Wert ist natürlich für eine Direktsuche viel zu schlecht. Michael, der Autor von mp3agic, konnte die Zeit durch Tipps auf unter 5 Minuten drücken aber auch das war mir noch zu lange.

Java kann eigentlich sehr einfach Subprozesse erzeugen und koordinieren, so daß ein gemeinsamer Datensatz erzeugt werden kann. Hmm.. also was macht man, wenn ein Sequenzielles Verarbeiten von Daten zu langsam ist und genug Prozessoren zur Verfügung stehen? Genau man parallelisiert den Vorgang 😀

Load 12000 – Tendenz steigend!

Ich hatte Carola vor einigen Wochen beigebracht mir den Status des PCs in menschlicher Form mitzuteilen, also nicht einfach stumpf die Load aufsagen, sondern abhängig von der Load entsprechend immer dramatischer klingende Sätze von sich zu geben, bis hin zur Überlastung mit Rotem Alarm und Warnsirenen 🙂 Leider war Carola im ersten, zu erfolgreichem, Versuch selbst die Ursache, so daß es mir leider keinen Kommentar zur Load von 12.000!!! geben konnte 😀

Die CPU brennt? 😀

Eine Load von 12.000 habe ich selbst in 20 Jahren Linux noch nirgendwo gesehen, entsprechend ungläubig habe ich mir die Werte in Top angesehen 😉 Aber wenn man mehr als 10.000 Prozesse gleichzeitig auf 12 unschuldige CPU Kerne loslässt, dann geht die Load relativ schnell nach oben, wenn die IO-Last steigt. Wenn man Anfangs noch 300 Prozesse gleichzeitig von der SSD hat versorgt lassen können, wird das für jeden Prozess der dazu kommt und für den noch kein früherer beendet wurde, immer langsamer, selbst mit „Bis zu 1.000.000 IOPS“ lesend (Samsung Werbung) , weil gar nicht genug Daten am Stück gelesen werden, so ein MP3-File ist ja schliesslich endlich, kann die SSD das nie ausspielen. Dazu kommt noch, daß ein Teil der Daten auf langsameren SATA SSDs oder SATA HDDs gespeichert waren, was die IO-Last deutlich steigert und die Performance drastisch in den Keller zieht.

Anders als bei einem SWAP-of-Death Zustand, ist eine Load von 12.000 kein Problem. Das System läuft bequem weiter, weil die CPU zwar durch IO-Wait gebremst werden, aber alle anderen Prozesse deswegen trotzdem ausgeführt werden können. Das Starten von neuen Anwendungen wird zum Problem, aber z.b. lief die Musik auch störungsfrei durch. Abbrechen kann man die Prozesse so auch leicht.

Wie aus 10+ Minuten 1,5s wurden

Vorteilhaft ist es, die nötigen Blöcke der Dateien bereits im Filecache des OS zu haben, aber um das zu erreichen muß man, welch Wunder, genau diese Blöcke schon einmal gelesen haben. Wenn man das gemacht hat, dann braucht man den zweiten Lauf nicht mehr, weil man das Ergebnis bereits hat. Nur der Statistikfreaks wegen, hier der Benchmark für einen Ryzen 5600X mit DDR4 3200MHz RAM: (bestwert) 1,5s auf 14.000+ Files.

Um den ersten Lauf durchzuführen, braucht man mit der Methode wahnsinnig viel Zeit, fast soviel wie sequenziell, weil durch die vielen Prozesse keiner der Prozesse richtig fertig wird, weil laufend Kontextswitche in der CPU und damit im IO-Controller stattfinden müssen, was höllisch inperformant ist. In der Praxis ist es daher besser ein niedrigeres Limit für die maximale Anzahl an Prozessen zu setzen, so daß die Platten hinterher kommen und die Kerne gut ausgelastet sind. Ich habe da mal 200 als Limit angesetzt.

Ohne Limit dauerte der Vorgang (ungecacht) :

$ time java PVA ‚:“carola erzeuge metadata“‚
erzeuge metadata
found MAKEMETACACHE:

real 15m39,380s
user 0m24,000s
sys 0m9,338s

Mit Limit 200 UND Debugausgabe in Terminal wo er ist…

argument:Das Metacache wurde aktualisiert.

real 0m44,807s
user 0m3,886s
sys 0m2,852s

Mit Limit 200, MIT Filecache UND OHNE Debugausgabe in Terminal wo er ist…

$ time env java PVA ‚:“carola erzeuge metadata“‚
erzeuge metadata
found MAKEMETACACHE:

real 0m3,385s
user 0m3,351s
sys 0m1,800s

Ich denke, das ist ein guter Kompromiss zwischen den Extremen 😉 Ist das Filecache richtig gefüllt, ist es auch egal wieviele Prozesse parallel starten: ob es 200, 2.000 oder 20.000 sind spielt dann keine Rolle mehr. Im ungecachten Zustand ist aber ein wichtiger Faktor, weil die Anzahl der Prozesse die IO-Last reguliert.

Merke: Das Filecache im RAM ist extrem wichtig!

Wie kommt man die Metadaten ran?

Dazu benutzt man am besten PICARD. Ja, ich dachte auch erst an TNG 😉

Mit Picard habt Ihr ein gutes Tool, das schnell, und meisten recht einfach, die Metadaten aus der MusicBrainz Datenbank auslesen kann. Es schreibt dann die Metadaten in die Files.

die Oberfläche von Picard, Links die Dateinamen, oben die Buttonreihe.

MP3 Files oder ganze Ordner hinzufügen.

Die Dateien auswählen

Die Dateien werden mit verschiedenen Wahrscheinlichkeiten erkannt

Noch speichern und wir sind fertig.

Nachdem man mit Picard irgendwann, realistisch so Wochen später, fertig ist, dann erzeugt man einmal die Metadaten mit dem PVA Befehl „erneuere metadaten“ und danach kann man mit Carola auch nach „SmoothJazz“ suchen, oder was Raghesh sonst noch so gefällt 😉

Termine! Termine, nichts als Termine!

Das Mantra der Postmoderne lautet nicht „Können Sie mich hören?“ sondern „Nicht schon wieder ein Meeting“. Nun bei der Anzahl der Meetings kann Carola zwar nicht helfen, aber bei der Organisation könnte sie jetzt hilfreich werden:

Carola erinnere mich am Dienstag um achtzehn Uhr dreißig an Linux am Dienstag

Der obige Satz führt dazu, daß Carola „Linux am Dienstag“ in die Termindatenbank aufnimmt und einen am nächsten Dienstag um 18:30 Uhr an unseren Treff „Linux am Dienstag“ erinnert. Genauso gut kann man den Tag weglassen oder „morgen“, „Übermorgen“ usw. verwenden. Da die Woche nur 7 Tage hat, können wir so nur rund eine Woche abdecken. Die Angabe des Datums fehlt noch. Der Satz:

Carola erinnere mich um achtzehn Uhr dreißig an Linux am Dienstag

ist auch völlig valide und meint implizit HEUTE ABEND um 18:30 Uhr.

Carola meine Termine bitte“ oder etwas unhöflicher „Carola meine Termine“ führt dann zu einer sprachlichen Auflistung der Termine. Löschen kann man die Termine noch nicht, da die Analyse des Datums im Code noch fehlt.

„Computer?“

Wem Carola als Name nicht gefällt, oder jemand einfach das vollständige Star Trek Feeling haben will, der kann den PVA jetzt per Befehl umbenennen 🙂

„Carola Dein neuer Name lautet computer“

Gleich danach hört Euer PVA auf den Namen „Computer“. Auf Spielchen mit „Siri“,“ok Google“ oder „Hallo Alexa“ würde ich verzichten, das beeindruckt Besucher kein bisschen 😉

Medienplayer wie MPV oder Celluloid

Wer den Artikel über die neue Mediaplayersteuerung noch nicht gelesen hat, der finden den hier:

Carola: Netflix & Mediaplayerkontrolle

Kleiner Ausblick auf die nächsten Tage: Ihr bekommt einen Technikvortrag über Systemd,Timers und JAVA fails 😉

 

 

Wie man von einer nachgerüsteten NVME SSD bootet

Meine langjährige Linux-Notlösung ging letzte Woche eine innige Verbindung zwischen Mainboard und Netzteil ein, das führte leider zu neuer PC-Hardware, wovon Ihr jetzt allerdings profitiert 😉

Wie man von einer nachgerüsteten NVME SSD bootet

Hier eine Impression der neuen permanenten Verbindung zwischen Mainboard und Netzteil:

ATX 12V Leitung ins Mainboard

Nur mit Gewalt konnten Buchse und Stecker getrennt werden. Eine Inspektion ergab dann, daß drei Spannungswandler, die befinden sich unter dem Kühlkörper links im Bild, ein bisschen zu warm geworden sind.

Hinweis: Für alle Linux am Dienstag Teilnehmer, abweichend zum gestrigen Textchat, gibt es bei den Anweisungen für die UUIDs noch eine kleine Erweiterung wo man die ersetzen muß.

Der neue RYZEN 5600X

Weil ich mir gleich was vernünftiges kaufen wollte, kam ein ASROCK B550µ Pro4 und ein RYZEN 5600X in den Warenkorb, noch NVME SSD (Samsung 1TB), RAM und Netzteil dazu gepackt und beim Großhändler sammeln lassen.

Das Board kannte ich einem früheren Einkauf und entsprechend wußte ich, daß diese Hardware mit Linux  laufen würde. Laufen ist in dem Fall übrigens glatte Untertreibung, Rennen wäre treffender, weil die NVME SSD in dem Setup 7 GB/s lesend schafft 😀

Da ich den PC für die Arbeit brauchte, war ein funktionierendes System an Tag 1 erst einmal wichtiger, als von der NVME SSD booten zu können, also wurde die HW nur zusammen gesteckt und die alte SATA SSD gebootet. Lief sofort ohne zu murren. Der Arbeitstag neigte sich dem Ende zu, also war es Zeit die SATA SSD auf die NVME SSD zu clonen und die Umstellung zu machen.

Nun ist mein Fedora System von 2014 und dessen Bootconfig weiß noch nichts von NVME. Also muß man das erst nachrüsten und ein Initramfs bauen, daß auch passende NVME Treiber hat. Dummerweise wusste ich das nicht, als die ich die SSD geclont habe 🙁 Ergebnis: „Geil, bootet von NVME .. ähhhhhh!?!?!“ Weil der Bootprozess vor dem Entschlüsseln der LUKS Paritionen einfach stehen blieb.

Zwei Möglichkeiten

Entweder VOR dem Clonen das neue Initramfs bauen, was deutlich einfacher ist, oder nochmal von der alten SSD Booten, Initramfs neubauen und die erzeugten Files von Hand rüberkopieren.

So, oder so, sieht der richtige Weg so aus:

  1. NVME-Treiber hinzufügen

    echo „add_drivers+= \“ nvme \““ > /etc/dracut.conf.d/nvme.conf
    # initramfs für aktiven Kernel neubauen
    dracut -f
  2. Disk Clonen

booten von einem Livestick
sudo su
dd if=/dev/quelle of=/dev/nvme0n1 bs=64M status=progress

Bei einer 1 TB SSD dauert das so 21-23 Minuten, da die SATA Geräte auf den meisten PCs mit 6 Gb/s angebunden sind, was ein theoretisches Maximum von 512 MB/s erlauben würde, aber 480 MB/s sind realistischer 😉

Wenn man die alte Platte nicht mehr benutzen will ist hier Schluß, die Platte muß dann aber auch gleich vom PC entfernt oder neu formatiert werden. Wieso, wird gleich klar werden.

Oder Ihr wollt mal wissen, was der Onkel Doktor machen müßte um die neue NVME SSD parallel zur alten SATA SSD booten zu können 🙂 Wir haben die Platte geclont und damit auch alle UUIDs zur identifizierung von Partitionen und Containern. UUIDs zeichnen sich durch eine gewisse EINMALIGKEIT aus, sprich, doppelte UUIDs produzieren lustige Fehler beim Bootprozess 😀

Gestern beim Linux am Dienstag kam die Frage auf, wieso ich nach dem Clonen nicht einfach die SATA SSD platt gemacht habe: Redundanz. Fällt die NVME SSD aus, habe ich noch ein System, das garantiert bootet.

Wie man die UUIDs von LUKS und EXTx ändert

Der Einfachheit

halber nehmen wir das „Gnome-Laufwerke“ Tool zur Hand um die alten UUIDs zuermitteln, da wir da visuell sehen können, ob das auch die richtige Partition ist. Man kann das auch in der Konsole ablesen, aber das kann leicht zu Verwechselungen führen:

$ lsblk -t -f
NAME ALIGNMENT MIN-IO OPT-IO PHY-SEC LOG-SEC ROTA SCHED RQ-SIZE RA WSAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINT
nvme0n1 0 512 0 512 512 0 none 1023 128 0B 
├─nvme0n1p1 0 512 0 512 512 0 none 1023 128 0B ext4 1.0 Boot 4d2061ec-d538-4c88-aeb7-3fb0f3f4cd07 234,6M 46% /boot
├─nvme0n1p2 0 512 0 512 512 0 none 1023 128 0B crypto_LUKS 1 9d2595b2-a35c-48c1-a839-bb54c1a96597 
│ └─luks-9d2595b2-a35c-48c1-a839-bb54c1a96597 0 512 0 512 512 0 128 128 0B ext4 1.0 9d2595b2-a35c-48c1-a839-bb54c1a96597 659,9G 22% /
└─nvme0n1p3 0 512 0 512 512 0 none 1023 128 0B crypto_LUKS 1 ed009ed3-118c-465d-9b89-9b2a4f5cc3f3 
  └─luks-ed009ed3-118c-465d-9b89-9b2a4f5cc3f3 0 512 0 512 512 0 128 128 0B swap 1 46da0d80-21fb-45b7-8567-ba047de66cb6 [SWAP]

Einfacher ist das über das GNOME Laufwerke Tool:

LUKS

Filesystem in eine LUKS Container

Schritt 1 wäre jetzt auch erst einmal neue UUIDs zu erzeugen, was unter Fedora leicht mit dem Befehl „uuidgen“ gemacht werden kann. Andere Distro haben den Befehl nur als „uuid“ im Angebot.

WARNUNG:
Die hier gezeigten Anweisungen können in den falschen Händen Schaden an Ihrem System anrichten, deswegen erfolgt alles, was Sie jetzt machen auf eigene Gefahr!

WICHTIG: Bei Verwendung von LUKS darauf achten, daß die LUKS-Partition und die darin enthaltene Partition die gleiche UUID haben!

HINWEIS: der Befehl „replace“ wird von MYSQL/MARIADB zur Verfügung gestellt! Man kann die Anpassungen auch mit einem Texteditor machen, sollte man aber zwecks Reduzierung von Fehlerqellen nicht machen.

Alternativ könnte man sed -e „s/ALTE UUID/NEUE UUID/g“ < file >file.1; mv file.1 file machen, aber dann läuft man Gefahr die Rechte und Besitzer zu ändern.

Alles was wir jetzt machen, findet auf einer LIVE DISK statt, also im ungebooteten Zustand. Die Filesysteme sind alle EXT4, für abweichende Filesystem müßt Ihr Euch selbst was ausdenken 😉

Los geht’s :

A) Die Bootpartition

a) mit „Laufwerke“ das Gerät identifizieren: z.B. /dev/nvme0n1p1
b) ALTE UUID ermitteln ( wegkopieren in Texteditor ! )
c) tune2fs /dev/nvme0n1p1 -U „NEUE UUID“
d) BOOT + SYSTEM Partion der NVME anmelden
e) UUIDs ersetzen:
replace „ALTE UUID“ „NEUE UUID“ — pfad/zu/boot/grub2/grub*
replace „ALTE UUID“ „NEUE UUID“ — pfad/zu/boot/loader/entries/*
replace „ALTE UUID“ „NEUE UUID“ — pfad/zu/System/etc/fstab
replace „ALTE UUID“ „NEUE UUID“ — pfad/zu/System/etc/default/grub

*f) Partionen wieder abmelden

*) Das Abmelden ist natürlich optional, wenn Ihr mehrere Ersetzungen machen müßte, dann können die natürlich gemountet bleiben 😉

B) jede andere Partition

Jenachdem wieviele man hat, kann man das auch alles zusammen machen!

Wichtig: Jede Partition hat ihre eigene UUID, doppelte darf es nicht geben!

a) mit „Laufwerke“ das Gerät identifizieren: z.B. /dev/nvme0n1p2
b) ALTE UUID ermitteln ( wegkopieren in Texteditor ! )
c) tune2fs /dev/nvme0n1p2 -U „NEUE UUID“
d) BOOT + SYSTEM Partion der NVME anmelden
e) UUIDs ersetzen:
replace „ALTE UUID“ „NEUE UUID“ — pfad/zu/boot/grub2/grub*
replace „ALTE UUID“ „NEUE UUID“ — pfad/zu/boot/loader/entries/*
replace „ALTE UUID“ „NEUE UUID“ — pfad/zu/System/etc/fstab
replace „ALTE UUID“ „NEUE UUID“ — pfad/zu/System/etc/default/grub

f) Partionen wieder abmelden

Das waren die Filesysteme, kommen wir zu den LUKS Containern. Wer kein Luks hat, der ist jetzt natürlich fertig 🙂

Bei LUKS Partitionen ist das Vorgehen im Prinzip das Gleiche, nur die Befehle sind andere, weil LUKS kein Filesystem ist, aber eins zur Verfügung stellt nach dem Aufschliessen.

C) Für jede LUKS Partition

a) mit „Laufwerke“ das Gerät identifizieren: z.B. /dev/nvme0n1p2
b) ALTE UUID ermitteln ( wegkopieren in Texteditor ! )
c) cryptsetup luksUUID /dev/nvme0n1p2 –uuid „NEUE UUID“
d) BOOT + SYSTEM Partion der NVME anmelden
e) UUIDs ersetzen:
replace „ALTE UUID“ „NEUE UUID“ — pfad/zu/boot/grub2/grub*
replace „ALTE UUID“ „NEUE UUID“ — pfad/zu/boot/loader/entries/*
replace „ALTE UUID“ „NEUE UUID“ — pfad/zu/System/etc/fstab
replace „ALTE UUID“ „NEUE UUID“ — pfad/zu/System/etc/crypttab
replace „ALTE UUID“ „NEUE UUID“ — pfad/zu/System/etc/default/grub

f) Partionen wieder abmelden

Damit wären wir durch und so schlimm war es dann ja auch wieder nicht 🙂

Update: Es wurden Bilder zum Gnome-Laufwerke Tool eingebaut, powered by FlameShot – Ihrem Screenshottool