Leserartikel [How-To] Arch Linux installieren (verschlüsselt, gehärtet, spieletauglich, modular)

Hallo, sorry wenn ich diesen Thread "huckepack" nehme. Falls nicht gewünscht kann ich ein neues Thema aufmachen.

Ich wollte fragen, wie ich mit clonezilla wieder ein bootbares archlinux erhalte.
Ich habe dazumal, etwa vor einem Jahr, arch mit dieser Anleitung aufgesetzt (Ohne LUKS)

Ich habe mit der archiso gebootet und mit clonezilla ein image von meiner ssd (nvme0n1) erstellt. (Partitionen nvme0n1p1 / nvme0n1p2)
Wenn ich aber jetzt das image wieder auf die ssd übertrage, fehlen die boot einträge und werden vom EFI nicht erkannt.

Ich hab wollte mit efibootmgr neue Einträge erstellen, aber wenn ich die btrfs subvolumes mounten möchte, erhalte ich folgenden fehler:
@archiso ~ # mount -o compress=zstd,subvol=@ /dev/nvme0n1p2 /mnt
mount: /mnt: can't read superblock on /dev/nvme0n1p2.
dmesg(1) may have more information after failed mount system call.

Weiss da jemand weiter?
Ich habe beim wiederherstellen bei clonezilla verschidene extra optionen probiert, aber komme nicht weiter

Danke
 
Danke für deine Antwort, @agon

Ich habe einfachshalber alles nochmal in einer VM versucht (nvme0n1p2 ist jetzt sda2)

1 root@archiso ~ # btrfs rescue super-recover /dev/sda2
All supers are valid, no need to recover
root@archiso ~ # mount -o compress=zstd,subvol=@ /dev/sda2 /mnt
mount: /mnt: can't read superblock on /dev/sda2.
dmesg(1) may have more information after failed mount system call.

Müsste ich die ssd vor dem clonezilla recovery mit einer anderen sektor grösse formatieren, oder kann ich das nachträglich noch korrigieren?
 
@Beelzebub23 Danke für dein Feedback. So etwas lese ich doch immer wieder gerne :)

@cpu2k6 Hatte die Tage wenig Zeit. Falls das Problem noch nicht behoben ist, solltest du eher ein neuen Thread eröffnen bzgl. clonezilla.


Bin gerade dabei, die Installation wieder fresh zu machen.
Geplant ist u.a. die Nutzung von systemd-nspawn statt arch-chroot. Damit kann man bspw. die systemd-Befehle wie timedatectl, localectl und hostnamectl benutzen.
 
Zuletzt bearbeitet:

Changelog – Updated Version​

The installation was tested in a VM up to and including section 10. Therefore, now would be a good time to install Arch Linux!
This time, it took quite a bit of time to update the guide. So I would appreciate any feedback or a small donation.
  • Installation – Overhaul
    • New: Use systemd-nspawn instead of arch-chroot
      In order to use the systemd commands for e.g. hostname, locale, time
      I tried systemd-firstboot but it has no good interactive UI.
      In near future, systemd-run mode of arch-chroot will be used.
    • Remove: Local hostname resolution (for some software)
    • Remove: For AMD Ryzen CPUs (≥ Zen 2): CPU power scaling driver
      "CPPC" & "CPPC Preferred Cores" should be already enabled in modern UEFI
    • New: iptables-nft
      Since iptables is a dependency of iproute2 of base
    • Allow ssh root login > Update: Use sed (Also in other chapters)
    • Time > Remove: # timedatectl set-ntp true
      Equivalent to systemctl enable systemd-timesyncd.service
    • KDE > Remove: Streaming Wayland windows to X applications: xwaylandvideobridge
    • AMDGPU > Remove: amdvlk lib32-amdvlk (deprecated)
    • Verify signature (using sequoia-sq) > Update: commands
    • Locales > Update: Available layouts: localectl list-keymaps
    • Misc. > Update: Use sed instead of vim in several chapters
    • Locales > Remove: LANGUAGE: Fallback locales (in order)
    • Remove: Activate the swapfile
    • Partition the disk using gdisk > Update: style
    • Secure Boot > Fix: SB creation commands (Renamed to -noenc)
    • Makepkg > New: Change auth method to doas instead of sudo
    • Software specific > Update: Merge User-specific configurations and move chapter in front of Hardware specific
  • Btrfs
    • New: Subvolume for /var/lib/machines for machinectl
    • Update: Renamed subvolume to @var_cache_pacman_pkg for more consistency
    • Remove: Subvolumes for /var/lib/containers, /var/lib/libvirt/images & /srv
      Since Podman is running rootless & the default libvirt pool location is changed.
      /srv is for Service Data which is typically empty on Desktop Linux
    • Remove: 1st setup: Delete "subvolid" mount option in fstab
  • TODOs > Update: Additions & Deprecations
  • Naming convention > Update: Variables are named like a variable in Rust
    Instead of myUsername ⇨ username or myRootPassword ⇨ root_password
  • Virtualization > Remove: virtio-win & storage pool "/var/lib/libvirt/images"
    Since the AUR package is outdated, and you can just download the ISO when installing Windows.
  • Firejail > New: Hardening Firejail
  • KDE > Remove: kdesu: Use "doas" instead of "su" (for KDE)
    KDE6 uses polkit
  • Display – Setup > New: Calibration (TODO)
  • INTRO > Update
  • and more
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: h00ver, Blaze1987, Archivar und 3 andere

