0%
Arch Linux : Installation, pacman et AUR

Arch Linux : Installation, pacman et AUR

Guide avancé Arch Linux : installation pas à pas, maîtrise de pacman, AUR avec yay et paru, PKGBUILD et maintenance d'une rolling release.

I

InSkillCoach

· min

Arch Linux : Installation, pacman et AUR

Arch Linux occupe une place à part dans le paysage des distributions : pas d’installateur graphique par défaut, pas de configuration préétablie, pas de versions. Vous construisez votre système pièce par pièce, et en échange vous obtenez une machine que vous comprenez entièrement, toujours à jour, accompagnée de la meilleure documentation du monde Linux. Ce guide s’adresse aux utilisateurs déjà à l’aise avec la ligne de commande : nous couvrons l’installation complète, la maîtrise de pacman, l’AUR, et surtout la maintenance dans la durée, là où se joue la réussite d’une installation Arch.

1. Philosophie : Rolling Release et KISS

Arch repose sur deux principes qui expliquent tous ses choix techniques.

Rolling release : il n’existe pas de « version » d’Arch. Le système est mis à jour en continu ; une installation de 2020 correctement entretenue est identique à une installation d’aujourd’hui. Vous ne ferez jamais de mise à niveau majeure, mais vous devez mettre à jour régulièrement et lire les annonces.

KISS (Keep It Simple, Stupid) : la simplicité au sens d’Arch signifie l’absence de couches d’abstraction, pas la facilité. Les paquets sont livrés au plus près de ce que publient les développeurs amont (vanilla), sans patchs de la distribution. La configuration se fait dans les fichiers d’origine des logiciels, pas via des outils maison.

Conséquences pratiques : vous êtes responsable de votre système. Arch ne vous protège pas de vous-même, mais rien n’y est magique ni caché.

2. Installation Résumée Étape par Étape

L’installation officielle se fait en ligne de commande depuis l’ISO. L’outil archinstall automatise le processus, mais dérouler une fois l’installation manuelle est le meilleur investissement pédagogique qui soit. Voici le déroulé complet pour une machine UEFI.

Préparation et partitionnement

# Vérifier le boot en mode UEFI (le répertoire doit exister et être peuplé)
ls /sys/firmware/efi/efivars

# Vérifier la connexion réseau (le Wi-Fi se configure avec iwctl)
ping -c 3 archlinux.org

# Synchroniser l'horloge
timedatectl set-ntp true

# Partitionner le disque : une partition EFI et une partition racine
fdisk /dev/nvme0n1
# g            -> nouvelle table GPT
# n, 1, +1G    -> partition EFI (type : EFI System)
# n, 2, reste  -> partition racine (type : Linux filesystem)
# w            -> écrire et quitter

# Formater
mkfs.fat -F32 /dev/nvme0n1p1
mkfs.ext4 /dev/nvme0n1p2

# Monter
mount /dev/nvme0n1p2 /mnt
mount --mkdir /dev/nvme0n1p1 /mnt/boot

pacstrap : installer le système de base

# Installer le socle : base, noyau, firmwares, et quelques indispensables
pacstrap -K /mnt base linux linux-firmware nano networkmanager sudo

fstab et chroot

# Générer la table des systèmes de fichiers à partir des montages actuels
genfstab -U /mnt >> /mnt/etc/fstab

# Vérifier le résultat avant de continuer
cat /mnt/etc/fstab

# Entrer dans le nouveau système
arch-chroot /mnt

Configuration de base dans le chroot

# Fuseau horaire et horloge matérielle
ln -sf /usr/share/zoneinfo/America/Montreal /etc/localtime
hwclock --systohc

# Locales : décommenter fr_CA.UTF-8 (ou fr_FR.UTF-8) dans /etc/locale.gen
nano /etc/locale.gen
locale-gen
echo "LANG=fr_CA.UTF-8" > /etc/locale.conf

# Nom de machine
echo "archbox" > /etc/hostname

