Diskussions- und Newsboard der Linux Interessen Gruppe Suletuxe
allgemeine Kategorie => Installation & Einrichtung => Thema von: Sebastian am 20. Dezember 2022, 14:21:08

Titel: EndeavourOS Cassini is Live
Beitrag von: Sebastian am 20. Dezember 2022, 14:21:08

Eine neue ISO von EndeavourOS ist Live gegangen EndeavourOS Cassini (https://endeavouros.com/news/cassini-packed-with-new-features-is-here/) und bringt dabei ein paar Veränderungen mit sich, womit sie sich ein wenig weiter vom Arch way entfernen.
Die wichtigsten Änderungen für die x86_64 Version, die für mich eine Rolle spielen sind, dabei folgende:


  • Systemd-boot ist nun der Standard Bootloader von eos. (Kein Lagacy BIOS (https://wiki.archlinux.org/title/Arch_boot_process#Feature_comparison) und Verschlüsselte Partition Unterstützung)
  • GRUB bleibt bei einer Neuinstallation als Alternative bei der Installation zur Auswahl.
  • eos verwendet jetzt Dracut zum Generieren eines initramfs und nicht mehr mkinitcpio (Hier entfernt sich eos vom Arch Way ein wenig weiter)
  • Eine Anleitung wie man von mkinitcipo zu Dracut weckselt soll in nächster Zeit noch folgen.
  • Nur für diejenigen wichtig, die mit der Entwicklung von eos mitgehen möchten. Es kann natürlich auch weiter mkinitcipo verwendet werden. Man sollte nur dran denken bei einer Neuinstallation hat man dann Dracut in Verwendung


  • Information über Dracut gibt es hier:


    • https://discovery.endeavouros.com/installation/dracut/2022/12/
    • https://wiki.gentoo.org/wiki/Dracut
    • https://wiki.archlinux.org/title/Dracut
    • https://github.com/dracutdevs/dracut/wiki


    • Das eos Team stellt Dracut dabei so vor:
      Zitat:
      dracut is a highly modular tool for generating initramfs images. As of the Cassini release in 2022, it is the default for EndeavourOS.

      In general, it is superior to mkinitcpio in it’s ability to autodetect needed modules and for most use cases will work without any further configuration.


      Also im Grunde soll es wohl mkinitpico überlegen sein,bzw. soll halt mehr zu bieten haben. Ich werde mich da erst einmal einlesen und berichte, wenn ich denn Switch gemacht habe. Mein Setup weicht ja auch ein wenig vom Standard ab, da ich mit einem Voll verschlüsselten System arbeite. Mal schauen wie einfach bzw. schwer der Switch von mkinitpico zu Dracut klappt. :)


      Wenn ihr die ISO herunterlädt, vergisst nicht diese mit gpg zu verifizieren, um die Authentizität der ISO sicherzustellen.

      https://endeavouros.com/latest-release/#check-the-iso-file-before-using-it

      LG
      Sebastian

Titel: Re:EndeavourOS Cassini is Live
Beitrag von: Sebastian am 21. Dezember 2022, 20:00:11

Nach dem Studium von:

https://wiki.archlinux.org/title/Dracut
https://wiki.gentoo.org/wiki/Dracut
und den Manpages

Und ein paar Testläufe in einer VM mit verschiedenen Konfigurationen.

Muss ich sagen, bin ich von Dracut echt angetan. Es lief bis jetzt außer dem Ruhezustand aus einer Swapdatei, alles ohne jegliche Konfiguration. Mein Setup für ein verschlüsseltes System hat mit mkinitcpio mehr Konfiguration erfordert. Zudem ist die Generierung des initramfs mit dracut gefühlt etwas schneller fertig.

Sobald ich das mit dem Ruhezustand mit einer Swapdatei auch noch hinbekomme, steht für mich ein wechsel dann nichts mehr in weg.

Titel: Re:EndeavourOS Cassini is Live
Beitrag von: Andreas am 22. Dezember 2022, 08:11:52

Hallo Sebastian,

die "Endeavour-Gemeinde" ist sehr rührig - und fähig. Sicher hat sie sich mit dem Wechsel zu dracut als Default von Arch entfernt - aber dracut ist bereits in den Arch-Repos. Es ist also nach wie vor eine 100%-ige Kompatibilität gegeben. Ich werde das auch bald mal ausprobieren. Unsere "älteren Installationen" sind ja unverändert - ein Wechsel im Betrieb scheint aktuell nicht vorgesehen zu sein.

LG
Andreas

Titel: Re:EndeavourOS Cassini is Live
Beitrag von: Sebastian am 24. Dezember 2022, 12:27:50

Habe denn Ruhezustand nun auch mit dracut zum Laufen gebracht. Damit ihr nicht auf dieselben Probleme stößt hier, warum dies erst bei mir nicht funktioniert hat:


  • Warum auch immer funktiniert der Ruhezustand nicht in meiner VM (qemu, Virt-Manager) im initram Stadium nach dem Laden des caches aus dem swap bleibt der Bildschirm der VM schwarz. Mit echter Hardware hier kein Problem gehabt.
  • Durch einen Bug (https://github.com/dracutdevs/dracut/issues/924) bei der Auto-Erkennung baut dracut nicht das resume Modul in das initramfs mit ein.


  • Als Workaround kann, man dracut entweder auf der Kommandozeile mit angeben, dass er das resume Modul mit einbauen soll (-a resume ). (DRACUT(8) (https://man.archlinux.org/man/dracut.8))
    Oder man fügt denn Konfigurationsparameter add_dracutmodules+=" resume " einer DropIn Datei seiner Wahl im Verzeichnis /etc/dracut.conf.d/ hinzu. (DRACUT.CONF(5) (https://man.archlinux.org/man/dracut.conf.5))

    Damit wird das benötigte resume Modul jedem initramfs mit eingefügt.

    Kontrollieren, ob das resume Module im Initramfs drin steckt könnt ihr indem ihr die Ausgabe von folgendem Befehl überprüft: LSINITRD(1) (https://man.archlinux.org/man/extra/dracut/lsinitrd.1.en)

    Code:

    lsinitrd -m /boot/initramfs-linux.img


    Wenn dieser Bug in der Auto-Erkennung zurzeit nicht wäre, hätte mein Setup für ein Vollverschlüsseltes System Out-of-the-Box mit dem Konfigurationen vom EndevourOS installer funktioniert.

    So mit diesem Bug durfte der Ruhezustand aber auch nicht bei normalen Systemen funktionieren, da auch das resume Module fehlt.

    Edit:

    Hier noch eine kurze Übersicht wie EOS die initramfs Generierung umsetzt soweit wie ich das nachgeforscht habe (ich beziehe mich dabei auf die Variante mit Grub, systemd-boot wird aber ähnlich sein):

    Im eos Repository gibt es nun ein Paket eos-dracut das ein paar Scripts und pacman Hooks beinhaltet um mit dracut das initramfs zu bauen. Die wichtigsten sind dabei diese hier:


    Code:

    /usr/bin/dracut-rebuild
    /usr/share/libalpm/hooks/60-dracut-remove.hook
    /usr/share/libalpm/hooks/90-dracut-install.hook
    /usr/share/libalpm/scripts/dracut-install
    /usr/share/libalpm/scripts/dracut-remove



    • dracut-rebuild - Skript um das initramfs für alle Installierten Kernel manuell neu zu bauen
    • 60-dracut-remove.hook - Pacman Hook, das beim Entfernen eines Kernels das Skript dracut-removal aufruft.
    • 90-dracut-install.hook - Pacman Hook der das dracut-install Skript aufruft, wenn ein neuer Kernel installiert oder geupdatet wird
    • dracut-install - Skript, das ein neues Initramfs für einen Kernel baut
    • dracut-remove - Skript, das bei einer Deinstallation eines Kernels auch das passende initramfs entfernt


    • Hoffe das diese Infos den ein oder anderen helfen nachzuvollziehen wie die Zahnräder in eos ineinandergreifen.

      LG
      Sebastian

Titel: Re:EndeavourOS Cassini is Live
Beitrag von: Sebastian am 28. März 2023, 10:30:57

Habe auf meinem System nun den Switch von mkinitcpio zu dracut vorgenommen nach dieser Anleitung (https://discovery.endeavouros.com/installation/dracut/2022/12/).

Hat auch alles mit dem kleinen zusätzlichen Konfigurationsaufwand für mein verschlüsseltes System geklappt.

Auch der vorherige Bug das resume Modul nicht automatisch von Dracut hinzugefügt wird scheint gefixt zu sein. Es hatte keine manuelle Konfiguration von mir mehr erfordert.

LG

Sebastian


Diskussions- und Newsboard der Linux Interessen Gruppe Suletuxe | Powered by YaBB SE
© 2001-2003, YaBB SE Dev Team. All Rights Reserved.