Installer Archlinux (partie 2)

3. Création de votre profil utilisateur

Allumez l’ordinateur et connectez-vous en root. Entrez la commande ci-dessous. Elle va créer votre profil utilisateur et vous ajouter au groupe wheel et sudo.

useradd -mG wheel benoit
useradd -G sudo benoit

Éditez le fichier /etc/sudoers.

nano /etc/sudoers

Supprimez les croisillons pour décommenter les lignes ci-dessous et les rendre actives.

# %wheel   ALL=(ALL:ALL) ALL
# %sudo   ALL=(ALL:ALL) ALL

Choisissez un mot de passe pour votre profil.

passwd benoit  # Suivre les instructions

Redémarrez votre ordinateur pour prendre en compte les modifications et reconnectez vous sous votre nouveau profil utilisateur. Puis, créez quelques répertoires personnels. Images contiendra un sous-répertoire Wallpapers et le répertoire caché .config contiendra deux sous-répertoires. Attention! Il n’y a pas d’espaces avant ou après les virgules. L’option -p permet d’éviter une erreur au cas ou un répertoire final ou intermédiaire existerait déjà.

mkdir -p Documents Images/Wallpapers Musique Videos
mkdir -p .config/{tint2,nitrogen} Downloads

Activez la connexion au réseau et testez avec ping.

sudo systemctl start NetworkManager
sudo systemctl enable NetworkManager
ping archlinux.org

Mettez à jour la distribution. Puis, installez les paquets xorg-server et xorg-xinit:

sudo pacman -Syu
sudo pacman -S xorg-server xorg-xinit

4. Installation de yay, un gestionnaire de dépôts non officiels

git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si

5. Installation d’une interface graphique

Vous allez installer Openbox, un gestionnaire de fenêtres ultraléger, ainsi que tint2, une barre de tâches, et nitrogen, un sélecteur de fond d’écran. Commençons par openbox. Télechargez le paquet et créez le fichier .xinitrc (le point signifie que c’est un fichier caché).

sudo pacman -S openbox
echo "exec openbox-session" > ~/.xinitrc

Les fichiers de configuration d’Openbox se trouvent dans le répertoire /etc/xdg. Ce sont des fichiers qui agissent au niveau de tout le système, quel que soit l’utilisateur connecté. Pour pouvoir personnaliser la configuration, on peut les copier dans le répertoire /home/$USER/.config. Il ne faut pas oublier de changer le propriétaire du répertoire.

sudo cp -r /etc/xdg/openbox /home/benoit/.config
sudo chown -R benoit:benoit /home/benoit/.config/openbox

Remplacez benoit par votre nom d’utilisateur. N’utilisez pas la variable d’environnement $USER car comme vous êtes en mode super administrateur (sudo), cette variable stocke la valeur root.

Vous n’allez même pas installer d’écran de connexion. À chaque démarrage de votre ordinateur, il vous suffira de vous connecter et d’entrer la commande suivante:

startx

La première fois, vous allez voir apparaître ce fond d’écran gris foncé… Mais si vous cliquez sur le bouton droit de votre souris, un tout petit menu avec des boutons pas encore fonctionnels va se matérialiser. Vous pouvez cliquer sur logout et sortir. Vous allez continuer en mode console.

Vous allez effacer toute cette grisaille et la remplacer par un feu d’artifice aux mille couleurs! Pour ce faire, téléchargez avec la commande wget, l’archive de mon dépôt git archlinux_install. Si ça ne fonctionne pas remplacez wget par wget –no-check-certificate. Puis, avec la commande unzip, décompressez cette archive avant de vous déplacer dans le répertoire nouvellement créé (commande cd). Enfin, installez les paquets contenus dans le fichier pkglist.txt.

Puis, effacez toutes les archive(s) *.zip. Déplacez les fichiers images png et les fichiers xml dans le répertoire openbox. Déplacez le fichier de configuration de la barre des tâches dans le répertoire tint2 créé à une étape précédente. Déplacez le thème d’Openbox dans le répertoire /usr/share/themes. Déplacez le lanceur Menu.desktop dans le répertoire des applications. Déplacez les fichiers de configuration de Nitrogen dans le répertoire éponyme créé à une étape précédente. Puis, repositionnez-vous dans votre répertoire utilisateur avant d’effacer les fichiers d’installation.

