Le dossier du mois :
Il y a souvent une confusion entre ce qu'est réellement Linux, c'est à dire avant tout un noyau de système d'exploitation compatible Unix, et ce que nous avons l'habitude d'appeler Linux (Tu me pretes ton Linux ? Ouah, génial ce Linux ? Comment, il va, ce cher Linux ? etc...), c'est à dire, la partie que nous pouvons comprendre, nous malheureux non-hackers, le système d'exploitation à part entière.
En fait, on ne se trompe pas vraiment puisque Linux est aujourd'hui réellement considéré comme un système d'exploitation complet meme si le nombre d'outils indépendants de Linux et importants pour en faire un vrai système est grand. La force de Linux est de justement proposer un noyau permettant une cohésion importante du système, avec des performances que jalousent pas mal de compagnies commerciales (mais c'est un autre débat, je ne peux pas me retenir des fois ;-). Ainsi ce que nous appelons Linux est en fait une distribution de Linux.
Une distribution de Linux, comme son nom laisse le supposer, permet d'installer ce système d'exploitation sur nos machines, selon une procédure qui n'est pas forcément pré-établie. Une distribution comprend le noyau de Linux (plusieurs versions compilées pour tel ou tel matériel et bien sur les sources) mais aussi de nombreux outils, certains obligatoires, d'autres facultatifs. Il existe plusieurs distributions de Linux (une bonne dizaine) mais trois grands standards dominent le "marché" : la Slackware, la Red Hat et la Debian. Nous parlerons aussi de certaines distributions reprenant un de ces trois standards : la distribution Caldera Open Desktop, la kheops, linux-FT, etc. La plupart des distributions proposent des procédures d'installation différentes mais la gestion des packages (ensembles de programmes partageant un meme domaine d'utilisation) reprend tout le temps l'un des trois standards sus-cités.'
Cette article n'est pas un guide d'achat meme si, comme tout le monde, nous avons des préférences, en particulier celle de soutenir le free software au possible (mais sans dénigrer le commercial car Linux en a besoin pour vivre !). Nous voulons plutot vous expliquer en details ce qu'est une distribution et pourquoi son choix est important.
Pour avoir un système vraiment efficace, il est nécessaire de disposer d'au moins deux partitions de disque dur libres, une pour le swap et l'autre pour le Linux lui-meme. La partition de swap est activement utilisée par le système pour simuler de la mémoire vive avec le disque dur, bien entendu, cela ralentit les performances mais on peut ainsi surcharger le système de manière importante et c'est un des points qui impressionne le plus les nouveaux venus sur Linux : le swap est réellement efficace ! Il existe aussi une possibilité d'installer linux sur une partition DOS (UMSDOS) mais on perd une grande partie des qualités de linux. Le problème du repartitionnement, c'est que par défaut la plupart des disques sous DOS et/ou Win95 (etc...) sont préformatés et déjà partitionnés pour ces systèmes d'exploitation. La méthode proposée est de réduire une (ou plusieurs) partition DOS avec un utilitaire spécialisé. L'outil le plus courrament employé est fips qui doit etre lancé depuis le dos , il est plutot sur et efficace (le mieux reste quand meme de faire des sauvegardes). Après avoir libéré de la place (si nécessaire) et défragmenté le disque (O-BLI-GA-TOI-RE !), on lance fips et on modifie avec les touches de directions la taille de la partition souhaitée. Certains vont jusqu'à acheter un disque dur spécialement pour Linux afin d'éviter cette étape pourtant peu dangereuse, d'autres décident d'enlever toute trace de window$ de leur disque (par exemple, heu... moi !). Ensuite, une fois qu'on a libéré de la place sur le disque avec fips, il faut commencer notre installation de linux (grace aux disks boot et root) et utiliser l'outil fdisk sous linux. fdisk permet de créer des partitions de tailles variables, de leur donner un type (linux native, linux swap, etc...) et d'écrire la nouvelle table des partitions.
Invariablement, la première méthode proposée pour l'installation de Linux passe par la création de deux (mais parfois plus) disquettes : une disquette boot et une disquette root. La disquette boot va contenir (désormais sous forme compressée) une version précompiilée du noyau de Linux, répondant aux spécifications de votre matériel. La disquette root, quant à elle, contient une mini-version de Linux, le système d'exploitation, c'est-à-dire un petit système de fichier permettant d'utiliser le système un minimum et de lancer les programmes d'installation. La disquette boot s'ocuupe donc de charger de d'exécutez le noyau de Linux et la disquette root permet de lancer des programmes d'installation. Tout se passe dans la mémoire vive (ram disk), 4Mo semble etre un minimum vital pour installer linux avec cette méthode. La debian est plus originale car, au lieu de créer deux disquettes, vous allez en créer 5, on pourra ainsi installer un système complet sans tout de suite placer tous les packages dont on a besoin, nous verrons que cette méthode semble plus embettante mais en fait, on y gagne énormément en clarté puisque l'on sait tout de suite si l'installation s'est déroulée correctement : on sait si nos périphériques sont reconnus, si ca boot bien, etc...Il existe un moyen d'installer linux sans passer par la création de disquette (installation complète depuis le CD ROM) grace à loadlin (outil DOS permettant de lancer Linux), c'est plus rapide mais n'oubliez pas qu'une installation ne doit pas se faire précipitamment. Certains installent linux trois ou quatre fois dans la meme journée avant d'obtenir satisfaction alors qu'en prennant son temps, une seule installation suffit !
Suivant les distributions, l'étape suivante varie du tout au tout au niveau de l'interface, mais les grandes lignes sont les memes, nous allons :
Certaines distributions comme la debian ou la red hat permettent aussi de configurer X-Window directement mais en général, il vaut mieux essayer de passer par la voie "habituelle" pour éviter tout problème. Comme nous l'avons dit précédemment, si la red hat, la slackware et leurs dérivés (Caldera Open desktop, kheops, etc.) permettent de tout installer tout de suite, avec la Debian, il faut tout d'abord installer le système minimal puis relancer linux et commencer l'installation des packages. En fait, cette méthode est conseillée pour TOUTES les distributions, c'est à dire que pour etre sur d'avoir une installation correcte, il vaut mieux installer un système minimal, vérifier que tout marche bien puis utiliser les utilitaires d'installation des packages pour rajouter des programmes. Ceci dit, toutes les distributions permettent ce genre d'installation mais la debian l'impose et ce n'est pas un mal... Concernant la configuration du système, il vaut mieux éviter de configurer X ou les réseaux (etc.) avant d'avoir testé une première fois le système. La dernière étape consiste souvent à configurer et placer le (vraiment) pratique programme LILO sur le Master Boot Record de la partition de boot, qui permet de choisir de lancer tel ou tel système au démarrage de l'ordinateur.
Ensuite, on fait généralement un CTRL+ALT+SUPPR (après, il faudra utiliser la commande shutdown ou reboot), et on lance notre premier démarrage de notre tout nouveau système Linux. Il faut alors commencer l'installation des premiers packages (genre programmes de développement, X-Window, etc...) et procéder à une configuration plus approfondie du système. Si vous etes réellement débutant, je conseille tout d'abord un entrainement soutenu aux commandes shell, passage obliger de tout Unixien qui se respècte.
Cela fait plusieurs fois que j'emploie ce mot de package sans l'expliquer et certains d'entre vous se demandent surement ce que c'est réellement. En fait, un package est un ou plusieurs programmes (mais en général non séparables) archivé dans un fichier possédant un format particulier, avec des informations concernant son installation. Cela peut vous sembler bizarre mais l'installation d'un programme sous Linux ne consiste pas forcément à la copie toute bete de fichiers dans un répertoire du système. En effet, certains programmes doivent disposer d'une configuration spéciale (création de liens symboliques, par exemple). C'est ici que l'on retrouve la plupart des incompatibilités entre les distributions. La slackware utilise le format le plus simple : un simple .tar.gz avec la présence d'un petit fichier utilisé par le programme d'installation des packages (pkgtool) pour l'installation efficace du programme. La debian et la red hat utilisent des formats plus complexes mais disposent de fonctionnalités étendues comme la gestion des dépendances entre packages (tel package a besoin de tel package pour fonctionner). Toutes les distributions gèrent l'installation (forcément) et la désinstallation des packages, mais la mise à jour est plus facile avec la debian ou la red hat que la slackware. En fait, toutes ces méthodes ont leurs avantages et leurs inconvenients. La slackware est la plus simple, puisque on peut très facilement voir avec les outils de base d'Unix le contenu des archives, on peut les installer manuellement très facilement et la création de packages est aussi simplifiée. Sur la red hat ou la debian, concernant les packages au bon format, c'est bien sur plus efficace mais on a souvent besoin d'un programme venant soit d'une autre distribution, soit d'un site ftp ou autre (il faut souvent recompiler ou installer à la main, ce n'est pas si difficile que ca !) et on perd du coup les fonctionnalités des distributions pour ces programmes là. La réplique des développeurs est de placer le plus grand nombre possibles de packages dans la distribution et ce n'est pas un mal (765 packages dans la dernière debian). Mais on fini un jour ou l'autre par dénicher tel ou tel programme sur le net, les mises à jour de programmes vont souvent aussi beaucoup plus vite que celles des distributions, etc... En bref, il n'est pas prouve que la slackware soit réellement pénalisée par rapport aux autres distributions. Surtout qu'il est possible d'installer les packages red hat n'importe ou avec le programme rpm2cpio, le meme genre de programme doit exister pour la debian ... On perd bien sur la possibilite de gerer les dépendances, la désinstallation automatique (mais sous Unix, c'est souvent un simple rm -rf machin/ ) et la mise à jour automatique... Ceci dit, il est vrai que la slackware est moins bien fournie en nombre de packages que les autres et qu'il faudrait rapidement remédier à ce problème (d'ailleurs rajouter les dépendances et la mise à jour dans les packages slackware n'est pas vraiment un problème !).
La slackware utilise le programme pkgtool, avec une interface ncurses (interface plein écran en mode texte), qui permet d'installer très facilement des packages situés n'importe où dans l'arborescence (y compris sur plusieurs disquettes)... Sobre et efficace, ce programme permet aussi de visualiser ou de désinstaller un package. L'outil setup utlisé pour l'installation du système permet d'installer les packages fournis avec la distribution. Les dérivées de la slackware (comme la juriX ou la kheops) n'utilisent pas forcément les memes programmes mais les fonctionnalités sont à peu près les memes. La red hat utilise un programme en ligne de commande, avec des options plutot étranges dans leur syntaxe pour un programme Unix, qui permet autant d'installer des packages que d'en créer soi-meme. Des surcouches de ce programme existent en ncurses ou sous X. C'est à peu près la meme chose pour la debian avec dpkg (en ligne de commande) et dselect (plein écran)...
Attention ! Ces remarques sont vraiment personnelles, ne fondez pas forcément votre choix sur telle ou telle affirmation...
Après l'intallation très longue de la red hat (on se demande comment ça peut aller aussi lentement !), on se retrouve dans un système déjà fortement configuré. Par exemple, sous X, les ressources ne sont pas les ressources par défaut, les xterms ont un look assez spécial, les couleurs ne sont pas les couleurs de base, etc... Si c'est plutot positif pour le débutant (qui peut comprendre que configurer son système n'a pas la meme signification sous Linux qu'ailleurs), l'habitué de Linux qui veut faire ses propres choix est un peu embetté. Il est plus facile de partir de rien que de comprendre ce que les créateurs de la distribution ont voulu faire. Bien entendu, ce n'est qu'une histoire de gout et l'idée de proposer une configuration de base est intéressante (il manque juste un moyen de dire : "non, ne configurez rien SVP"). Au niveau du filesystem, les répertoires correspondent bien au FileSystem Standard (qui dit a quoi sert tel ou tel répertore) mais le répertoire /etc est un peu fouillis quand meme. Le fer de lance de la société Red Hat concernant sa distribution est la présence d'outils sytèmes prévus spécialement pour la Red Hat. Si l'intention est louable, ne vous attendez pas à des outils d'une extreme puissance et d'une ergonomie à toute épreuve, il reste du travail pour ne pas considérer ces programmes comme des gadgets...
Le système installé par la slackware est, à mon avis, plus simple et plus accessible que la red hat ou la debian mais elle comporte une grande faiblesse : les packages sous X-Window sont trop peu nombreux pour disposer d'une interface intéressante. Il n'est pas normal de pouvoir installer fvwm95 et pas fvwm2.04x alors que le deuxième permet d'avoir une interface vraiment puissante sans pourtant forcément ressembler à Window$ 95. Je ne comprend pas cette mode du tout 95, il faudrait, sous Linux, montrer l'exemple et expliquer qu'on peut etre original et vraiment efficace... Il faudrait aussi rajouter le package OffiX qui permet d'avoir un début de desktop très efficace surtout sur les petites configurations... En clair, avec la slackware, il va falloir apprendre a installer, recompiler, etc... Mais c'est très formatteur pour le débutant !
Attention!
La slackware 3.1 de septembre 1996 présente sur le Developer's resource d'infomagic comporte quelques erreurs de jeunesses (si vous récupérez des versions ultérieures, vous n'aurez surement aucun problème).
Certains ont dit que la slackware n'était pas installable, ce qui est totalement faux puisque vous ne pourriez lire ces lignes si tel était le cas ! Aucune distribution en peut se targuer d'etre fiable à 100% et il faut savoir que la sortie du pack d'infomagic s'est passé trop vite par rapport au développement de la slackware.
La debian installe un système vraiment efficace, propre mais quelque peu inaccessible pour le débutant. On ne sais pas quel package installer tellement il y en a, l'utilisation de dselect ou dpkg n'est pas des plus simple et la configuration du système n'est pas d'une simplicité monumentale. Mais la puissance est au rendez-vous, tant dans les packages proposés que dans les outils maisons, les bugs sont peu nombreux (à part dans dselect qui ne peut remplacer la configuration manuelle) et on a vraiment l'impression d'utiliser du Free Software (entendez par-la un outil incontestablement imbattable :-)
Le mois dernier, nous avons vu que pour passer du noyau 1.2.xx au noyau 2.0.xx, il vallait mieux refaire une installation complète. Les raisons sont simples : aucune distribution ne possède de mise à jour réellement efficace, et pour cause, c'est une tache titanesque (avec la gestion des dépendances, etc, ca peut devenir réellement laborieux). Il faut quand meme noter qu'avec les systèmes de packaging de la red hat et de la debian, ce genre de procédure est facilitée mais meme pour la slackware, ça devrait s'améliorer avec le temps...
Nous l'avons déjà dit, le débutant devrait plutot s'orienter pour une première utilisation vers la slackware qui permet réellement de découvrir linux dans de bonnes conditions sans pour autant etre débordé par le nombre de programmes. Les outils slackware sont les moins puissants mais les plus simples à comprendre, on est de plus souvent obligé de recourrir aux commandes shell et c'est priomordial pour comprendre réellement Unix.
La debian est à notre avis la distribution la plus puissante à tout point de vue mais nous la déconseillons quand meme au débutant sous Linux qui aura beaucoup plus de facilité à comprendre la slackware ou la Red Hat. Pour le développeur ou l'administrateur de réseau, c'est une distribution vraiment efficace qui installe un système sur et le nombre des packages très bien choisis est impressionnant.
La distribution de Red Hat est très populaire, de plus en plus. Nous n'avons pas vraiment accroché mais ce n'est qu'un avis parmi d'autres. La version payante de la red hat est intéressante parce qu'elle intègre le serveur X metro-X de metrolink et la hotline de red hat, très efficace, sera là pour répondre à vos questions. Une distribution commerciale, d'accord mais alors autant que ce soit payant !
Pour les allergiques à l'anglais et les débutants en général, la distribution kheops est vraiment intéressante car livrée avec deux livres en Français (le célèbre Getting started en version française et une doc propre à la kheops, très bien faite), et toute la phase d'installation est aussi en français et le mode d'installation est simplifié au maximum. De plus, comme c'est une distribution commerciale, vous avez un support hotline gratuit, ça peut etre intéressant.
D'autres distributions existent, notamment la caledera open desktop basée sur la red hat mais qui rajoute un desktop complet, assez sympa et puissant pour un prix abordable quand on connait le prix de tels programmes dans le monde Unix...
La plupart des distributions de Linux sont utilisées sur support CD-ROM, les célèbres packs de 6 CD ou 10 CD (il n'y a pas qu'infomagic qui fait ce genre de produit), et chaque distribution peut-etre achetée directement chez son éditeur de base.
Les distributions sont aussi très souvent présentes sur des sites ftp, et si le nombre de personnes disposant d'un acces rapide, gratuit et la possibilité de faire des sauvegardes assez grosses n'est pas faramineux, c'est souvent pratique pour ramener les derniers patchs ou de nouveaux packages.
Voici les sites de base des distributions les plus connues :
Faites-attention aux numéros de version des distributions !
Il y a une petite mode, lancée par un petit nombre heureusement, de dénigrement systématique de ce qui n'est pas distribution Red Hat ... On entend des "la slackware est ininstallable", des "la kheops est nulle", etc... Nous n'avons rien contre la société Red Hat, loin de la, elle fait beaucoup pour les linuxiens que nous sommes mais Linux est un fantastique effort de développement de free software. Ainsi, il faut respecter le travail des autres, surtout lorsqu'il s'agit de free software (comme les distribution slackware ou debian) et le mieux reste encore de savoir de quoi on parle. La slackware est non seulement installable mais on peut vraiment avoir un système Linux très efficace avec cette distribution ! N'oubliez pas que, meme diffusee sous GPL, la Red Hat est une distribution commerciale diffusée gratuitement. Un peu comme net$cape, ou pire, vous savez-qui-explorer, on a affaire à une société commerciale qui diffuse un produit gratuitement. En général, il s'agit plutot d'emporter un marche plutot que de participer à la communauté Linux... En ce sens, je trouve que la société Red Hat est beaucoup plus claire lorsqu'elle propose un prix étudiant pour la suite bureautique Applixware (79$ pour une suite bureautique compète, c'est donné !). Bon, c'est un sujet compliqué mais nous encouragerons toujours les développements de Free Software et il serait TRES GRAVE que les distributions Free Software de Linux disparaissent. Devant le succes de Linux, beaucoup de monde tente de s'accaparer notre magnifique outil, et s'il faut respecter et meme encourager les développement commerciaux sous Linux, il faut aussi et surtout préserver la philosophie du Free Software.