présente...

 

LéaBook , Chapitre :
Installation

par tous les amis de Léa

 

 

Le copyright de chaque article est détenu par son auteur.
Le copyright du livre lui-même est détenu par Léa (Association Loi 1901).
Les articles de ce livre sont diffusés selon la license GPL (GNU General Public License), sauf mention explicite dans l'article.

Copyright (c) 2003 Association Léa.
This documentation is free documentation; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
For the purpose of applying the GPL to this document, I consider "source code" to refer to the html source.


Table des matières


Installation de Linux

Tout ce qu'il faut savoir pour installer Linux.


Haut


Préparation à l'installation de Linux

Par Jean-Christophe sur la base du travail de Serge

Cette partie traite de la préparation que vous et votre ordinateur devrez subir avant d'installer Linux ;-)


1. Vérifier son matériel

Avertissement

Linux ne supporte pas tous les matériels qui existent dans le commerce ou ailleurs. La faute en revient aux constructeurs qui développent des drivers en général uniquement pour Windows. Les drivers Linux sont généralement développés par des personnes qui possèdent un matériel qu'ils souhaitent utiliser avec Linux ; cela n'est possible que si le fabricant ne garde pas secrètes les spécifications de son matériel, ce qui est malheureusement encore souvent le cas. Dans ce cas, je vous invite à boycotter et à faire boycotter ces fabricants afin de faire pression sur eux.

Prérequis :

Maintenant voyons de plus près le matériel supporté. Sachez qu'une liste assez complète se trouve dans le Hardware-HOWTO (anglais/ français) sur le site TLDP (The Linux Documentation Project <www.tldp.org>).
En général :

Voilà, cette liste est très incomplète mais permet de débuter. Pour une liste plus complète de matériels supportés, allez voir le Hardware-HOWTO (anglais/ français) pour les matériels spécifiques.

2. Choisir sa distribution

Il y a dans les listes de distribution et sur Usenet des débats acharnés où chacun cherche à prouver que "sa" distribution est meilleure que les autres. C'est avant tout une question de goût personnel. Voici les principales distributions :

Distribution

Commentaire

type de
paquet

• Red-Hat

la plus connue. Assez simple à installer pour un débutant mais pas la plus simple à maintenir à mon goût.

rpm

• Mandrake

C'est aujourd'hui la distribution la plus utilisée sur les Desktop. C'est certainement l'un des plus faciles à installer, elle dispose d'un bon site pour avoir des correctifs, forums... et de plus elle est francisée (elle est réalisée par une société française). Vu le support qu'il y a derrière, grâce à leur site et leurs listes de diffusions, je trouve que cette distribution est un bon choix pour un débutant. De plus, cette distribution est complètement libre.

rpm

• SuSE

très bonne distribution pour les débutants aussi (installation simple) et bon site aussi pour le support.

rpm

• Debian

c'est vraiment LA distribution libre (elle ne comporte que des logiciels libres) et à part : le groupe de développeurs ne met à la disposition des personnes intéressées que l'image ISO de la distribution : il n'y a pas de société pour la commercialiser - et aucun impératif marketing, au contraire : la distribution sort quand les développeurs responsables du projet Debian estiment que tout est bon (ce qui donne des décalages entre ce qui était annoncé et la date réelle de sortie !). Bref, c'est une distribution très stable, mais plutôt pour les initiés.

deb

• Slackware

je la trouve excellente ; l'installation n'est pas toute simple, mais je trouve sa maintenance plus aisée que sur les Red-Hat. Bref, c'est une distribution pour les initiés. Par contre, la Slackware est souvent en retard par rapport aux autres distributions au niveau des versions des logiciels.
Cette distribution permet de s'installer dans très peu de place disque (moins de 100 Mo) en ne choisissant que les packages indispensables.

.tar.gz

• Gentoo