# Mot de passe root
passwd

# Créer un utilisateur avec accès sudo
useradd -m -G wheel votre_nom
passwd votre_nom
EDITOR=nano visudo   # décommenter : %wheel ALL=(ALL:ALL) ALL

# Activer le réseau au démarrage
systemctl enable NetworkManager

Bootloader

# systemd-boot, simple et suffisant en UEFI
bootctl install

# Créer l'entrée de démarrage
cat > /boot/loader/entries/arch.conf << 'EOF'
title   Arch Linux
linux   /vmlinuz-linux
initrd  /initramfs-linux.img
options root=/dev/nvme0n1p2 rw
EOF

# Sortir du chroot, démonter et redémarrer
exit
umount -R /mnt
reboot

Au redémarrage, vous obtenez une invite de connexion en mode texte : un système Arch minimal et fonctionnel, prêt à recevoir votre environnement graphique et vos outils.

3. pacman : le Gestionnaire de Paquets

pacman condense toutes ses opérations dans des options d’une lettre. La syntaxe déroute au début, puis devient remarquablement rapide.

Les opérations fondamentales

# Installer un paquet (S = sync, depuis les dépôts)
sudo pacman -S firefox

# Mettre à jour TOUT le système : la commande la plus importante d'Arch
# S = sync, y = rafraîchir les index, u = mettre à jour
sudo pacman -Syu

# Supprimer un paquet
sudo pacman -R firefox

# Supprimer un paquet, ses dépendances orphelines et sa configuration
sudo pacman -Rns firefox

# Rechercher dans les dépôts
pacman -Ss navigateur

# Afficher les détails d'un paquet des dépôts
pacman -Si firefox

Règle absolue : ne faites jamais pacman -Sy paquet (rafraîchir les index puis installer sans tout mettre à jour). Cette « mise à jour partielle » installe un paquet compilé contre des bibliothèques plus récentes que celles de votre système et peut le casser. C’est -Syu, toujours.

Interroger le système installé (Q)

# Lister tous les paquets installés
pacman -Q

# Paquets installés explicitement (votre liste de courses)
pacman -Qe

# Détails d'un paquet installé
pacman -Qi firefox

# Lister les fichiers d'un paquet
pacman -Ql firefox

# Trouver le paquet propriétaire d'un fichier
pacman -Qo /usr/bin/firefox

# Lister les orphelins (dépendances devenues inutiles)
pacman -Qdt

# Supprimer tous les orphelins
sudo pacman -Rns $(pacman -Qdtq)

Gérer le cache

pacman conserve chaque version téléchargée dans /var/cache/pacman/pkg/, ce qui permet les retours en arrière mais consomme vite plusieurs gigaoctets.

# Taille du cache
du -sh /var/cache/pacman/pkg

# Garder les 3 dernières versions de chaque paquet (paccache est dans pacman-contrib)
sudo pacman -S pacman-contrib
sudo paccache -r

# Supprimer les versions des paquets désinstallés
sudo paccache -ruk0

# Automatiser le nettoyage hebdomadaire
sudo systemctl enable --now paccache.timer

4. L’AUR : le Dépôt Communautaire

L’AUR (Arch User Repository) est la vraie force d’Arch : un dépôt communautaire de plus de 80 000 recettes de compilation couvrant à peu près tout logiciel existant. Attention : l’AUR ne contient pas des paquets binaires, mais des PKGBUILD, des scripts qui décrivent comment construire le paquet. Rien n’y est vérifié par les développeurs d’Arch : la prudence est de votre responsabilité.

Installation manuelle depuis l’AUR

Comprendre le processus manuel avant d’utiliser un assistant :

# Prérequis pour compiler
sudo pacman -S --needed base-devel git

# Cloner la recette
git clone https://aur.archlinux.org/visual-studio-code-bin.git
cd visual-studio-code-bin

# TOUJOURS lire le PKGBUILD avant de construire
less PKGBUILD