wget https://gitlab.com/miamondo/archlinux_install/-/archive/main/archlinux_install-main.zip
unzip *.zip
cd archlinux_install-main
for pkg in $(cat pkglist.txt)
do
    sudo pacman -S $pkg
done
rm ../*.zip*
mv *.png ~/.config/openbox
sed -i "s/user/$USER/" menu.xml
mv *.xml ~/.config/openbox
mv tint2rc ~/.config/tint2
sudo mv Nightmare-02 /usr/share/themes
sed -i "s/user/$USER/" *.cfg
sed -i "s/user/$USER/" *.desktop
sudo mv *.desktop /usr/share/applications
mv *.cfg ~/.config/nitrogen
cd  # On se repositionne dans le répertoire utilisateur.
rm -r archlinux_install-main # Suppression du répertoire

Le répertoire Openbox contient plusieurs fichiers. Avec l’éditeur nano, vous allez modifier le fichier autostart qui est chargé de lancer des applications au démarrage. Vous allez rajouter numlockx (qui déverrouille le pavé numérique), tint2 qui affiche une barre de tâches et nitrogen qui affiche un fond d’écran. Cest parti!

nano ~/.config/openbox/autostart

numlockx &
tint2 &
nitrogen --restore &

N’oubliez pas les esperluettes si vous voulez que la ligne suivante soit exécutée. Elles permettent de « détacher » le processus.

Enfin, installez le thème Mint-Y-icons et redémarrez votre ordinateur.

yay -S mint-y-icons

Normalement, si tout s’est bien passé, votre nouvelle distribution devrait ressembler à l’image ci-dessous. Nous continuerons à configurer le système dans une troisième partie.

Installer Archlinux (partie 1)

1. Préliminaires à l’installation

1.1. Se procurer l’image iso

Voici l’adresse de la page Téléchargements sur le site officiel de la distribution. Choisissez le miroir le plus proche de votre domicile : https://archlinux.org/download

1.2. Installer l’image iso sur une clé USB

sudo dd bs=4096 if=image.iso of=/dev/sdb status=progress && sync

Une fois que l’image iso se trouve sur la clé USB, connectez celle-ci à l’ordinateur sur lequel la distribution sera installée et démarrez en prenant soin de modifier l’ordre de boot. Vous accédez au menu d’amorçage en pressant plusieurs fois la touche Esc ou bien la touche F11 ou bien encore la touche Supprimer (del). Ça dépend de la marque de votre machine. Choisissez la version de votre choix (UEFI ou msdos). Chez moi, la clé s’appelle Generic Flash disk (version msdos) ou UEFI generic flash disk.

2. installation de base

2.1. Configurer la langue du système en français

loadkeys fr

2.2. Vérification du mode de démarrage

ls /sys/firmware/efi/efivars

Si la commande affiche le répertoire sans erreur, alors le système démarre en mode UEFI. Si le répertoire n’existe pas, le système démarre en mode BIOS.

2.3. Connexion au réseau

Si vous êtes connecté avec le cable (c’est la solution que je vous conseille), contentez-vous de démarrer le protocole de configuration dhcpcd et de faire un test de connexion avec ping.

systemctl start dhcpcd
systemctl enable dhcpcd
ping archlinux.org

Si vous voulez vous connecter au wifi, entrez les commandes suivantes:

iwctl
device list
station wlan0 scan  # wlan0 est le nom de mon réseau
station wlan0 get-networks
station wlan0 connect WLAN-Miamondo
passphrase *********
exit

Démarrez le protocole de configuration et tester la connexion avec ping.

systemctl start dhcpcd
systemctl enable dhcpcd
ping archlinux.org

2.4. Mise à jour de l’horloge du système

timedatectl set-ntp true

2.5. Partitionner le disque

« Nuker » les premiers octets du disque dur avec cette commande:

dd if=/dev/zero of=/dev/sda bs=4096 count=4096

Ouvrez le gestionnaire de partitionnement:

cfdisk /dev/sda

Choisissez dos si votre ordinateur est amorcé par un BIOS, ou gpt s’il est amorcé par UEFI.

Partitionnement BIOS

En BIOS, trois partitions vont être créées. La première aura une taille de 35 GB. Elle accueillera tous les fichiers de configuration nécessaires au bon fonctionnement du système d’exploitation. En outre, cette partition sera amorçable, c’est-à-dire que c’est elle qui démarrera la distribution. C’est une partition qui sera montée à la racine du système. Cette racine est symbolisée par une barre oblique /. Pour créer la première partition, il suffit de sélectionner Nouvelle à l’aide des flèches du clavier, et de valider avec la touche Entrée.

Ensuite, il faut renseigner la taille de cette première partition, soit 35G, avant de valider.

Ensuite, il faut sélectionner primaire et valider.

La première partition /dev/sda1 est configurée (Je l’ai surlignée en jaune). Une deuxième ligne apparaît (celle qui est en gris). Elle correspond à l’espace libre restant.

Comme je l’ai précisé plus haut, la partition /dev/sda1 est amorçable. Il faut donc sélectionner cette fonctionnalité et valider le choix, après s’être repositionné sur la ligne /dev/sda1. Un astérisque va apparaître dans la colonne amorçage.

La deuxième partition aura une taille de 8 GB. Ce sera la partition dédiée à l’espace d’échange qu’on appelle aussi la swap. Sa taille correspond a celle de la mémoire vive (RAM). Cette petite partition a pour mission de décharger la mémoire vive lorsque celle-ci est presque pleine.

Il faut penser à modifier le type, car c’est une partition un peu spéciale. Elle ne stocke pas de données ou du moins seulement pour soulager la RAM lorsque celle-ci est au bord de l’indigestion. Théoriquement, on n’est pas obligé de créer une partition SWAP, mais c’est vivement recommandé.

La troisième partition occupera la taille restante et sera dédié au /home, c’est-à-dire au répertoire qui contient le répertoire de l’utilisateur (ou des utilisateurs, il peut y en avoir plusieurs). Pour créer cette partition, il faut s’y prendre exactement comme pour la première. Il faut lui attribuer toute la taille restante, c’est-à-dire dans cet exemple, 888,5 GB.

Toutes les partitions sont définies et configurées. Il ne reste plus qu’à valider avec l’onglet Écrire avant de confirmer. La table de partitions est créée.

Pour résumer, le disque dur a été divisé en trois partitions qui sont:


/dev/sda1    *    35G    83 Linux
/dev/sda2          8G    82 SWAP (partition d’échange)
/dev/sda3      888,5G    83 Linux

Partitionnement UEFI

Avec l’UEFI, le partitionnement diffère quelque peu. Il faut d’abord créer une partition dédiée au /boot/efi d’une capacité de 300 Mo, par conséquent une toute petite partition. Mais elle est obligatoire.

/dev/sda1    300M    type EFI system  # /boot/efi
/dev/sda2     35G    type Linux filesystem  # / (racine du système) 
/dev/sda3      8G    type Linux swap
/dev/sda4  888,5G    type Linux filesystem  # /home

2.6. Formatage des partitions

mkfs s’utilise en lui adjoignant le système de fichier à l’aide d’un point, le tout suivi de la partition à formater. Attention, il y a un espace entre la commande de formatage et la partition.

mkswap formate l’espace d’échange, c’est-à dire la partition swap. Elle ne prend pas de système de fichiers en attribut. Là encore, il y a un espace entre la commande et la partition. Donc, dans le code-ci-dessous, on formate la partition /dev/sda1 en un système de fichiers de type ext4. On formate la swap. On formate la partition /dev/sda3 en un système de fichiers de type ext4.

mkfs.ext4 /dev/sda1
mkswap /dev/sda2
mkfs.ext4 /dev/sda3

Variante UEFI

ATTENTION! ne formatez la partition /dev/sda1 que s’il n’y a pas d’autres systèmes d’exploitation présents sur votre machine.

mkfs.vfat -F32 /dev/sda1
mkfs.ext4 /dev/sda2
mkswap /dev/sda3
mkfs.ext4 /dev/sda4

2.7. Montage des partitions

En mode BIOS

Les partitions sont formatées. Maintenant, il reste à définir les points de montage, c’est-à-dire l’endroit précis ou le contenu de ces partitions sera accessible. Les trois partitions seront montées automatiquement au démarrage de l’ordinateur et démontées automatiquement à l’extinction de ce dernier. Nous allons monter les partitions à un point précis de la clé d’installation. Ce point de montage s’appelle /mnt et il deviendra la racine du nouveau système. Lorsque l’installation sera terminée, il se réduira à une simple barre oblique : /

Cette partition formatée en ext4 est destinée à accueillir les fichiers de configuration du système, c’est-à-dire: /bin /boot /dev /etc /home /lib (…) /var

mount /dev/sda1 /mnt

La swap, c’est un peu spécial. Pour l’activer, il suffit d’entrer cette commande :

swapon /dev/sda2

La troisième partition est destinée à accueillir le répertoire de l’utilisateur (ou des utilisateurs) : Documents, Images, Vidéos, etc. Le répertoire personnel sera monté non pas à la racine du système mais dans /home. Or, /home n’existe pas encore. Il faut donc le créer avec la commande mkdir.

mkdir /mnt/home && mount /dev/sda3 /mnt/home

Résumé du montage en mode BIOS

mount /dev/sda1 /mnt
swapon /dev/sda2
mkdir /mnt/home && mount /dev/sda3 /mnt/home


En mode UEFI

Dans la variante UEFI, l’option -p de la commande mkdir permet de créer des répertoires intermédiaires sans générer d’erreur si ces derniers existent déjà. Ici, c’est le cas de /boot.

mount /dev/sda2 /mnt
mkdir -p /mnt/boot/efi /mnt/home
swapon /dev/sda3
mount /dev/sda1 /mnt/boot/efi
mount /dev/sda4 /mnt/home

2.8. Installation des métapaquets

À présent, passons à l’installation de la base du système avec les métapaquets base et base-devel. C’est la commande pacstrap qui va s’en charger.

pacstrap /mnt base base-devel linux linux-firmware
pacstrap /mnt pacman-contrib sudo nano dhcpcd networkmanager
pacstrap /mnt git unzip zip wget

2.9. Générer le fichier /mnt/etc/fstab

Ce fichier définit comment les partitions doivent être montées au démarrage.

genfstab -U -p /mnt >> /mnt/etc/fstab

2.10. Chrooter dans le nouveau système

On entre dans le nouveau système installé sur le disque dur. L’invite de commande change et la racine devient / au lieu de /mnt.

arch-chroot /mnt

2.11. Renseigner le nom de l’ordinateur

echo nom_ordinateur > /etc/hostname

2.12. Création d’un lien symbolique pour le fuseau horaire

ln -sf /usr/share/zoneinfo/Europe/Paris /etc/localtime

2.13. Sélection de la langue du système

C’est ce qu’on appelle la locale. Pour la sélectionner, nous allons éditer le fichier /etc/locale.gen et décommenter, c’est-à-dire supprimer le croisillon qui se trouve au début de la locale. Ainsi, l’instruction deviendra exécutable :

nano /etc/locale.gen

Si notre locale est le français, nous supprimons le croisillon devant fr_FR.UTF-8 UTF-8.

Il faut enregistrer avec Ctrl+X puis confirmer avec Y(es) et Entrée avant d’exécuter la commande suivante :

locale-gen

2.14. Configuration de la locale pour tout le système

echo LANG="fr_FR.UTF-8" > /etc/locale.conf

2.15. Langue du clavier

echo KEYMAP=de-latin1 > /etc/vconsole.conf

2.16. Générer l’image du noyau Linux

mkinitcpio -p linux

2.17. Définir un mot de passe pour l’utilisateur root

passwd  # Suivre les instructions

2.18. Installer le chargeur d’amorçage

En mode BIOS

pacman -S grub
grub-install --no-floppy --recheck /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg

En mode UEFI

pacman -S grub efibootmgr
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck
grub-mkconfig -o /boot/grub/grub.cfg

Redémarrage

exit
umount -R /mnt
reboot  # Penser à retirer le clé USB