C'est une distribution 'source' : on démarre avec un CD bootable en mode texte, on lit la documentation fournie et on compile tous les outils qu'on va utiliser. C'est une distribution qu'on choisit lorsqu'on a un peu de pratique.
Sa grande qualité : un excellent gestionnaire de package inspiré des "ports" de BSD.

.ebuild

• Il existe encore bien d'autres distributions...

La facilité de trouver des paquets rpm milite également en faveur de Red Hat et de Mandrake, mais on trouve également tout en .tar.gz, ce qui permet d'installer tout logiciel sur toute distribution ; il suffit de le compiler si le package ne contient pas une version binaire.

Se procurer une distribution :
Si vous avez une bonne connexion au Net (ADSL, câble ou LS à votre travail) vous pouvez télécharger une distribution complète. Mandrake, RedHat et Debian sont disponibles en image ISO (un seul fichier d'environ 700 Mo qu'il suffit ensuite de graver sur un CD).
Si vous souhaitez/devez acheter une distribution, vous la trouverez dans les librairies, FNAC, etc. Optez pour l'une d'elle avec si possible un gros livre fourni avec. Evitez aussi les distributions en boîte à plus de 60 euros, on est souvent déçu par le soit-disant contenu. Mandrake vend un DVD comportant tous les logiciels de la distribution, il est très pratique. De plus, de nombreux magazines informatiques proposent régulièrement sans supplément de prix (vers les 6 ou 7 euros donc) une distribution toute récente. Vous pouvez également trouver tout un tas de CD à bas prix en suivant ce lien chez Mandrake, ou chez Ikarios.

Débuter :
Si vous commencez avec Linux, je vous conseille de choisir Mandrake ou SuSE, ou mieux : commencez par tester Linux avec le Live-CD de Knoppix : c'est une distribution qui est conçue pour fonctionner depuis le CD, sans s'installer sur le disque dur. Pour tester Linux en grandeur nature sur vitre matériel, c'est l'idéal.

3. Préparer ses disques durs.

Je ne vais pas vous décrire toute la procédure d'installation, mais vous donner des conseils utiles, avec un peu d'explications. Le installation-HOWTO (anglais/ français) ou le Guide d'installation et de démarrage (en anglais) sont là pour ça, les docs des distribs et des centaines d'autres sites aussi.

Un peu de théorie

Les systèmes de fichiers

Le système de fichiers (ou File System ou FS), c'est la façon dont le système d'exploitation structure les données sur le disque dur.

Comme tout système d'exploitation, Linux dispose de ses propres systèmes de fichiers :

Il en existe d'autres, mais préférez-leur l'un de ceux-là, sauf si vous avez une bonne raison.

