Installation de base

De ArchwikiFR


Les Arch Install Scripts sont un ensemble de scripts bash ayant pour but de simplifier l'installation d'Arch. Cette page donne un exemple d'installation basique. Vous y trouverez également des liens vers des pages wiki, documentation externe, ou lien vers le manuel pour les principales étapes de l'installation.

Important: Il est vivement déconseillé d'avoir recours à des tutoriels lors de l'installation d'Arch Linux. Les tutoriels sont rarement mis-à-jour ce qui entre en conflit avec l'évolution constante de toute rolling release. L'utilisation d'un tutoriel périmé ou incorrect peut mener à de graves dysfonctionnements.
Important: L'ensemble des commandes est donné à titre d'exemple. Il est vivement recommandé de se documenter dessus (wiki, manuel avec la commande man, une_commande -h, etc.)
Astuce: Pour une installation en dual boot avec Windows, la lecture de cette page peut être utile.
Astuce: L'installation sous MacBook présente quelques variantes par rapport à ce qui suit: MacBook.


Live CD/USB

La dernière iso inclut les scripts et permet d'installer un système i686 ou x86_64 via le réseau. C'est une image hybride dans le sens où elle peut soit être gravée sur un CD ou flashée dans une clé USB à l'aide de dd par exemple.

Note: Une liste complète des outils de l'image officielle est disponible: les paquets communs, spécifiques i686 et spécifiques x86_64. Le media ne fournit plus le dépôt [core], il est donc impossible d'installer Arch hors-ligne.

Une fois gravée ou flashée et l'ordinateur démarré dessus, vous pouvez choisir si vous souhaitez un système 32 bits (i686) ou 64 bits (x86_64), puis vous arrivez directement à une console ou vous êtes identifié en root.

Vérification de l'image

Ce qui suit permet de contrôler la validité de l'image d'installation (exemple pour l'ISO d'octobre 2012).

Intégrité

Les fichiers md5sums.txt et sha1sums.txt permettent de vérifier que les données de l'image n'ont pas été altérées lors du téléchargement:

$ md5sum -c md5sums.txt
archlinux-2012.10.06-dual.iso: OK

ou

$ sha1sum -c sha1sums.txt
archlinux-2012.10.06-dual.iso: OK
Note: La somme de contrôle (md5sums.txt et/ou sha1sums.txt) doit se trouver dans le même répertoire que le .iso.

Authenticité

