Je suis Charlie

Autres trucs

Accueil

Seulement les RFC

Seulement les fiches de lecture

Mon livre « Cyberstructure »

Ève

Un peu d'Arch Linux

Première rédaction de cet article le 10 février 2013


Il existe des dizaines (des centaines ?) de systèmes d'exploitation autour du noyau Linux 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 PCIpcilib: 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 Ethernet PCMCIA, 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.

Version PDF de cette page (mais vous pouvez aussi imprimer depuis votre navigateur, il y a une feuille de style prévue pour cela)

Source XML de cette page (cette page est distribuée sous les termes de la licence GFDL)