Windows utilise quant à lui un système VFAT (partitions limitées à 2 Go) ou FAT32, voire FAT (l'ancien système de fichier du DOS). Vous ne pouvez pas installer Linux sur une partition de ce type, car elles ne gèrent pas les permissions. Les dernières versions de Windows (NT, 2000 et XP) utilisent aussi le système de fichiers NTFS, mais Microsoft n'a pas fourni les spécifications techniques de ce format et Linux (ainsi que la plupart des autres systèmes d'exploitation) est incapable de le gérer correctement (prévoyez une partition en VFAT-FAT32 pour partager des informations facilement entre Linux et Windows) : Linux sait lire les informations sur une partitions NTFS mais pas en écrire (cette fonctionnalité est en cours de développement).

Les disques durs et les partitions sous Linux

Tout d'abord, voyons comment Linux identifie et organise les disques durs.

Pour les disques IDE, la numérotation se fait avec un préfixe "hd", suivi par une lettre, "a" pour le premier IDE maître, "b" pour le premier esclave, etc.
En résumé on a :

Si vous avez d'autres contrôleurs IDE (hé oui, cela arrive !) la numérotation se poursuit (hde, hdf, etc.).
Attention : les lecteurs de CD-ROM IDE apparaissent comme un disque dur. Si votre CD est maître sur la deuxième nappe par exemple, il sera nommé hdc.

Pour les disques SCSI, cette fois c'est l'ID SCSI qui va donner la lettre, le préfixe étant "sd".
Prenons par exemple 3 disques scsi d'id 0,1 et 3 on va avoir :

Attention : les lecteurs de CD-ROM SCSI, les ZIP, JAZ, etc. SCSI ainsi que les périphériques de stockage USB (appareils photo, clefs USB...) apparaissent comme un disque dur SCSI ; ils se nomment aussi sdx suivant leur ID. Astuce : pour connaître la liste de vos périphériques de ce type, tapez : cdrecord -scanbus.

Les partitions sont quant à elles représentées par le nom du disque dur, suivi d'un chiffre représentant la partition.
Par exemple, la première partition du premier disque IDE se nomme hda1, de même, la troisième partition du disque SCSI d'ID 1 se nommera sdb3.

Organisation des fichiers sous Linux
L'arborescence

Sous Linux, ou tout autre Unix d'ailleurs, il n'y a pas de lettre représentant le disque dur comme le C: de Windows/DOS.
De plus, le signe '\' est remplacé par '/' pour séparer les répertoires.
Il y a une seule arborescence, qui débute à la "racine", notée '/', et tous les disques durs/partitions apparaissent dans cette arborescence avec leur contenu de façon transparente comme un répertoire.

Les périphériques
De plus, tout périphérique est identifié à un fichier qui se trouve dans le répertoire /dev (comme device, périphérique en anglais). Par exemple, le disque maître du deuxième port IDE est identifié par /dev/hdc, sa deuxième partition par /dev/hdc2.
Le lecteur de disquette est représenté par /dev/fd0, etc.

Les partitions / les points de montage
Les partitions que l'on va créer sur les disques durs seront attachées à des répertoires de l'arborescence, ou "points de montage". C'est ce qu'on appelle "monter une partition". Le point de montage est un simple répertoire, vide avant le montage, et qui après le montage, représente le contenu de la partition montée.
Par exemple, supposons que nous ayons créé une partition /dev/hda2 (premier disque IDE, 2ème partition) pour contenir le système. On montera cette partition (automatiquement, heureusement !) dans le répertoire racine /. Si la partition /dev/hda3 est destinée à contenir les données utilisateur, on la montera dans le point de montage (=répertoire) /home. On verra le contenu de cette partition dans le répertoire /home comme si c'était n'importe quel autre répertoire, alors que physiquement les données sont sur une autre partition.
De même, pour accéder à la disquette, on montera le périphérique /dev/fd0 dans le point de montage /mnt/floppy ou /floppy (selon la distribution) et pour accéder au CD-ROM, on montera le périphérique /dev/cdrom dans le point de montage /mnt/cdrom ou /cdrom.

Les répertoires standards
Linux possède des répertoires "spéciaux" à la racine (un peu comme le C:\windows), qui sont classiques dans les systèmes Unix et peuvent ou non représenter un point de montage pour une partition.

On a déjà vu par exemple le répertoire spécial /dev où tous les périphériques sont répertoriés en tant que fichiers, ou encore le répertoire /home qui contient les données personnelles des utilisateurs.

Chacun des répertoires ci-dessous peut être soit un simple répertoire dans la partition racine, soit le point de montage d'une autre partition, mais dans tous les cas le résultat est le même : des fichiers dans des répertoires.

Les répertoires standards de Linux sont :


/

La racine du système = la base.

/boot

Fichiers utilisés pour booter le noyau

/usr

Programmes, données, accessibles par les utilisateurs et non nécessaires lors du boot

/home

Tous les répertoires de base des utilisateurs et de certains services comme le FTP, le serveur Web, Samba, etc.

/dev 

Tous les périphériques

/bin

Programmes nécessaires au boot, et disponibles ensuite à tous les utilisateurs

/sbin

Programmes nécessaires au boot, disponibles au root uniquement

/var

Fichiers de log, spool d'impression, de mail, etc. En général, fichiers qui changent tout le temps

/etc 

Fichiers de configuration du système

/boot

Fichiers de démarrage (répertoire pas présent sur toutes les distributions)

/root

Répertoire home de l'administrateur

/lib

Bibliothèques et modules (comme les DLL de Windows) nécessaires au boot

/tmp

Fichiers temporaires

/mnt

Répertoire proposé pour monter des périphériques (ou /mnt/cdrom, /mnt/floppy, /mnt/zip, etc.)

/proc

Fichiers d'information sur la configuration système (les fichiers sont générés dynamiquement, pas de modifications possibles). Les fichiers dans ce répertoire n'existent pas sur le disque, c'est Linux qui les crée en temps réel lorsque vous en avez besoin.

/opt

Dans ce répertoire (optionnel), on peut ajouter des logiciels afin qu'ils ne s'installent pas dans les répertoires système.

Et j'en passe...

Passons à la pratique !

On peut installer Linux sur une partition DOS/Windows avec par exemple Linux4win de Mandrake. Cette méthode est pratique car elle nécessite un minimum de travail sur le système d'exploitation d'origine (en général Windows) : Linux s'installe dans un gros fichier sur le disque Windows.
Cependant, je vous déconseille cette méthode, à moins que vous y soyez obligé. Un tel système est très ralenti (au moins d'un facteur 2) et vous allez être très déçu des performances de Linux ; de plus il arrive parfois des problèmes d'incompatibilités avec cette méthode. Au prix où sont les disques durs aujourd'hui et vu leur taille grandissante, vous trouverez bien de la place pour créer des partitions Linux.

Préparation

Avant de commencer l'installation, vous allez donc devoir libérer de la place pour les nouvelles partitions Linux. Si vous comptez installer Linux sur un disque vierge, pas de problème. Par contre, si vous voulez faire cohabiter Windows et Linux sur le même disque, et que Windows est déjà installé sur la totalité du disque, il va falloir arranger ça :) (à moins que vous ne vouliez réinstaller Windows de zéro).

On va devoir passer de ça :

 <----------------- Windows -------------->
|==========================================| <- disque dur

à ça :

 <- Windows -> <- place libre pour Linux ->
|=============|============================| <- disque dur

Alors soit vous virez tout et vous réinstallerez Windows, c'est le plus simple évidemment,
soit vous redimensionnez votre partition Windows. Pour ce faire, utilisez un logiciel approprié, comme FIPS (souvent sur les CD des distributions), ou Partition Manager (un freeware sous DOS) encore Partition Magic (produit commercial). Pour ça, je vous renvoie à la documentation du logiciel utilisé.

Remarque 1 : Partition Manager a l'air intéressant, il fonctionne sous DOS, est freeware, et existe en version française. Il permet de gérer les partitions, de sauver le MBR (Master Boot Record, c'est là que vient s'enregistrer LILO) dans un fichier, de le restaurer, de modifier la taille d'une partition, de la formater, etc. (Voir la page de Partition Manager.)

Remarque 2 : la distribution Mandrake est livrée avec un utilitaire de repartitionnement très performant, sachant même redimensionner les partitions au format NTFS.

Dans tous les cas, pensez à sauvegarder vos données perso !

Installation proprement dite : le partitionnement des disques

La plupart des installations commencent de la même façon : on crée une disquette de boot sous DOS/Windows avec l'utilitaire "RAWRITE" (livré sur les CD des distributions), des fois même deux disquettes (pour la Slackware) ; en général le CD de la distribution est bootable (Mandrake par exemple) et il n'y a alors pas besoin de disquette. Puis on boote sur la disquette ou le CD.
Ensuite on suit les indications du programme d'installation, puis on arrive sur le partitionnement des disques (attention à la Slackware où on n'atterrit pas sur ce point directement : après s'être logué en root il faut taper "fdisk" AVANT de taper "setup"). Détaillons un peu cette procédure de partitionnement.

Pour partitionner votre disque vous allez appeler la commande fdisk suivie du nom du disque sur lequel vous voulez installer Linux, par exemple "fdisk /dev/hda". Des logiciels plus conviviaux existent comme DiskDruid (disponible lors de l'installation d'une Red Hat par exemple) ou DiskDrake de MandrakeSoft fonctionnant en mode graphique (mais il me semble qu'il nécessite que Linux soit déjà installé !).

Je vous renvoie à l'installation HOWTO (anglais/ français) pour toutes les commandes de fdisk ; les principales sont :

Dans fdisk, tapez "m", afin d'accéder à la liste de toutes les commandes possibles. C'est assez bien indiqué dans l'installation-HOWTO.

Attention : le nombre de partitions dites "primaires" est limité à 4. Ainsi, si vous souhaitez définir plus de 4 partitions sur un même disque, l'une de ces 4 partitions primaires doit être définie comme "étendue", elle contiendra alors toutes les autres partitions. Les partitions primaires sont numérotées de 1 à 4, les partitions créés à l'intérieur de la partition étendue sont numérotées à partir de 5.

De combien de partitions allez vous avoir besoin ?
Si vous installez un serveur :

L'une des méthodes les plus utilisées, c'est de mettre le / sur un petit disque ou une partition, puis /usr sur un autre disque en point de montage. Si notre système va être un serveur avec beaucoup d'utilisateurs, qui vont avoir beaucoup de données personnelles à stocker, on peut créer aussi un /home en point de montage sur un autre disque. On va aussi généralement réserver un disque ou une partition pour le répertoire temporaire que l'on montera dans /tmp, et encore une autre pour le /var. En fait, on ne va laisser dans le disque contenant la racine que les informations qui bougent peu et dont le volume augmente peu.
Ainsi on ne charge pas le disque de point de montage / des répertoires /usr, /home, etc., ce qui permet de facilement maintenir le système (si /home est plein, on prend un disque + gros que l'on monte en /home et on recopie tout dessus, ça permet de ne pas casser le reste...), etc. Ca a plein d'avantages, je vous conseille de faire comme ça si vous avez plusieurs disques. De plus si un disque crashe, si ce n'est pas le disque contenant la racine /, ça permet de rebooter quand même la machine, de travailler un minimum pour réinstaller un disque sans à avoir à réinstaller un système de base.
Remarque : si vous installez un serveur qui sera très sollicité, soyez généreux pour la taille du swap (2 fois la taille de la RAM est un bon début).

Si vous installez sur une machine perso :

Sur une machine mono-utilisateur, voire mono-disque, on peut faire une partition pour le / (mini 1Go recommandé 2Go), une pour /home et une pour le swap (128 Mo par exemple). Vous pouvez aussi éventuellement faire une partition pour /opt qui contiendra les logiciels que vous avez installés vous-même et qui ne proviennent pas de la distribution. Ca permet de mettre à jour voire de réinstaller la distribution sans trop devoir travailler derrière pour que ça fonctionne comme avant.

exemple de partionnement :

 <- /dev/hda1 -> <--- /dev/hda2 (étendue) -->
   (primaire)    /dev/hda5    hda6     hda7
 <-- Windows --> <-- / --> <- /home -> <swap> <-pt de montage
|===============|=========|===========|======| <-disque dur
     2,5 Go        2,5 Go      5 Go    128 Mo

Lorsque vous disposez de beaucoup de place sur vos disques (j'ai par exemple 2 disques de 80 Go), pour une utilisation personnelle, 3 ou 4 Go suffisent pour la racine (ou alors 1 Go pour la racine et 2 Go pour /usr), gardez votre swap entre 128 et 512 Mo, et enfin, le reste pour /home (j'ai monté un de mes disques contenant une seule partition dans /mnt/data et j'y stocke mes fichiers multimédia).

Haut


L'installation de Linux

Par Jean-Christophe sur la base du travail de Serge

Passons maintenant aux choses sérieuses: l'installation de Linux.


Normalement, vous devez déjà avoir lu le chapitre précédent, ou bien vous connaissez déjà les bases de Linux ! :-)

4. Choisir ses packages.

Je ne vais pas faire la liste des milliers de packages existants, je ne suis pas fou. Je vous donne juste les packages essentiels à installer car vous en aurez besoin un jour ou l'autre.

Contrairement au monde Windows, Mac, etc. la majorité des applications sous Linux est "libre". Elles sont alors disponibles en tant que sources. Il vous faut alors les compiler sur votre machine pour obtenir les fichiers binaires (i.e. les exécutables). C'est pour ça que vous avez besoin des packages de développement, même si vous ne développez pas vous-même.
J'insiste mais installez les packages de développement, c'est toujours râlant de passer 30 minutes à recompiler un truc et avoir une erreur parce qu'il vous manque juste une petite bibliothèque qui était comprise dans un de ces packages. Après vous passez des heures pour trouver le package où se trouve le fichier manquant ! En fait dès que vous lisez développement ou un truc du genre (devel...) installez-le, au pire ca vous prend un peu de place pour rien, mais au moins vous arriverez à compiler la toute dernière application que vous attendiez depuis 2 ans sur Linux.

5. Installer un chargeur Linux ou Comment booter Linux.

LILO

LILO (LInux LOader) est le petit utilitaire qui permet de faire démarrer Linux. D'où son importance.

C'est, en fait, deux programmes :

Pendant trés longtemps, il y a eu des problèmes avec LILO : il n'y en a plus. Les versions actuelles de LILO gérent trés bien tous les types disques.

Désinstaller LILO
De préférence depuis Linux : tapez lilo -u.
Depuis DOS : tapez fdisk /mbr.

Voir aussi l'article LILO.

GRUB

Le GRUB est le bootloader du projet GNU.

Voir l'article GRUB pour plus de détails.

LOADLIN

C'est un utilitaire fonctionnant sous DOS que vous pouvez utiliser pour démarrer Linux, si vous ne souhaitez/pouvez pas utiliser LILO, et que vous disposez d'une partition DOS/Windows bootable. Il est disponible en général sur les CD des distributions. Je ne crois pas qu'il ait le problème des 1024 cylindres, car le noyau de Linux est alors situé sur le système de fichiers de DOS/Windows. Cependant, j'ai entendu dire que certaines personnes avaient eu des problèmes d'incompatibilité avec leur matériel (plus reconnu sous Linux lorsqu'ils utilisent LOADLIN). Bref, à tester.

Pour le faire fonctionner, je vous conseille de créer un répertoire C:\LINUX, d'y placer LOADLIN, de copier le noyau /boot/vmlinuz-2.x.x sous Linux dans ce répertoire sous le nom VMLINUZ, et d'y créer un fichier linux.bat contenant la ligne de commande :

LOADLIN C:\LINUX\VMLINUZ root=/dev/hdb1 ro %1 %2
                              ^^^^^^^^^
-> remplacez /dev/hdb1 par votre partition "racine" /

ou encore, si vous utilisez initrd, copiez /boot/initrd dans le même répertoire, et placez cette ligne dans linux.bat :

LOADLIN C:\LINUX\VMLINUZ initrd=C:\LINUX\INITRD %1 %2

Ainsi, vous pouvez créer une entrée dans votre c:\config.sys pour avoir un choix "Linux" au boot qui en fait lance linux.bat. Ou bien vous bootez en "ligne de commande seulement" et vous démarrez Linux en tapant linux au prompt C:\>. De cette manière vous pouvez passer des paramètres au noyau, par exemple pour lui dire de démarrer en mode texte si X ne veut plus fonctionner, en tapant : C:\>linux 3, ou en mode maintenance par C:\>linux single (suivant votre distribution).

Voir aussi l'article LOADLIN.

6. Problèmes courants.

Problèmes avec le CD-ROM :

Essayez de copier le contenu du CD sur le disque dur et de lancer l'installation depuis le disque dur, cela règle bien des problèmes si votre lecteur de CD est mal reconnu.

Haut


Fin du chapitre