Le fichier .sig permet de garantir que l'image d'installation est authentique (car signée par un utilisateur de confiance ou développeur d'Arch).

Vérification sous Arch

Sous Arch, la vérification peut se faire au moyen de pacman-key:

$ pacman-key -v archlinux-2012.10.06-dual.iso.sig
gpg: Signature faite le sam. 06 oct. 2012 16:28:53 CEST avec la clé RSA ID 9741E8AC
gpg: Bonne signature de « Pierre Schmitz <pierre@archlinux.de> »
Note: La signature (le .sig) doit se trouver dans le même répertoire que le .iso.
Vérification par gpg

Sinon, procédez comme suit à l'aide de gpg:

$ gpg --verify archlinux-2012.10.06-dual.iso.sig
gpg: Signature faite le sam. 06 oct. 2012 16:28:53 CEST avec la clé RSA ID 9741E8AC
gpg: Impossible de vérifier la signature: Pas de clé publique
random usage: poolsize=600 mixed=0 polls=0/0 added=0/0
              outmix=0 getlvl1=0/0 getlvl2=0/0
secmem usage: 0/32768 bytes in 0 blocks

Il nous faut récupérer la clé publique depuis le serveur qui l'abrite:

$ gpg --keyserver hkp://keys.gnupg.net --recv-keys 9741E8AC
gpg: enabled debug flags: memstat
gpg: requête de la clé 9741E8AC du serveur hkp keys.gnupg.net
gpg: clé 9741E8AC: clé publique « Pierre Schmitz <pierre@archlinux.de> » importée
gpg: aucune clé de confiance ultime n'a été trouvée
gpg:        Quantité totale traitée: 1
gpg:                       importée: 1  (RSA: 1)
random usage: poolsize=600 mixed=0 polls=0/0 added=0/0
              outmix=0 getlvl1=0/0 getlvl2=0/0
secmem usage: 0/32768 bytes in 0 blocks

En cas de problème avec le serveur de clés, il est possible d'utiliser un autre serveur

gpg --keyserver hkp://pgp.mit.edu --recv-keys 9741E8AC

Relançons la vérification:

$ gpg --verify archlinux-2012.10.06-dual.iso.sig
gpg: enabled debug flags: memstat
gpg: Signature faite le sam. 06 oct. 2012 16:28:53 CEST avec la clé RSA ID 9741E8AC
gpg: Bonne signature de « Pierre Schmitz <pierre@archlinux.de> »
gpg: ATTENTION: Cette clé n'est pas certifiée avec une signature de confiance !
gpg:            Rien ne dit que la signature appartient à son propriétaire.
Empreinte de clé principale: 4AA4 767B BC9C 4B1D 18AE  28B7 7F2D 434B 9741 E8AC
random usage: poolsize=600 mixed=0 polls=0/0 added=0/0
              outmix=0 getlvl1=0/0 getlvl2=0/0
secmem usage: 0/32768 bytes in 0 blocks

La signature est correcte, cela va nous suffire car il s'agit de l'une des clés principales d'Arch: je vous invite à lire l'encadré «important» de cette section pour bien comprendre et vérifier par vous-même que l'empreinte de cette clé est correcte.

Installation de l'ISO sur une clé USB

Cette section explique comment créer une clé USB comportant l'ISO d'installation d'Archlinux. Cela implique que vous ayez déjà vérifié l'intégrité et l'authenticité de l'ISO téléchargée.

Important: Cela va définitivement supprimer les données présentes sur la clé USB. Vérifiez aussi que votre clé est bien démontée avec la commande lsblk !
Astuce: La commande fdisk -l affiche le chemin de votre clé USB (ainsi que de vos autres disques, attention de ne pas les confondre).
Note: Utilisez la notation /dev/sdx et non pas /dev/sdx1. C'est une erreur fréquente.
dd if=/chemin/vers/archlinux-2012.11.01-dual.iso of=/dev/sdx bs=1M

Vous pouvez maintenant installer Archlinux à partir de votre clé USB.

Note: Vous devrez certainement régler la priorité de démarrage dans le BIOS, afin que le PC boote sur la clé avant le disque.
Note: Si vous souhaitez utiliser une autre méthode afin de créer votre media, cette page pourrait vous être utile.

Préparation avant l'installation

Vous aurez sans doute besoin pour votre installation d'utiliser la documentation officielle pour vous épauler. Ayez recours à plusieurs tty pour vous permettre de passer facilement de l'installation à la documentation et vice-versa.

Un fichier nommé install.txt, écrit dans la langue de Shakespeare, liste les étapes à suivre. On peut donc l'ouvrir avec un pager comme less ou more :

less install.txt

Pour les anglophobes, il est possible d'accéder au wiki français grâce au navigateur elinks en console :

elinks wiki.archlinux.fr/Installation

Le client irssi est aussi disponible, si vous avez des questions à poser à la communauté.

Disposition du clavier

Pour changer l'agencement du clavier, utilisez la commande loadkeys (le clavier par défaut étant le clavier QWERTY, il faut taper loqdkeys fr)pc sur un clavier AZERTY pour écrire loadkeys fr-pc).

Pour la France:

loadkeys fr-pc

Vous pouvez avoir la liste des agencements de clavier disponibles en tapant cette commande :

find /usr/share/kbd/keymaps/ -type f
Astuce: Une liste des agencements courants pour la langue française est disponible à la page Vconsole.

Connexion au réseau

Important: Cette étape ne concerne que la connexion réseau depuis le livecd. Elle ne vous dispense pas de configurer votre réseau une fois démarré sur votre Arch nouvellement installée.

Dans le cas le plus simple, vous êtes connecté en filaire et votre réseau a un serveur DHCP, dans ce cas, vous avez dû être connecté lors du démarrage du live. Vous pouvez vous en assurer ; la commande suivante devrait retourner une adresse IP autre que 127.0.0.1/8 :

ip address show

Autrement, il vous faut configurer votre réseau en vous assurant d'abord d'avoir arrêté le service dhcpcd :

systemctl stop dhcpcd.service
Note: Il se peut qu'un simple dhcpcd fonctionne et vous ajoute une IP sur votre interface ethernet --la commande est assez verbeuse et vous verrez bien si ça fonctionne. Attention, c'est un biais moche, qui ne fonctionnera correctement que dans le système live. Lisez l'article connexion au réseau.
Note: En Wifi, si votre carte est déjà détectée, vous pouvez vous connecter rapidement en utilisant la commande wifi-menu fourni avec netctl. Pour réutiliser cette commande dans le système installé, il faut aussi les paquet dialog et wpa_supplicant.

Mise à jour de l'heure système

Afin que pacman (et pacstrap) puisse vérifier la validité des paquets téléchargés, il est nécessaire que la date soit correcte. Dans le cas contraire, vous ne pourrez rien installer ! Vous pouvez vérifier la date et l'heure actuelle avec la commande suivante :

timedatectl

Si elle n'est pas correcte, vous pouvez modifier l'horloge avec la commande suivante :

timedatectl set-time '2016-08-25 10:00:00'

Partitionnement des disques

Le partitionnement peut être fait avant de démarrer sur le live (avec gparted, par exemple), mais il peut aussi être fait à ce moment à l'aide de l'un des différents utilitaires disponibles : fdisk, parted, cfdisk, etc.

Pour des partitionnements plus avancés, vous pouvez vous référer à la catégorie partitionnement.

Astuce: Si vous êtes le possesseur d'un SSD, vous serrez sans doute intéressé par la page SSD.
Attention: Depuis 2010, de plus en plus de PC utilisent un UEFI pour remplacer le bon vieux BIOS. Bien que les UEFI conservent un compatibilité avec les BIOS (parfois désignée comme Legacy Mode ou CSM), le boot natif d'un UEFI est différent. Généralement, les BIOS cherchent le chargeur d'amorce (bootloader) dans le MBR, alors que les UEFI le cherchent dans une partition spéciale, appelée ESP (voir la section GPT ci-dessus).

Table de partitions MS-DOS (MBR)

Dans ce guide, nous prendrons pour exemple le schéma de partitionnement suivant :

Important: Cet exemple n'est qu'un exemple, pas un modèle à suivre, en particulier avoir une partition de boot séparée n'a plus d'utilité en partition ms-dos.
  • /dev/sda1 pour le /boot
  • /dev/sda2 pour la swap
  • /dev/sda3 pour le /
  • /dev/sda4 pour le /home
Note: À titre indicatif, voici un ordre de grandeur pour la taille des partitions:
  • /boot: 100 Mo sont très largement suffisants (vous pourrez installer plusieurs noyaux).
  • swap: recommandé si votre machine comprend moins d'1 Go de RAM (dans ce cas précis, prévoir le double de la taille de la RAM). Si vous prévoyez d'utiliser l'hibernation, le swap doit être au moins égal à la valeur de la RAM. Si votre machine compte plus de 2 Go de RAM et que vous ne comptez pas utiliser l'hibernation ou des traitements lourds (gros développements, traitements photos/vidéos, enregistrements de SGBD de type BLOB...), vous pouvez ne pas avoir de swap.
  • /: entre 12 et 25 Go pour ne pas être à l'étroit (selon ce que vous comptez installer, pour pouvoir conserver le cache de pacman, etc.).
  • /home: ce qui vous reste.
Astuce: Une table de partition de type MBR est limitée à 4 partitions primaires. Pour avoir toute latitude de modifier votre partitionnement à l'avenir (redimensionner des partitions, prévoir de la place pour un autre système, etc.), il est préférable de passer par une partition étendue pouvant compter jusqu'à 32 partitions logiques, que vous pourrez subdiviser facilement.

Table de partitions GUID (GPT)

Le GPT diffère du MBR dans la mesure où il ne faut pas oublier de créer une partition dédiée à l'UEFI (ESP). Bien qu'il reste tout à fait possible d'avoir un /boot séparé, son utilité est réduite avec l'UEFI car l'ESP est déjà là pour ça et une partition boot supplémentaire serait génératrice de confusions. Par convention, nous mettrons toujours l'ESP en tant que première partition du premier disque. Voir la page ESP pour la création de l'ESP (si nécessaire).

  • /dev/sda1 pour le /boot/efi
  • /dev/sda2 pour la swap
  • /dev/sda3 pour le /
  • /dev/sda4 pour le /home
Note: À titre indicatif, voici un ordre de grandeur pour la taille des partitions:
  • /boot/efi: 300 Mo sont très largement suffisants (vous pourrez installer plusieurs noyaux).
  • swap: recommandé si votre machine comprend moins d'1 Go de RAM (dans ce cas précis, prévoir le double de la taille de la RAM). Si vous prévoyez d'utiliser l'hibernation, le swap doit être au moins égal à la valeur de la RAM. Si votre machine compte plus de 2 Go de RAM et que vous ne comptez pas utiliser l'hibernation ou des traitements lourds (gros développements, traitements photos/vidéos, enregistrements de SGBD de type BLOB...), vous pouvez ne pas avoir de swap.
  • /: entre 12 et 25 Go (35 pour les amateurs de jeux vidéos) pour ne pas être à l'étroit (selon ce que vous comptez installer, pour pouvoir conserver le cache de pacman, etc.).
  • /home: ce qui vous reste.
Astuce: Une table de partition de type GPT est limitée à 128 partitions primaires. Il n'existe donc pas de partition étendue.

Formatage des partitions

La commande mkfs permet de formater les partitions dans le système de fichiers que vous voulez. Pour avoir les alias de commande, il suffit de taper mkfs suivi de Tab. On peut donner un nom à la partition en ajouter l'argument -L NomDeLaPartition lors de l'appel à mkfs. Pour l'exemple, formatons /boot en ext2, / et /home en ext4 :

Table de partitions MS-DOS (MBR)

mkfs.ext2 /dev/sda1
mkfs.ext4 /dev/sda3
mkfs.ext4 /dev/sda4

La swap est créée en utilisant mkswap :

mkswap /dev/sda2

Table de partitions GUID (GPT)

Pour une table de partition GPT, le formatage est le même que pour une table MBR. Si vous venez de créer l'ESP dans la partie #Partitionnement, il faudra le formater :

mkfs.vfat -F32 /dev/sda1
Attention: Ne formatez pas cette partition si d'autres systèmes d'exploitation sont déjà installés sur votre machine ! Cela les rendrait non-amorçables.

Montage des partitions

Il faut monter les partitions précédemment créées sous le dossier /mnt afin d'y installer le système. On utilise pour cela la commande mount :

mount /dev/sda3 /mnt
# Pour créer le(s) dossier(s) utilisateur, il nous faut monter la partition /home
mkdir /mnt/home && mount /dev/sda4 /mnt/home

Le swap doit également être activé pour être détecté lors de la création du fstab à suivre :

swapon /dev/sda2

Si vous avez un /boot séparé, il faut aussi le monter :

mkdir /mnt/boot && mount /dev/sda1 /mnt/boot

Ou bien si vous avez un ESP :

mkdir -p /mnt/boot/efi && mount -t vfat /dev/sda1 /mnt/boot/efi
Note: Les && sont là pour ne pas créer des dossiers dans le système du live si une commande échoue et nous induire en erreur.
Attention: Il ne faut pas confondre /boot et /boot/efi : le cas d'un /boot séparé est optionnel (par exemple, quand le système de fichiers n'est pas reconnu par le bootloader) et assez inutile dans le cas dans démarrage en EFI, alors que monter l'ESP dans /boot/efi est obligatoire pour le bon fonctionnement du démarrage en EFI. Monter l'ESP directement dans /boot peut avoir de graves conséquences, comme écraser des fichiers déjà existant dans l'ESP, pouvant causer des problèmes en cas de multiboot.
De manière générale, il est préférable d'organiser correctement les fichiers dans l'ESP, voir Création d'un répertoire propre à Arch Linux.