# Construire et installer (s = installer les dépendances, i = installer le paquet)
makepkg -si

yay et paru : les assistants AUR

Les assistants (AUR helpers) automatisent le clonage, la compilation et surtout les mises à jour des paquets AUR. Les deux références actuelles sont yay (écrit en Go) et paru (écrit en Rust, du mainteneur historique de yay).

# Installer yay... depuis l'AUR, à la main (une seule fois)
git clone https://aur.archlinux.org/yay.git
cd yay && makepkg -si

# Ensuite, yay unifie dépôts officiels et AUR
yay -S spotify              # installer (dépôts ou AUR)
yay -Syu                    # tout mettre à jour, AUR compris
yay -Ss teams               # rechercher partout
yay -Qua                    # lister les mises à jour AUR en attente

paru s’utilise avec exactement les mêmes options. Différence notable : paru affiche le PKGBUILD par défaut avant compilation, un réglage plus sûr que vous pouvez aussi activer dans yay.

Anatomie d’un PKGBUILD

# Exemple minimal de PKGBUILD
pkgname=mon-outil
pkgver=1.2.0
pkgrel=1
pkgdesc="Un outil d'exemple"
arch=('x86_64')
url="https://exemple.com"
license=('MIT')
depends=('glibc')
makedepends=('go')
source=("$url/releases/$pkgname-$pkgver.tar.gz")
sha256sums=('...')

build() {
    cd "$pkgname-$pkgver"
    go build -o "$pkgname"
}

package() {
    cd "$pkgname-$pkgver"
    install -Dm755 "$pkgname" "$pkgdir/usr/bin/$pkgname"
}

À vérifier lors de la lecture d’un PKGBUILD : la source pointe-t-elle vers le site officiel du projet ? Les fonctions build() et package() font-elles autre chose que compiler et copier des fichiers ? Un PKGBUILD malveillant peut exécuter n’importe quoi avec vos droits.

5. Maintenance d’une Rolling Release

C’est ici que se joue la longévité de votre installation. Une Arch entretenue tourne des années ; une Arch délaissée six mois se met à jour dans la douleur.

La routine de mise à jour

# 1. Consulter les annonces avant une grosse mise à jour
# https://archlinux.org/news/ (interventions manuelles éventuelles)

# 2. Mettre à jour
sudo pacman -Syu

# 3. Traiter les fichiers .pacnew (voir ci-dessous)

# 4. Redémarrer après une mise à jour du noyau ou de systemd

Fréquence recommandée : au moins une fois par semaine. Après plusieurs mois sans mise à jour, mettez d’abord à jour le trousseau de clés (sudo pacman -Sy archlinux-keyring puis -Su) pour éviter les erreurs de signature.

Les fichiers .pacnew

Quand un paquet livre une nouvelle version d’un fichier de configuration que vous avez modifié, pacman n’écrase pas votre version : il dépose la nouvelle à côté avec l’extension .pacnew. Les ignorer indéfiniment finit par causer des dysfonctionnements.

# Localiser les .pacnew et .pacsave en attente
sudo pacman -S pacman-contrib
pacdiff --output

# Fusionner interactivement (utilise vim -d par défaut)
sudo pacdiff

# Avec un autre outil de fusion
DIFFPROG=meld sudo -E pacdiff

Revenir en arrière (downgrade)

Si une mise à jour casse quelque chose, le cache de pacman permet de réinstaller la version précédente :

# Réinstaller une version depuis le cache local
sudo pacman -U /var/cache/pacman/pkg/firefox-128.0-1-x86_64.pkg.tar.zst

# Geler temporairement le paquet pendant que le bug est corrigé en amont
# (ajouter dans /etc/pacman.conf, section [options])
# IgnorePkg = firefox

