4.0 KiB
Installationsanleitung
Festplatte vorbereiten
Wir wollen die folgende Aufteilung für unsere Partitionen:
| Name | Mountpoint | Größe | Dateisystem | Partitionstyp |
|---|---|---|---|---|
| UEFI System Partition & boot | /boot | 1 GB | vfat | 0xEF00 (EFI System) |
| Swap | swap | 16 GB | swap | 0x8200 (Linux swap) |
| Root | / | Rest | ext4 | 0x8300 (Linux filesystem) |
Partitionerung
Man kann /boot und die UEFI System Partition zusammenfassen.
Die Partitonierung kann man mit gdisk oder cgdisk (curses-Frontend für gdisk) machen.
fdisk sollte natürlich auch funktionieren.
Dateisysteme
ext4 ist nicht vorgegeben, ich nutze es nur.
Kurze Erklärung der benutzten Schalter:
mkfs.fat-F- Setzt dieFAT_SIZE(8, 16 oder 32), also die Größe der "file allocation tables"-n- Setzt den Namen des Dateisystems
mkswapbzw.mkfs.ext4-L- Setzt das Label (bzw. den Namen) des Dateisystems
mkfs.fat -F 32 -n EFIBOOT /dev/<partition1>
mkswap -L swap /dev/<partition2>
mkfs.ext4 -L root /dev/<partition3>
Partitionen einhängen
Wir mounten die root-Partition nach /mnt. Dann erstellen wir das /boot-Verzeichnis und mounten EFIBOOT dorthin.
Als letztes aktivieren wir die Swappartition.
mount -L root /mnt
mkdir -p /mnt/boot
mount -L EFIBOOT /mnt/boot
swapon -L swap
Installation und Konfiguration des Basissystems
Die Grundpakete
Auswahl des Mirrors in /etc/pacman.d/mirrorlist (Noch im Kontext des USB-Sticks)
pacstrap bootstrapt das Basissystem nach /mnt. Es installiert die angegebenen Pakete bzw. Paketgruppen.
- base bzw. base-devel - Eine Gruppe von Basispaketen
- linux bzw. linux-firmware - Der Kernel und die Firmware
- vim - Ein Editor
- efibootmgr - "Editor" für die EFI-Systemvariablen
- dosfstools - Tools, um mit Fat-Dateisystemen umzugehen
- gptfdisk -
gdiskbzw.cgdisk- Partionierungstools, die mit GPT umgehen können - bash-completion - Autovervollständigung für die Bash
- intel-ucode - CPU-spezifischer Microcode
- netctl - Ein einfacher Netzwerkmanager
pacstrap /mnt base base-devel linux linux-firmware vim efibootmgr dosfstools gptfdisk bash-completion intel-ucode netctl man-db man-pages
Die Dateisystemtabelle anlegen
Oder auch fstab, auch hier wieder mit UUIDs (-U)
genfstab -Up /mnt > /mnt/etc/fstab
Konfiguration
Wechsel ins chroot
arch-chroot /mnt/
Do config yadda yadda
Konfiguration von systemd-bootctl (Gummiboot)
Wir wollen systemd-bootctl benutzen. Das verkürzt die Bootzeit, da direkt über UEFI gebootet wird.
Um die Verwechslungsgefahr der Partitionen zu verringern, benutzen wir die UUIDs der Partitionen.
Herausfinden kann man die UUIDs mit dem Befehl blkid.
Wir erstellen die Datei /boot/loader/entries/arch-uefi.conf und fügen folgendes ein:
title Arch Linux
linux /vmlinuz-linux
initrd /initramfs-linux.img
options root=UUID=<UUID der root-Partition> rw resume=UUID=<UUID der swap-Partition>
Um den Fallback verwenden zu können, legen wir die Datei /boot/loader/entries/arch-uefi-fallback.confan:
title Arch Linux Fallback
linux /vmlinuz-linux
initrd /initramfs-linux-fallback.img
options root=UUID=<UUID der root-Partition> rw resume=UUID=<UUID der swap-Partition>
In der Datei /boot/loader/loader.conf können wir die generelle Konfiguration des Bootloaders bearbeiten.
Der default-Eintrag gibt an, welcher Eintrag des Bootloaders als Standard gestartet werden soll.
Er bezieht sich auf die Dateinamen der Einträge im entries Verzeichnis. Wir wählen arch-uefi.
Außerdem kann man den timeout angeben, also die Zeit, bis der Standardeintrag automatisch gestartet wird.
default arch-uefi
timeout 1
Netctl
Anlegen von Config: /etc/netctl/<Config-Name>
netctl enable <Config-Name>
netctl start <Config-Name>