Installation du système de base

Important: À partir de maintenant, vous installerez les paquets dans le nouveau système monté sur /mnt. Par exemple, si vous tapez une commande du type "pacman -S nom_du_paquet", celui-ci sera installé sur le système en cours d'exécution, soit le live cd/usb. Pour installer sur le nouveau système, utilisez "pacstrap /mnt nom_du_paquet", ou attendez de chrooter dans le nouveau système.

Sélection du miroir

Avant l’installation, il peut être intéressant de modifier /etc/pacman.d/mirrorlist pour bénéficier d'un miroir plus proche de chez vous (et plus rapide).

Vous pouvez trouver la liste des miroirs à jour sur ce lien.

Installation des paquets de base

Il suffit d'utiliser le script pacstrap en lui indiquant le dossier correspondant à la racine du système suivi des paquets ou groupes à installer (séparés par un espace). Pour le système de base :

pacstrap /mnt base

Vous pouvez trouver la liste des paquets ou groupes dans les liens suivants : paquets / groupes i686 / groupes x86_64 .

Note: Vous pouvez par exemple en profiter pour installer le groupe base-devel, nécessaire à l'utilisation de AUR:
pacstrap /mnt base base-devel
Important: Pour configurer le wifi sur votre nouveau système et éviter d'avoir à redémarrer sur votre CD pour installer des paquets nécessaires, n'oubliez pas d'installer également: wireless_tools, wpa_supplicant si vous vous connectez en WPA et éventuellement les paquets des pilotes de votre carte wifi si celle-ci nécessite un pilote particulier. Si vous voulez utiliser wifi-menu pour vous connecter sur votre système de base installez aussi dialog.

