La base et le chroot
pacstrap
Pacstrap sert à installer les systemes nécessaires à la survie de cette magnifique distribution qu'est Arch Linux. La première commande ci-dessous est la commande avec les paquets minimums, vous pouvez cependant télécharger les paquets que vous souhaitez. Il est conseillé d'installer les paquets suivants :
base
linux
ou un autre paquet noyaulinux-firmware
ou un autre micrologiciel- un gestionnaire de réseau, ici
networkmanager
- un éditeur de texte, ici
vim
# Nous aurons ici besoin des paquets suivants
pacstrap /mnt gimp base linux linux-firmware \ # Paquets nécessaires à arch linux
grub \ # Nous reviendrons dessus plus tard
efibootmgr \ # utile pour GRUB
vim \
sudo \ # Nous reviendrons dessus plus tard
networkmanager \
lvm2
Cela va installer tous les paquets de base (ça peut prendre quelques minutes).
Si
pacstrap
sort une erreur du type :error: pam: signature from "John Doe <john@doe.com>" is unknown trust :: File /mnt/var/cache/pacman/pkg/pam-1.5.2-1-x86_64.pkg.tar.zst is corrupted (invalid or corrupted package (PGP signature)). Do you want to delete it? [Y/n]
Lancer la commande suivante puis relancer la commande
pacstrap
:pacman -Sy archlinux-keyring
Déchiffrement automatique
Copier le fichier de clé dans /mnt/root
.
cp keyfile /mnt/root
Trouver la valeur de la partition home dans ls -l /dev/disk/by-uuid
. Ici 4517ff0f-deab-4564-90ca-e4f4947b8ca3
:
total 0
lrwxrwxrwx 1 root root 10 Dec 4 10:37 3c07c1fb-8c95-4b86-b133-be0dbcf94e44 -> ../../dm-0
lrwxrwxrwx 1 root root 10 Dec 4 09:57 4A6B-045F -> ../../sda1
lrwxrwxrwx 1 root root 10 Dec 4 10:37 8f885dc4-2292-48a0-a319-b9045a300d93 -> ../../dm-3
lrwxrwxrwx 1 root root 15 Dec 4 10:32 4517ff0f-deab-4564-90ca-e4f4947b8ca3 -> ../../nvme0n1p7
lrwxrwxrwx 1 root root 15 Dec 4 10:37 51565f90-9666-47fc-ba13-85c1bdb016eb -> ../../nvme0n1p5
lrwxrwxrwx 1 root root 15 Dec 4 09:57 C6B27122B27117DF -> ../../nvme0n1p4
lrwxrwxrwx 1 root root 15 Dec 4 09:57 D2A6-C16F -> ../../nvme0n1p1
lrwxrwxrwx 1 root root 15 Dec 4 09:57 FC5AA8015AA7B734 -> ../../nvme0n1p3
lrwxrwxrwx 1 root root 15 Dec 4 10:31 ad022385-b683-4e48-8e66-3cb027b67a9a -> ../../nvme0n1p6
lrwxrwxrwx 1 root root 10 Dec 4 10:35 bc05acd8-90a2-43e8-922a-df890c3a11ad -> ../../dm-2
Ajouter crypt_hdd UUID=xyz /root/keyfile luks
dans /mnt/etc/crypttab
avec xyz
étant la valeur trouvée précédement :
crypt_hdd UUID=4517ff0f-deab-4564-90ca-e4f4947b8ca3 /root/keyfile luks
TRIM
TRIM va permettre d'augmenter la durée de vie d'un SSD si ce dernier est chiffré.
Si l'on se trouve sous ssd (ce qui est notre cas) :
- on vérifie que notre SSD supporte l'usage de TRIM. Une valeur différente de zéro indique le support de TRIM :
lsblk --discard
- dans
/mnt/etc/crypttab
, ajouterdiscard
aprèsluks
:
crypt_hdd UUID=4517ff0f-deab-4564-90ca-e4f4947b8ca3 /root/keyfile luks discards
- dans
/mnt/etc/lvm/lvm.conf
, activerissue_discards
. (S'il n'existe pas, copier/etc/lvm/lvm.conf
d'abord) systemctl enable fstrim.service
etsystemctl enable fstrim.timer
.
Référence sur TRIM :
arch-chroot
On va ensuite générer notre table de fichiers (fstab) et lancer le système.
genfstab -U /mnt >> /mnt/etc/fstab
arch-chroot /mnt
Nous sommes maintenant dans notre systeme de fichier, en tant que root.
Time
ln -sf /usr/share/zoneinfo/Europe/Paris /etc/localtime
hwclock --systohc
Langue
On va maintenant définir le locale, soit la langue de l'ordinateur.
vim /etc/locale.gen
Vous arrivez dans un gros fichier où toutes les lignes sont commentées. Trouvez la langue souhaitée et décommentez là.
en_US.UTF-8 UTF-8 # Pour l'anglais
fr_FR.UTF-8 UTF-8 # Pour le français
locale-gen
On peut également changer le keymap, c'est à dire la disposition du clavier au niveau du système. Ouvrir /etc/vconsole.conf
:
# us par défaut
KEYMAP=fr # pour mettre en français
Hostname & hostfile
echo "<hostname>" > /etc/hostname
vim /etc/hosts
Entrer la configuration suivante, remplacer
127.0.0.1 localhost
::1 localhost
127.0.1.1 <hostname>.localdomain <hostname>