Install Linux
Install Linux
de Linux
Christian Casteyde
Guide d’installation et de configuration de Linux
par Christian Casteyde
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any
later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts.
A copy of the license is included in the section entitled "GNU Free Documentation License".
Permission vous est donnée de copier, distribuer et modifier ce document selon les termes de la licence GNU pour les documentations libres,
version 1.1 ou toute autre version ultérieure publiée par la Free Software Foundation.
Une copie de cette licence est incluse dans l’annexe intitulée "Licence de Documentation Libre GNU".
iv
4. Présentation générale du système.......................................................................................................75
Architecture du système...................................................................................................................75
Principe de modularité............................................................................................................75
Les différentes couches logicielles sous Linux ......................................................................76
Résumé de l’architecture de Linux.........................................................................................78
Sécurité et utilisateurs ......................................................................................................................79
Généralités..............................................................................................................................79
Notion d’utilisateur et d’administrateur .................................................................................80
La sécurité au niveau du système de fichiers..........................................................................82
Les droits sur les fichiers...............................................................................................82
Notion d’ACL ...............................................................................................................83
Les attributs spéciaux des fichiers.................................................................................84
Fonctionnalités des systèmes de fichiers..........................................................................................86
Le système de fichiers virtuel .................................................................................................86
Liens symboliques et liens physiques.....................................................................................88
Autres fonctionnalités.............................................................................................................90
Structure du système de fichiers.......................................................................................................91
5. Commandes Unix de base ...................................................................................................................98
Login et déconnexion.......................................................................................................................98
Arrêt et redémarrage du système .....................................................................................................99
Pages de manuel.............................................................................................................................100
Opérations de base sur les répertoires............................................................................................102
Notions sur les chemins Unix ........................................................................................................103
Opérations de base sur les fichiers .................................................................................................106
Autres commandes utiles ...............................................................................................................107
Gestion des liens...................................................................................................................107
Recherche de fichiers............................................................................................................108
Recherche d’un texte dans un fichier....................................................................................108
Remplacement de texte dans les fichiers ..............................................................................109
Compression et décompression des fichiers .........................................................................110
Archivage de fichiers ............................................................................................................110
Passage en mode superviseur ...............................................................................................111
Changement des droits des fichiers, du propriétaire et du groupe........................................111
Changement de propriétaire et de groupe ...................................................................111
Modification des droits Unix sur les fichiers ..............................................................112
Utilisation des ACLs...................................................................................................113
vi, l’éditeur de fichiers de base.......................................................................................................115
Utilisation du shell bash .................................................................................................................117
Contrôle des processus .........................................................................................................118
Lancement d’un programme en arrière-plan...............................................................118
Listing des processus ..................................................................................................119
Notion de signal ..........................................................................................................119
Arrêt d’un processus ...................................................................................................120
Gel d’un processus......................................................................................................120
Relancement d’un processus.......................................................................................121
Redirections..........................................................................................................................121
Principe de base ..........................................................................................................121
v
Redirections de données en entrée..............................................................................122
Redirection de données en sortie ................................................................................122
Insertion de documents ...............................................................................................124
Les tubes...............................................................................................................................125
Syntaxe des tubes........................................................................................................125
Les tubes nommés.......................................................................................................128
La commande tee ........................................................................................................128
La commande xargs ....................................................................................................129
Manipulation des variables d’environnement.......................................................................130
Caractère d’échappement et chaînes de caractères...............................................................134
Les substitutions ...................................................................................................................136
Génération de chaînes de caractères selon un motif ...................................................136
Substitution du nom d’utilisateur................................................................................137
Remplacements de variables.......................................................................................137
Substitution du résultat d’une commande...................................................................139
Évaluation d’expressions arithmétiques......................................................................140
Substitution de commandes ........................................................................................140
Découpage en mots .....................................................................................................141
Remplacement des caractères génériques...................................................................142
Les expressions rationnelles .................................................................................................143
Structures de contrôle ...........................................................................................................144
Les instructions composées.........................................................................................144
Les tests.......................................................................................................................145
Le branchement conditionnel......................................................................................149
Les boucles..................................................................................................................149
Les itérations...............................................................................................................150
Les ruptures de séquence ............................................................................................151
Les fonctions...............................................................................................................151
Les entrées / sorties de données ..................................................................................152
Les alias ................................................................................................................................154
Les scripts shell ....................................................................................................................155
6. Administration du système de base..................................................................................................156
Sauvegarde de la configuration d’installation ................................................................................156
Mise à l’heure du système..............................................................................................................157
Gestion des utilisateurs et de la sécurité ........................................................................................160
Mécanismes d’authentification des utilisateurs ....................................................................161
Création et suppression des utilisateurs................................................................................163
Description de la bibliothèque PAM ....................................................................................166
Gestion des paquetages ..................................................................................................................169
Le gestionnaire de paquetages rpm ......................................................................................169
Le gestionnaire de paquetages apt........................................................................................170
Le gestionnaire de paquetages pkgtool.................................................................................172
Notion de niveau d’exécution et amorçage du système .................................................................172
Maintenance des systèmes de fichiers............................................................................................175
Création des systèmes de fichiers .........................................................................................175
Montage des systèmes de fichiers.........................................................................................176
Démontage des systèmes de fichiers ....................................................................................178
vi
Vérification des systèmes de fichiers....................................................................................179
Configuration du montage des systèmes de fichiers.............................................................182
Montage des systèmes de fichiers à la demande ..................................................................185
Gestion des volumes ......................................................................................................................188
Gestion des fichiers images ..................................................................................................188
Agrégation de volumes.........................................................................................................189
Chiffrement des systèmes de fichiers ...................................................................................191
Configuration des terminaux virtuels .............................................................................................192
Configuration de la console............................................................................................................195
Pages de codes et Unicode....................................................................................................195
Principe de fonctionnement du clavier .................................................................................196
Principe de fonctionnement de l’écran de la console ...........................................................199
Configuration du clavier .......................................................................................................201
Définition de scancodes ..............................................................................................201
Définition d’un plan de clavier ...................................................................................204
Modification des paramètres du clavier ......................................................................208
Choix de la police de caractères ...........................................................................................209
Configuration des paramètres du terminal............................................................................210
Description des terminaux....................................................................................................211
Paramétrage des applications................................................................................................215
Configuration du clavier pour la bibliothèque readline ..............................................215
Configuration du clavier pour vi .................................................................................216
Configuration du clavier pour less ..............................................................................219
Configuration de la souris.....................................................................................................221
Configuration de l’imprimante.......................................................................................................222
Concepts de base de l’impression sous Unix .......................................................................223
Le système d’impression LPRng..........................................................................................223
Le mécanisme des filtres APSFILTER .......................................................................223
Installation des filtres et configuration des files d’impression ....................................225
Commandes d’impression...........................................................................................226
Description du fichier /etc/printcap.............................................................................226
Le système d’impression CUPS ...........................................................................................227
Le mécanisme des filtres de CUPS .............................................................................228
Configuration d’une imprimante CUPS......................................................................229
Les fichiers de configuration de CUPS .......................................................................229
Configuration du lancement automatique des tâches .....................................................................232
Gestion de l’énergie .......................................................................................................................234
Généralités sur la gestion de l’énergie..................................................................................234
Configuration de la gestion de l’énergie...............................................................................234
Le démon ACPI ....................................................................................................................236
7. Notions de compilation et configuration du noyau .........................................................................239
Notions de base ..............................................................................................................................239
Définition des termes............................................................................................................239
Processus de génération........................................................................................................243
Compilation de GCC......................................................................................................................245
Prérequis ...............................................................................................................................246
Installation des sources.........................................................................................................246
vii
Configuration........................................................................................................................247
Compilation ..........................................................................................................................248
Installation de GCC ..............................................................................................................248
Compilation du noyau Linux .........................................................................................................249
Installation des sources de Linux .........................................................................................250
Choix des options de configuration du noyau ......................................................................251
Compilation et installation du noyau....................................................................................252
Compilation et installation des modules...............................................................................253
8. Configuration du matériel et des périphériques .............................................................................255
Généralités sur le support matériel sous Linux ..............................................................................255
Modules du noyau ................................................................................................................255
Chargement et déchargement des modules.................................................................255
Options des modules ...................................................................................................256
Options des périphériques intégrés au noyau..............................................................258
Les fichiers spéciaux de périphériques .................................................................................259
Généralités ..................................................................................................................259
Le système de fichiers virtuel udev.............................................................................259
Présentation .......................................................................................................260
Principe de fonctionnements de udev................................................................261
Identification et chargement des pilotes de périphérique ..................................263
Chargement des firmwares ................................................................................264
Création des fichiers spéciaux de périphériques ...............................................265
Persistance des fichiers spéciaux de périphériques ...........................................266
Notification des applications utilisateurs...........................................................268
Initialisation du système....................................................................................269
Gestion statique des fichiers spéciaux de périphériques .............................................269
Configuration des périphériques de masse.....................................................................................272
Configuration des périphériques SCSI .................................................................................272
Configuration des disques durs IDE .....................................................................................273
Installation d’un graveur de CD/DVD..................................................................................276
Notions de base sur le gravage sous Linux .................................................................276
Configuration du noyau...............................................................................................276
Configuration des modules du noyau..........................................................................278
Installation des logiciels de gravage ...........................................................................278
Utilisation des logiciels de gravage ............................................................................279
Configuration des cartes filles ........................................................................................................282
Généralités sur les cartes ISA, Plug And Play et PCI ..........................................................283
Configuration des cartes son.................................................................................................286
Fonctionnalités du matériel.........................................................................................286
Configuration du noyau...............................................................................................287
Configuration des modules du noyau..........................................................................288
Ajustage des paramètres audio avec ALSA................................................................290
Fichiers MIDI et synthétiseurs logiciels .....................................................................292
Installation d’une carte graphique 3D ..................................................................................293
Installation d’une carte d’acquisition vidéo .........................................................................295
Configuration des cartes réseau ............................................................................................298
Configuration des adaptateurs Wifi ......................................................................................298
viii
Configuration des ports de communication ...................................................................................303
Prise en charge des périphériques ISA standards .................................................................304
Configuration du port parallèle ...................................................................................304
Configuration des ports série ......................................................................................305
Installation des périphériques USB ......................................................................................307
Installation des périphériques IEEE1394 .............................................................................308
Configuration du noyau...............................................................................................309
Installation des bibliothèques complémentaires .........................................................310
9. Configuration du réseau....................................................................................................................312
Notions de réseau TCP/IP ..............................................................................................................312
Généralités sur les réseaux ...................................................................................................312
Le protocole IP .....................................................................................................................313
Le protocole TCP .................................................................................................................320
Les protocoles de haut niveau ..............................................................................................322
Configuration du réseau sous Linux...............................................................................................323
Configuration statique des interfaces réseau ........................................................................323
Définition des règles de routage ...........................................................................................325
Définition du nom de la machine..........................................................................................327
Résolution des noms de domaine .........................................................................................327
Utilisation des protocoles DHCP et BOOTP........................................................................329
Autoconfiguration des clients DHCP et BOOTP........................................................330
Configuration d’un client DHCP au niveau utilisateur ...............................................330
Définition des protocoles de haut niveau..............................................................................332
Les super-démons inetd et xinetd .........................................................................................333
Le super-démon inetd .................................................................................................333
Le super-démon xinetd ...............................................................................................334
Configuration de la connexion à Internet .......................................................................................339
Le protocole PPP ..................................................................................................................339
Création d’une connexion à Internet ....................................................................................341
Connexion à l’ADSL ............................................................................................................346
Les autres outils de connexion..............................................................................................349
Configuration d’un cache de DNS........................................................................................349
Installation d’un proxy HTTP ..............................................................................................351
Pare-feu et partages de connexion à Internet .................................................................................355
Mécanismes de filtrage du noyau .........................................................................................356
Translations d’adresses et masquerading .............................................................................358
Trajet des paquets dans le code de Netfilter .........................................................................359
Configuration du noyau et installation des outils .................................................................360
Utilisation d’iptables ............................................................................................................362
Manipulation des chaînes............................................................................................362
Manipulation des règles ..............................................................................................363
Exemple de règles.................................................................................................................364
Exemple de règles de filtrage ......................................................................................364
Exemple de partage de connexion à Internet ..............................................................367
Configuration des clients ......................................................................................................369
Configuration de la sécurité du réseau ...........................................................................................370
Limitation des services et des accès .....................................................................................371
ix
Réduction du nombre des services..............................................................................371
Définition de règles de contrôle d’accès .....................................................................372
Restrictions d’accès avec tcpd...........................................................................372
Restrictions d’accès avec xinetd........................................................................374
Contrôle des utilisateurs au niveau des services .........................................................374
Chiffrement des communications.........................................................................................375
Principes de base de cryptographie.............................................................................376
Utilisation de SSH ......................................................................................................379
Principes de base de l’authentification SSH......................................................380
Compilation et installation d’OpentSSH...........................................................381
Configuration d’OpenSSH côté serveur ............................................................382
Utilisation d’OpenSSH côté client ....................................................................384
Création d’un tunnel SSH .................................................................................386
Utilisation d’IPSec ......................................................................................................387
Fonctionnement d’IPSec ...................................................................................387
Configuration manuelle d’IPSec en mode transport .........................................388
Configuration manuelle d’IPSec en mode tunnel..............................................391
Autoconfiguration avec ISAKMP .....................................................................393
Configuration des fonctions serveur...............................................................................................397
Paramétrage des connexions extérieures ..............................................................................397
Configuration des liaisons PPP.............................................................................................399
Liaison de deux ordinateurs par un câble série ....................................................................403
Configuration d’un serveur DHCP .......................................................................................404
Systèmes de fichiers en réseau .......................................................................................................405
Installation d’un serveur de fichiers NFS .............................................................................406
Configuration d’un client NFS .............................................................................................409
Installation d’un serveur de fichiers SMB ............................................................................410
Configuration d’un client SMB ............................................................................................419
10. Installation de XWindow.................................................................................................................423
Généralités sur XWindow ..............................................................................................................423
Installation de [Link].......................................................................................................................426
Configuration de [Link]...................................................................................................................427
Génération automatique du fichier [Link] .......................................................................428
Utilisation de xorgconfig ......................................................................................................429
Utilisation de xorgcfg ...........................................................................................................432
Configuration en mode graphique...............................................................................432
Configuration en mode texte.......................................................................................435
Description du fichier [Link]...........................................................................................437
Structure générale du fichier [Link].......................................................................437
Section « Files »..........................................................................................................439
Section « ServerFlags » ..............................................................................................440
Section « Module » .....................................................................................................440
Section « InputDevice »..............................................................................................441
Sections « Device ».....................................................................................................443
Sections « Monitor »...................................................................................................444
Sections « Modes » .....................................................................................................453
Sections « Screen » .....................................................................................................454
x
Sections « ServerLayout » ..........................................................................................455
Informations utilisées lors du démarrage de [Link]...............................................................457
Utilisation de xvidtune .........................................................................................................457
Utilisation du pilote frame buffer du noyau ...................................................................................458
Configuration du noyau et installation du pilote ..................................................................459
Configuration du serveur X ..................................................................................................460
Configuration des terminaux X ......................................................................................................461
Principe de fonctionnement de xdm .....................................................................................462
Configuration de xdm ...........................................................................................................462
Serveurs X locaux .......................................................................................................463
Serveurs X utilisant XDMCP......................................................................................464
Paramétrage du serveur X pour utiliser le protocole XDMCP ...................................467
Fichiers d’initialisation de sessions ............................................................................467
Paramétrage des terminaux X...............................................................................................468
La commande xset ......................................................................................................469
Configuration de la disposition du clavier ..................................................................470
Paramétrage des applications et ressources X................................................................................472
Gestion de la sécurité sous XWindow............................................................................................475
La commande xhost..............................................................................................................476
La commande xauth .............................................................................................................476
Gestion des polices de caractères...................................................................................................477
Gestion des polices de caractères sous XWindow................................................................478
Installation des polices Truetype ..........................................................................................480
Configuration du serveur X.........................................................................................481
Configuration des polices Truetype pour l’impression ...............................................481
Conversion des polices Truetype en polices Adobe de Type 42 .......................482
Installation des polices Truetype pour GhostScript ..........................................483
Configuration d’un serveur de polices..................................................................................484
Problèmes classiques rencontrés ....................................................................................................486
11. Conclusion ........................................................................................................................................488
A. Options de configuration du noyau .................................................................................................489
Menu « General setup » .................................................................................................................489
Sous-menu « Configure standard kernel features (for small systems) » ..............................491
Menu « Loadable module support » ..............................................................................................493
Menu « Block layer ».....................................................................................................................493
Sous-menu « IO Schedulers » ..............................................................................................494
Menu « Processor type and features » ...........................................................................................494
Sous-menu « Firmware Drivers ».........................................................................................500
Menu « Power management options (ACPI, APM) »....................................................................501
Menu « Bus options (PCI, PCMCIA, EISA, MCA, ISA) »...........................................................503
Sous-menu « PCCARD (PCMCIA/CardBus) support » ......................................................504
Sous-menu « PCI Hotplug Support » ...................................................................................505
Menu « Executable file formats / Emulations » .............................................................................505
Menu « Networking » ....................................................................................................................505
Menu « Networking options » ..............................................................................................505
Sous-menu « IP: Virtual Server Configuration » ........................................................511
Sous-menu « Network packet filtering (replace ipchains) » .......................................511
xi
Sous-menu « Core Netfilter Configuration ».....................................................511
Sous-menu « IP: Netfilter Configuration »........................................................515
Sous-menu « IPv6: Netfilter Configuration »....................................................518
Sous-menu « DECnet: Netfilter Configuration » ..............................................519
Sous-menu « Bridge: Netfilter Configuration » ................................................519
Sous-menu « DCCP Configuration (EXPERIMENTAL) »........................................519
Sous-menu « SCTP Configuration (EXPERIMENTAL) ».........................................519
Sous-menu « TIPC Configuration (EXPERIMENTAL) »..........................................519
Sous-menu « QoS and/or fair queueing » ...................................................................520
Sous-menu « Network testing »..................................................................................520
Menu « Amateur Radio support » ........................................................................................520
Sous-menu « AX.25 network device drivers » ...........................................................520
Menu « IrDA (infrared) subsystem support » ......................................................................520
Sous-menu « Infrared-port device drivers »................................................................520
Menu « Bluetooth sybsystem support » ...............................................................................521
Sous-menu « Bluetooth device drivers » ....................................................................521
Option « RxRPC session socket » ........................................................................................522
Menu « Wireless » ................................................................................................................522
Option « RF switch subsystem support » .............................................................................523
Option « Plan 9 Resource Sharing Support (9P2000) (Experimental) »..............................524
Device Drivers................................................................................................................................524
Menu « Generic Driver Options » ........................................................................................524
Menu « Connector - unified userspace <-> kernelspace linker » .........................................525
Menu « Memory Technology Devices (MTD) »..................................................................525
Menu « Parallel port support » .............................................................................................525
Menu « Plug and Play support »...........................................................................................526
Menu « Block devices » .......................................................................................................526
Sous-menu « Misc devices » ................................................................................................529
Menu « ATA/ATAPI/MFM/RLL support » ..........................................................................530
Menu « SCSI device support » .............................................................................................532
Sous-menu « SCSI Transport »...................................................................................534
Sous-menu « SCSI low-level drivers » .......................................................................534
Sous-menu « PCMCIA SCSI adapter support » .........................................................534
Menu « Serial ATA (prod) and Parallel ATA (experimental) drivers » ................................534
Menu « Multi-device support (RAID and LVM)..................................................................535
Menu « Fusion MPT device support » .................................................................................536
Menu « IEEE 1394 (FireWire) support (EXPERIMENTAL) » ...........................................537
Menu « I2O device support » ...............................................................................................538
Configuration des interfaces réseau......................................................................................539
Sous-menu « ARCnet devices » .................................................................................542
Sous-menu « PHY device support » ...........................................................................542
Sous-menu « Ethernet (10 or 100Mbit) » ...................................................................542
Sous-menu « Ethernet (1000 Mbit) »..........................................................................542
Sous-menu « Ethernet (10000 Mbit) »........................................................................542
Sous-menu « Token Ring devices (depends on LLC=y) » .........................................543
Sous-menu « Wireless LAN » ....................................................................................543
Sous-menu « USB Network Adapters » .....................................................................543
Sous-menu « PCMCIA network device support »......................................................543
xii
Sous-menu « Wan interfaces »....................................................................................543
Sous-menu « ATM drivers » .......................................................................................544
Menu « ISDN subsystem »...................................................................................................545
Ancienne interface ISDN4Linux ................................................................................545
Gestionnaires de périphériques ISDN4Linux ...................................................545
Interface CAPI ............................................................................................................546
Menu « Telephony Support » ...............................................................................................546
Menu « Input device support » .............................................................................................547
Sous-menu « Hardware I/O ports » ............................................................................548
Menu « Character devices » .................................................................................................549
Sous-menu « Serial drivers » ......................................................................................552
Sous-menu « IPMI » ...................................................................................................553
Sous-menu « Watchdog cards » ..................................................................................553
Sous-menu « PCMCIA character device support » ....................................................553
Sous-menu « TPM Hardware support »......................................................................553
Sous-menu « I2C support » ..................................................................................................554
Sous-menu « SPI support » ..................................................................................................554
Sous-menu « Dallas’s 1-wire bus » ......................................................................................555
Sous-menu « Power supply class support »..........................................................................555
Sous-menu « Hardware Monitoring support » .....................................................................555
Sous-menu « Multifunction device drivers »........................................................................555
Menu « Multimedia devices » ..............................................................................................555
Sous-menu « Video Capture Adapters ».....................................................................556
Sous-menu « Radio Adapters »...................................................................................556
Menu « Graphics support » ..................................................................................................556
Menu « Sound »....................................................................................................................557
Menu « HID Devices ».........................................................................................................559
Menu « USB support » .........................................................................................................559
Menu « MMC/SD Card support » ........................................................................................561
Menu « LED devices » .........................................................................................................561
Menu « InfiniBand support »................................................................................................561
Menu « EDAC - error detection and reporting (RAS) (EXPERIMENTAL) ».....................561
Menu « Real Time Clock »...................................................................................................562
Menu « DMA Engine support » ...........................................................................................562
Menu « Auxiliary Display support » ....................................................................................562
Menu « Virtualization »........................................................................................................562
Menu « Userspace I/O » .......................................................................................................562
Menu « Linux hypervisor example code (NEW) » ..............................................................563
Menu « File systems » ...................................................................................................................563
Sous-menu « CDROM/DVD Filesystems » .........................................................................565
Sous-menu « DOS/FAT/NT Filesystems »...........................................................................565
Sous-menu « Pseudo filesystems ».......................................................................................566
Sous-menu « Miscelaneous filesystems » ............................................................................566
Sous-menu « Network File Systems »..................................................................................566
Sous-menu « Partition Types » .............................................................................................568
Sous-menu « Native Language Support » ............................................................................568
Menu « Instrumentation Support » ................................................................................................569
Menu « Kernel hacking » ...............................................................................................................569
xiii
Menu « Security options » .............................................................................................................573
Menu « Cryptographic options » ...................................................................................................574
Menu « Library routines » .............................................................................................................574
B. Compilation et mise à jour des principaux composants du système ............................................575
Compilation de make 3.81 .............................................................................................................575
Compilation des binutils 2.17.0 .....................................................................................................575
Compilation de la bibliothèque C 2.5.0 .........................................................................................576
Compilation de OpenSSL ..............................................................................................................579
Compilation de MESA 6.5.2..........................................................................................................580
Compilation de [Link] 7.3.0............................................................................................................581
Compilation de Lesstif 0.95.0 ........................................................................................................585
Compilation de KDE 3.5.7.............................................................................................................585
Compilation de Gnome 2.20.0 .......................................................................................................589
Récupération des sources .....................................................................................................590
Compilation des bibliothèques générales .............................................................................590
Compilation des modules de base d’interfaçage avec les langages......................................594
Compilation des bibliothèques de Gnome............................................................................595
Compilation de Gnome.........................................................................................................597
Compilation des bindings de Gnome ...................................................................................601
Compilation des outils de développements complémentaires..............................................601
Compilation de Samba 3.0.23 ........................................................................................................602
C. Formulaire pour la création des lignes de mode de [Link] ............................................................604
D. GNU Free Documentation License..................................................................................................608
E. Licence de documentation libre GNU .............................................................................................613
xiv
Liste des tableaux
4-1. Caractéristiques des liens physiques et symboliques .........................................................................89
4-2. Hiérarchie standard du système de fichiers ........................................................................................91
5-1. Groupes de pages de man.................................................................................................................101
5-2. Principaux signaux Unix ..................................................................................................................120
5-3. Variables d’environnements courantes .............................................................................................132
5-4. Tests sur les fichiers..........................................................................................................................148
9-1. Plages d’adresses IP réservées pour un usage personnel .................................................................316
10-1. Fréquence maximale des moniteurs ...............................................................................................449
10-2. Numéros des modes graphiques VESA..........................................................................................460
xv
Remarques de l’auteur
Il se peut que certaines informations fournies dans ce livre soient spécifiques à ma configuration maté-
rielle et logicielle. À titre indicatif, j’utilise une machine fonctionnant sous Linux Slackware 12.0, et j’ai
contrôlé les informations sur une Debian Etch. En particulier, il est connu que la Slackware n’utilise pas,
par défaut, la notion de niveaux d’exécution. En revanche, elle n’utilise que les versions officielles des
logiciels, et sa configuration reste simple et compréhensible.
Je me suis toutefois efforcé de rendre ce document générique et indépendant de ma configuration. J’espère
donc que la plupart des informations fournies ici s’appliqueront à la plupart des configurations matérielles
et à toutes les distributions Linux, bien que je ne puisse pas le garantir. Les informations données dans
ce livre permettront donc sans doute aux personnes qui n’ont jamais vu Linux de débroussailler un peu le
terrain, et à celles qui utilisent déjà Linux de comprendre en profondeur comment leur système fonctionne.
Je remercie d’avance les gens qui pourront m’envoyer des remarques concernant les imprécisions, voire les
horreurs et les âneries que j’aurais pu écrire. Plus je recevrai de critiques constructives et de propositions,
plus ce document a de chances de s’améliorer. Cependant, si vous prenez le temps de m’envoyer les
remarques et les erreurs que vous avez pu détecter, je vous saurais gré de vérifier au préalable qu’elles
sont toujours d’actualité dans la dernière version de ce document, que vous pourrez trouver dans différents
formats de fichiers sur mon site Web ([Link]
Vous pouvez contribuer au maintien et au support de mes documents libres sur la page de support de mon
site Web, à l’adresse [Link] Si vous estimez que ce travail
mérite salaire, n’hésitez pas à m’offir un pot, c’est facile et sécurisé (n’envoyez pas de pizza par La Poste
SVP).
xvi
Chapitre 1. Introduction
Ce livre est un guide d’installation et d’administration du système d’exploitation GNU/Linux pour ordi-
nateur de type PC.
L’objet de ce document est donc 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.
À ces composants de base s’ajoutent des composants annexes, que l’on appelle « périphériques ». Le
clavier, la souris, les cartes graphiques, son et réseau en sont des exemples.
Ce matériel n’est toutefois généralement pas exploitable tel quel. Il faut pour cela utiliser des programmes
dédiés, qui permettent de l’utiliser. L’ensemble de ces programmes constituent ce que l’on appelle le « sys-
tème d’exploitation ». C’est au dessus de ce système que viennent se placer les programmes utilisateurs,
que l’on appelle également les « applications », ou « logiciels ».
La fonction première d’un système d’exploitation est donc de gérer l’ordinateur, et de permettre aux
logiciels de s’exécuter. Toutefois, les systèmes d’exploitation fournissent généralement une abstraction
du matériel pour les programmes, afin que ceux-ci n’aient pas à se soucier des spécificités du matériel
sur lequel ils sont installés. Par exemple, il est possible de simuler certaines fonctions absentes, telles que
les fonctions 3D des cartes graphiques modernes, ou encore une interface réseau sur un ordinateur qui
n’en dispose pas. Ainsi, les programmes qui utilisent ces fonctionnalités peuvent s’exécuter correctement,
mais avec des restrictions et des performances moindres. L’essentiel est donc, dans ce cas, de fournir une
interface de programmation uniforme, quel que soit le matériel sous-jacent. Le système d’exploitation
apparaît donc comme une machine virtuelle de haut niveau pour les programmes.
Il est évident que le système doit savoir se montrer le plus discret possible, car le but final n’est pas de
gérer l’ordinateur mais bel et bien de s’en servir. Toutefois, la mode actuelle est de faire des systèmes de
1
Chapitre 1. Introduction
plus en plus complexes, et de plus en plus visibles, et par conséquent de moins en moins discrets (suivez
mon regard...). De nos jours, la notion de système d’exploitation englobe donc de plus en plus l’ensemble
des logiciels permettant d’utiliser le matériel et les logiciels d’application courants. Mais bien entendu, il
ne s’agit là que d’un abus de langage, dont le grand public n’a pas forcément pris conscience.
2
Chapitre 1. Introduction
ne pourrez donc pas réaliser ce que vous faisiez avec ces applications Windows dont il n’existe pas encore
d’équivalent sous Linux. C’est par exemple le cas pour les applications de gestion et de paie utilisées par
nombre de professionnels indépendants ou par des PME.
Les systèmes Linux se présentent généralement sous la forme de « distributions », que l’ont peut acheter
dans le commerce ou télécharger sur Internet (de manière tout à fait légale, comme nous le verrons dans le
chapitre suivant). Une distribution n’est rien d’autre que le regroupement de l’ensemble des programmes
qui constituent le système d’exploitation et des logiciels les plus utiles et les plus connus pour Linux.
Une distribution Linux est donc réellement bien plus qu’un système d’exploitation : c’est un tout qui vous
permettra réellement d’utiliser complètement votre ordinateur, généralement sans même à avoir à insaller
de logiciels complémentaires ! De ce point de vue, Linux est beaucoup plus fonctionnel que les autres
systèmes d’exploitation propriétaires, qui sont en pratique livrés « nus ».
Pourquoi Linux ?
Que les choses soient claires : l’installation de Linux peut être 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 ob-
tenir 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 plu-
part 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 permet-
tront 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 ordina-
teur 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.
Il faut donc ê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
3
Chapitre 1. Introduction
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 :
Plan du document
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, et présente
l’installation de trois distributions Linux représentatives de ce qui existe actuellement. À 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 troisième partie présente un peu le système et vous aidera à faire vos premiers pas avec Linux, et vous
donnera les notions de base qui vous permettrons de mieux comprendre la philosophie du système.
La quatrième partie constitue un petit cours d’Unix pour les nouveaux utilisateurs de ce type de système.
Sa lecture en est fortement recommandée, du moins si vous voulez avoir un aperçu des possibilités de
Linux et de l’ensemble de ses fonctionnalités.
La cinquième partie traite des opérations d’administration et de maintenance de base des systèmes
Unix. Cette partie est en quelque sorte la suite de la quatrième partie, où les notions plus spécifiques à
l’administration de la machine sont décrites.
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.
4
Chapitre 1. Introduction
La septième partie présente la manière dont la configuration du matériel est réalisée sous Linux, ainsi que
la manière dont le système fonctionne en interne. Elle vous permettra de configurer et d’optimiser votre
système pour votre matériel.
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 le fonctionnement et la procédure d’installation de XWin-
dow, l’environnement graphique de Linux. Cet environnement est particulièrement riche et fonctionnel, et
mérite donc que l’on s’y attarde également.
5
Chapitre 2. GNU, Linux et les logiciels libres
Vous entendrez souvent parler de la licence « GPL », du projet « GNU », de la « Free Software Founda-
tion » et des logiciels libres dans le monde de Linux. Pour bien comprendre ce que sont les logiciels libres
et la Free Software Foundation, et ce que signifie la licence GPL, il est nécessaire d’en faire une brève
présentation.