Install Arch Linux from existing Linux (Français)
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
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"
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"
/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 d'amorçage (nous prendrons syslinux pour l'exemple) :
pacman -r /mnt --cachedir /mnt/var/cache/pacman/pkg -Sy base syslinux
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/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) / #
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 d'amorçage.
/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