Changelog​

For easier installation:
  • Mkinitcpio
    • Update: HOOKS according to mkinitcpio v40
    • Update: /etc/mkinitcpio.d/linux-zen.preset according to mkinitcpio v40
  • > Update: Create UEFI boot entries using efibootmgr
  • Waydroid > Update: Use official package instead of the AUR pkg
Interesse an einem kurzen Lutris Setup mit GE-Proton & UMU?
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Deinorius und Spike S.
Hey, ich war schon länger nicht hier und akls erster ist mir das ganze Rumgemecker aufgefallen :)
@agon ich bin über deine Anleitung vor glaube ich mehr als zwei Jahren gestolpert und finde die Arbeit die du hier zur Verfügung stellst einfach nur super! Danke dafür. Ich schaue in die Anleitung gerne mal ab und zu rein, falls ich was neu installieren müsste, einfach mal als Gedächtnisstütze.
 
  • Gefällt mir
Reaktionen: Spike S., Deinorius, Archivar und 2 andere
Danke @Yaakoss.

Bei dem Guide bin ich mir noch unschlüssig, ob
  1. ein Texteditor wie vim für das bessere Verständnis besser geeignet wäre als sed, und ob
  2. systemd-nspawn (statt arch-chroot) bleiben sollte
… für eine manuelle Installation.

Btw. KDE Plasma 6.8 soll Wayland-exklusiv werden.
 
Plasma 6.8 ist viel früher, als ich es erwartet hätte. Sofern bis dahin besonders die Accessibility Probleme behoben sind, sehe ich allgemein keine Gründe für X11, viel anderes wird bis dahin auch besser geworden sein. (Wenn man aber die Diskussionen aus dem wayland Gitlab kennt ...)
 
agon schrieb:
  1. ein Texteditor wie vim für das bessere Verständnis besser geeignet wäre als sed, und ob
  2. systemd-nspawn (statt arch-chroot) bleiben sollte
1. Ja, vim wäre besser, da dein Guide ja auch Wissenvermittlung als Anspruch hat und nicht nur Befehle abarbeiten. In vim (oder nano 🥳) schaut man eher mal über den Tellerrand.
2. Was sind deine Bedenken? Pauschal bin ich immer erst mal dafür, bei einem Ökosystem, in dem Fall die systemd-Welt, zu bleiben. Ist i.d.R. besser bzgl. Abhängigkeiten und Synergien.

Das der X11 Abschied nicht erst zur 7 erfolgt überrascht jetzt ein wenig. Aber tangiert mich nicht, bin seit Wayland bei der 6 zum Standard wurde dabei und kann nur wenig klagen (gdk-pixbuf2 und spectacle nerven nur ein wenig...).
 
Der Schritt zu Wayland-only könnte der neu-entwickelte Plasma Login Manager sein.

@Spike S. Werde wohl wieder mehr auf vim/nano setzen.
Ich meine vor allem den langen Befehl aus "4.3 Boot into the container".
Evtl. sollte ich einfach stärker anmerken, dass ich für die Installation SSH voraussetze (für eine bessere User Experience).


