# Install Arch Linux from existing Linux (Français)

From ArchWiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Related articles

- Install from SSH

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.

## 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) # 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 :

    mkdir /root/tmp_arch
    ARCH_MINI="$HOME/tmp_arch"
    ARCHI=$(uname -m)
    mkdir "$ARCH_MINI"
    cd "$ARCH_MINI"
    curl -O http://mir.archlinux.fr/~tuxce/chroot/archlinux.chroot.$ARCHI.tgz --output 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"
    mount -B /dev/pts "$ARCH_MINI/dev/pts"

## 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/<nom_du_device> "$ARCH_SYS"

Astuce: Dans le cas de l'installation sur un disque SSD on pourra utiliser `mount -o noatime,discard /dev/<nom_du_device> "$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}
    chmod 0750 $ARCH_SYS/root
    chmod 1777 $ARCH_SYS/tmp
    chmod 0555 $ARCH_SYS/proc $ARCH_SYS/sys

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"

Attention: 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

Attention: 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 obtenu par l'installation préalable des arch-install-scripts:

    pacstrap /mnt base syslinux

Astuce: en cas d'utilisation d'un émulateur de terminal non-compatible « xterm » (tel que urxvt, st, installer le-dit émulateur dans $ARCH_SYS pour éviter des artefacts (à l'utilisation de vi, ou en supprimant des caractères lors de la saisie de ligne de commande)

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/pts,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) / #

Attention: 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 par ailleurs.

- Renseignez les partitions composant votre nouveau système dans le `/etc/fstab`, exemple :

    /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

- Configurez `/etc/mkinitcpio.conf` et créez les ramdisk avec :

      mkinitcpio -p linux

- Configurez le chargeur de démarrage.

Attention: 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.

Suite à l’installation, il se peut que vous rencontriez un problème avec pacman et les certificats, pour le régler et avoir un système pleinement opérationnel installer simplement le package ca-certificates-utils

    pacman -S ca-certificates
    pacman -S ca-certificates-utils

Category:

- Installation process (Français)