Télécharger l’iso d’Arch sur le site officiel : https://www.archlinux.org/download/ Installer l’iso sur une clé USB. Plusieurs manières de s’y prendre :
dd if=arch.iso of=/dev/xxx bs=4M status=progress oflag=sync
(Linux)Démarrer l'ordinateur sur la clé USB.
Mettre le clavier en azerty :
ls /usr/share/kbd/keymaps/**/*.map.gz
.
Faites-vous une faveur, augmentez-la taille de la police pour votre confort:
ls /usr/share/kbd/consolefonts/
.
Nous avons besoin d’une connexion internet pour installer le système. Le plus simple est de relier votre ordinateur au routeur par ethernet. Si c'est impossible, voici comment activer le Wi-Fi:
wlan0
(wlp3s0
dans l'exemple ci-dessus) -- puis :
wlan0
par le nom de votre carte Wi-Fi. Le SSID est le nom de votre réseau Wi-Fi.
Testons le bon accès à internet :
Si vous recevez des temps de réponse du serveur, la connexion est bien établie.
"No such file or directory"
: votre matériel est compatible BIOS64
ou 32
) : votre matériel est compatible UEFIDeuxième moment déterminant: prendre bonne note du nom du disque dur qui va accueuillir
le système d'exploitation. La commande lsblk
sert à lister tous les supports de
données détectés par Linux:
Dans l'exemple ci-dessus, sda
représente un disque dur.
sda1
et sda2
sont des partitions physiques.
vgarchlinux-*
sont des partitions logiques
Si vous n’avez qu’un disque dur connecté à votre carte mère,
le nom de disque sera probablement sda
, mais ce n’est pas obligatoire.
Petit aparte: il existe des différences entre une table de partition GPT et une table de partition MBR. Pour la faire courte et trancher, GPT est à préférer (mais faites-vous un avis personnel).
À la différence du partitionnement physique (cf Annexe), le partitionnement logique permet d’utiliser tout l’espace disque et est plus flexible. Par exemple, il est possible de créer plus de quatre partitions, ce qui n'est pas le cas avec le partitionnement physique.
⚠️ Attention, dans les étapes qui suivent nous partirons du principe que le nom de votre disque dur est sda
. Soyez vigilant si le vôtre porte un nom différent ⚠️
Delete
sur chacune d'entre elles. En revanche, si des données importantes s'y trouvent encore, à vous de faire le nécessaire avant de poursuivre.)
New
Primary
, Size 1M
, puis Type
, BIOS boot
, et Write
.
New
Primary
, Size (utilisez le restant du disque), puis Type
, Linux LVM
, et Write
.
Quit
Delete
sur chacune d'entre elles. En revanche, si des données importantes s'y trouvent encore, à vous de faire le nécessaire avant de poursuivre.)
New
(utilisez la totalité du disque)Primary
, Size (utilisez le restant du disque), puis Type
, Linux LVM
, et Write
.
Quit
Le volum group appelé vglinux
contiendra les différentes partitions que nous allons ajouter; à savoir:
/boot
, /root
, /home
et swap
(partition d’échange pour alléger
la charge RAM).
Créer la partition boot
d’une taille de 500Mo, au sein
du groupe de volume vglinux
:
Si un message d’erreur vous signale qu’une partition LVM est déjà
existante, tapez yes
et utilisez la commande vgremove
comme ceci :
vgremove vglinux /dev/sda
(en remplaçant par le nom du précédent
groupe de volume et de la partition sur laquelle il se trouve).
Passons à la partition swap
qui permet d'allouer de la mémoire virtuelle en cas de surcharge de la RAM.
Les recommandations de chez Red
Hat
sont résumées dans le tableau ci-dessous. Notez toutefois que cela s'applique principalement aux système à faible mémoire (1GB) :
Passons désormais à la partition root
, la racine du système de fichiers.
Nous créons un
logical volume qui prend 30% de l’espace du volum group encore
disponible. Notez que vous pouvez gérer comme vous
le souhaitez le pourcentage d’espace que va prendre cette partition par
rapport au total restant. (Vous pouvez également spécifier directement la taille avec
lvcreate -n root -L 30G vglinux
. À vous de voir.)
Enfin, créons la partition home
(répertoire principal des utilisateurs du système) qui occupera
100% de l’espace disque restant :
Nous avons terminé l’organisation des partitions. Pour les afficher:
Formatons ces partitions au format souhaité (ext4, à l'exception du swap).
(Les partitions LVM sont adressées dans le répertoire /dev/mapper
.)
Le partitionnement et le formattage sont terminés.
Ne reste plus qu'à faire pointer les partitions vers un point de montage pour y installer le système.
Nous utiliserons le point de montage /mnt
.
Bloguelinux recommande d’installer un
sélecteur de mirroir (reflector
) qui trouvera les serveurs les plus
rapides en fonction de votre localisation (NB : c’est sur ces serveurs
que pacman
, le gestionnaire de paquets de Arch, ira chercher les mises
à jour de vos programmes):
La première commande installe reflector
. La seconde lui demande de
sélectionner les 10 mirroirs parmi 50 les plus rapides de France.
On demande maintenant à pacman
d’aller voir sur ces mirroirs s’il y
a des mises à jour disponibles:
Il se peut que certaines clés associées à des paquets nécessaires pour la suite de l’installation ne soient plus à jour. Si tel est le cas, vous auriez des messages d’erreur. Il suffira de lancer la commande suivante (qui va mettre toutes les clés à jour):
Une fois terminé, relancez pacman -Syy
Puis on installe tous les programmes nécessaires à un système minimal
(base
) :
Cette commande permet d’installer tous les paquets utiles à Arch au
point de montage /mnt. Pour rappel, /mnt contient votre futur système.
base
et base-devel
contiennent un les programmes basiques, nécessaires
à son bon fonctionnement (grep
, perl
, etc.) (voyez plutôt ici et ici).
Une fois fait, on inscrit dans la table des partitions /etc/fstab
la
structure de partitionnement de notre disque :
Le fichier /etc/fstab
sera lu pour savoir quelle partie du disque est
destinée à quoi (boot,root,home,swap).
L’option -U
permet de lister les disques à partir de leur UUID qui est
un identifiant unique.
Entrons désormais dans le système pré-installé (au point de montage /mnt) en tant que super-administrateur (root):
Si vous avez partitionné votre disque dur physiquement (sans LVM),
passez directement à la commande mkinitcpio -p linux
.
Nous allons indiquer au gestionnaire de démarrage (GRUB) comment
démarrer une machine avec partitions LVM. On lui indique dans le
initramfs (le ram-disk qui est démarré avant le kernel).
Notez que si mkinitcpio
ou tout autre programme utile n’est pas
installé, vous obtiendrez des messages d’erreur. Une astuce est de
quitter le chroot (pour cela tapez exit
) et de lancer
pacstrap /mnt mkinitcpio
(vous pouvez en profiter pour installer
d’autres programmes manquants également; éventuellement dhcpcd
,
sudo
, lvm2
, grub
, etc.), puis de relancer arch-chroot /mnt
.
Descendez à la ligne HOOKS qui n’est pas commentée (en bash, une ligne
commentée commence par #
). Et, entre block
et filesystems
, insérez
lvm2
comme ci-dessous :
Maintenant on est prêt à regénérer le fichier initramfs :
Installons maintenant GRUB si ce n’est pas déjà fait (si vous n'êtes pas sûr, le réinstaller serait inoffensif), ainsi que os-prober
(qui permet de
détecter les autres OS éventuellement installés) :
On peut maintenant inscrire les informations de démarrage pour GRUB à la racine du disque dur :
Pour terminer cette première partie, il nous reste à donner un mot de
passe à l’utilisateur root
. Cela vous servira à vous logguer quand
vous démarrerez votre nouveau système :
Entrez votre mot de passe (vous ne verrez pas les astérisques ****** usuellement affichées, c’est normal). Et voilà. Si tout s’est bien passé le système est fonctionnel et amorçable. Avant de tester, nous allons quitter la session d’installation.
Ça sert à bien démonter les disques récursivement (-R
) avant de
redémarrer le système.
Retirez votre clé USB. Si le système démarre sur votre disque dur, tout
a bien fonctionné! Vous vous retrouvez avec une demande de login.
Logguez-vous comme utilisateur root
:
Utilisez le mot de passe que vous avez défini plus haut, et vous voilà
super-administrateur de votre nouveau système 😼.
Comme root
posède les droits administrateur, il est facile de modifier
quelque chose par accident et de planter son PC. La prochaine étape va
consister à ajouter un utilisateur (supposons qu’il s’appelle
robert)
wheel
et users
sont les groupes auxquels va appartenir
l’utilisateur. Si vous comptez utiliser virtualbox vous pouvez rajouter
vboxusers
(pas sûr que ça fonctionne tout de suite si virtualbox
n’est pas installé). Mais comme ce n’est pas irréversible, ce n’est
pas la peine d’en rajouter ici, on pourra toujours le faire plus tard si
nécessaire.
Attribuez un mot de passe au nouvel utilisateur (dans notre exemple,
robert) :
Maintenant nous allons lui donner les droits sudo
(les droits
administrateur) :
Notez que pour lancer une commande en tant qu’administrateur, robert
devra indiquer sudo
en début de commande (ce qui n’est pas le cas
pour root
).
On descend à la ligne “## Same thing without a password” et on
retire le dièse #
devant %wheel ALL=(ALL) NOPASSWD: ALL
. Ce qui
donne :
Une fois que cette ligne est décommentée, pour sortir de visudo
et
enregistrer nos modifications, on tape n’importe où :
Oui, c’est bien :x
puis Entrée
qu’il faut taper pour enregistrer
et quitter (vous venez d’utiliser l’éditeur de texte vim
, qui vaut
vraiment le coup d’oeil.)
Nous allons désormais tenter de se logguer en tant que nouvel utilisateur
pour voir si ça fonctionne :
Connectez-vous avec votre nouveau compte utilisateur, et vérifiez qu’il possède bien les droits administrateur :
Si tout va bien, on se trouve directement connecté en utilisateur
root
, sans avoir besoin d’entrer de mot de passe (niveau sécurité
c’est largement suffisant pour un PC de bureau).
Pour éviter que quelqu’un se connecte en root
sur votre ordinateur,
nous allons empêcher de pouvoir se logguer directement comme
super-administrateur :
Avec cette commande le mot de passe de root
a expiré et il ne peut
plus se connecter. Il faudra obligatoirement se connecter avec votre
compte utilisateur pour accéder au compte administrateur.
Ainsi, on peut toujours faire des manoeuvres en root
avec sudo
ou
sudo -i
mais on ne peut pas se connecter interactivement avec root
,
même à la console, ce qui est une bonne chose niveau sécurité
(Bloguelinux,
2017) même si ce n’est pas la panacée.
Nous allons maintenant donner un nom à la machine en modifiant son
hostname. En supposant que l’on veuille appeler la machine
machine_de_robert
:
Pour activer directement le nouveau nom d’host on tape :
Nous avons bien progressé dans l’installation. Les paquets nécessaires au fonctionnement d’un système rudimentaire sont installés. Toutefois, il nous manque pas mal de choses pour pouvoir en profiter à fond.
On s’assure qu’internet est fonctionnel et on passe à la mise en langue française du système.
Normalement ça devrait déjà fonctionner mais si ce n’est pas le cas,
vérfiez d’avoir bien fait les manipulations données au tout début de ce
tuto. ⚠️ Si ça ne fonctionne pas ⚠️, regardez ce que renvoie
ip link
ou ip a
:
Voyez les interfaces internet disponibles ainsi que leur statut, IP, etc. Et activez l’interface que vous souhaitez activer en particulier (normalement c’est eno1) en lui assignant une adresse IP à l’aide de dhcpcd :
Si le clavier n’est pas déjà en azerty :
Il faut également décommenter fr_FR.UTF-8 UTF-8
dans le fichier
/etc/locale.gen :
Pour quitter l’éditeur nano, on presse Ctrl + X
et on sauvegarde
y
.
Puis on génère la langue :
Dans /etc/vconsole.conf
on indique la langue ainsi que la police que
nous allons utiliser :
Le fichier est vide. On y inscrit les deux lignes suivantes:
Voici un moyen de synchroniser l’heure de votre système à celle de Paris :
La commande hwclock --systohc --utc
écrit l’heure du système sur
l’horloge matérielle (celle du BIOS).
Pacman est le gestionnaire de paquets de Arch.
Tout à l’heure on installera aussi yay
(un gestionnaire de paquets
“non-officiels” et disponibles sur le AUR, que nous décrierons plus
tard). C’est le seul gros changement visible (pour ceux qui les
utilisaient) par rapport à Debian ou Ubuntu, on ne mettra plus à jour
avec sudo apt-get update
mais avec sudo pacman -Syyu
ou bien
yay -Syyu
.
On update pacman
:
Nous sommes sur le point de passer à l'installation d'une interface graphique... ou pas! Vous pouvez très bien utiliser votre système tel quel et passer par la ligne de commande (CLI) pour effectuer vos tâches. Si comme moi vous trouvez cette idée trop rudimentaire, nous allons passer ensemble à l’installation d’un environnement de bureau (abrégé en DE pour Desktop Environment). Mais lequel choisir? Cela dépend des goûts. Il en existe plusieurs tels que Cinnamon, GNOME, LXDE, Mate, XFCE, etc. Je ne ferai pas d'inventaire des environnements installables (la liste des DE supportés par Arch Linux est disponible sur leur site) mais vous en proposerai deux, à choisir:
🔻Faites votre choix 🔻
Une interface graphique populaire (ma préférée), personnalisable et légère qui ne vous dépaysera pas de Windows ou des environnements de bureau habituels.
Un environnement de bureau pour utilisateurs “confirmés” (ou plutôt ceux qui n’ont pas peur de la nouveauté et d’y passer un peu de temps) avec un gestionnaire de fenêtre minimaliste et hautement configurable (dwm
) orienté clavier (permet de n’avoir besoin que du clavier pour utiliser son PC; la souris restant utilisable, rassurez-vous 😉).
🔺Faites votre choix 🔺
🔻Et suivez le tuto ! 🔻
Nous allons passer à l’installation des éléments visuels pour en finir (pas totalement) avec les lignes de commandes.
Installation des paquets nécessaires à l’environnement graphique :
Maintenant on voudrait installer les drivers de notre carte graphique.
Là, ça dépend de notre matériel, du coup nous allons chercher le nom de notre
carte graphique à l’aide de la commande lspci
. Cette commande liste
tous les appareils PCI de l’ordinateur :
La ligne VGA nous indique le type de carte (Intel? Nvidia? ATI ? AMD ?…) Pour moi ça donne ça sur mon ordi de bureau :
En fonction du modèle de votre carte, il faut installer le paquet de la
colonne Driver
et celui de la colonne OpenGL
du tableau du wiki
Archlinux à la partie
Driver installation
:
Supposons que vous possédiez une Intel il faut taper :
Notez que l’on peut installer plusieurs paquets avec la commande pacman si on les sépare d’un espace Maintenant que c’est fait on peut passer à l’installation de l’environnement graphique.
Pour installer XFCE :
On quitte root pour revenir à notre utilisateur :
On se relogue avec notre nom d’utilisateur puis on tente un startx :
Normalement ça fonctionne et on a notre environnement graphique ainsi qu’un Arch Linux fonctionnel ! Pour le moment c’est un peu vide, mais il ne reste plus qu’à personnaliser notre système et installer quelques extras !
Afin d'automatiser le lancement du bureau XFCE lorsque vous êtes loggué, appuyons-nous sur xinitrc:
Et ajoutez ces lignes à votre fichier ~/.bash_profile:
Ce tuto n’ayant pas vocation à tout couvrir, je vous propose
d’installer dwm
accompagné d’une pré-configuration vous donnant un
système fonctionnel dès que vous aurez tapé ces quelques lignes de
commande dans votre terminal. Vous n’aurez plus qu’à suivre les
instructions (en anglais 🇬🇧) avant de vous retrouvez face à votre
nouveau système.
Pour les curieux, je vous renvoie vers le site de ce shell script pour plus de détails.
🇫🇷 Si vous souhaitez une version alternative en français, utilisez ma version modifiée de LARBS : DOT
Suivez les instructions à l’écran, et tout est bon !
Pour un autologin de la console virtuelle:
Puis ajoutez ces lignes au fichier qui vient de s'ouvrir:
Comme vous allez vite le voir, tout ne fonctionne pas out of the box avec Arch, mais c’est ce qui fait tout son intérêt.