debian reference

Upload: matthieu-fonzy-rousseau

Post on 18-Jul-2015

144 views

Category:

Documents


1 download

TRANSCRIPT

Guide de rfrence pour DebianOsamu Aoki Coordinateur de traduction en Franais : Guillaume Erbs Auteurs page 163

CVS, Sun, 13 Oct 2002 22 :40 :13 -0600

RsumCe Guide de rfrence pour Debian (http://qref.sourceforge.net/) se propose de donner une vue gnrale du systme Debian comme guide de lutilisateur aprs installation. Cela couvre beaucoup daspects de ladministration systme laide dexemples de commandes shell. Des didacticiels sur les bases, des astuces, et dautres informations sont fournies sur des sujets comme les concepts fondamentaux du systme Debian, des astuces dinstallation, la gestion des paquets Debian, le noyau Linux sous Debian, la conguration du systme, la conguration dune passerelle, les diteurs de texte, CVS, la programmation, et GnuPG pour des non-dveloppeurs.

CopyrightCopyright 2001-2002 by Osamu Aoki Copyright (Chapter 2) 1996-2001 by Software in the Public Interest Ce document peut tre utilis selon les termes de la Licence Publique Gnrale de GNU version 2 ou suivante. (http://www.gnu.org/copyleft/gpl.html) Il est permis de produire et distribuer des copies conformes de ce document condition que la prsente notice de copyright et la prsente notice de permission soient prserves sur toutes les copies. Il est permis de copier et distribuer des versions modies de ce document selon les conditions dune copie conforme, condition que le travail driv rsultant soit entirement distribu selon les termes dune notice de permission identique celle-ci. Il est permis de copier et distribuer des traductions de ce document dans dautres langues, selon les conditions pour versions modies ci-dessus, sauf que cette notice de permission peut tre incluse sous forme dune traduction approuve par la Free Software Foundation la place de lAnglais original.

i

Table des matires1 Prface 1.1 1.2 1.3 1.4 2 Document ofciel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conventions du document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conguration de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fondements de la distribution Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 2 2 3 5 5 5 6 6 7 7 8 8 8 9 9

Notions fondamentales sur Debian 2.1 Les archives Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 Structure de rpertoires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Distributions Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . La distribution stable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . La distribution testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . La distribution unstable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . La distribution frozen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Les noms de code de la distribution Debian . . . . . . . . . . . . . . . . . . . . Noms de code utiliss par le pass . . . . . . . . . . . . . . . . . . . . . . . . . Source dinspiration pour les noms de code . . . . . . . . . . . . . . . . . . . .

2.1.10 Le rpertoire pool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.1.11 Notes historiques sur sid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.12 Paquets tlchargs dans incoming . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.13 Rcuprer un paquet ancien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

TABLE DES MATIRES

ii

2.1.14 Sections architectures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.1.15 Le code source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2 Systme de gestion des paquets Debian . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.2.7 2.2.8 2.2.9 Vue gnrale des paquets Debian . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Format des paquets Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Conventions de nommage pour les chiers de paquets Debian . . . . . . . . . 13 Prservation de la conguration locale . . . . . . . . . . . . . . . . . . . . . . . 13 Scripts de maintenance Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Priorit des paquets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Paquets virtuels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Dpendances des paquets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Signication de pre-depends . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.2.10 Etat dun paquet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.2.11 Garder des paquets lors dune mise jour . . . . . . . . . . . . . . . . . . . . . 17 2.2.12 Paquets sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.2.13 Construire des paquets binaires partir dun paquet source . . . . . . . . . . 18 2.2.14 Crer de nouveaux paquets Debian . . . . . . . . . . . . . . . . . . . . . . . . 19 2.3 Mettre jour un systme Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.3.1 2.3.2 2.3.3 2.3.4 2.3.5 2.3.6 2.3.7 2.3.8 2.4 Mthodes de mise jour dun systme Debian . . . . . . . . . . . . . . . . . . 20 Vue gnrale des outils de gestion de paquets . . . . . . . . . . . . . . . . . . 20 dpkg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 APT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 dselect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Mise jour dun systme en marche . . . . . . . . . . . . . . . . . . . . . . . . 21 Fichiers darchive .deb tlchargs et sauvegards . . . . . . . . . . . . . . . 21 Garder une trace des mises jour . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Le processus de dmarrage de Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.4.1 2.4.2 Le programme init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 Niveaux de fonctionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

TABLE DES MATIRES

iii

2.4.3 2.5 2.6 2.7

Personnaliser le processus de dmarrage . . . . . . . . . . . . . . . . . . . . . 23

Support de la diversit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Internationalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Debian et le noyau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 Compiler un noyau avec des sources non Debian . . . . . . . . . . . . . . . . 25 Outils pour compiler un noyau personnalis . . . . . . . . . . . . . . . . . . . 25 Chargeurs de remplacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Disquettes de dmarrage personnalises . . . . . . . . . . . . . . . . . . . . . 26 Dispositions spciales pour manipuler les modules . . . . . . . . . . . . . . . 26 Dsinstaller le paquet dun vieux noyau . . . . . . . . . . . . . . . . . . . . . . 26 29

3

Installation du systme Debian 3.1

Astuces gnrales sur linstallation du systme Linux . . . . . . . . . . . . . . . . . . 29 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 Compatibilit matrielle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Dterminer le matriel et les puces du PC . . . . . . . . . . . . . . . . . . . . . 30 Trouver le matriel du PC avec Debian . . . . . . . . . . . . . . . . . . . . . . 30 Trouver le matriel du PC avec dautres systmes dexploitation (SE) . . . . . 30 Le Mythe Lilo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Choix des disquettes de boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Nom dhte et IP utiliser pour le rseau local . . . . . . . . . . . . . . . . . . 32 Comptes utilisateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

3.1.10 Cration des systmes de chiers . . . . . . . . . . . . . . . . . . . . . . . . . . 33 3.1.11 Lignes directrices pour la mmoire DRAM . . . . . . . . . . . . . . . . . . . . 36 3.1.12 Espace de Swap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3.2 3.3 Conguration de Bash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 Conguration de la souris . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.3.1 3.3.2 Souris PS/2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Souris USB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

TABLE DES MATIRES

iv

3.4 3.5 3.6

Conguration NFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 Conguration Samba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 Conguration de limprimante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 3.6.1 3.6.2 lpr/lpd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 CUPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

3.7

Autres conseils de conguration de lhte . . . . . . . . . . . . . . . . . . . . . . . . . 42 3.7.1 3.7.2 3.7.3 3.7.4 3.7.5 3.7.6 3.7.7 Installer quelques paquets supplmentaires aprs linstallation . . . . . . . . 42 Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Conguration de base de CD-RW . . . . . . . . . . . . . . . . . . . . . . . . . 43 Grande capacit mmoire et arrt automatique . . . . . . . . . . . . . . . . . . 43 tranges problmes daccs certains sites web . . . . . . . . . . . . . . . . . 44 Conguration dune connexion RTC avec PPP . . . . . . . . . . . . . . . . . . 44 Autre conguration vrier dans /etc . . . . . . . . . . . . . . . . . . . . . 45 47

4

Didacticiels Debian 4.1 4.2

Sources dinformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 La console Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 4.2.1 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 4.2.7 Se connecter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 Ajouter un compte utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 Comment teindre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 dition en ligne de commande . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Commandes de base retenir . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Le systme X Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 Commandes importantes au clavier . . . . . . . . . . . . . . . . . . . . . . . . 50

4.3

Midnight Commander (MC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 4.3.1 4.3.2 4.3.3 4.3.4 Installer MC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Dmarrer MC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Gestionnaire de chiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Astuces en ligne de commande . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

TABLE DES MATIRES

v

4.3.5 4.3.6 4.3.7 4.3.8 4.4 5

diteur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 Visionneur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 Possibilits de dmarrage automatique . . . . . . . . . . . . . . . . . . . . . . 53 Systme de chiers FTP virtuel . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

tude approfondie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 55

Mise jour dune distribution 5.1 5.2 5.3 5.4

Prparation de la transition (potato vers woody) . . . . . . . . . . . . . . . . . . . . . 55 Mise jour vers Woody . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Conguration de Woody . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Amliorer le chier sources.list . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 59

6

Gestion des paquets Debian 6.1

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 6.1.1 6.1.2 Outils principaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 Outils pratiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

6.2

Commandes de survie Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 6.2.1 6.2.2 6.2.3 6.2.4 6.2.5 6.2.6 6.2.7 6.2.8 6.2.9 Installation de tches avec tasksel . . . . . . . . . . . . . . . . . . . . . . . . 60 Systme dinstallation avec APT . . . . . . . . . . . . . . . . . . . . . . . . . . 60 Systme de mise jour avec APT . . . . . . . . . . . . . . . . . . . . . . . . . . 61 Rechercher les bogues de Debian et demander de laide . . . . . . . . . . . . . 62 Rsolution de problmes de mise jour avec APT . . . . . . . . . . . . . . . . 63 Sauvetage avec dpkg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 Sauver un systme aprs avoir effac /var . . . . . . . . . . . . . . . . . . . . 64 Installer un paquet sur un systme qui ne dmarre plus . . . . . . . . . . . . . 65 Que faire si dpkg est cass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

6.3

Commandes nirvana de Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 6.3.1 6.3.2 Informations sur un chier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Informations sur un paquet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

TABLE DES MATIRES

vi

6.3.3 6.3.4 6.3.5 6.3.6 6.3.7 6.3.8 6.3.9

Recongurer les paquets installs . . . . . . . . . . . . . . . . . . . . . . . . . 67 Enlever et purger des paquets . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Garder de vieux paquets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 dselect conguration gnrale . . . . . . . . . . . . . . . . . . . . . . . . . 68 Supprimer les paquets du cache . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Enregistrer/copier la conguration du systme . . . . . . . . . . . . . . . . . 69 Porter un paquet vers le systme stable . . . . . . . . . . . . . . . . . . . . . 69

6.3.10 Archive locale de paquets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 6.3.11 Convertir ou installer un paquet non Debian . . . . . . . . . . . . . . . . . . . 71 6.3.12 Vrier les chiers de paquets installs . . . . . . . . . . . . . . . . . . . . . . 71 6.4 Autres particularits de Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 6.4.1 6.4.2 6.4.3 6.4.4 6.4.5 7 La commande dpkg-divert . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 Le paquet equivs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 Commandes de rechange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 init System-V et niveaux de fonctionnement . . . . . . . . . . . . . . . . . . 73 Services dsactivs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 75

Le noyau Linux et Debian 7.1

Recompilation du noyau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 7.1.1 7.1.2 Mthode Debian standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 Mthode classique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

7.2

Le noyau 2.4 modulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 7.2.1 7.2.2 7.2.3 7.2.4 7.2.5 PCMCIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 SCSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 Fonctions rseau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 Systme de chiers EXT3 ( > 2.4.17) . . . . . . . . . . . . . . . . . . . . . . . . 79 Support Realtek RTL-8139 dans le noyau 2.4 . . . . . . . . . . . . . . . . . . . 80

TABLE DES MATIRES

vii

8

Astuces Debian 8.1

81

Dmarrer le systme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 8.1.1 8.1.2 8.1.3 8.1.4 Jai oubli le mot de passe de root ! (1) . . . . . . . . . . . . . . . . . . . . . . 81 Jai oubli le mot de passe de root ! (2) . . . . . . . . . . . . . . . . . . . . . . 82 Je ne peux pas lancer le systme . . . . . . . . . . . . . . . . . . . . . . . . . . 82 Autres astuces avec linvite de dmarrage. . . . . . . . . . . . . . . . . . . . . 83

8.2

Enregistrer les activits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 8.2.1 8.2.2 8.2.3 Enregistrer les activits du shell . . . . . . . . . . . . . . . . . . . . . . . . . . 84 Enregistrer les activits sous X . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 Enregistrer les changements aux chiers de conguration . . . . . . . . . . . 84

8.3

Copier et archiver un sous-rpertoire entier . . . . . . . . . . . . . . . . . . . . . . . . 85 8.3.1 8.3.2 8.3.3 8.3.4 8.3.5 8.3.6 Commandes de base pour copier un sous-rpertoire entier . . . . . . . . . . . 85 cp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 tar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 pax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 cpio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 afio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

8.4

Rcupration dun systme bloqu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 8.4.1 8.4.2 Tuer un processus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 ALT-SysRQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

8.5

Petites commandes utiles se rappeler . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 8.5.1 8.5.2 8.5.3 8.5.4 8.5.5 8.5.6 8.5.7 8.5.8 Pager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 Mmoire libre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Rgler lheure (BIOS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Rgler lheure (NTP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Comment dsactiver lcran de veille . . . . . . . . . . . . . . . . . . . . . . . 89 Chercher dans la base de donnes administrative . . . . . . . . . . . . . . . . 89 Dsactiver le son (beep) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 Messages derreur sur lcran de la console . . . . . . . . . . . . . . . . . . . . 90

TABLE DES MATIRES

viii

8.5.9

Rgler la console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

8.5.10 Remettre la console dans un tat sain . . . . . . . . . . . . . . . . . . . . . . . 91 8.5.11 Convertir des chiers texte DOS vers Unix . . . . . . . . . . . . . . . . . . . . 91 8.5.12 Modier des chiers grce aux expressions rationnelles . . . . . . . . . . . . . 91 8.5.13 Convertir un gros chier en plusieurs petits . . . . . . . . . . . . . . . . . . . 91 8.5.14 Bouts de scripts pour les tubes . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 8.5.15 Rcuprer du texte ou une archive de liste de diffusion partir dune page Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 8.5.16 Imprimer joliement une page Web . . . . . . . . . . . . . . . . . . . . . . . . . 92 8.5.17 Mesurer la dure dune commande . . . . . . . . . . . . . . . . . . . . . . . . 93 8.5.18 Commande nice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 8.5.19 Programmer des activits (cron, at) . . . . . . . . . . . . . . . . . . . . . . . 93 8.5.20 Changement de console avec screen . . . . . . . . . . . . . . . . . . . . . . . 94 8.5.21 Bases pour tester un rseau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 8.5.22 Vider les courriers lectroniques de la le locale . . . . . . . . . . . . . . . . . 96 8.5.23 Supprimer les courriers lectroniques gels de la le locale . . . . . . . . . . . 96 8.5.24 Supprimer le contenu dun chier . . . . . . . . . . . . . . . . . . . . . . . . . 97 8.5.25 Fichiers fantmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 8.5.26 chroot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 8.5.27 Monter une image de disque dur . . . . . . . . . . . . . . . . . . . . . . . . . . 98 8.5.28 Samba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 9 Congurer un systme Debian 9.1 99

Astuces sur linitialisation du systme . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 9.1.1 9.1.2 9.1.3 Personnaliser les scripts dinitialisation . . . . . . . . . . . . . . . . . . . . . . 99 Personnaliser le journal du systme . . . . . . . . . . . . . . . . . . . . . . . . 99 Optimisation de laccs au matriel . . . . . . . . . . . . . . . . . . . . . . . . 100

9.2

Contrle daccs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 9.2.1 Contrle daccs avec PAM et login . . . . . . . . . . . . . . . . . . . . . . . . 100

TABLE DES MATIRES

ix

9.2.2 9.2.3 9.2.4 9.2.5 9.2.6 9.3

Pourquoi GNU su ne supporte pas le groupe wheel . . . . . . . . . . . . . . . 101 Signication des groupes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 sudo un environnement de travail plus sr . . . . . . . . . . . . . . . . . . . 102 Contrle daccs aux dmons . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 Lightweight Directory Access Protocol . . . . . . . . . . . . . . . . . . . . . . 103

Graveur de CD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 9.3.1 9.3.2 9.3.3 9.3.4 9.3.5 9.3.6 9.3.7 9.3.8 9.3.9 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 Premire approche : modules + lilo . . . . . . . . . . . . . . . . . . . . . . . 104 Seconde approche : recompiler le noyau . . . . . . . . . . . . . . . . . . . . . . 105 tapes post-conguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 Image de CD (bootable) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 Graver un CD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 Crer limage dun CD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 Images de CD Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 Systme de sauvegarde sur CD-R . . . . . . . . . . . . . . . . . . . . . . . . . 108

9.3.10 Copier un CD audio sur un CD-R . . . . . . . . . . . . . . . . . . . . . . . . . 108 9.4 Le programme X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 9.4.1 9.4.2 9.4.3 9.4.4 9.4.5 9.4.6 9.4.7 9.4.8 9.4.9 Serveur X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 Client X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 Connexion TCP/IP X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 Connexion X distante : xhost . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 Connexion X distante : ssh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 xterm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 Devenir root sous X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 Polices TrueType dans X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 Navigateur Web (graphique) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

9.4.10 CJK et X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 9.5 SSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 9.5.1 Bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

TABLE DES MATIRES

x

9.5.2 9.5.3 9.5.4 9.5.5 9.5.6 9.6

Redirection de port tunnel SMTP/POP3 . . . . . . . . . . . . . . . . . . . . . 117 Se connecter avec moins de mots de passe . . . . . . . . . . . . . . . . . . . . 117 Clients SSH trangers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 SSH agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 Problmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

Logiciels de courrier lectronique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 9.6.1 9.6.2 9.6.3 9.6.4 9.6.5 Agent de transport de courrier lectronique (Exim) . . . . . . . . . . . . . . . 119 Tout rcuprer pour les adresses e-mail non existantes (Exim) . . . . . . . . . 119 Utilitaire de courrier lectronique (fetchmail) . . . . . . . . . . . . . . . . . . . 120 Utilitaire de courrier lectronique (procmail) . . . . . . . . . . . . . . . . . . . 120 Agent pour utilisateur de courrier lectronique (Mutt) . . . . . . . . . . . . . 121

9.7

Localisation et support des langues nationales . . . . . . . . . . . . . . . . . . . . . . 121 9.7.1 9.7.2 9.7.3 9.7.4 9.7.5 Support des langues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 Locales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 Activer le support des locales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 Activer une locale particulire . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 Aprs locale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 125

10 Construire une passerelle avec Debian

10.1 Conguration rseau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 10.1.1 Conguration de la passerelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 10.1.2 IP-masquerade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 10.1.3 Points principaux de la conguration rseau pour une passerelle . . . . . . . 127 10.2 Grer plusieurs connexions lInternet . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 11 Editeurs 129

11.1 Editeurs populaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 11.2 Editeurs de sauvetage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 11.3 Emacs et Vim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

TABLE DES MATIRES

xi

11.3.1 Conseils pour Vim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 11.3.2 Conseils pour Emacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 11.3.3 Dmarrer lditeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 11.3.4 Rsum des commandes de lditeur (Emacs, Vim) . . . . . . . . . . . . . . . 131 11.3.5 Conguration de Vim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 11.3.6 Ctags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 11.3.7 Convertir un cran avec syntaxe en surbrillance en un source HTML . . . . . 134 11.3.8 Ecran scind avec vim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 12 CVS 137

12.1 Installation dun serveur CVS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 12.2 Exemples de sessions CVS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 12.2.1 CVS anonyme (tlchargement seulement) . . . . . . . . . . . . . . . . . . . . 138 12.2.2 Utilisation dun serveur CVS local . . . . . . . . . . . . . . . . . . . . . . . . . 138 12.2.3 Utilisation dun pserver CVS distant . . . . . . . . . . . . . . . . . . . . . . . . 138 12.2.4 Utilisation dun CVS distant avec ssh . . . . . . . . . . . . . . . . . . . . . . . 138 12.2.5 Crer une nouvelle archive CVS . . . . . . . . . . . . . . . . . . . . . . . . . . 138 12.2.6 Travailler avec CVS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 12.2.7 Exportation de chiers partir de CVS . . . . . . . . . . . . . . . . . . . . . . 140 12.2.8 Administrer CVS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 12.3 Rsoudre les problmes de CVS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 12.3.1 Permissions de chiers dans le dpt . . . . . . . . . . . . . . . . . . . . . . . 140 12.3.2 Bit dexcution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 12.4 Commandes CVS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 13 Programmation 143

13.1 O commencer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 13.2 BASH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 13.3 AWK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

TABLE DES MATIRES

xii

13.4 PERL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 13.5 PYTHON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 13.6 MAKE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 13.7 C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 13.7.1 Programme simple en C (gcc) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 13.7.2 Dboguer (gdb) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 13.7.3 Flex un meilleur Lex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 13.7.4 Bison un meilleur Yacc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 13.7.5 Autoconf uninstall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 13.8 SGML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 13.9 Paquetage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 14 GnuPG 153

14.1 Installer GnuPG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 14.2 Utiliser GnuPG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 14.3 Grer GnuPG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 14.4 Utilisation avec Mutt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 15 Support Debian 157

15.1 Rfrences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 15.2 Trouver le sens dun mot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 15.3 Systme de suivi des bogues Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 15.4 Listes de diffusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 15.5 Internet Relay Chat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 15.6 Moteurs de recherche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 15.7 Sites internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 A Annexe 163

A.1 Auteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 A.2 Garanties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164

TABLE DES MATIRES

xiii

A.3 Retour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 A.4 Format du document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 A.5 Labyrinthe de Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 A.6 Les citations Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166

TABLE DES MATIRES

xiv

1

Chapitre 1

PrfaceCe Guide de rfrence pour Debian (http://qref.sourceforge.net/) se propose de donner une vue gnrale du systme Debian comme guide de lutilisateur aprs installation. Le lecteur vis est quelquun qui veut lire des scripts shell. Je suppose que le lecteur a des bases sur les systmes de type Unix pour lire ce document. Jai pris la dcision de ne pas expliquer tout en dtail si cela peut tre trouv dans une page de manuel, une page info, ou un HOWTO. Plutt que de tout expliquer, jessaie de donner des informations pratiques plus directement en fournissant des squences de commandes exactes ou des scripts dexemple. Beaucoup des informations donnes consistent en rappels ou en pointeurs vers les rfrences ofcielles listes dans Rfrences page 157. Ceci partiellement parce que ce document a t dmarr en tant que Rfrence Rapide . Mon principe est de le garder court et simple. Pour une aide en vue dune maintenance urgente dun systme, rendez-vous Commandes de survie Debian page 60 immdiatement.

1.1

Document ofciel

La dernire version du document ofciel est dans larchive Debian dans le paquet debian-reference et est aussi disponible http://www.debian.org/doc/manuals/debian-reference/. La dernire version de dveloppement est http://qref.sourceforge.net/Debian/. Le projet est hberg http://qref.sourceforge.net/ o ce document est disponible au tlchargement dans les formats texte, HTML, PDF, SGML et PostScript.

Chapitre 1. Prface

2

1.2 Conventions du documentLe Guide de rfrence pour Debian procure de linformation par le biais de commandes simples en shell BASH. Voici les conventions utilises : # commande en compte ~root~ $ commande en compte utilisateur ... description de laction Voir BASH page 143 pour plus dinformation sur Bash. Rfrences : une page de manuel Unix est donne dans la forme bash(1). une page GNU TEXINFO est donne dans la forme info libc. un livre est donn dans la forme Le langage C. une URL est donne dans la forme http://www.debian.org/doc/manuals/debian-reference/. un chier est donn dans la forme /usr/share/doc/Debian/reference/. Les abrviations suivantes sont utilises : LDP : Linux Documentation Project (http://www.tldp.org/) DDP : Debian Documentation Project (http://www.debian.org/doc/) Dans ce document, seules des URL sont fournies pour les documents du LDP, mais ils peuvent aussi tre obtenus dans des paquets et installs dans /usr/share/doc/HOWTO/. Voir Rfrences page 157. Des exemples de scripts sont fournis dans le rpertoire des exemples (examples/) ; pour les chiers cachs, le prxe . est remplac par un _ .

1.3

Conguration de base

Si le systme est install avec le strict minimum comme paquets, asssurez-vous dexcuter les commandes suivantes pour installer quelques paquets essentiels et quelques documents importants : # apt-get install info man-db boc-base dhelp apt apt-utils auto-apt \ dpkg less mc ssh nano-tiny elvis-tiny vim sash \ kernel-package \ manpages manpages-dev doc-debian doc-linux-text \ debian-policy developers-reference maint-guide \ apt-howto harden-doc install-doc \ libpam-doc glibc-doc samba-doc exim-doc cvsbook \ gnupg-doc # apt-get install debian-reference # pour Sarge, faites cela aussi :)

Chapitre 1. Prface

3

1.4 Fondements de la distribution DebianDebian se prsente sous la forme simultane de 3 ditions : stable : Convient pour un serveur de production. Ennuyeux pour une station de travail (ST). Voir La distribution stable page 6. testing : Convient pour une ST. Voir La distribution testing page 7. unstable : Ne pas charger cette dition aveuglment. Voir La distribution unstable page 7.

Lisez au moins la liste de discussion centrale [email protected] pour des mises jour sur ltat de Debian. (NdT : Pour les francophones, vous trouverez de laide en vous abonnant la liste de discussion francophone [email protected]. Au mois de mars 2002, ces trois versions correspondent Potato (qualit de production), Woody (en beta-test, trs stable maintenant), et Sid (en alpha-test). En aot 2002, juste aprs la sortie de Woody, cela correspond Woody (qualit de production), Sarge (en beta-test, elle sera assez difcile pendant quelque temps), et Sid (toujours en alpha-test). Lorsque les paquets dans unstable nont plus de bogues critiques (Release Critical, RC) rpertoris pendant environ une semaine de test, ils sont automatiquement inclus dans testing. Voir Les archives Debian page 5. En thorie, il y a deux choses que vous pouvez faire pour disposer des dernires versions des applications. Systme dinstallation avec APT page 60 (principalement pour des stations de travail) Porter un paquet vers le systme stable page 69 (principalement pour des serveurs) Aprs avoir expliqu quelques lments fondamentaux de la distribution Debian dans Notions fondamentales sur Debian page 5, je vais prsenter quelques informations de base pour vous aider vivre tranquillement avec les dernires applications, en tirant parti de la distribution testing et de la distribution unstable de Debian. Les impatients devront aller immdiatement Commandes de survie Debian page 60. Bonne et heureuse mise jour !

Chapitre 1. Prface

4

5

Chapitre 2

Notions fondamentales sur DebianCe chapitre donne des notions fondamentales sur le systme Debian pour des non-dveloppeurs. Pour des informations ofcielles, voir : Charte Debian Manuel du paquetage Debian (Potato) Rfrence du dveloppeur Debian Guide des nouveaux responsables Debian lists dans Rfrences page 157. Si lon recherche des explications bases sur des solutions et sans les dtails, se rfrer directement Gestion des paquets Debian page 59 ou aux chapitres appropris. Ce chapitre consiste en une rorganisation de documents pris dans la FAQ Debian , an quun administrateur systme Debian puisse dbuter.

2.12.1.1

Les archives DebianStructure de rpertoires

Les logiciels paquets pour Debian sont disponibles dans un des nombreux arbres de rpertoires sur chaque site mirroir Debian (http://www.debian.org/misc/README.mirrors) accessible par FTP ou HTTP. Les rpertoires suivants sont sur chaque mirroir Debian sous le rpertoire debian : /dists/ : Ce rpertoire contient les distributions , et est utilis pour accder aux paquets actuellement disponibles dans les versions et pr-versions de Debian. Certains vieux paquets et chiers Packages.gz sont toujours l.

Chapitre 2. Notions fondamentales sur Debian

6

/pool/ : Nouvelle place de tous les paquets des versions et pr-versions de Debian. /tools/ : Utilitaires DOS pour crer des disquettes de dmarrage, partitionner un disque dur, compresser/dcompresser des chiers, et dmarrer Linux. /doc/ : La documentation de base de Debian, telle que la FAQ, les instructions pour faire un rapport de bogues, etc. /indices/ : Le chier Maintainers et les chiers override. /project/ : Principalement des ressources pour les dveloppeurs, comme : project/experimental/ : Ce rpertoire contient des paquets et des outils qui sont en dveloppement, et sont encore en tat de test alpha. Les utilisateurs ne devraient pas utiliser des paquets de ce rpertoire parce quils peuvent tre dangereux mme pour des utilisateurs expriments. project/orphaned/ : Paquets qui ont t abandonns par leur ancien responsable et ont t retirs de la distribution.

2.1.2

Distributions Debian

Normalement il y a trois distributions Debian dans le rpertoire dists. Leurs noms sont la distribution stable , la distribution testing et la distribution unstable . Quelquefois il y a aussi la distribution frozen . Chaque distribution est dnie par un lien symbolique vers le rpertoire rel, utilisant un nom de code et situ dans le rpertoire dists.

2.1.3

La distribution stable

Les paquets de la distribution stable, Debian Woody (3.0r0), sont enregistrs dans le rpertoire stable (lien symbolique vers Woody) : stable/main/ : Ce rpertoire contient les paquets constituant la version la plus rcente du systme Debian. Ces paquets sont aussi conformes aux Principes du logiciel libre selon Debian (http://www. debian.org/social_contract#guidelines) (aussi disponible dans le chier /usr/share /doc/debian/social-contract.txt install par le paquet debian-doc), et sont tous utilisables et redistribuables librement. stable/non-free/ : Ce rpertoire contient des paquets dont la distribution est restreinte et ncessite que les distributeurs prennent soigneusement en compte les exigences spcies par la licence. Par exemple, certains paquets ont une licence qui interdit la distribution commerciale. Dautres peuvent tre redistribus mais sont en fait des partagiciels et non des logiciels libres. Les licences de chacun de ces paquets doivent tre tudies, et dans certains cas ngocies, avant que les paquets soient inclus dans une redistribution (par exemple, sur un CD-ROM).

Chapitre 2. Notions fondamentales sur Debian

7

stable/contrib/ : Ce rpertoire contient des paquets qui sont conformes aux principes du logiciel libre selon Debian et distribuables librement, mais dpendent dun paquet qui nest pas distribuable librement et nest ainsi disponible que dans la section non-free. En plus des emplacements ci-dessus, les paquets sont physiquement situs dans le rpertoire pool (Le rpertoire pool page 9). Ltat courant de la distribution stable est accessible sur la page web Les problmes de stable (http://ftp-master.debian.org/testing/stable_probs.html).

2.1.4

La distribution testing

Les paquets de la distribution testing, Debian Sarge, sont enregistrs dans le rpertoire testing (lien symbolique vers Sarge) aprs avoir subi une certaine quantit de tests dans unstable. En plus de ces emplacements, les nouveaux paquets sont situs dans le rpertoire pool (Le rpertoire pool page 9). Les sous-rpertoires main, contrib et non-free sont aussi prsents dans testing, spars par les mmes critres que pour stable. Les paquets doivent tre synchroniss pour toutes les architectures o ils sont compils et ne doivent pas avoir de dpendances qui les rendent ininstallables ; ils doivent aussi avoir moins de bogues critiques pour une sortie de version que ceux de unstable. De cette faon, on espre que testing est toujours prte tre candidate une sortie. Plus de dtails sur le mchanisme sont disponibles http://ftp-master.debian.org/testing/. Ltat courant de la distribution testing est accessible sur les sites suivants (en Anglais) : update excuses (http://ftp-master.debian.org/testing/update_excuses.html) testing problems (http://ftp-master.debian.org/testing/testing_probs.html) release-critical bugs (http://bugs.debian.org/release-critical/) base system bugs (http://base.debian.net/) bugs in standard and task packages (http://standard.debian.net/) other bugs and bug-squashing party notes (http://bugs.debian.net/)

2.1.5

La distribution unstable

Les paquets de la distribution unstable, sid, sont enregistrs dans le rpertoire unstable aprs avoir t tlchargs dans larchive Debian et y restent jusqu ce quils soient dplacs dans testing aprs quelque temps. Les nouveaux paquets sont situs dans le rpertoire pool Le rpertoire pool page 9. Les sous-rpertoires main, contrib et non-free sont aussi prsents dans unstable, et ont les mmes fonctions que dans stable. La distribution unstable contient une image du systme en dveloppement le plus rcent. Les utilisateurs sont encourags utiliser et tester ces paquets, mais sont prvenus de leur tat. Lavantage utiliser unstable est que vous tes toujours jour avec la dernire version du projet Debianmais si a casse, vous en dcouvrez les dsavantages :-)

Chapitre 2. Notions fondamentales sur Debian

8

Ltat courant de la distribution unstable est accessible la page web : Problmes de unstable (http://ftp-master.debian.org/testing/unstable_probs.html).

2.1.6

La distribution frozen

Lorsque la distribution testing est mre, elle est gele (NdT : frozen en Anglais), cest--dire que lon naccepte plus de nouveau code, seulement des corrections de bogues, si ncessaire. De plus, un nouvel arbre testing est cr dans le rpertoire dists, avec un nouveau nom de code. La distribution frozen subit quelques mois de test, avec par intermittence des mises jour et des geles compltes, ce quon appelle des cycles de test. (Le rcent processus de sortie de woody na pas vu la cration dun lien symbolique frozen, ainsi frozen ntait pas une distribution, juste une tape de dveloppement de testing). On garde une trace des bogues de la distribution frozen qui peuvent retarder la sortie dun paquet ou qui peuvent retarder la sortie de la distribution complte. Lorsque le nombre de bogues descend en dessous des valeurs maximum acceptables, la distribution frozen devient stable, est sortie, et la distribution stable prcdente devient obsolte (et est dplace dans les archives).

2.1.7

Les noms de code de la distribution Debian

Les noms des rpertoires physiques dans le rpertoire dists, comme Woody et Sarge, sont juste des noms de code. Lorsquune distribution Debian est en dveloppement, elle na pas de numro de version mais un nom de code. Le but de ces noms de code est de faciliter le travail des mirroirs de la distribution Debian (si un rpertoire rel comme unstable changeait soudainement son nom en stable, beaucoup de donnes seraient tlcharger de nouveau). Actuellement, stable est un lien symbolique vers Woody et testing est un lien symbolique vers Sarge. Cela signie que Woody est lactuelle distribution stable et Sarge lactuelle distribution testing. unstable est un lien symbolique permanent vers sid, car sid est toujours la distribution unstable.

2.1.8

Noms de code utiliss par le pass

Les autres noms de code qui ont dj t utiliss sont : buzz pour la version 1.1, rex pour la version 1.2, bo pour les versions 1.3.x, hamm pour la version 2.0, slink pour la version 2.1 et potato pour la version 2.2.

Chapitre 2. Notions fondamentales sur Debian

9

2.1.9

Source dinspiration pour les noms de code

Jusquici, les noms de code viennent des caractres du lm Toy Story par Pixar. buzz (Buzz Lightyear) est le cosmonaute, rex est le tyranosaure, bo (Bo Peep) est la lle qui soccupe du mouton, hamm est la tirelire en forme de cochon, slink (Slinky Dog) est le chien, sarge est un chef des Hommes de lArme de Plastique Vert potato est, bien sr, Mr. Potato woody est le cowboy, sid est le garon d ct qui dtruit les jouets.

2.1.10

Le rpertoire pool

Historiquement, les paquets taient gards dans le sous-rpertoire dists correspondant la distribution qui les contenait. Il apparut que cela posait certains problmes, tels que la grande consommation de bande passante sur les mirroirs lorsque des changements majeurs taient effectus. Les paquets sont maintenant gards dans un large bassin (NdT : pool en Anglais), structur selon le nom du paquet source. Pour rendre cela grable, le bassin est subdivis par section (main, contrib et non-free) et par la premire lettre du nom du paquet source. Ces rpertoires contiennent plusieurs chiers : les paquets binaires pour chaque architecture, et les paquets source partir desquels les paquets binaires ont t gnrs. Vous pouvez trouver o se trouve chaque paquet en lanant une commande comme apt-cache showsrc mypackagename et en lisant la ligne Directory :. Par exemple, les paquets apache sont dans pool/main/a/apache/. Il y a tellement de paquets lib* quils sont traits diffremment : par exemple, les paquets libpaper sont dans pool/main/libp/libpaper/. Les rpertoires dists sont toujours utiliss pour les chiers dindex utiliss par des logiciels comme apt. De plus, les anciennes distributions nont pas t converties pour utiliser les bassins donc vous verrez des chemins contenant des distributions comme Potato ou Woody dans le champ den-tte Filename . Normalement, vous navez pas vous occuper de cela, puisque le nouvel apt et probalement lancien dpkg-ftp (voir Mthodes de mise jour dun systme Debian page 20) vont grer cela de faon transparente. Si vous souhaitez plus dinformation, consultez Debian Package Pools FAQ (http://people.debian.org/~joeyh/poolfaq) (en Anglais).

Chapitre 2. Notions fondamentales sur Debian

10

2.1.11

Notes historiques sur sid

Lorsque la sid daujourdhui nexistait pas, lorganisation de larchive Debian avait un dfaut majeur : on supposait que lorsquune architecture tait cre dans la distribution unstable courante, elle sortirait lorsque cette distribution deviendrait la nouvelle stable. Ce ntait pas le cas pour beaucoup darchitectures, ce qui entrainait que ces rpertoires devaient tre dplacs lors dune sortie. Cela ntait pas pratique parce que cela consommerait beaucoup de bande passante. Les administrateurs de larchive contournrent le problme pendant plusieurs annes en plaant les binaires des architectures non sorties dans un rpertoire spcial nomm Sid. Lors de la sortie de ces architectures, un lien tait cr entre la stable courante et Sid, et partir de l elles taient cres dans larbre unstable de faon normale. Cette disposition tait quelque peu troublante pour les utilisateurs. Avec larrive des bassins de paquets (voir Le rpertoire pool page prcdente) pendant le dveloppement de la distribution Woody, les paquets binaires ont commenc tre stocks un emplacement standard dans le bassin, quelle que soit la distribution, de faon ce que sortir une distribution ne cause plus de grande consommation de bande passante sur les mirroirs (il y a, cependant, beaucoup de consommation de bande passante, mais graduellement, pendant le dveloppement).

2.1.12

Paquets tlchargs dans incoming

Les paquets tlchargs sont dabord placs dans http://incoming.debian.org/ avant que lon ne vrie sils viennent bien dun dveloppeur Debian (et sont placs dans le sous-rpertoire DELAYED dans le cas dun tlchargement par un non responsable (Non-Maintainer Upload, NMU)). Une fois par jour, ils sont dplacs de incoming vers unstable. En cas durgence, vous pouvez vouloir installer des paquets de incoming avant quils natteignent unstable.

2.1.13

Rcuprer un paquet ancien

Alors que les distributions Debian rcentes sont gardes dans le rpertoire debian de chaque mirroir Debian (http://www.debian.org/misc/README.mirrors), les archives des anciennes distribution comme Slink sont gardes sur http://archive.debian.org/ ou dans le rpertoire debian-archive de chaque mirroir Debian. Les anciens paquets de testing et unstable sont situs http://snapshot.debian.net/.

Chapitre 2. Notions fondamentales sur Debian

11

2.1.14

Sections architectures

Dans chacun des arbres de rpertoires majeurs (dists/stable/main, dists/stable/non-free, dists/unstable/main/, etc.), les paquets binaires rsident dans des sous-rpertoires dont le nom indique larchitecture pour laquelle ils ont t compils. binary-all/, pour les paquets indpendants de larchitecture Cela inclut, par exemple, des scripts Perl, ou de la documentation pure. binary-platform/, pour les paquets qui sexcutent sur une plateforme particulire. Veuillez noter que les paquets binaires pour testing et unstable ne rsident plus dans ces rpertoires, mais dans le rpertoire de haut niveau pool. Les chiers dindex (Packages et Packages.gz) ont t gards, cependant, pour une compatibilit arrire. Pour les architectures binaires supportes, consultez les Notes de version de chaque distribution. Elles sont disponibles sur les sites des notes de version pour stable (http://www.debian. org/releases/stable/releasenotes) et testing (http://www.debian.org/releases/ testing/releasenotes).

2.1.15

Le code source

Le code source est inclut pour tout le systme Debian. De plus, les termes de la licence de la plupart des logiciels du systme requirent que le code source soit distribu avec le programme, ou quune offre permettant dobtenir le code source accompagne le programme. Normalement, le code source est distribu dans les rpertoires source, qui sont parallles aux rpertoires contenant les binaires spciques une architecture, ou plus rcemment dans le rpertoire pool (voir Le rpertoire pool page 9). Pour rcuprer le code source sans avoir tre familier avec la structure de larchive Debian, essayez une commande comme apt-get source mypackagename. Certains paquets, notamment pine, sont seulement disponibles sous forme de paquet source, cause de limitations de leur licence. (Rcemment, le paquet pine-tracker a t fourni pour faciliter linstallation de Pine.) Les procdures dcrites dans Porter un paquet vers le systme stable page 69 et Paquetage page 152 permettent de construire un paquet manuellement. Le code source peut tre ou ne pas tre disponible pour les paquets dans les rpertoires contrib et non-free, qui ne font pas formellement partie du systme Debian.

Chapitre 2. Notions fondamentales sur Debian

12

2.2 Systme de gestion des paquets Debian2.2.1 Vue gnrale des paquets Debian

Les paquets contiennent gnralement tous les chiers ncessaires pour implmenter un ensemble de commandes ou caractristiques. Il existe deux types de paquets Debian : Les paquets binaires, qui contiennent des excutables, des chiers de conguration, des pages de man/info, la licence, et dautres documentations. Ces paquets sont distribus dans un format darchive spcique Debian (voir Format des paquets Debian de la prsente page) ; on les reconnat habituellement leur extension .deb. Les paquets binaires peuvent tre dpaquets en utilisant lutilitaire Debian dpkg ; les dtails sont fournis dans sa page de manuel. Les paquets sources, qui consistent en un chier .dsc dcrivant le paquet source (y compris le nom des chiers suivants), un chier .orig.tar.gz qui contient le source original nonmodi compress par tar et gzip, et habituellement un chier .diff.gz qui contient les modications du source original spciques Debian. Lutilitaire dpkg-source empaqute et dpaqute les archives source Debian ; les dtails sont fournis dans sa page de manuel. Linstallation de logiciels par le systme de paquets utilise des dpendances qui sont soigneusement conues par les responsables du paquet. Ces dpendances sont documentes dans le chier control associ chaque paquet. Par exemple, le paquet contenant le compilateur GNU C (gcc) dpend du paquet binutils qui inclut lditeur de liens et lassembleur. Si un utilisateur tente dinstaller gcc sans avoir dabord install binutils, le systme de gestion de paquets (dpkg) renverra un message derreur disant quil a besoin de binutils, et cessera linstallation de gcc. (Cependant, un utilisateur insistant pourra passer outre ; voir dpkg(8).) Pour plus de dtails, voir Dpendances des paquets page 16 ci-dessous. Les outils de paquetage de Debian peuvent tre utiliss pour : manipuler et grer des paquets ou des parties de paquets, aider lutilisateur dcouper des paquets qui doivent tre transmis travers un mdia de taille limite comme une disquette, aider les dveloppeurs construire des archives de paquets, et aider les utilisateurs installer des paquets qui se trouvent sur un site darchive Debian.

2.2.2

Format des paquets Debian

Un paquet Debian, ou un chier darchive Debian, contient les chiers excutables, les bibliothques, et la documentation associs un programme particulier ou un ensemble de programmes lis. Normalement, une archive Debian possde un nom de chier se terminant par .deb. Les donnes internes de ce format de paquets binaires Debian sont dcrites dans la page de manuel deb(5). Parce que ce format interne est sujet des changements (entre les sorties majeures de Debian), utilisez toujours dpkg-deb(8) pour manipuler des chiers .deb.

Chapitre 2. Notions fondamentales sur Debian

13

Au moins jusqu la distribution Woody, tous les chiers darchive Debian taient manipuls par les commandes Unix standard ar et tar, mme lorsque les commandes dpkg ntaient pas disponibles.

2.2.3

Conventions de nommage pour les chiers de paquets Debian

Les noms de chiers des paquets Debian se conforment la convention suivante : foo_VersionNumber-DebianRevisionNumber.deb o foo reprsente le nom du paquet. Pour vrication, on peut dterminer le nom du paquet associ un chier darchive Debian particulier (chier .deb) de lune des faons suivantes : inspecter le chier Packages dans le rpertoire o il tait stock sur un site darchive Debian. Ce chier contient une description de chaque paquet ; le premier champ de chaque paragraphe est le nom de paquet formel. utiliser la commande dpkg --info foo_VVV-RRR.deb (o VVV et RRR sont les numros de version et de rvision du paquet en question, respectivement). Cela afche, entre autres, le nom du paquet correspondant au chier darchive dpaquet. La composante VVV est le numro de version spci par le dveloppeur original. Il ny a aucune norme spciant la numrotation des versions, donc elle peut avoir des formats aussi diffrents que 19990513 et 1.3.8pre1 . La composante RRR est le numro de rvision Debian spci par le dveloppeur Debian (ou un utilisateur sil choisit de construire le paquet lui-mme). Ce numro correspond au niveau de rvision du paquet Debian ; ainsi, un nouveau niveau de rvision correspond habituellement un changement dans le Makele Debian (debian/rules), le chier de contrle Debian (debian/control), les scripts dinstallation ou de suppression (debian/p*), ou les chiers de conguration utiliss avec le paquet.

2.2.4

Prservation de la conguration locale

La prservation des chiers congurables par lutilisateur est active par le mcanisme confles de Debian. Les chiers de conguration de lutilisateur (habituellement placs dans /etc) sont spcis dans le chier conffiles du systme de paquets Debian. Le systme de gestion des paquets garantie que ces chiers ne seront pas recouverts lors de la mise jour dun paquet. Lorsquil est possible de congurer le systme sans modier les chiers qui appartiennent aux diffrents paquets Debian, il est conseill de ne pas les modier mme si ce sont des confles . Cela permet des oprations de mise jour plus rapides et en douceur. Pour dterminer exactement quels sont les chiers prservs lors dune mise jour, lancez la commande :

Chapitre 2. Notions fondamentales sur Debian

14

dpkg --status package et regardez la ligne Confles : . Les dtails du contenu dun chier Debian conffiles sont fournis dans la Charte Debian, section 11.7 (voir Rfrences page 157).

2.2.5

Scripts de maintenance Debian

Les scripts de maintenance Debian sont des scripts excutables qui sont automatiquement excuts avant ou aprs linstallation dun paquet. Avec un chier nomm control, tous ces chiers font partie de la section control dun chier darchive Debian. Les chiers individuels sont : preinst Ce script est excut avant que son paquet soit dpaquet de son archive Debian (.deb). Beaucoup de scripts preinst arrtent les services fournis par les paquets mis jour jusqu ce que leur installation ou mise jour soit complte (aprs lexcution avec succs du script postinst ). postinst Ce script complte la conguration requise par un paquet aprs son dpaquetage partir de son archive Debian (.deb). Souvent, les scripts postinst demandent lutilisateur dentrer des informations et/ou lavertissent que sil accepte les valeurs par dfaut, il devrait se rappeler de revenir en arrire et recongurer le paquet lorsque la situation le requiert. Beaucoup de scripts postinst excutent ensuite les commandes ncessaires au redmarrage dun service une fois que le nouveau paquet a t install ou mis jour. prerm Ce script arrte les daemons qui sont associs un paquet. Il est excut avant la suppression de chiers associs au paquet. postrm Ce script modie les liens ou les autres chiers associs un paquet, et/ou supprime les chiers crs. (Voir aussi Paquets virtuels page ci-contre.) Actuellement, tous les chiers de contrle peuvent tre trouvs dans le rpertoire /var/lib /dpkg/info. Les chiers associs au paquet foo commencent avec le nom foo et ont des extensions preinst , postinst , etc., tel quappropri. Le chier foo.list dans ce rpertoire liste tous les chiers qui ont t installs avec le paquet foo. (Notez que lemplacement de ces chiers est interne dpkg, et peut changer.)

2.2.6

Priorit des paquets

Chaque paquet Debian se voit assigner une priorit par les responsables de la distribution, comme aide au systme de gestion des paquets. Les priorits sont :

Chapitre 2. Notions fondamentales sur Debian

15

Les paquets Required (requis) sont ncessaires au bon fonctionnement du systme. Ceci inclut tous les outils ncessaires pour rparer les dfauts du systme. Vous ne devez pas supprimer ces paquets, sinon le systme peut devenir compltement plant et vous ne pourrez probablement plus utiliser dpkg pour remettre les choses en place. Un systme avec seulement les paquets requis ne sera probablement pas utilisable, mais il sera sufsament fonctionnel pour que ladministrateur le dmarre et installe plus de logiciels. Les paquets Important devraient se trouver sur nimporte quel systme de type Unix. Dautres paquets sans lesquel le systme ne fonctionnera pas bien ou ne sera pas utilisable se trouveront ici. Cela ninclut PAS Emacs ou X11 ou TeX ou nimporte quelle autre grosse application. Ces paquets constituent seulement une infrastructure de base. Les paquets Standard sont standard sur nimporte quel systme Linux, et comprennent un systme en mode texte raisonnablement petit mais pas trop limit. Cest ce qui sera install par dfaut si les utilisateurs ne slectionnent rien dautre. Cela ninclut pas beaucoup de grosses applications, mais cela inclut Emacs (qui est plus une partie dinfrastructure quune application) et un sous-ensemble raisonnable de TeX et LaTeX (si cela est possible sans X). Les paquets Optional (optionnel) incluent tous ceux que vous pourriez raisonnablement vouloir installer mme sils ne vous sont pas familiers, et si vous navez pas de besoins spciques. Cela inclut X11, une distribution complte de TeX, et beaucoup dapplications. Les paquets Extra (en plus) sont des paquets qui soit entrent en conit avec des paquets ayant une priorit plus haute, soit ne seront utiles que si vous les connaissez, soit ont besoin de prrequis spciques qui les rendent peu convenables pour Optional .

2.2.7

Paquets virtuels

Un paquet virtuel est un nom gnrique qui sapplique nimporte quel paquet dun groupe de paquets, qui tous fournissent une fonctionalit de base similaire. Par exemple, les logiciels tin et trn sont des lecteurs de groupes de discussion, et doivent donc satisfaire la dpendance dun programme ayant besoin dune tel lecteur sur le systme pour fonctionner ou tre utile. On dit quils fournissent tous les deux le paquet virtuel appel news-reader. De faon similaire, exim et sendmail fournissent tous les deux la fonctionalit dun agent de transport de courrier lectronique. On dit donc quils fournissent le paquet virtuel mail transport agent . Si lun des deux est install, un programme dpendant de linstallation dun mail-transport-agent sera satisfait par la prsence de ce paquet virtuel. Debian fournit un mcanisme pour que, si plus dun paquet qui fournit le mme paquet virtuel est install sur un systme, ladministrateur puisse congurer lun des deux comme paquet prfr. La commande utilise est update-alternatives, et est dcrite dans Commandes de rechange page 72.

Chapitre 2. Notions fondamentales sur Debian

16

2.2.8

Dpendances des paquets

Le systme de paquets Debian possde une srie de dpendances de paquets qui sont conues pour indiquer (avec un simple drapeau) le niveau auquel Programme A peut fonctionner indpendamment de la prsence de Programme B sur le systme : Paquet A depends (dpend) de Paquet B si B doit absolument tre install pour excuter A. Dans certains cas, A dpend non seulement de B, mais dune certaine version de B. Dans ce cas, la dpendance sur la version est habituellement une limite basse, dans le sens o A dpend de nimporte quelle version de B plus rcente que la version spcie. Paquet A recommends (recommande) Paquet B si le responsable du paquet juge que la plupart des utilisateurs ne voudront pas de A sans avoir la fonctionnalit fournie par B. Paquet A suggests (suggre) Paquet B si B contient des chiers qui sont lis (et habituellement amliorent) la fonctionnalit de A. Paquet A conicts (est en conit) avec Paquet B lorsque A ne fonctionnera pas si B est install sur le systme. Souvent, les conits sont dans des cas o A contient des chiers qui fournissent une amlioration par rapport ceux de B. conicts est souvent associ avec replaces . Paquet A replaces (remplace) Paquet B lorsque les chiers installs par B sont supprims et (dans certains cas) recouverts par des chiers de A. Paquet A provides (fournit) Paquet B lorsque tous les chiers et fonctionnalits de B sont incorpors dans A. Ce mcanisme fournit un moyen aux utilisateurs ayant des limitations en espace disque de ne slectionner que la partie de A dont ils ont rellement besoin. Plus de dtails sur lutilisation de ces termes sont fournis dans le Manuel de Paquetage et dans la Charte Debian. Notez que dselect permet un contrle plus prcis sur les paquets marqus recommends et suggests que apt-get, qui rcupre simplement tous les paquets spcis par depends et laisse les paquets spcis par recommends et suggests. Les deux programmes utilisent APT comme dorsal dans leurs versions modernes.

2.2.9

Signication de pre-depends

Pre-depends est une dpendance spciale. Dans le cas dun paquet ordinaire, dpkg dpaqutera le chier archive (cd. le chier .deb) indpendamment de la prsence ou non des chiers dont il dpend sur le systme. En simpliant, dpaqueter signie que dpkg extrait les chiers de larchive qui sont censs tre installs sur votre systme et les met leur place. Si ces paquets dpendent de la prsence dautres paquets sur votre systme, dpkg refusera de complter linstallation (en excutant son action congure ) tant que les autres paquets ne seront pas installs. Cependant, pour certains paquets, dpkg refusera mme de les dpaqueter tant que certaines dpendances ne seront pas satisfaites. On dit que ces paquets pr-dpendent de la prsence dautres paquets. Le projet Debian fournissait ce mcanisme pour supporter la mise jour sre

Chapitre 2. Notions fondamentales sur Debian

17

des systmes du format a.out au format ELF, pendant laquelle lordre dans lequel les paquets taient dpaquets tait critique. Il y a dautres situations de mise jour pour lesquelles cette mthode est utile, par exemple pour les paquets avec la priorit required et leur dpendance la libc. Une fois de plus, de plus amples informations peuvent tre trouves dans le Manuel de Paquetage.

2.2.10

Etat dun paquet

Ltat dun paquet peut tre unknown (inconnu), install (installe), remove (supprime), purge (purge), ou hold (garde). Ces drapeaux want (volont) indiquent ce que lutilisateur souhaite faire avec un paquet (comme indiqu soit par les actions de lutilisateur dans la section Select de dselect, soit par linvocation directe de dpkg). Leur signication est : unknown - (inconnu) lutilisateur na jamais indiqu sil souhaite le paquet. install - (installe) lutilisateur veut que le paquet soit install ou mis jour. remove - (supprime) lutilisateur veut que le paquet soit supprim, mais ne veut pas supprimer les chiers de conguration existants. purge - lutilisateur veut que le paquet soit supprim compltement, y compris ses chiers de conguration. hold - (garde) lutilisateur veut que le paquet ne soit pas trait, cd. quil veut garder la version actuelle dans ltat actuel.

2.2.11

Garder des paquets lors dune mise jour

Il y a deux mcanismes pour garder des paquets lors de la mise jour, laide de dpkg, ou, dans Woody, laide dAPT. Avec dpkg, exportez dabord la liste des slections de paquets : dpkg --get-selections \* > selections.txt Ensuite, ditez le chier rsultant selections.txt, en changeant la ligne contenant le paquet que vous souhaitez garder, e.g. libc6, de : libc6 en : libc6 hold install

Chapitre 2. Notions fondamentales sur Debian

18

Sauvegardez le chier, et rechargez-le dans la base de donnes de dpkg avec la commande : dpkg --set-selections < selections.txt Ou, si vous connaissez le nom du paquet garder, excutez simplement : echo libc6 hold | dpkg --set-selections Ce procd garde les paquets pendant la procdure dinstallation de chaque paquet. Le mme rsultat peut tre obtenu avec dselect. Entrez simplement dans lcran [S]elect, trouvez le paquet que vous souhaitez garder en ltat et appuyez sur la touche = (ou H). Les changements prendront effet immdiatement aprs que vous tes sortis de lcran [S]elect. Le systme APT dans la distribution Woody possde un nouveau mcanisme pour garder les paquets pendant la procdure de rcupration des archives en utilisant Pin-Priority. Voir la page de manuel apt_preferences(5), ainsi que http://www.debian.org/doc/manuals/ apt-howto/ ou le paquet apt-howto.

2.2.12 Paquets sourcesLes paquets sources sont distribus dans un rpertoire appel source, et vous pouvez soit les tlcharger manuellement, soit utiliser apt-get source foo pour les rcuprer (voir la page de manuel apt-get(8) pour congurer APT pour faire cela).

2.2.13 Construire des paquets binaires partir dun paquet sourcePour un paquet foo, vous aurez besoin de tous les chiers foo_*.dsc, foo_*.tar.gz et foo_*.diff.gz pour compiler les sources (note : il ny a pas de chier .diff.gz pour les paquets Debian natifs). Une fois que vous les avez, si vous avez le paquet dpkg-dev install, la commande $ dpkg-source -x foo_version-revision.dsc va extraire le paquet dans un rpertoire appel foo-version. Si vous souhaitez juste compiler le paquet, vous pouvez entrer dans le rpertoire foo-version et lancer la commande

Chapitre 2. Notions fondamentales sur Debian

19

$ fakeroot debian/rules build

pour compiler le programme (vous aurez peut-tre besoin dinstaller le paquet fakeroot dabord), puis

$ fakeroot debian/rules binary

en tant que root, pour construire le paquet, et enn

$ su -c "dpkg -i ../foo_version-revision_arch.deb"

pour installer le paquet nouvellement construit. Voir Porter un paquet vers le systme stable page 69.

2.2.14

Crer de nouveaux paquets Debian

Pour une description plus dtaille de la cration de nouveaux paquets, lisez le Guide des nouveaux responsables Debian, disponible dans le paquet maint-guide, ou ladresse http:// www.debian.org/doc/manuals/maint-guide/.

2.3

Mettre jour un systme Debian

Lun des buts de Debian est de fournir un chemin de mise jour consistant et un processus de mise jour sr, et nous faisons de notre mieux pour que la mise jour lors de la sortie dune nouvelle version depuis une prcdente soit la plus douce possible. Les paquets vont alerter lutilisateur lorsquil y a des avertissements importants pendant le processus de mise jour, et vont souvent fournir une solution un problme possible. Vous devriez aussi lire les Notes de version, le document qui dcrit les dtails des mises jour spciques, livr sur tous les CDs Debian, et disponible sur le WWW aux adresses http://www. debian.org/releases/stable/releasenotes et http://www.debian.org/releases/ testing/releasenotes. Un guide pratique pour les mises jour est fourni dans la Gestion des paquets Debian page 59. Cette section dcrit les dtails fondamentaux.

Chapitre 2. Notions fondamentales sur Debian

20

2.3.1

Mthodes de mise jour dun systme Debian

On pourrait simplement excuter une session FTP anonyme ou un appel wget vers une archive Debian, parcourir les rpertoires jusqu ce quon trouve le chier dsir, le rcuprer, et enn linstaller en utilisant dpkg. (Notez que dpkg installera les chiers de la mise jour leur place, mme sur un systme en marche.) Parfois, un paquet rvis aura besoin de linstallation dune version rvise dun autre paquet, auquel cas linstallation chouera si lautre paquet nest pas install. Beaucoup de gens trouvent cette approche trop gourmande en temps, car Debian volue trs rapidement typiquement, une douzaine ou plus de nouveaux paquets sont tlchargs chaque semaine. Ce nombre est encore plus grand avant la sortie dune version majeure. Pour grer cette avalanche, beaucoup de gens prfrent utiliser une mthode automatique. Plusieurs outils de gestion des paquets sont disponibles dans ce but.

2.3.2

Vue gnrale des outils de gestion de paquets

Le systme de gestion de paquets Debian a deux objectifs : la manipulation des chiers de paquets eux-mmes et la rcupration de chiers de paquets depuis une archive Debian. dpkg ralise la premire fonction, APT et dselect la seconde.

2.3.3

dpkg

Cest le programme principal pour manipuler les chiers de paquets ; consultez dpkg(8) pour une description complte. dpkg vient avec plusieurs programmes primitifs supplmentaires. dpkg-deb : Manipule les chiers .deb. dpkg-deb(1) dpkg-ftp : Une ancienne commande de rcupration de chiers de paquets. dpkg-ftp(1) dpkg-mountable : Une ancienne commande de rcupration de chiers de paquets. dpkg-mountable(1) dpkg-split : Scinde un gros paquet en chiers plus petits. dpkg-split(1)

dpkg-ftp et dpkg-mountable ont t rendus obsoltes par lintroduction du systme APT.

2.3.4

APT

APT (Advanced Packaging Tool, outil avanc de paquetage) est une interface avance pour le systme de gestion des paquets Debian, qui consiste en plusieurs programmes dont les noms commencent par apt- . apt-get, apt-cache et apt-cdrom sont les outils en ligne de commande pour grer les paquets. Ils fonctionnent aussi en tant que dorsal pour dautres outils, comme dselect et aptitude.

Chapitre 2. Notions fondamentales sur Debian

21

Pour plus dinformation, installez le paquet apt et lisez apt-get(8), apt-cache(8), apt-cdrom(8), apt.conf(5), sources.list(5), apt_preferences(5) (woody), et /usr/share/doc/apt /guide.html/index.html. Une autre source dinformation est le APT HOWTO (http://www.debian.org/doc/manuals/ apt-howto/). Il peut tre install par le paquet apt-howto lemplacement /usr/share/doc /apt-howto/en/apt-howto-en.html/index.html. apt-get upgrade et apt-get dist-upgrade rcuprent seulement les paquets marqus Depends : et passe outre tous les paquets marqus Recommends : et Suggests : . Pour viter cela, utilisez dselect.

2.3.5

dselect

Ce programme est une interface utilisateur avec un menu pour le systme de gestion de paquets Debian. Il est particulirement utile pour les premires installations et les grosses mises jour. Pour plus dinformation, installez le paquet install-doc et lisez /usr/share/doc/install-doc /dselect-beginner.en.html ou Documentation dselect pour dbutants (http://www.debian. org/releases/woody/i386/dselect-beginner).

2.3.6

Mise jour dun systme en marche

Le noyau (systme de chier) des systmes Debian supporte le recouvrement de chiers mme lorsquils sont en utilisation. Nous fournissons aussi un programme appel start-stop-daemon qui est utilis pour dmarrer les daemon lors du dmarrage du systme ou pour les arrter lorsque le niveau de fonctionnement du noyau est chang (par exemple de multi-utilisateur vers mono-utilisateur ou vers arrt). Le mme programme est utilis par les scripts dinstallation lorsquun nouveau paquet contenant un daemon est install, pour arrter les daemons en excution, et les redmarrer lorsque cela est ncessaire. Notez que le systme Debian ne requiert pas lutilisation du mode mono-utilisateur pour mettre jour un systme en marche.

2.3.7

Fichiers darchive .deb tlchargs et sauvegards

Si vous avez tlcharg manuellement des chiers de paquets sur votre disque (ce qui nest pas forcment ncessaire, voir ci-dessus pour la description de dpkg-ftp ou APT), vous pouvez supprimer les chiers .deb de votre systme lorsque les paquets ont t installs.

Chapitre 2. Notions fondamentales sur Debian

22

Si APT est utilis, ces chiers sont mis en cache dans le rpertoire /var/cache/apt/archives /. Vous pouvez les effacer aprs linstallation (apt-get clean) ou les copier sur une autre machine dans le rpertoire /var/cache/apt/archives/ pour conomiser du temps de tlchargement pendant les installations suivantes.

2.3.8

Garder une trace des mises jour

dpkg garde un enregistrement des paquets qui ont t dpaquets, congurs, supprims, et/ou purgs, mais il ne garde pas (pour le moment) de journal de lactivit du terminal qui a eu lieu lorsquun paquet a t manipul. Le moyen le plus simple de contourner cela est de lancer vos sessions dpkg, dselect, apt-get, etc. avec le programme script(1).

2.4 Le processus de dmarrage de Debian2.4.1 Le programme init

Comme tous les Unices, Debian dmarre en excutant le programme init. Le chier de conguration de init (qui est /etc/inittab) spcie que le premier script excuter doit tre /etc/init.d/rcS. Ce script lance tous les scripts de /etc/rcS.d/ en incluant le source ou en forkant un sous-processus, selon leur extension, pour excuter des initialisations, comme la vrication et le montage des systmes de chiers, le chargement des modules, le dmarrage des services rseau, le rglage de lhorloge, et lexcution dautres initialisations. Ensuite, pour compatibilit, il lance aussi les chiers (sauf ceux ayant un . dans leur nom) de /etc/rc.boot/. Les scripts de ce dernier rpertoire sont habituellement rservs ladministrateur systme, et leur utilisation dans des paquets est obsolte. Voir Astuces sur linitialisation du systme page 99 pour plus dinformation.

2.4.2

Niveaux de fonctionnement

Aprs le processus de dmarrage, init excute les scripts de dmarrage situs dans le rpertoire correspondant au niveau de fonctionnement par dfaut (ce niveau de fonctionnement est donn par lentre id dans /etc/inittab). Comme la plupart des Unices compatibles System V, Linux a 7 niveaux de fonctionnement : 0 (arrte le systme), 1 (mode mono-utilisateur), 2 5 (diffrents modes multi-utilisateur), et 6 (redmarre le systme).

Chapitre 2. Notions fondamentales sur Debian

23

Les systmes Debian sont livrs avec id=2, ce qui indique que le niveau de fonctionnement par dfaut sera 2 lorsquon entrera dans ltat multi-utilisateur, et les scripts de /etc/rc2.d/ seront excuts. En fait, les scripts des rpertoires /etc/rcN.d/ sont des liens symboliques vers les scripts de /etc/init.d. Cependant, les noms des chiers dans chacun des rpertoires /etc/rcN.d/ sont slectionns pour indiquer la faon dont les scripts de /etc/init.d/ seront excuts. Spciquement, avant dentrer dans un niveau de fonctionnement, tous les scripts commenant par K sont lancs ; ils permettent darrter des services. Ensuite, tous les scripts commenant par S sont lancs ; ces scripts permettent de dmarrer des services. Le nombre deux chiffres suivant le K ou le S indique lordre dans lequel le script est lanc. Les scripts possdant les nombres les plus petits sont excuts en premier. Cette approche fonctionne parce que les scripts dans /etc/init.d/ prennent tous un argument qui peut tre start, stop, reload, restart ou force-reload et excuteront la tche indique par cet argument. Ces scripts peuvent tre utiliss mme aprs que le systme a t dmarr, pour contrler divers processus. Par exemple, avec largument reload , la commande # /etc/init.d/sendmail reload envoie au daemon sendmail un signal pour quil relise son chier de conguration.

2.4.3

Personnaliser le processus de dmarrage

Debian nutilise pas de rpertoire rc.local comme BSD pour personnaliser le processus de dmarrage ; la place, il fournit les mcanismes suivants. Supposons quun systme ait besoin dexcuter le script foo au dmarrage, ou lentre dans un niveau de fonctionnement (System V) particulier. Alors, ladministrateur du systme doit : 1. Placer le script foo dans le rpertoire /etc/init.d/. 2. Excuter la commande Debian update-rc.d avec les arguments appropris, pour effectuer les liens entre les rpertoires (spcis sur la ligne de commande) rc ?.d et /etc/init.d /foo. Ici, ? est un nombre entre 0 et 6 qui correspond lun des niveaux de fonctionnement System V. 3. Redmarrer le systme. La commande update-rc.d effectue les liens entre les chiers des rpertoires rc ?.d et le script de /etc/init.d/. Chaque lien commencera par un S ou un K, suivi par un nombre, suivi par le nom du script. Les scripts commenant par S dans /etc/rcN.d/ sont excuts lorsquon

Chapitre 2. Notions fondamentales sur Debian

24

entre dans le niveau de fonctionnement N. Les scripts commenant par K sont excuts lorsquon quitte le niveau de fonctionnement N. On peut par exemple faire excuter le script foo au dmarrage, en le plaant dans /etc/init.d / et en installant les liens par la commande update-rc.d foo defaults 19. Largument defaults correspond aux niveaux de fonctionnement par dfaut, qui sont 2 5. Largument 19 assure que foo sera appel avant les scripts contenant les nombres suprieurs 20.

2.5 Support de la diversitDebian offre plusieurs facilits pour exaucer les voeux des administrateurs du systme sans casser ce dernier. dpkg-divert, voir La commande dpkg-divert page 72. equivs, voir Le paquet equivs page 72. update-alternative, voir Commandes de rechange page 72. make-kpkg peut saccomoder de beaucoup de chargeurs . Voir make-kpkg(1).

Les chiers situs sous /usr/local/ appartiennent ladministrateur du systme et Debian ny touchera pas. La plupart (ou tous) les chiers sous /etc sont des conffiles (chiers de conguration) et Debian ncrira pas dessus lors dune mise jour sauf si ladministrateur le spcie explicitement.

2.6

Internationalisation

Le systme Debian est internationalis et fournit le support pour lafchage et lentre des caractres de beaucoup de langues, la fois avec la console ou sous X. Beaucoup de documents, de pages de manuel, et de messages systme ont t traduits dans un nombre toujours plus lev de langues. Lors de linstallation, Debian demande lutilisateur de choisir une langue pour linstallation (et parfois une variante locale de cette langue). Si votre systme install ne supporte pas toutes les possibilits de la langue dont vous avez besoin, si vous avez besoin de changer de langue ou dinstaller un clavier diffrent pour supporter votre langue, voyez Localisation et support des langues nationales page 121.

2.7

Debian et le noyau

Voir Le noyau Linux et Debian page 75.

Chapitre 2. Notions fondamentales sur Debian

25

2.7.1

Compiler un noyau avec des sources non Debian

Il faut comprendre la politique Debian sur les en-ttes. Les bibliothques C de Debian sont compiles avec les en-ttes du noyau stable le plus rcent. Par exemple, la version Debian-1.2 utilisait la version 5.4.13 des en-ttes. Cette pratique contraste avec les paquets source du noyau Linux distribus dans toutes les archives FTP Linux, qui utilisent des versions encore plus rcentes des en-ttes. Les en-ttes du noyau distribues avec le source du noyau sont situes dans /usr/include/linux/include/. Si vous avez besoin de compiler un programme avec des en-ttes du noyau plus rcentes que celles fournies par libc6-dev, alors vous devez ajouter -I/usr/src/linux/include/ la ligne de commande lorsque vous compilez. Cela est arriv, par exemple, avec lempaquetage du daemon automounter (amd). Lorsque de nouveaux noyaux ont chang les commandes internes ayant trait NFS, amd a d en prendre connaissance. Cela a requis dinclure les dernires en-ttes du noyau.

2.7.2

Outils pour compiler un noyau personnalis

Les utilisateurs qui souhaitent (ou doivent) compiler un noyau personnalis sont encourags tlcharger le paquet kernel-package. Ce paquet contient le script pour construire le paquet du noyau, et fournit la possibilit de crer un paquet kernel-image Debian en excutant la commande # make-kpkg kernel_image dans le rpertoire le plus haut des sources du noyau. De laide est disponible en excutant la commande # make-kpkg --help et dans la page de manuel make-kpkg(8) et Le noyau Linux et Debian page 75. Les utilisateurs doivent tlcharger sparment le code source du dernier noyau (ou le noyau de leur choix) depuis leur archive FTP Linux favorite, moins quun paquet kernel-source-version soit disponible (o version indique la version du noyau). Le script de dmarrage initrd de Debian ncessite un patch spcial pour le noyau appel initrd ; voir http://bugs.debian.org/ 149236. Des instructions dtailles pour utiliser le paquet kernel-package sont fournies dans le chier /usr/doc/kernel-package/README.

Chapitre 2. Notions fondamentales sur Debian

26

2.7.3

Chargeurs de remplacement

Pour utiliser un autre chargeur, comme grub ou loadlin, copier limage du noyau Linux compile bzimage vers un autre emplacement (par exemple, vers /boot/grub ou une partition MSDOS).

2.7.4

Disquettes de dmarrage personnalises

La cration dune disquette de dmarrage personnalise est aide par le paquet Debian boot-floppies, qui se trouve normalement dans la section admin de larchive FTP Debian. Les scripts shell de ce paquet produisent des disquettes de dmarrage au format syslinux. Ce sont des disquettes formates au format MS-DOS dont le Master Boot Record a t modi pour quelles dmarrent Linux directement (ou nimporte quel systme dexploitation dni dans la chier syslinux.cfg sur la disquette). Dautres scripts dans ce paquet produisent des disquettes racines durgence et peuvent mme reproduire les disquettes de base. Vous trouverez plus dinformation ce propos dans le chier /usr/doc/boot-floppies/README aprs avoir install le paquet boot-floppies.

2.7.5

Dispositions spciales pour manipuler les modules

Le paquet Debian modconf fournit un script shell (/usr/sbin/modconf) qui peut tre utilis pour personnaliser la conguration des modules. Ce script prsente une interface base de menus, demandant lutilisateur les pilotes de priphriques prsents sous forme de modules chargeables quils souhaite utiliser sur son systme. Les rponses sont utilises pour personnaliser le chier de conguration /etc/modules.conf (qui liste les alias, et autres arguments qui doivent tre utiliss par les diffrents modules) grce aux chiers /etc/modutils/, et /etc/modules (qui liste les modules qui doivent tre chargs lors du dmarrage). Comme les (nouveaux) chiers Congure.help qui sont maintenant disponibles pour supporter la compilation de noyaux personnaliss, le paquet modconf est livr avec une srie de chiers daide (dans /usr/lib/modules_help/) qui fournissent des informations dtailles sur les arguments possibles pour chacun des modules. Voir Le noyau 2.4 modulaire page 77 pour des exemples.

2.7.6

Dsinstaller le paquet dun vieux noyau

Le script kernel-image-NNN.prerm vrie que le noyau que vous excutez actuellement nest pas le noyau dsinstaller. Ainsi, vous pouvez supprimer de faon sre les noyaux dont vous ne voulez plus avec cette commande : dpkg --purge --force-remove-essential kernel-image-NNN

Chapitre 2. Notions fondamentales sur Debian

27

(Remplacez NNN par la version et la rvision de votre noyau, bien sr.)

Chapitre 2. Notions fondamentales sur Debian

28

29

Chapitre 3

Installation du systme DebianLa documentation ofcielle pour installer Debian est situe http://www.debian.org/releases/ stable/, et http://www.debian.org/releases/stable/installmanual. Sa version de dveloppement est situe http://www.debian.org/releases/testing/, et http://www.debian.org/releases/testing/installmanual (en dveloppement, parfois elle nexiste pas). Bien que Guide de rfrence pour Debian ait t commenc lpoque de Potato, la majeure partie de son contenu a t mis jour pour Debian Woody (3.0r0) et Debian Sarge.

3.1

Astuces gnrales sur linstallation du systme Linux

En vue de minimiser les risques associs aux paquets de testing et unstable , cest une bonne habitude de congurer votre systme Linux principal en dual boot avec un autre systme Linux plus petit et stable.

3.1.1

Compatibilit matrielle

Linux est compatible avec la plupart des matriels PC. Linux peut tre install sur presque tout systme. Pour moi il a t aussi facile installer que Windows 95/98/Me. Il semble que la liste des compatibilits matrielles sallonge encore. Si vous possdez un PC portable, consultez : Linux on Laptops (http://www.linux-laptop. net/) pour identier sa situation. Ma recommandation pour le matriel type PC de bureau est soyez juste conservateur : SCSI plutt quIDE pour le travail, disque dur IDE/ATAPI pour lutilisation prive.

Chapitre 3. Installation du systme Debian

30

CD-ROM (ou CD-RW) IDE/ATAPI. PCI plutt q