Chapitre 1. Introduction

Linux est le noyau d'un système d'exploitation libre de type Unix, écrit initialement par Linus Torvalds en 1991 et auquel un grand nombre de programmeurs ont contribué par Internet depuis. Les origines de tous les systèmes Unix remontent à la première version d'un système d'exploitation expérimental développé par Dennis Ritchie et Ken Thompson dans les laboratoires AT&T's Bell Laboratories en 1969. Ce système a avant tout été développé par des programmeurs, pour des programmeurs, et reprenait un certain nombre de concepts qui avaient été développés auparavant pour le système d'exploitation Multics (abréviation de « Multiplexed Information and Computing Service »), dont le rôle était de fournir des services informatiques centralisés à un grand nombre de personnes (un peu comme le Minitel a tenté de le faire par la suite). Multics n'a jamais réellement vu le jour, en revanche, le système Unix initial a engendré un grand nombre d'autres systèmes plus ou moins compatibles. Récemment, les différents fournisseurs de systèmes Unix se sont accordés pour définir l'ensemble des fonctionnalités que tous les systèmes Unix doivent supporter, afin de résoudre les problèmes engendrés par les incompatibilités existantes entre ces différents systèmes. Le terme Unix est donc un terme générique pour représenter l'ensemble de tous ces systèmes, dont Linux fait partie. Pour l'anecdote, la dénomination Unix provient de la contraction de « Unics » (abréviation de « Uniplexed Information and Computing Service »), terme forgé ironiquement pour bien signaler qu'Unix était une version allégée de ce que Multics devait être.

Bien que compatible avec les dernières spécifications Unix, Linux ne contient pas une ligne du code source du système Unix original, ce qui en fait ce que l'on appelle un « clone ». Cela dit, il s'agit réellement d'un système Unix à part entière. En tant que tel, il dispose des fonctionnalités fournies par les systèmes Unix : il est multitâche, multiutilisateur et relativement orienté réseau. Vous aurez donc, avec Linux, un système fiable, fonctionnel et performant.

Linux vous permettra de réaliser les opérations les plus classiques, comme effectuer un travail bureautique, naviguer sur Internet, réaliser l'acquisition, la capture et le retraitement d'images, réaliser des animations 3D ou encore programmer. En revanche, autant vous prévenir tout de suite : nombre de jeux ne sont tout simplement pas disponibles sous Linux, bien que les principaux titres soient régulièrement portés. De même, il n'existe pas de logiciel complet permettant de réaliser l'acquisition de séquences vidéo et d'en réaliser le montage de manière aisée. Vous ne pourrez pas non plus réaliser ce que vous faisiez avec les applications MS Windows dont il n'existe pas encore d'équivalent sous Linux, comme les applications de gestion et de paie utilisées par nombre de professionnels indépendants ou par des PME.

Que les choses soient claires : l'installation de Linux est une opération relativement compliquée, et l'usage d'un système Unix en général n'est pas à la portée de tout le monde. Même si la qualité des distributions actuellement disponibles s'est grandement accrue ces derniers temps, au point que n'importe qui peut installer un système Linux viable sans trop de problèmes, la configuration du système pour obtenir un fonctionnement correct exige un travail assez important. En particulier, les distributions actuelles éprouvent encore quelques difficultés pour optimiser les périphériques exotiques, et souvent seules les fonctionnalités de base sont correctement configurées après une installation classique. Par ailleurs, la plupart des applications sont développées par des groupes de programmeurs indépendants, et bien que ce soit justement le rôle des distributions de réaliser l'intégration de tous ces composants dans un environnement homogène, celle-ci n'est pas forcément parfaite. Les outils de configuration des distributions vous permettront sans doute de configurer votre système de base simplement, mais pour aller au-delà, il faudra sans doute intervenir manuellement.

Néanmoins, il faut reconnaître que celui qui installe Linux à partir d'une distribution sur un ordinateur assez vieux (c'est-à-dire un ordinateur qui ne dispose pas des derniers périphériques et cartes graphiques à la mode), ou dont les constituants sont de marque courante, obtient rapidement un système fonctionnel et capable de réaliser la plupart des opérations qu'il désire. En particulier, celui qui utilise son ordinateur pour travailler (j'entends par là écrire des lettres, les imprimer, naviguer sur Internet pour récupérer des informations, ou programmer) peut parfaitement se contenter de l'installation par défaut. Ce type de situation ne convient pas à tout le monde : la plupart des gens disposent de cartes graphiques récentes (surtout depuis l'avènement des jeux 3D) ou de périphériques spécifiques. Tout le monde ne se place pas uniquement dans le cadre d'une utilisation professionnelle, et il est absurde de disposer d'une carte son et de ne pas pouvoir l'utiliser. Et c'est là que le bât blesse ! Si l'on désire que Linux reconnaisse ces matériels exotiques, il va falloir mettre les mains dans le cambouis et avoir une bonne dose de patience. Ce problème de configuration apparaît malheureusement principalement pour les particuliers, qui souvent disposent de machines hétéroclites et absolument non standards. Dans le cadre d'une entreprise, il existe des personnes qualifiées pour résoudre ce type de problème, mais ce sont des informaticiens et, de plus, les machines sont souvent homogènes, ce qui permet d'apporter des solutions génériques.