Configuration du système

Important: Un aperçu de la configuration ainsi que les différentes pages wiki sont disponibles dans la catégorie Configuration.

Pour les éditions des fichiers de configuration, vous pouvez soit utiliser l'un des utilitaires contenus dans base tel que vi ou nano, soit en installer un.

Pour une configuration de base :

  • Générer le /etc/fstab :
genfstab -U -p /mnt >> /mnt/etc/fstab

Chrooter dans le nouveau système :

arch-chroot /mnt
echo NomDeLaMachine > /etc/hostname
  • Créez un lien symbolique /etc/localtime afin de choisir votre fuseau horaire, par exemple pour la France :
ln -s /usr/share/zoneinfo/Europe/Paris /etc/localtime
  • Éditez le fichier /etc/locale.gen et décommentez votre locale, puis exécutez la commande suivante :
locale-gen

Ajoutez le nom de la locale au fichier /etc/locale.conf (voir locale), par exemple pour le français en UTF-8 :

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

Vous pouvez spécifier la locale pour la session courante (ça évitera des messages d'alerte par la suite) avec la commande :

export LANG=fr_FR.UTF-8
  • Éditez le fichier /etc/vconsole.conf afin d'y spécifier la disposition du clavier que vous souhaitez utiliser :
echo KEYMAP=fr > /etc/vconsole.conf
mkinitcpio -p linux
  • Définissez un mot passe pour le root :
passwd

Installation d'un bootloader

Afin de pouvoir démarrer votre nouvelle installation, il est primordial d'installer (ou de reconfigurer) un bootloader sur votre machine. Référez-vous à la catégorie bootloader, choisissez le bootloader adapté à vos besoins, puis effectuez pas-à-pas son installation et sa configuration. Une fois cela fait, vous pouvez continuer et finir de lire cette page.

Démonter le tout

Sortez de l'environnement chroot (exit ou Ctrl+D), puis :

umount -R /mnt

Vous pouvez maintenant rebooter l'ordinateur.

Après le redémarrage

Maintenant continuez la configuration et apprenez à utiliser pacman.

Vous serez peut-être intéressé par les pages suivantes :

Astuce: Pensez également à suivre l'actualité d'Arch afin que certaines mises à jour de votre système se passent au mieux.
Astuce: Jetez également un œil sur les «bonnes pratiques» qui vous aideront à conserver votre Arch stable.
Important: À l'usage, il est essentiel de faire le distinguo entre un compte utilisateur et le compte root qui sert à administrer votre machine. N'abusez pas des commandes en root ! Qu'il s'agisse de su ou de sudo, réservez-les à la maintenance de votre système (mise à jour, configuration, etc.) mais surtout pas pour contourner des problèmes que vous rencontrez en tant que «simple» utilisateur (cherchez plutôt du côté configuration: lui manque-t-il un groupe ? la configuration est-elle complète ? … ).