Deine Probleme zu:

Teil meiner firefox.local
Code:
# Enable private-bin
# Note: Firefox requires a shell to launch on Arch
private-bin bash,dbus-launch,dbus-send,env,firefox,sh,which
private-bin basename,bash,cat,dirname,expr,false,firefox,firefox-wayland,getenforce,ln,mkdir,pidof,restorecon,rm,rmdir,sed,sh,tclsh,true,uname,bwrap

...
# https://github.com/netblue30/firejail/issues/6906
whitelist /usr/share/glycin-loaders
noblacklist /usr/bin/bwrap
noblacklist /proc/sys/kernel/overflowuid
noblacklist /proc/sys/kernel/overflowgid

ignore seccomp !chroot
seccomp !chroot,!mount,!pivot_root,!umount2

ignore apparmor
ignore apparmor-replace
 
  • Gefällt mir
Reaktionen: Archivar, Spike S. und Beelzebub23
agon schrieb:
langen Befehl aus "4.3 Boot into the container".
Den braucht man doch nur ein mal. Und bei dem Gesamtaufwand fällt das jetzt nicht so ins Gewicht finde ich. Nur Fehlervermeidung durch weniger Komplexität wäre ein relevanter Punkt, falls bei einem Fehler die bisherige Arbeit hinfällig wird beispielsweise.

agon schrieb:
Siehe 10.3.10 Workaround: Spectacle
Ha! Den kannte ich noch nicht. Ich lösche immer die .desktop Datei. Bleibt die Änderung bestehen oder wird die immer wieder überschrieben, so wie die Datei neu erstellt wird wenn man sie löscht?

agon schrieb:
gdk-pixbuf2: Falls du das in Verbindung zu Firefox meinst
Firefox war bei mir kein großes Problem, die drei Fensterbuttons oben rechts hatten gefehlt, nicht schlimm. Allerdings war Thunderbird fast unbedienbar langsam geworden dadurch. Und man konnte keine Dateien öffnen.
Ich hab das Paket downgegraded auf 2.42 und skippe das immer bei Updates. Ist für mich einfacher als an mehreren Configs herumzuschrauben. Ich gehe zumindest davon aus, das in neueren Versionen als 2.44.4, zusammen mit glycin, das behoben sein wird. Also erst mal versuchen auszusitzen :D
 
Zwei Punkte frage ich mich aktuell noch:
  • Hatte schon mal jemand hier Versuche unternommen, den Luks Container beim Boot mit einem FIDO2 Stick zu entsperren? Sprich mit einem Nitrokey oder Yubikey o.ä. So ein Luks Header bietet ja mehrere Slots zur Authentifizierung.
  • Wie sieht denn ein Austausch der Festplatte aus? Habe sonst immer einfach geklont und dann die UUIDs in der fstab aktualisiert. Geht das hier auch? Oder ändert sich gar nix am Dateisystem, weil man ja den ganzen Luks Container klont?
 
Spike S. schrieb:
Bleibt die Änderung bestehen
Ja

Spike S. schrieb:
Luks Container beim Boot mit einem FIDO2 Stick zu entsperren?
Ich hatte das mal mit Software TPM2 in einer VM getestet. Mit FIDO2 sollte das nicht groß anders sein.
https://wiki.archlinux.org/title/Systemd-cryptenroll#FIDO2_tokens

Spike S. schrieb:
Wie sieht denn ein Austausch der Festplatte aus?
Habe ich noch nicht gemacht. Ein paar Infos:
https://discussion.fedoraproject.org/t/howto-clone-a-luks-encrypted-install-to-a-bigger-disk/125753
https://wiki.archlinux.org/title/Disk_cloning
 
agon schrieb:
Ich hatte das mal mit Software TPM2 in einer VM getestet. Mit FIDO2 sollte das nicht groß anders sein.
Und das Ergebnis war? Hat es so einfach geklappt wie es scheint? Hatte auch schon kurz die Suche bemüht, da kam aber fast nur was zu Debian mit initramfs, was ohne Sonderlocke beim Boot die USB Geräte nicht unterstützt öoder so ähnlich).

agon schrieb:
Scheint so einfach wie ich mir das erhofft hatte. Werde berichten.
 
  • Gefällt mir
Reaktionen: agon
Zurück
Oben