Installation par chroot

De ArchwikiFR


Cette page couvre l'installation d'un système Arch de base depuis une distribution linux existante. On suppose que les partitions ont été créées et formatées.

Sommaire

Pré-requis

Le principal ingrédient pour installer Arch depuis un autre système est pacman, donc soit vous installez depuis un système Arch Linux soit, il vous faut un système Arch minimal. Si vous êtes dans le 2ème cas, vous pouvez utiliser une de ces archives chroot (un noyau >= 2.6.32 est requis) selon l'architecture utilisée.

Pour les besoins de la page, initialisez ces 3 variables :

ARCH_MINI=
ARCH_SYS=
ARCHI=$(uname -m) # i686 ou x86_64

Préparation du système minimal

Note: Si vous installez depuis un système Arch, vous pouvez sauter cette section et passer directement à la préparation du système à installer.

Il faut créer un dossier où vous allez décompresser le système de base. On va utiliser une variable pour garder le chemin :

ARCH_MINI="$HOME/tmp_arch"
mkdir "$ARCH_MINI"
cd "$ARCH_MINI"
curl -O http://mir.archlinux.fr/~tuxce/chroot/archlinux.chroot.$ARCHI.tgz
tar zxf archlinux.chroot.$ARCHI.tgz

Installer Arch nécessite d'avoir du réseau. Donnez la possibilité d'accéder au DNS :

cp /etc/resolv.conf "$ARCH_MINI/etc/"

Montez les systèmes de fichiers spéciaux :

mount -B /proc "$ARCH_MINI/proc"
mount -B /dev "$ARCH_MINI/dev"
mount -B /sys "$ARCH_MINI/sys"

Préparation du système à installer

On va utiliser le dossier mnt pour y monter les partitions du système qu'on va installer :

ARCH_SYS="$ARCH_MINI/mnt"

Montez la partition racine (pour l'exemple, prenons /dev/sda5) :

mount /dev/sda5 "$ARCH_SYS"

Créez-y les dossiers nécessaires :

mkdir -p "$ARCH_SYS"/var/{cache/pacman/pkg,lib/pacman} "$ARCH_SYS"/{dev,proc,sys,run,tmp,etc,boot,root}

Montez les systèmes de fichiers spéciaux :

mount -B /proc "$ARCH_SYS/proc"
mount -B /dev "$ARCH_SYS/dev"
mount -B /sys "$ARCH_SYS/sys"
Important: Si vous avez d'autres partitions (/boot, /home, …), pensez à les monter dans $ARCH_SYS.

Pour pouvoir s'y retrouver par la suite, on va modifier le prompt du root :

echo 'PS1="(installation) \w \\$ "' > "$ARCH_SYS/root/.bashrc"

Installation

Si vous n'installez pas depuis un système Arch Linux, entrez dans le chroot minimal :

chroot "$ARCH_MINI" /bin/bash

Vous devriez avoir comme prompt :

(Arch mini) / #

Lancez l'installation du groupe base ainsi que d'un chargeur de démarrage (nous prendrons syslinux pour l'exemple) :

 pacman -r /mnt --cachedir /mnt/var/cache/pacman/pkg -Sy base syslinux
Important: L'installation par pacman ne configurera pas pacman keyring ni liste des miroirs, pour cela il faut préférer l'utilisation du script pacstrap :
pacstrap /mnt base syslinux

Sortez du chroot minimal :

(Arch mini) / # exit

On peut démonter les systèmes de fichiers spéciaux du système minimal :

umount "$ARCH_MINI/"{dev,proc,sys}

Configuration

La configuration se fait depuis le nouveau système qui devrait normalement avoir comme prompt :

# chroot "$ARCH_SYS" /bin/bash
(installation) / #
Important: Ne vous mélangez pas dans les chroot, chacun a normalement son propre prompt!

Cette page ne couvrant le nécessaire pour avoir un système bootable, veuillez vous référer aux différentes pages wiki disponibles dans la catégorie Configuration.

  • Renseignez les partitions composant votre nouveau système dans le /etc/fstab, exemple :
Fichier: /etc/fstab
tmpfs		/tmp	tmpfs	nodev,nosuid	0	0

UUID=[…] swap swap defaults 0 0
UUID=[…] / ext4 defaults 0 1
UUID=[…] /home ext4 defaults 0 1

Vous pouvez obtenir les UUID en lançant blkid.

  • Renseignez le nom de la machine dans le fichier /etc/hostname ainsi que /etc/hosts.
  • Éditez le fichier /etc/vconsole.conf afin d'y spécifier la disposition du clavier que vous souhaitez utiliser.
    KEYMAP=fr-pc
  • Créez un lien symbolique /etc/localtime afin de choisir votre fuseau horaire, par exemple:
    ln -s /usr/share/zoneinfo/Europe/Paris /etc/localtime
Important: Si vous ne voulez pas écraser le chargeur de démarrage de votre ancienne distribution; modifiez plutôt le fichier de configuration de ce dernier. Les fichiers correspondant au noyau et à l'initramfs sont respectivement /boot/vmlinuz-linux et /boot/initramfs-linux
Pour l'exemple, nous avons choisi syslinux, il suffit d'éditer /boot/syslinux/syslinux.cfg et de vérifier si root pointe bien vers la bonne partition puis, pour une installation sur le MBR, lancez :
syslinux-install_update -iam
  • Définissez un mot passe pour le root :
    passwd

Avec ceci, votre système devrait être opérationnel, vous pourrez redémarrer dessus.

Suite

Si vous n'avez pas utilisé le script pacstrap dans la section installation il vous faut configurer la liste des miroirs ainsi que pacman keyring.

  • Editez le fichier /etc/pacman.d/mirrorlist et décommentez les serveurs correspondants à votre région:

Example :

# Any
# Server = ftp://mirrors.kernel.org/archlinux/$repo/os/$arch
Server = http://mirrors.kernel.org/archlinux/$repo/os/$arch
  • Puis initialisez pacman keyring :
pacman-key --init
pacman-key --populate archlinux

Afin de finaliser l'installation, je vous invite à consulter la liste des catégories.

Outils personnels
Autres langues