Arch Install Script

Install Script zum installieren von Arch Linux Grundsystem mit Luks und btrfs.


Download Arch Linux ISO

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 :)



Published

08 May 2017

Category

Arch