Arch Install Script
Arch Install Script
Install Script zum installieren von Arch Linux Grundsystem mit Luks und btrfs.
dd if=archlinux*.iso of=/dev/sdY
Tastaturlayout setzen
loadkeys de-latin1-nodeadkeys
Root Passwort setzen
passwd
IP Adresse auslesen
ip a
SSH Starten
systemctl start sshd
Ab hier kann eine ssh Session von einem anderen Host aufgebaut werden.
“copy and paste” möglich!
Blockdevices auslesen
lsblk
SSD oder HDD einrichten
gdisk /dev/sda
Mit “d” werden die vorhanden Partitionen gelöscht. Neue Partions anlegen könnt ihr mit “n” anlegen. Dann einmal n für die neue Partition.
efi
Als erste Partition festlegen: '1'
Ersten Sektor auf 2048 setzen: [ENTER]
Letzten Sektor setzen / auf 512 MB Partitionsgröße setzen: +512M
Partitionstyp wählen: ef00*
swap
Größe des vorhanden Arbeitsspeichers
Als zweite Partition festlegen: '2'
Ersten Sektor wählen: [ENTER]
Letzten Sektor wählen: +16G
Partitionstyp wählen: 8200
root
Als dritte Partition festlegen: '3'
Ersten Sektor wählen: [ENTER]
Letzten Sektor wählen: [ENTER]
Partitionstyp wählen: [ENTER]*
Mit “w” wird das Partition Layout auf die Platte geschrieben.
Boot formatieren
mkfs.vfat -F32 /dev/sda1
Luks einrichten
cryptsetup -c aes-xts-plain -y -s 512 --use-random luksFormat /dev/sda3
verschlüsseltes Device öffnen
cryptsetup luksOpen /dev/sda3 root
root formatieren und mounten
mkfs.btrfs /dev/mapper/root
mount -o noatime,ssd,defaults /dev/mapper/root /mnt
Subvolumes erstellen
cd /mnt
btrfs subvolume create @
btrfs subvolume create @home
btrfs subvolume create @srv
btrfs subvolume create @snapshots
btrfs subvolume create @var-cache-pacman-pkg
Ordner erstellen und Subvolumes auf Ordner mounten
cd
umount /mnt
mount -o noatime,rw,ssd,space_cache,compress=lzo,subvol=@ /dev/mapper/root /mnt
mkdir -p /mnt/home
mount -o noatime,rw,ssd,space_cache,compress=lzo,subvol=@home /dev/mapper/root /mnt/home
mkdir -p /mnt/srv
mount -o noatime,rw,ssd,space_cache,compress=lzo,subvol=@srv /dev/mapper/root /mnt/srv
mkdir -p /mnt/.snapshots
mount -o noatime,rw,ssd,space_cache,compress=lzo,subvol=@snapshots /dev/mapper/root /mnt/.snapshots
mkdir -p /mnt/var/cache/pacman/pkg
mount -o noatime,rw,ssd,space_cache,compress=lzo,subvol=@var-cache-pacman-pkg /dev/mapper/root /mnt/var/cache/pacman/pkg
mkdir -p /mnt/boot
mount /dev/sda1 /mnt/boot
Überprüfen der Subvolumes
btrfs subvolume list /mnt
Installation des Basissystems
pacstrap /mnt base base-devel btrfs-progs bash-completion
fstab generieren
genfstab -U /mnt >> /mnt/etc/fstab
Mit Change Root in das neue System wechseln
arch-chroot /mnt
Zeitzone einstellen
ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime
Hostname setzen
Für “myhost” Namen des Systems eingeben
echo myhost > /etc/hostname
Spracheinstellungen festlegen
echo LANG=de_DE.UTF-8 > /etc/locale.conf
echo LC_COLLATE=C >> /etc/locale.conf
echo LANGUAGE=de_DE >> /etc/locale.conf
Tastaturbelegung und Schriftart
echo KEYMAP=de-latin1-nodeadkeys > /etc/vconsole.conf
echo FONT=lat9w-16 >> /etc/vconsole.conf
locale festlegen
nano /etc/locale.gen
enferne ‘#’ vor
de_DE.UTF-8 UTF-8
de_DE ISO-8859-1
de_DE@euro ISO-8859-15
locale-gen
Passwort Root setzen
passwd
User anlegen
Für “Username” den Namen des Users eintragen
useradd -m -g users -s /bin/bash Username
passwd username
Sudo
pacman -S sudo
Sudoers bearbeiten
nano /etc/sudoers
suche ””## Uncomment to allow members of group wheel to execute any command und entferne die Raute vor
%wheel ALL=(ALL) ALL
User zur Gruppe wheel hinzufügenfstab
gpasswd -a Username wheel
Nützliche Dienste
pacman -S acpid ntp dbus avahi cronie
Dienste enablen
systemctl enable acpid ntpd avahi-daemon dhcpcd cronie
Hooks erweitern
nano /etc/mkinitcpio.conf
btrfs keyboard keymap encryp vor Filesystem einfügen und fsck entfernen
+ btrfs keyboard keymap encrypt
- fsck
btrfs keyboard keymap encrypt
Initramdisk erzeugen
mkinitcpio -p linux
Bootloader
bootctl --path=/boot install
nano /boot/loader/loader.conf
timeout 3
default archlinux
nano /boot/loader/entries/archlinux.conf
title Arch Linux
linux /vmlinuz-linux
initrd /initramfs-linux.img
options cryptdevice=UUID=XXXXX:root:allow-discards resume=/dev/mapper/swap root=/dev/mapper/root rootflags=subvol=@ lang=de locale=de_DE.UTF-8 rw quiet loglevel=3 vga=current
UUID auslesen
blkid
Cryptdevice = UUID von sda3
blkid | grep sda3
Swap
nano /etc/crypttab
swap /dev/sda2 /dev/urandom swap,cipher=aes-cbc-essiv:sha256,size=256
Reboot des Systems und Boot
Swap
ls -l /dev/mapper/
Prüfen ob swap File erstellt wurde.
Swap erstellen und aktivieren
mkswap /dev/mapper/swap
swapon /dev/mapper/swap
Have fun :)