En conclusion, il faut être informaticien ou amateur très éclairé pour installer Linux sur une machine de particulier et pour le configurer de manière optimale. La situation est d'autant plus grave que la plupart des gens ne connaissent pas Linux, et qu'il est toujours difficile d'apprendre et de prendre de nouvelles habitudes. Je veux dire par là que même une tâche très simple à réaliser peut prendre un certain temps, car tout simplement on ne l'a jamais faite. Celui qui a installé trois fois MS Windows sait parfaitement le faire à présent, et il pense que c'est relativement facile. Et pourtant, il réalise souvent des tâches d'une complexité qui dépasse, là aussi, le commun des mortels.

Heureusement, et c'est là la force de Linux, ces opérations ne doivent être effectuées qu'une seule fois. On n'a absolument pas besoin de changer la configuration à chaque instant, comme c'est le cas sous MS Windows, parce que le système est globalement beaucoup plus stable. Il ne plante quasiment jamais, les applications ne peuvent pas le corrompre, et sa qualité supprime le besoin permanent de mettre à jour une partie du système. En clair, quand on en a un qui fonctionne, on le garde, non pas parce que c'est un enfer à installer et à configurer, mais tout simplement parce que ce n'est pas nécessaire de le changer.

En résumé, on peut affirmer que :

L'objet de ce document est de donner les connaissances de base nécessaires à l'installation de Linux sur un ordinateur de particulier ou un petit serveur. Il est supposé que l'utilisateur a déjà utilisé un autre système d'exploitation, par exemple MS Windows. Cependant, aucune notion avancée d'informatique n'est nécessaire. Tout sera expliqué au fur et à mesure des besoins et, si nécessité est, des compléments d'information seront donnés pour permettre la compréhension des opérations à effectuer. Néanmoins, les notions qui seront abordées ici ne seront pas simples, et il est possible que la plupart des personnes qui n'ont pas une grande habitude de l'informatique aient quelques difficultés à les assimiler. Cela dit, à vaincre sans peine, on triomphe sans gloire, et l'installation de Linux vous procurera le plaisir d'apprendre.

Ce document est structuré en neuf parties distinctes, qui correspondent essentiellement aux grandes étapes que vous suivrez pour installer et utiliser Linux. La première partie a pour but de clarifier un peu les notions ayant trait aux logiciels libres. Elle tente d'expliquer pourquoi ces logiciels existent, et pourquoi ils font partie des meilleurs logiciels actuels. La deuxième partie décrit les concepts de base de la plupart des systèmes d'exploitation Unix. Elle ne traite pas de l'installation à proprement parler, mais sa lecture est recommandée pour tous ceux qui n'ont jamais vu un tel système. La troisième partie décrit l'installation du système de base de Linux. À l'issue de cette partie, vous devez disposer d'un système fonctionnel, utilisable mais non optimisé et ne permettant pas forcément d'utiliser tous vos périphériques. La quatrième partie constitue un petit cours d'Unix pour les nouveaux utilisateurs de ce type de système, et la cinquième partie traite des opérations d'administration et de maintenance de base des systèmes Unix. Bien que, comme les deux premières parties, ces deux parties ne traitent pas de l'installation à proprement parler, leur lecture est vivement recommandée. La sixième partie donne les notions de base sur les mécanismes de compilation et décrit la manière de faire pour compiler la dernière version de GCC, le compilateur C/C++ du projet GNU. Elle décrit également la technique à utiliser pour compiler et installer un nouveau noyau dans le système, opération indispensable pour obtenir un noyau optimisé qui « colle » à la machine. La configuration des différents types de matériel et leur prise en charge au niveau du noyau sera décrite ensuite dans la septième partie. La huitième partie traite de la configuration du réseau sous Linux. Le réseau est réellement l'un des aspects les plus importants de Linux, et nécessite donc une attention toute particulière. Enfin, la neuvième et dernière partie vous décrit la procédure d'installation de XWindow, l'environnement graphique de Linux. L'installation des polices TrueType y est aussi présentée.