Il existe des dizaines (des centaines ?) de systèmes
d'exploitation autour du noyauLinux et des logiciels
GNU (notez que je n'aime pas le terme de distribution Linux, souvent
employé). Il y a les très connus (comme Ubuntu
ou Fedora), les marginales et, entre les deux,
des systèmes comme Arch Linux, qui a une petite
communauté d'utilisateurs fidèles.
Certains petits cerveaux ricanent de ce nombre élevé de systèmes
différents, comme les dictateurs ricanent du nombre élevé de partis
politiques dans une démocratie. Mais le grand nombre de systèmes
d'exploitation utilisant Linux n'est pas seulement une conséquence de
la liberté et du succès. C'est aussi parce que ces systèmes sont
différents, optimisant tel ou tel aspect au
détriment des autres. Pour ne pas être déçu d'un système qu'on a
essayé, il faut donc se renseigner avant, sur le
système qu'on va installer, pour être sûr qu'il corresponde à ce que
l'on veut. Donc, Arch Linux est optimisé pour 1) la légéreté en nombre
et taille des logiciels 2) la souplesse (on peut facilement faire les
choses différemment). Le tout, vous vous en doutez, est atteint en
sacrifiant la facilité d'utilisation. Comme le dit la documentation, Simple design and implementation shall always trump simple user interface. Arch Linux n'est pas pour les
gens effrayés ou simplement débutants en Unix. Ce n'est pas à tort
qu'on dit souvent qu'Arch Linux est la nouvelle
Slackware.
Ses caractéristiques le rendent particulièrement adapté pour les
environnements limités (vieux PC sur lesquels
Ubuntu rame épouvantablement, engins à faibles ressources), pour
les bricoleurs et pour les étudiants en informatique.
L'installation étant particulièrement... peu conforme aux standards
d'aujourd'hui (même Debian et
NetBSD sont mille fois plus simples à
installer), je vais commencer par une machine déjà installée. Pour
avoir une telle machine, on peut prendre un engin pour lequel il
existe déjà des images toutes faites d'Arch Linux (c'est le cas du
Raspberry Pi, une plate-forme pour
lequel Arch Linux est bien adapté) ou bien louer un
VPS chez un fournisseur qui a des images
Arch Linux (c'est le cas de l'excellent
Linode). Une telle solution permet de débuter
avec Arch Linux sans se confronter à l'installation (qui est
ardue). (À partir d'ici, je vais mettre des liens vers les excellentes
documentations du site
officiel. Je commence par le texte
décrivant les principes d'Arch Linux puis par le bon guide du
débutant qui, une fois l'installation faite, explique les
étapes suivantes.)
Parmi les points qui différencient le plus les différents systèmes
GNU/Linux se trouve le gestionnaire de
paquetages. Celui d'Arch Linux se nomme pacman.
Il dispose des commandes classiques d'un tel outil :
Chercher un paquetage par son nom pacman -Ss
$PACKAGE,Installer un paquetage pacman -S
$PACKAGE,Avoir des informations sur un paquetage installé
pacman -Qi $PACKAGE,Trouver quel paquetage a installé un fichier donné
pacman -Qo $FILE,Et bien sûr mettre tout le système à jour pacman
-Syu.
Sur ce dernier point, notez bien une importante caractéristique
d'Arch Linux : il n'y a pas de versions d'Arch Linux, Arch Linux utilise un principe connu sous le nom de
rolling release qui consiste à n'avoir qu'une seule
version, toujours en cours de changement. Lorsqu'on gère une machine
Arch Linux, et qu'on fait un pacman -Syu tous les
matins, il y a quasiment toujous au moins un changement, parfois assez
disruptif (comme l'arrivée de systemd il y a
quelques mois). Si on utilise des machines Arch Linux en production, il
est donc recommandé de suivre les canaux d'information soigneusement,
avant toute mise à jour.
Question mise à jour, un autre point à noter est que les dépôts
« officiels » d'Arch Linux ne contiennent pas tout (je n'y ai pas trouvé Icinga) et sont moins riches
que ceux de Debian, par exemple. Pour compenser cela, il existe un
dépôt supplémentaire géré directement par les utilisateurs (et donc,
pas forcément bien testé, ni très sûr), l'AUR. L'utilisation
de l'AUR n'étant pas forcément aisée, des tas de
programmes ont été développés pour aider. Personnellement,
j'utilise pacaur, qui a
l'avantage de reprendre les commandes de pacman et de traiter le dépôt
officiel et l'AUR ensemble. Un seul pacaur -Syu
suffit donc à mettre tout à jour. Lorsqu'il rencontre un paquetage qui
est en source dans l'AUR, il lance la compilation, autrement, il installe le binaire.
Voilà, l'administration quotidienne d'une Arch Linux n'est donc pas
très compliquée, il faut juste penser à suivre l'actualité pour ne pas
faire une mise à jour désastreuse. Et si on est nostalgique de Gentoo et qu'on veut recompiler soi-même
certains paquetages ? (Cela m'est arrivé sur une machine Linode, ou sur un Raspberry Pi, car
Net-SNMP ne fonctionne pas, se plaignant de
l'absence de bus PCI - pcilib: Cannot open /proc/bus/pci, ce qui impose
l'utilisation d'un paquetage
spécial, et d'une entrée IgnorePkg = net-snmp dans /etc/pacman.conf pour qu'il ne soit pas écrasé lors des mises à jour.) Ce processus de compilation est bien
documenté. En gros, on va dans le répertoire où se trouve le
fichier PKGBUILD, on l'édite selon ses goûts et
on fait makepkg -s.
Et l'installation initiale ? Eh
bien, elle est fidèle aux principes d'Arch Linux, par exemple
A freshly installed Arch Linux system contains only basic
core components with no automatic configuration
performed. L'installation est très
bien documentée mais il n'existe pas de logiciel qui vous
guide. Il faut suivre pas à pas le guide d'installation. Mëme si tout
marche bien, vous vous retrouvez avec un Unix très sec (même pas de
mot de passe pour le compte root si vous avez
sauté cette partie de la documentation d'installation) et où plein de
choses devront être configurées, du fuseau horaire au clavier en passant par le client DHCP. Le pire étant sans doute
l'installation du chargeur de démarrage pour
lequel le guide d'installation vous dit juste de voir la documentation
du chargeur choisi... (Lire la page concernant
Grub est assez rude. D'autres systèmes ont des documentations
compliquées mais, si on ne le lit pas, cela marche quand même. Pas
Arch Linux.)
Pire, le programme d'installation est plus intelligent pour
lui-même que pour le système qu'il installe. Ainsi, en installant sur
un vieux portable muni d'une carte
EthernetPCMCIA, le
programme d'installation la reconnait et lance le réseau sans problème
mais, ensuite, il installe un système qui n'a pas les modules PCMCIA
et qui n'a donc pas de réseau jusqu'à ce que l'ingénieur système passe
le configurer manuellement.
Bon, heureusement, on n'installe pas sa machine tous les jours et,
comme je l'ai indiqué, il existe des images toutes faites : si vous
voulez apprendre Arch Linux ainsi, une machine virtuelle
Linode est certainement une bonne solution. Et,
une fois installé, Arch Linux est après tout très agréable.