Pour les versions absentes du cache, l’Arch Linux Archive conserve tous les paquets publiés, et l’outil downgrade (AUR) automatise la recherche. Gardez le gel temporaire : une rolling release avec des paquets durablement épinglés finit par se retrouver en mise à jour partielle, l’état à éviter absolument.

6. Les Pièges du Rolling Release

  • La mise à jour partielle : jamais pacman -Sy paquet, jamais de IgnorePkg permanent. Tout le système avance ensemble.
  • Mettre à jour avant de partir en déplacement ou avant une échéance importante : si quelque chose casse, vous n’aurez pas le temps de le réparer. Mettez à jour quand vous avez une heure devant vous.
  • Le noyau mis à jour sans redémarrage : les modules de l’ancien noyau sont supprimés du disque ; brancher une clé USB peut alors échouer jusqu’au redémarrage.
  • Les paquets AUR qui cassent après une mise à jour des bibliothèques : recompilez-les (yay -S paquet --rebuild) après les grosses montées de version (Python, ICU, OpenSSL).
  • L’absence de sauvegarde : des instantanés Btrfs avec snapper, ou Timeshift, transforment une mise à jour ratée en incident de cinq minutes.

7. L’Arch Wiki : Votre Référence Permanente

L’Arch Wiki (wiki.archlinux.org) est unanimement considéré comme la meilleure documentation Linux existante, au point que les utilisateurs de Debian, Fedora ou Gentoo le consultent quotidiennement. Chaque page suit la même structure : installation, configuration, cas d’usage, dépannage.

# Consulter le wiki hors ligne, depuis le terminal
sudo pacman -S arch-wiki-lite
wiki-search "systemd-boot"

Réflexe à acquérir : avant toute question sur un forum, cherchez la page wiki du logiciel concerné. Dans neuf cas sur dix, la réponse s’y trouve, avec les spécificités Arch documentées.

Bonnes Pratiques

  • Faites l’installation manuelle au moins une fois avant d’utiliser archinstall : c’est le meilleur cours accéléré sur le fonctionnement d’un système Linux.
  • pacman -Syu complet, au moins hebdomadaire, jamais de -Sy partiel.
  • Consultez les annonces d’archlinux.org avant les mises à jour importantes.
  • Traitez les fichiers .pacnew avec pacdiff après chaque mise à jour.
  • Lisez chaque PKGBUILD avant de l’installer depuis l’AUR, même via yay ou paru.
  • Nettoyez le cache avec paccache -r, mais conservez quelques versions pour pouvoir rétrograder.
  • Mettez en place des instantanés (snapper + Btrfs ou Timeshift) avant d’en avoir besoin.
  • Gardez l’ISO d’installation sur une clé USB : arch-chroot depuis le live est l’outil de secours universel.

Conclusion

Arch Linux demande plus au départ et rend davantage ensuite : un système minimal que vous avez assemblé vous-même, des paquets toujours à jour, aucune mise à niveau majeure à redouter, et une documentation de référence. La contrepartie est une responsabilité permanente : mises à jour régulières, lecture des annonces, gestion des .pacnew. Si cette discipline vous convient, vous ne reviendrez probablement jamais en arrière ; et même si vous restez sur une distribution classique, une installation d’Arch menée à terme vous aura appris plus sur Linux que des mois d’utilisation ordinaire. Prochaine étape naturelle : explorer les instantanés Btrfs, les hooks pacman pour automatiser votre maintenance, et pourquoi pas la création de vos propres PKGBUILD.

InSkillCoach

À propos de InSkillCoach

Expert en formation et technologies

Coach spécialisé dans les technologies avancées et l'IA, porté par GNeurone Inc.

Certifications:

  • AWS Certified Solutions Architect – Professional
  • Certifications Google Cloud
  • Microsoft Certified: DevOps Engineer Expert
  • Certified Kubernetes Administrator (CKA)
  • CompTIA Security+
704
334

Commentaires

Les commentaires sont alimentés par GitHub Discussions

Connectez-vous avec GitHub pour participer à la discussion

Lien copié !