Vous êtes sur la page 1sur 323

Formation Debian GNU/Linux

Alexis de Lattre
alexis@via.ecp.fr
Formation Debian GNU/Linux
par Alexis de Lattre
Copyright 2002, 2003 par Alexis de Lattre
Ce document est disponible aux formats :
HTML en ligne (http://people.via.ecp.fr/~alexis/formation-linux/) ou HTML zipp
(http://people.via.ecp.fr/~alexis/formation-linux/formation-linux-html.zip) (3,6 Mo),
PDF zipp (http://people.via.ecp.fr/~alexis/formation-linux/formation-linux-pdf.zip) (4 Mo),
RTF zipp (http://people.via.ecp.fr/~alexis/formation-linux/formation-linux-rtf.zip) (3,5 Mo),
Texte zipp (http://people.via.ecp.fr/~alexis/formation-linux/formation-linux-txt.zip) (215 Ko).
La version la plus rcente de ce document se trouve ladresse http://people.via.ecp.fr/~alexis/formation-linux/.
Vous avez le droit de copier, distribuer et/ou modier ce document selon les termes de la GNU Free Documentation License, version 1.2 ou nimporte quelle version
ultrieure, telle que publie par la Free Software Foundation. Le texte de la licence se trouve dans lannexe GNU Free Documentation License.
Table des matires
A propos de ce document ....................................................................................................................................................... i
I. Installation de Debian GNU/Linux.................................................................................................................................... i
1. Linux, GNU, logiciels libres,... cest quoi ?................................................................................................................1
2. La distribution Debian.................................................................................................................................................4
3. Motivation et matriel requis ......................................................................................................................................8
4. Les prliminaires.......................................................................................................................................................11
5. Cration des CDs et des disquettes ...........................................................................................................................14
6. Prparation du disque dur .........................................................................................................................................18
7. Dbuter linstallation.................................................................................................................................................21
8. Le systme de chiers ...............................................................................................................................................24
9. Partitionner................................................................................................................................................................28
10. Installation et conguration du noyau.....................................................................................................................31
11. Conguration du rseau ..........................................................................................................................................33
12. Installation du systme de base...............................................................................................................................34
13. Premier boot !..........................................................................................................................................................35
14. La n de la conguration du systme .....................................................................................................................37
15. Les packages ...........................................................................................................................................................39
16. Utiliser LILO...........................................................................................................................................................43
II. Utilisation et conguration de base de Debian GNU/Linux ........................................................................................45
17. Dbuter en console..................................................................................................................................................46
18. Avant daller plus loin... ..........................................................................................................................................51
19. Vim : un diteur de texte .........................................................................................................................................54
20. Congurer le shell ...................................................................................................................................................57
21. Faire marcher la connexion Internet........................................................................................................................60
22. Le Web et le FTP en console...................................................................................................................................69
23. Le systme de gestion des packages Debian...........................................................................................................71
24. Le rseau et la scurit ............................................................................................................................................76
25. Conguration du noyau Linux ................................................................................................................................79
26. Compiler le noyau...................................................................................................................................................94
27. Tirer parti du nouveau noyau - 1...........................................................................................................................101
28. Tirer parti du nouveau noyau - 2...........................................................................................................................110
29. Congurer son serveur de mail local ....................................................................................................................113
30. Outils dadministration systme............................................................................................................................114
III. Debian GNU/Linux en mode graphique ....................................................................................................................118
31. Passer en Sid ?.......................................................................................................................................................120
32. Installer le serveur graphique................................................................................................................................124
33. Le bureau Gnome..................................................................................................................................................136
34. Les bases de Linux en mode graphique ................................................................................................................140
35. Le Web, le mail et les news en mode graphique ...................................................................................................146
36. La musique sous X................................................................................................................................................151
37. VLC, un player multimdia ..................................................................................................................................155
38. La bureautique avec OpenOfce.org.....................................................................................................................157
39. La bureautique sans OpenOfce ...........................................................................................................................159
40. La manipulation dimages.....................................................................................................................................163
41. Graver des CDs audio et des CDs de donnes ......................................................................................................166
42. Lconomiseur dcran..........................................................................................................................................168
43. Se logguer en graphique........................................................................................................................................170
iii
IV. Debian GNU/Linux en rseau .....................................................................................................................................173
44. Laccs distance par SSH ...................................................................................................................................174
45. Faire de lexport display........................................................................................................................................182
46. NFS : le partage de chiers sous Unix..................................................................................................................188
47. Le voisinage rseau Windows sous Linux ............................................................................................................190
48. Se synchroniser sur un serveur de temps ..............................................................................................................195
49. Monter un serveur Web.........................................................................................................................................196
50. Monter un serveur FTP .........................................................................................................................................198
51. Monter un serveur DHCP......................................................................................................................................200
52. Monter un serveur DNS ........................................................................................................................................201
53. Monter un serveur de mail ....................................................................................................................................205
54. Monter un serveur de mailing-listes......................................................................................................................208
55. Le travail en groupe avec CVS..............................................................................................................................214
V. Debian GNU/Linux en console......................................................................................................................................219
56. Le mail en console ................................................................................................................................................220
57. Le mail en console (suite) .....................................................................................................................................227
58. LIRC en console...................................................................................................................................................231
59. Les news en console..............................................................................................................................................236
60. ICQ en console......................................................................................................................................................239
61. Graver en console..................................................................................................................................................243
62. Les screens ............................................................................................................................................................247
VI. Conclusion et annexes ..................................................................................................................................................249
A. Apprendre et se tenir au courant ............................................................................................................................251
B. En cas de blocage... ................................................................................................................................................253
C. Utiliser Dselect .......................................................................................................................................................255
D. Complments sur la gestion des packages Debian.................................................................................................260
E. La mthode Debian pour compiler un noyau .........................................................................................................262
F. Faire marcher une imprimante................................................................................................................................264
G. Optimiser ses priphriques IDE ...........................................................................................................................269
H. Surveiller son matriel ...........................................................................................................................................272
I. La souris en console.................................................................................................................................................276
J. LaTeX......................................................................................................................................................................278
K. Utiliser GnomeMeeting..........................................................................................................................................281
L. Crer des CD Debian..............................................................................................................................................284
M. Outils Windows pour Linuxiens............................................................................................................................286
N. Firewalling et partage de connexion Internet .........................................................................................................289
O. Monter un bridge (rewallant) ...............................................................................................................................296
P. Monter un proxy-ARP ............................................................................................................................................300
Q. Trucs et Astuces .....................................................................................................................................................305
R. GNU Free Documentation License ........................................................................................................................309
iv
A propos de ce document
Cette formation est destine aux personnes qui ont dj de bonnes connaissances en informatiques mais qui ne connaissent
encore rien Linux. Lobjectif est de les prendre en main pour passer en douceur de Windows Debian GNU/Linux et de
leur faire dcouvrir une partie des nombreuses possibilits de ce systme dexploitation.
Ce document est divis en 5 parties :
1. Installation de Debian GNU/Linux : je vous guiderai pas--pas pour linstallation brute du systme dexploitation ;
2. Utilisation et conguration de base de Debian GNU/Linux : vous apprendrez les commandes et les outils de base et
vous essayerez de faire marcher tous les priphriques de votre systme ;
3. Debian GNU/Linux en mode graphique : vous apprendrez installer un bureau graphique et vous servir des
applications graphiques courantes sous Linux ;
4. Debian GNU/Linux en rseau : si vous avez un accs permanent Internet et/ou si vous tes connect un rseau
local, vous dcouvrirez les qualits de Linux faire ofce de serveur dans un rseau IP ;
5. Debian GNU/Linux en console : vous dcouvrirez un certain nombre dapplications en console... et peut-tre
serez-vous sduit par les avantages de ce type dapplications !
Les utilisateurs qui dbutent avec Linux seront plus particulirement intresss par les trois premires parties et certaines
annexes "faciles". Les utilisateurs qui ont dj de lexprience avec Linux, qui veulent explorer des utilisations plus
avanes et qui ont dj des bases en rseau pourront se plonger dans les parties 4 et 5 et les annexes plus difciles.
Les parties 2, 3, 4 et 5 requirent la connaissance des commandes de base dUnix.
La formation doit absolument tre suivie dans lordre. Elle a t conue lorigine pour les ordinateurs qui ont une
connexion Internet par rseau local ; je lai adapte pour ceux qui ont une connexion par modem classique, ADSL ou cble
ou pas de connexion du tout, mais il reste encore beaucoup faire pour ladapter tous les modles de modems ADSL
USB.
Note : Si vous avez un modem ADSL USB encore non document dans cette formation et que vous savez le faire
marcher sous Debian GNU/Linux en version Woody, je serais trs intress davoir des informations sur le driver que
vous utilisez et son installation !
Si vous trouvez des erreurs (fautes de frappe, dorthographe, de syntaxe dans les commandes, etc...) et/ou souhaitez
contribuer cette formation, merci dcrire ladresse formation-linux@via.ecp.fr (mailto:formation-linux@via.ecp.fr).
Je tiens remercier toutes les personnes qui mont aid la rdaction de ce document, ainsi que les nombreux lecteurs qui
mont signal les erreurs et/ou mont propos des amliorations.
Jai crit ce document pendant mon temps libre dtudiant. Je continue le maintenir et lamliorer.
Tableau 1. Historique du document
Date Ajout / Modication
19 Oct 2002 Premire release publique !
25 Oct 2002 Version PDF avec liens et correction derreurs
28 Oct 2002 Problme avec les images de la version PDF rpar
29 Oct 2002 Ajout dALSA et dplacement de dselect en annexe
30 Oct 2002 Ajout dune section sur les PDFs et dune section sur glxinfo/glxgears
04 Nov 2002 Ajout dune annexe Monter un proxy-ARP
05 Nov 2002 Ajout dune explication sur comment rcuprer un MBR Windows
i
A propos de ce document
Date Ajout / Modication
06 Nov 2002 Corrections diverses (notamment la diffrence libre / OpenSource)
13 Nov 2002 Dplacement de la mthode Debian de compilation des noyaux en Annexe
16 Nov 2002 Les noms des pages HTML ne changent plus chaque recompilation (enn !)
20 Nov 2002 Ajouts et corrections diverses dans la partie II
25 Nov 2002 Fichier ZIP tlchargeable et amlioration du chier muttrc
28 Nov 2002 Explications pour faire marcher DRI/DRM et Xfree 4.2 (test avec une Radeon). Nouveau chier
vimrc.
30 Nov 2002 Conguration dun noyau 2.4.20 et nouvelle source de packages Xfree 4.2 avec cong en franais.
1er Dc 2002 Explications sur DHCP relay (annexe sur le proxy-ARP) + installation de Cygwin et XDMCP
(chapitre sur lexport display) + adaptation de lannexe sur hdparm tous les priphriques IDE +
disparition du message derreur de hotplug
3 Dc 2002 WinSCP rempla par Filezilla (client SSH & SFTP GPL pour Win32)
5 Dc 2002 Correction des sections "leuro en console" et "leuro sous X" et nouveau vimrc avec le support de
leuro sous Gvim
13 Dc 2002 Prcisions concernant lAPM et modication de lannexe sur les modems ADSL. Nouveaux drivers
nVidia. Rajout de WinSCP ct de Filezilla.
14 Dc 2002 Format RTF disponible.
16 Dc 2002 Nouveau paragraphe "en cas de blocage" dans le chapitre 39. Sortie de la 3.0r1. Retrait temporaire
de cdrdao.
Vacances de Nol
2002
Rorganisation complte avec une nouvelle partie "Linux Debian en rseau", dbut dadaptation
pour les possesseurs dune connexion ADSL ou cble, explications sur la conguration dune
connexion par modem externe ou PCMCIA, de nombreux ajouts/corrections/modications (support
du bus PCMCIA, explications sur sudo, correction concernant Alsa, passage du format des
mailboxes en "maildir", modifs dans les chiers de conguration de zsh, vim, mutt, procmail et slrn)
et deux nouvelles annexes (En cas de blocage... et Le mail en console (suite))
7 Janv 2003 Problme du nombre de lignes dans mutt corrig par une modication de procmailrc.
9 Janv 2003 Finalement, la premire excution de dselect se fera pendant la procdure dinstallation pour
plusieurs raisons (cest plus simple et a permet de compiler des drivers ADSL avant lexplication
sur la gestion des packages. Rorganisation de la deuxime partie : lexplication de la mise en place
de la connexion Internet est maintenant prcde du shell et suivie des clients Web et FTP en
console. Ajout de GNUwin lannexe sur les programmes Windows. Modication de muttrc et
slrnrc pour avoir le wrappage automatique des paragraphes lors de la saisie. Ajout de gFTP comme
client FTP graphique.
10 Janv 2003 Nouvelle annexe Crer des CD Debian qui documente lutilisation de jigdo.
14 Janv 2003 Nombreuses corrections orthographiques (merci Kevin Rowanet). Ajout dun paragraphe sur les
LUGs dans la premire annexe.
17 Janv 2003 Mise--jour avec la sortie des CDs 3.0r1.
26 Janv 2003 Modications pour la mise des sources SGML dans un CVS. Toutes les pages ont chang de nom
(pour la dernire fois jespre !). Ajouts et modications dans la partie "conguration du noyau".
Explications sur la conguration de LILO dans la partie "compilation du noyau". Ajout du format
"text". Ajout du support pour les modems cble USB et les modems ADSL PCI Conexant.
28 Janv 2003 Les sources de la formation sont maintenant gres par un CVS hberg gracieusement par VIA ;
tout se met jour automatiquement chaque commit. Si vous constatez un problme, merci de me le
signaler par mail !
ii
A propos de ce document
Date Ajout / Modication
01 Fv 2003 Correction pour les modems cble (je ne savais pas que Noos tait le seul ou presque ne pas faire
de PPPoE), retrait temporaire de linstallation des modems ADSL PCI Conexant (problme de
compilation des drivers), modications dans la conguration de procmail et mutt, explications plus
dtailles sur le LILO graphique.
10 Fv 2003 Ajout des proxy avec authentication par login / mot de passe. Je vais bientt commener travailler
sur le redimensionnement des partitions NTFS avec ntfsresize, un outil libre susceptible de
remplaer Partition Magic !
11 Fv 2003 On encode les CDs en Ogg Vorbis, pas en MP3, cest mieux et a vite de violer des brevets !
Modications pour ceux qui doivent passer par un proxy pour accder Internet : adaptation dans la
procdure dinstallation et passage de FTP HTTP pour les sources de packages. Tests pas encore
compltement concluants de ntfsresize : a marche, mais cest compliqu utiliser, et mme si la
partition est dfragmente, on ne peut pas rcuprer tout lespace libre.
7 Mars 2003 Possibilit daccder aux chiers de cong via le tarball ou directement par wget, pour ceux qui ne
suivent pas lintgralit de la formation. Sortie dune nouvelle version dAlsa qui corrige un bug de
compilation. Erreur dans lilo.conf corrige. Le bug de "lezilla" ntant toujours pas corrig, je suis
revenu WinSCP.
8 Mars 2003 Opration "rduction de la TODO list" avec plein de petites amliorations diverses la cl !
Changement de "Linux Debian" en "Debian GNU/Linux".
9 Mars 2003 On vrie dsormais la signature des noyaux Linux que lon tlcharge ! Prcisons supplmentaires
sur ladresse des serveurs de news dans le chapitre sur slrn. Fix pour le problme des noms de
modules non indiqus dans laide de la conguration du noyau.
11 Mars 2003 Release de VLC 0.5.2 !
17 Mars 2003 Nouveau chapitre sur Centericq par Brian Fraval. Nouveau driver Speedtouch.
18 Mars 2003 Alsa 0.9.1 est sorti.
19 Mars 2003 GMC rempla par Nautilus.
22 Mars 2003 Alsa 0.9.2. Dbut de la migration du tutoiement au vouvoiement. Premire version de lannexe sur le
partage de connexion Internet.
23 Mars 2003 Premire version de lannexe Firewalling et partage de connexion Internet et modication de
lannexe sur le bridge pour intgrer les patchs de rewalling. Attention, les parties sur la
conguration du noyau et des modules ont t modies en consquence. Mise--jour de la partie
sur numlockx.
6 Avril 2003 Mise--jour avoir la sortie de nouveau drivers nVidia et intgration de plusieurs corrections reues
par mail.
8 Avril 2003 Plusieurs petites amliorations (ltrage, mkisofs,...).
10 Avril 2003 Simplications avec lutilisation de music123 et au niveau de lactivation de lUSB.
12 Avril 2003 Grande rorganisation dont le but tait que les utilisateurs dbutants accdent plus rapidement aux
applications graphiques : cration dune 5me partie sur les applications en console (mutt, slrn,
irssi,...), fusion de la partie sur le son en console et la souris en console dans "Utilisation du nouveau
noyau - 2", utilisation de Mozilla comme navigateur, lecteur de mail et de news en graphique et
dplacement du chapitre sur LaTeX en annexe. Ce quil reste faire : documenter un logiciel de
gravure graphique et un client jabber/ICQ graphique (je sais pas encore lesquels documenter... si
vous avez des suggestions, elles sont les bienvenues !)
14 Avril 2003 Fin de la migration vers le vouvoiement. Si vous trouvez des erreurs relatives cette modication,
nhsitez-pas les signaler ! Ajout de liens vers les sites web des projets.
24 Avril 2003 Ajout dun chapitre sur la gravure en mode graphique avec Eroaster. Ajout dun paragraphe sur le
"port forwarding" dans lannexe sur le NAT. Support du modem ADSL USB ECI Hi-Focus (crit
partir de la doc de Cdric Lignier).
iii
A propos de ce document
Date Ajout / Modication
25 Avril 2003 Fusion de lannexe sur le rewalling et sur le partage de connexion Internet. Support du modem
ADSL SAGEM USB de Free. Ajout dun chapitre Monter un serveur DHCP.
27 Avril 2003 Ajout de linstallation de PHP dans le chapitre sur Apache.
30 Avril 2003 Ajout dune annexe Utiliser GnomeMeeting et dune annexe Surveiller son matriel.
1 Mai 2003 Premire version du nouveau chapitre Monter un serveur DNS. Explications sur les patch noyau.
2 Mai 2003 Explications sur lACPI (encore incomplet). Fix dans la partie sur le modem SAGEM.
5 Mai 2003 Release ALSA 0.9.3a et encore un x pour le modem SAGEM.
6 Mai 2003 Ajout dun chapitre Monter un serveur de mail et complments dans le chapitre sur le serveur DNS.
7 Mai 2003 Ajout dune section sur les tunnels SSH.
8 Mai 2003 Ajout dun chapitre Le travail en groupe avec CVS qui nexplique pour linstant que la mise en place
dun serveur CVS, et pas lutilisation de CVS.
14 Mai 2003 Nouvelle release disync.
15 Mai 2003 Grosses modications sur la conguration du serveur CVS : simplications et accs par SSH aux
utilisateurs du systme.
18 Mai 2003 Ajout dun chapitre Monter un serveur de mailing-listes. Modication des descriptions des
diffrentes versions de Debian. Prcisions sur le passage en sid dans lannexe Complments sur la
gestion des packages Debian.
24 Mai 2003 Gnome 2 sur Woody ! Tous les screenshots ont t refaits. Utilisation dune cl USB. Amlioration
de lannexe Firewalling et partage de connexion Internet.
25 Mai 2003 Explication de quelques touches en plus dans Mutt.
28 Mai 2003 Fix pour la dernire version des drivers ALSA.
1er Juin 2003 Sur une suggestion de Nicolas Relange, jai rempla lftp et sftp par yafc... cest vraiment un
programme gnial !
7 Juin 2003 Comment faire marcher 2 souris en mme temps sous X (utile quand on a une souris externe sur un
ordinateur portable par exemple)
15 Juin 2003 Sortie du noyau 2.4.21. Suppression du passage de 6 10 consoles, pour plus de simplicit.
Dplacement de GPM en annexe. Intgration de lannexe ssh-agent dans le chapitre sur SSH.
30 Juin 2003 Sortie du patch pour faire un bridge rewallant avec le noyau 2.4.21.
2 Juillet 2003 Retrait de la ligne de sources.list pour les packages XFree 4.2, qui ntaient plus disponibles. Ils sont
dsormais intgrs dans le backport Gnome 2 (malheureusement, la cong du package
xserver-xfree86 nest plus en franais).
5 Juillet 2003 Ajout dune annexe Faire marcher une imprimante. Attention, je nai test cette annexe que sur une
seule imprimante, et cela require de passer en sid !
31 Juillet 2003 Fix pour les modems USB avec la mthode 1 CD. Ajout dun lien vers Andesi.org. Ajout de la
FreeBox en Ethernet. Prcision pour lutilisation dapt-get upgrade vs apt-get dist-upgrade. Jai eu
un mail dun utilisateur qui avait fait marcher CUPS sans problme sur une woody... jattends
dautres mails de ce genre pour enlever le paragraphe o je conseille de passer en sid pour faire
marcher CUPS. Ajout de "set alternates" dans muttrc.
5 Aot 2003 Passage de SGML XML ! Pourquoi ? Parce que cest mieux ! A court terme, aucun changement
notoire... mais a sera peut-tre utile plus tard. Jen ai prote pour avoir un "code" plus harmonis.
Quelques petites amliorations par-ci-par-l... mais je ne me souviens pas de la liste exacte !
Correction de nombreuses fautes dorthographe signales par Herv Dlze.
6 Aot 2003 Format PS temporairement retir... je narrive pas le faire marcher avec XML pour linstant.
10 Aot 2003 Suppression du chapitre sur Wine.
iv
A propos de ce document
Date Ajout / Modication
18 Aot 2003 Suppression de la mthode Gnome 2 et remplacement par la mthode Sid (il faut que je fasse encore
dautres tests... ce nest pas compltement ni). Deuxime vague de correction de fautes
dorthographe signales par Herv Dlze. Pas besoin dtre en Sid pour faire marcher CUPS.
WinSCP est pass en GPL.
19 Aot 2003 Ajout des questions de pppoeconf (merci Philippe Leconte). Rorganisation pour les connexions
ADSL/cble Ethernet qui utilisent DHCP. Jai eu le temps de tester plus en profondeur la mthode
Sid et apport de nombreuses corrections ( suivre).
25 Aot 2003 Correction au sujet du changement du nom du systme.
29 Aot 2003 Ajout dun chapitre trs important depuis le changement du 18 Aot que javais oubli de commiter
! Cela mtonne que personne ne me lait signal... je vais mettre en place un check des builds du
CVS pour ne pas que cela se reproduise.
10 Septembre 2003 Noyau 2.4.22 (le patch pour le bridge rewallant est pt... je nai donc pas modi lannexe bridge
pour linstant). Jai galement comment la section qui explique lapplication dun patch sur les
sources du noyau car le patch ACPI nest plus justi sur un 2.4.22 et le patch bridge FW est pt...
12 Septembre 2003 Le patch pour le bridge rewallant a t rpar... jai donc mis jour lannexe et dcomment la
section qui explique lapplication dun patch sur les sources du noyau.
13 Septembre 2003 Modication de lannexe sur iptables : on nutilise plus le script /etc/init.d/iptables (car il a t
abandonn dans la sid), mais des scripts maison lans depuis /etc/network/interfaces. Dsactivation
des services inetd inutiles dans le chapitre sur la scurit dans la partie 2.
21 Septembre 2003 Intgration des corrections (principalement orthographiques) envoyes par Ronan Plantec. Mise
jour de la procdure pour le modem ADSL Sagem F@st 800. Ajout de apt-listbugs pour des
mises--jour de la sid plus sres.
30 Septembre 2003 Fix dans lannexe des imprimantes : il faut en plus installer le package foomatic.
8 Octobre 2003 Intgration de petites corrections signales par Michal Latour.
9 Octobre 2003 Petit "bug x" dans les scripts de notication par mail des commits CVS crits par Boris Dors.
24 Octobre 2003 Rcriture de lannexe sur la mthode Debian pour compiler un noyau.
6 Novembre 2003 Fix suggr par Vincent B. pour linstallation des drivers propritaires nVidia pour ceux qui suivent
la mthode Sid.
9 Novembre 2003 Tentative pour supporter les utilisateurs de modem Sagem Fast 800 connects Free et dgroups.
Note : Ce document est crit en Docbook XML. Les sources sont disponibles par CVS anonyme :
% cvs -d :pserver:anonymous@cvs.via.ecp.fr:/cvs/formation-linux login
CVS password: [Le mot de passe est vide]
% cvs -d :pserver:anonymous@cvs.via.ecp.fr:/cvs/formation-linux checkout .
Vous pouvez galement consulter les sources via linterface CVSWeb
(http://www.via.ecp.fr/cgi-bin/viewcvs.cgi/?cvsroot=Formation+Linux).
Les images sont disponibles ladresse http://www.via.ecp.fr/~alexis/formation-linux/chiers/.
v
I. Installation de Debian GNU/Linux
Introduction
Cette premire partie vous guidera pour installer la distribution Debian GNU/Linux sur un PC avec une architecture Intel.
A la n de cette premire partie, le systme dexploitation sera install... mais vous ne pourrez rien en faire ! Ce sont les
parties suivantes (Utilisation et conguration de base de Debian GNU/Linux, Debian GNU/Linux en mode graphique,
Debian GNU/Linux en rseau et Debian GNU/Linux en console) qui vous apprendront installer des programmes et
utiliser votre nouveau systme. Je vous recommande de lire toute la premire partie avant de dbuter la procdure
dinstallation. Mais avant de commencer linstallation proprement parler, je vais commencer par prciser ce que sont les
logiciels libres, le projet GNU, Linux et Debian.
Chapitre 1. Linux, GNU, logiciels libres,... cest quoi ?
Quest-ce quun logiciel OpenSource ?
La compilation
Un programme informatique, que ce soit un noyau ou un logiciel, est constitu de nombreuses lignes de code, crites dans
un langage de programmation (le langage C dans le cas du noyau Linux). Ce code nest pas utilisable en tant que tel. Il faut
passer par la phase de compilation qui transforme le code source en programme excutable, souvent appel binaire. Il suft
davoir le binaire pour utiliser le programme ; on na pas besoin des sources du programme.
Il nexiste pas de moyen de remonter aux sources du programme partir du seul binaire. Quand on achte un logiciel
(Ofce par exemple) ou un systme dexploitation (Windows par exemple), on a un CD qui contient le binaire, mais pas les
sources. Il est donc impossible de savoir comment le programme est conu. Par consquent, on ne peut pas modier le
programme. On peut seulement lutiliser et ventuellement le copier lidentique.
Les logiciels propritaires et les logiciels OpenSource
Les logiciels propritaires sont donc les logiciels pour lesquels on na accs quaux binaires. Gnralement, on doit acheter
le logiciel, ce qui nous donne le droit dutiliser les binaires dans la limite des termes du contrat de licence. Certains
logiciels propritaires sont gratuits, on les appelle freeware.
Les logiciels OpenSource sont les logiciels pour lesquels on a accs au code source (do le terme OpenSource).
Le projet GNU
Les logiciels libres
Le projet GNU dmarre en 1983 sous limpulsion de Richard Stallman. Scandalis par les restrictions de liberts imposes
par les logiciels propritaires, il lance ce projet pour acclrer le dveloppement des logiciels libres, qui taient trs peu
nombreux lpoque. Lhistoire raconte que cest une histoire de driver dimprimante
(http://www.april.org/articles/divers/intro_ll.html#ToC3) qui lui a fait prendre conscience du danger de la logique
propritaire.
Il fonde alors une association, la Free Software Fundation (http://www.fsf.org/home.fr.html), et crit le GNU Manifesto
(http://www.gnu.org/gnu/manifesto.fr.html), dans lequel il dcrit les quatres liberts fondamentales que doivent respecter
un logiciel pour tre quali de logiciel libre (free software en anglais) :
la libert dexcution : tout le monde a le droit de lancer le programme, quel quen soit le but ;
la libert de modication : tout le monde a le droit dtudier le programme et de le modier, ce qui implique un accs au
code source ;
la libert de redistribution : tout le monde a le droit de rediffuser le programme, gratuitement ou non ;
la libert damlioration : tout le monde a le droit de redistribuer une version modie du programme.
Note : Il ne faut pas confondre les logiciels libres et les logiciels OpenSource : les logiciels libres garantissent les 4
liberts fondamentales dcrites ci-dessus, alors que les logiciels OpenSource ne garantissent a priori que le droit
daccs au code source. Dans la pratique, ladjectif OpenSource et souvent employ la place de libre.
1
Chapitre 1. Linux, GNU, logiciels libres,... cest quoi ?
La licence GPL
Pour donner un cadre juridique aux logiciels du projet GNU, il crit une licence, la GNU General Public License
(http://www.gnu.org/licenses/gpl.html) alias GPL (il existe une traduction franaise
(http://www.april.org/gnu/gpl_french.html) non ofcielle). Cette licence rprend les quatres libertes fondamentales cites
prcdemment et impose pour la libert damlioration que les versions modies dun logiciel sous licence GPL ne
peuvent tre redistribues que sous cette mme licence. Richard Stallman invite alors tous les logiciels libres adopter la
licence GPL.
Trs tt, Linus Torvalds adopte la licence GPL pour son noyau Linux. Aujourdhui, de trs nombreux logiciels libres sont
distribus sous Licence GPL (VideoLAN (http://www.videolan.org) par exemple). Mais la licence GPL nest pas la seule
licence utilise pour les logiciels libres. Par exemple, il existe aussi la licence BSD, qui diffre de la licence GPL par le fait
quune version modie dun logiciel sous Licence BSD peut tre redistribue sous une autre licence, mme propritaire.
Quest-ce que Linux ?
Un noyau
Linux dsigne au sens strict un noyau de systme dexploitation.
Figure 1-1. Logo Linux
Le noyau est la couche de base dun systme dexploitation. Cest le noyau qui gre la mmoire, laccs aux priphriques
(disque dur, carte son, carte rseau, etc...), la circulation des donnes sur le bus, les droits daccs, les multiples processus
qui correspondent aux mutiples tches que lordinateur doit excuter en mme temps, etc...
Par contre, le noyau ne gre pas le mail, lafchage des pages Web, ou encore le traitement du texte. Ce sont des
programmes ou applications qui sen chargent. Ces programmes viennent se greffer sur le noyau, et ils doivent tre adapts
celui-ci.
Ce noyau de systme dexploitation a loriginalit dtre multi-utilisateurs et multi-tches et de fonctionner sur de
nombreuses plates-formes (Intel, Apple, Sparc, etc...). Il est conforme la norme POSIX et est distribu sous Licence
GPL. Il a la rputation dtre able, stable et scuris. Son appartenance au monde du libre garantit une correction rapide
des erreurs qui pourraient tre dcouvertes.
Une distribution Linux
Comme nous venons de le voir, Linux ne se suft pas lui-mme. Avec un simple noyau, on ne peut rien faire ! Le noyau
Linux vient donc lintrieur de distributions.
Une distribution Linux, cest un ensemble cohrent de plusieurs choses :
un noyau Linux,
2
Chapitre 1. Linux, GNU, logiciels libres,... cest quoi ?
des programmes, en majorit libres (un navigateur Web, un lecteur de Mail, un serveur FTP, etc...),
une mthode pour installer et dsinstaller facilement ces programmes,
un programme dinstallation du systme dexploitation.
Le noyau Linux ne se suft donc pas lui mme, mais on fait souvent un abus de langage en dsignant par le terme Linux
ce qui est en fait une distribution Linux.
Il existe de nombreuses distributions Linux, comme par exemple RedHat (http://www.redhat.com), Mandrake
(http://www.linux-mandrake.com/fr), SuSE (http://www.suse.de/fr), ou Debian (http://www.debian.org) (celle que je vous
propose dinstaller).
La plupart des distributions sont gratuites, car constitues exclusivement de logiciels libres ou de programmes propritaires
gratuits. On peut donc tlcharger les CDs librement sur Internet. On peut galement acheter des botes contenant les CDs
dans le commerce. Les prix vont dune dizaine deuros pour couvrir les frais de presse des CDs plusieurs dizaines
deuros quand il y a une documentation abondante et un support technique pendant une certaine dure.
Un peu dhistoire
Linux nat en 1991 dans la chambre dun tudiant Finlandais, Linus Torvalds. Il dveloppe un noyau en sinspirant de la
philosophie Unix. Son but initial est de samuser et dapprendre les instructions Intel 386. Quand son noyau commence
marcher, il le met en libre tlchargement sur Internet en demandant aux gens de lessayer et de lui dire ce qui ne marche
pas chez eux.
De nombreuses personnes se montrent intresses et laident dvelopper son noyau. Ds la version 0.12, il choisi de
mettre Linux sous licence GPL. Quelques annes plus tard, dautres bnvoles commencent crer des distributions Linux.
Aujourdhui, le succs de Linux sexplique par la qualit technique du noyau, mais aussi par la prsence de nombreuses
distributions Linux qui facilitent linstallation du systme et des programmes. Il sexplique surtout par son appartenance au
monde du libre qui lui apporte une grande rapidit et qualit de dveloppement. Le nombre dutilisateurs de Linux est
aujourdhui estim plusieurs millions !
Si vous voulez en savoir plus sur lhistoire de Linux et de son pre fondateur, Linus Torvalds, je vous conseille le livre quil
a crit intitul Just for fun - History of an accidental revolution.
3
Chapitre 2. La distribution Debian
Figure 2-1. Logo Debian
Pourquoi jai choisi Debian ?
Jai choisi la distribution Debian pour plusieurs raisons :
ses qualits techniques : Debian est rpute pour sa stabilit, pour son trs bon systme de gestion des dpendances entre
les diffrents composants (ce qui rend linstallation et le retrait des programmes trs facile), et pour sa rapidit rparer
les failles de scurit ;
parce que cest la distribution utilise VIA (http://www.via.ecp.fr) et VideoLAN (http://www.videolan.org), deux
organisations dont je suis membre ;
parce que cest la premire distribution Linux que jai installe et utilise, et elle ma toujours satisfait jusqu prsent !
Ce qui diffrencie Debian des autres distributions
Au niveau de la philosophie
Debian est aujourdhui la seule distribution non-commerciale. Debian est une organisation but non lucratif constitue
dun millier de dveloppeurs bnvoles rpartis sur toute la plante. Elle est dirige par un project leader lu par les
dveloppeurs. Les dcisions se prennent au consensus ou par vote.
4
Chapitre 2. La distribution Debian
Figure 2-2. Carte des dveloppeurs Debian
Les autres distributions Linux sont des socits commerciales, ce qui ne les empche pas de produire des logiciels libres !
Debian se distingue aussi par son attachement trs fort la philosophie du logiciel libre. Cet attachement est forg dans son
Contrat Social (http://www.fr.debian.org/social_contract) et dans Les principes du logiciel libre selon Debian
(http://www.fr.debian.org/social_contract#guidelines) ; qui sont deux textes relativement courts que je vous invite lire.
Au niveau technique
Quest-ce quun package ?
Un package est un logiciel ou une partie dun logiciel que lon a mis dans un paquet. Ce paquet prend la forme dun chier
avec un nom particulier : nom-du-logiciel_numro-de-version_nom-de-larchitecture.deb (par exemple le
chier apache_1.3.24_i386.deb contient la version 1.3.24 du programme Apache pour processeurs Intel). Ce chier
contient les binaires du programme ainsi quun certain nombre den-ttes. Ces en-ttes contiennent :
le nom du package, son numro de version, larchitecture pour laquelle il a t compil, et la catgorie laquelle il
appartient ;
le nom du dveloppeur Debian qui sen occupe et son adresse e-mail ;
une description du logiciel quil contient ;
le nom et la version des autres packages dont il dpend ainsi que des autres packages avec lesquels il entre en conit.
Le systme de gestion des packages
Le systme de gestion des packages de Debian est trs performant et trs facile utiliser. Grce lui, les logiciels
sinstallent, se retirent et peuvent tre mis--jour trs facilement. Vous le dcouvrirez dans la deuxime partie de cette
formation.
5
Chapitre 2. La distribution Debian
La stabilit
Debian GNU/Linux est rput pour tre un systme dexploitation trs stable. Avant chaque nouvelle version, le systme
est longuement test et il ne sort quune fois que tous les bugs connus ont t corrigs. Debian sest dot dun Bug
Tracking System (http://www.debian.org/Bugs/) (BTS) trs performant et trs pratique qui permet aux dveloppeurs
davoir un retour dexprience instructif des utilisateurs, ce qui les aide corriger les bugs rapidement.
La procdure dinstallation
Mme si ce nest pas la procdure dinstallation la plus agrable loeil de toutes les distributions Linux, elle nen reste
pas moins une procdure rapide et efcace, qui permet de bien matriser linstallation de son systme dexploitation.
Les architectures
Debian GNU/Linux est disponible sous 11 architectures (http://www.debian.org/releases/stable/releasenotes), dont Intel,
PowerPC (les Macintosh) et Sparc (les Sun).
En savoir plus...
Pour en savoir plus sur Debian (ses textes fondateurs, son histoire, son organisation et son fonctionnement technique), je
vous invite lire les slides (http://www.via.ecp.fr/formations/2001-02/conf-debian/) de la confrence sur Debian donne
par Samuel Hocevar le 24 avril 2002 et intitule "Debian, what your mom would use if it was 20 times easier" !
Les diffrentes versions de Debian
Il existe trois versions de Debian :
une version ofcielle aussi appele version stable, numrote 3.0 (elle a pour linstant t rvise une fois, la dernire
version est donc la 3.0r1) ;
une version testing qui deviendra la future version stable ;
une version unstable destine tester les nouveaux packages.
Chaque version a son utilit. Les avantages et inconvnients de chaque version sont prsents dans le tableau ci-dessous :
Tableau 2-1. Les trois versions de Debian
Nom de la version Type de la version Avantages Inconvnients Utilisation
Woody Stable Stabilit ; mises jour
de scurit suivies
Packages un peu vieux
pour les applications
graphiques
Pour les serveurs et les
utilisateurs "normaux"
Sarge Testing Packages plus
nombreux et un peu
plus rcents
Pas de suivi des mises
jour de scurit
Sert laborer la future
version stable de Debian
; non adapt pour une
utilisation courante
6
Chapitre 2. La distribution Debian
Nom de la version Type de la version Avantages Inconvnients Utilisation
Sid Unstable Packages encore plus
nombreux et le plus
rcent possible ; mises
jour de scurit suivies
Mises jour incessantes
des packages
Pour les utilisateurs
expriments qui
veulent bncier des
dernires versions des
applications pour leur
ordinateur personnel
Je vous propose dans cette formation de commener par installer une Woody, et de passer ventuellement en Sid plus tard,
au dbut de la partie Debian GNU/Linux en mode graphique. Il faut savoir que vous pouvez passer facilement dune
version infrieure une version suprieure (par exemple de Woody Sid), mais linverse est plus difcile. Donc si vous
installez une Woody, vous pourrez passer facilement en Sarge ou en Sid ; mais vous ne pourrez que difcilement revenir en
Woody ensuite.
Lhistoire
La premire version de Debian, la 0.01 est sortie en 1993. Puis les versions senchanent, avec des noms inspires du lm
Toy Story (v1.1 alias Buzz en 1996 ; v1.2 alias Rex en 1996 ; v1.3 alias Bo en 1997 ; v2.0 alias Hamm en 1998 ; v2.1 alias
Slink en 1999 ; v2.2 alias Potato en 2000... enn v3.0 alias Woody en 2002). Alors que Debian ntait compos que de
quelques programmeurs ses dbuts, lorganisation compte aujourdhui un millier de dveloppeurs rpartis sur toute la
plante et qui soccupent de quelques 9000 packages ! Pour en savoir plus sur lhistoire de Debian, je vous invite lire le
document A brief history of Debian (http://www.debian.org/doc/manuals/project-history/).
7
Chapitre 3. Motivation et matriel requis
Motivation
Linstallation de Linux demande beaucoup de motivation. Il faut tout rapprendre de zro, surtout pour ceux qui ne sont
pas familiers avec le monde Unix. Cela signie de longues heures dapprentissage avec son lot dessais infructeux et de
dceptions. Une certaine dose de tenacit est donc ncessaire !
Aprs quelques mois, vous aurez (jespre !) la satisfaction de matriser un systme dexploitation able et puissant, qui
vous permettra de raliser des choses que vous ne pouviez pas faire auparavant. Si en plus vous aimez ce qui touche au
rseau, alors vous serez probablement combl : Linux a dabord t un systme dexploitation pour les serveurs qui doivent
rester branchs au rseau 24h/24, avant dacqurir plus rcemment des fonctions multimdia pour le grand public.
Le matriel requis
La conguration requise
Cette formation ne couvre que linstallation de Debian GNU/Linux sur un PC avec une architecture Intel (processeurs
Intel, AMD ou Cyrix). Linux est un systme dexploitation peu gourmand en ressources. Pour une utilisation normale, un
Pentium avec 32 Mo de RAM et 800 Mo despace libre sur le disque dur est ncessaire. Vous pouvez aussi linstaller sur un
486 avec 12 Mo de RAM... mais il faudra se passer de certains composants (pas de mode graphique par exemple). Si vous
avez un Pentium II avec 64 Mo de RAM ou plus, les application graphiques seront plus agrables utiliser car plus rapides.
Choix de la mthode dinstallation
Dans cette formation, jexplique 4 mthodes dinstallation diffrentes :
Mthode 1 mini-CD,
Mthode 1 CD,
Mthode 7 CDs / 1 DVD,
Mthode 6 disquettes.
Pour savoir quelle mthode dinstallation vous devez suivre, utilisez le diagramme ci-dessous :
8
Chapitre 3. Motivation et matriel requis
Figure 3-1. Choix de la mthode dinstallation
Matriel requis selon la mthode dinstallation
Mthode 1 mini-CD
Vous aurez simplement besoin dun CD-R ou CD-RW.
Mthode 6 disquettes
Vous aurez besoin de 6 disquettes 1,44 Mo.
Mthode 1 CD
Vous aurez besoin dun CD-R ou CD-RW et :
9
Chapitre 3. Motivation et matriel requis
si vous comptez faire cohabiter Windows et Linux sur le mme ordinateur, vous aurez galement besoin dun tout petit
peu de place sur votre partition Windows.
si vous comptez installer un Linux seul, vous aurez galement besoin dune disquette ou dun CD-R ou CD-RW
supplmentaire.
Mthode 7 CDs / 1 DVD
Il faut que vous vous procuriez les 7 CDs ou le DVD (si vous avez un lecteur de DVD) de la Debian version 3.0r0 ou 3.0r1
alias Woody. Vous trouverez une liste de vendeurs de CD Debian sur le site ofciel de Debian
(http://www.debian.org/CD/vendors/). En France, un des sites de vente en ligne de CD et DVD Debian pas cher et rput
srieux est Ikarios (http://ikarios.com).
Si vous comptez faire cohabiter Windows et Linux sur le mme ordinateur, vous aurez galement besoin dun tout petit peu
de place sur votre partition Windows ; si vous comptez installer un Linux seul, vous aurez besoin dune disquette.
Le manuel ofciel dinstallation
Les instructions de cette formation sont normalement sufsantes, mais ceux qui ont une conguration ou des besoins
particuliers trouveront toutes les informations sur linstallation dans le manuel dinstallation ofciel
(http://www.debian.org/releases/stable/i386/install.fr.html).
10
Chapitre 4. Les prliminaires
Rchir au partitionnement du disque dur
Quelle place allouer Linux ?
Ce quil faut tout dabord savoir, si vous voulez faire cohabiter Linux et Windows sur le mme ordinateur, cest que vous
pouvez avoir accs :
vos partitions Windows depuis Linux
en lecture et criture pour des partitions FAT,
en lecture seulement pour des partitions NTFS,
vos partitions Linux depuis Windows en lecture seule.
Il vous faudra de toute faon plusieurs partitions Linux. Mais au total, il vous faut :
300 Mo environ pour un petit systme sans serveur graphique ;
700 Mo pour un petit systme avec un serveur graphique et quelques applications graphiques ;
3 Go pour un systme complet avec un serveur graphique et de nombreuses applications graphiques et des outils de
dveloppement avans.
Noubliez pas de compter en plus les chiers personnels que vous voudrez stocker sur vos partitions Linux !
Quelle organisation du disque dur ?
La thorie des partitions
Chaque disque dur peut contenir quatre partitions primaires au maximum. Si vous voulez plus de 4 partitions, il va falloir
transformer une des partitions primaires en partition tendue, aussi appele primaire tendue. Dans cette partition tendue,
vous pouvez crer un nombre illimit de lecteurs logiques, qui formeront autant de partitions.
Conseils pour faire cohabiter Windows et Linux
Je vais donner quelques conseils pour une cohabitation Windows / Linux, qui sont les deux seuls systmes dexploitation
que je connais bien.
Tout dabord, il faut savoir que :
DOS, Windows 3.x, 95 et 98 ne sinstallent que sur la premire partition primaire ;
Windows ME peut sinstaller sur nimporte quelle partition primaire (l, je ne suis pas sr...) ;
Windows 2000 et XP peuvent sinstaller sur une partition primaire ou un lecteur logique ;
Linux peut sinstaller sur des partitions primaires, des lecteurs logiques, ou un mix des deux !
Pour faire cohabiter Linux et Windows, vous pouvez adopter lorganisation suivante pour votre disque dur :
1. dabord une partition primaire pour Windows ;
2. ensuite une grande partition tendue dcoupe en deux lecteurs logiques (ou plus) pour Linux.
11
Chapitre 4. Les prliminaires
Sauvegarder ses donnes
Il est trs fortement recommand de sauvegarder toutes les donnes importantes (chiers perso, mails, bookmarks, etc...) se
trouvant sur lordinateur sur lequel se fera linstallation : quand on installe un nouvel OS et quand on touche au
partitionnement du disque dur, une mauvaise manipulation est toujours possible !
Informations obtenir avant de commencer
Quest-ce quun module ?
Techniquement, les modules sont des morceaux de noyau qui peuvent tre insrs ou enlevs sans redmarrer lordinateur.
Cela prsente lavantage davoir un noyau de taille raisonnable tout en procurant une grande souplesse.
En pratique, un module est un pilote dun priphrique ou dune fonctionnalit. Par exemple, pour faire marcher une carte
rseau, on a besoin dinsrer le module conu pour cette carte rseau.
Si vous avez une carte rseau Ethernet...
Si vous avez une connexion Internet par rseau local, par modem cble Ethernet ou par modem ADSL Ethernet, alors vous
avez un carte rseau Ethernet PCI, PCMCIA ou intgre... quil va falloir faire marcher !
Avec la version actuelle de Debian, rares sont les cartes rseau PCI et intgres qui sont reconnues automatiquement au
dmarrage de la procdure dinstallation. Pour les cartes PCI et intgres, il faut donc si possible connatre le nom du
module de la carte rseau avant de commencer la procdure dinstallation. Si vous avez une carte rseau PCMCIA, elle est
normalement reconnue automatiquement, vous pouvez donc passer directement la section suivante.
Commencez par identier avec prcision le modle de votre carte rseau. Sous Windows, allez dans le Gestionnaire de
priphriques, branche Cartes rseau : le nom de votre carte rseau apparat.
Figure 4-1. Gestionnaire de priphriques
Ensuite, cherchez le nom du pilote Linux correspondant, en commenant par regarder dans la partie ddie aux drivers du
Linux Ethernet HOWTO (http://www.ibiblio.org/mdw/HOWTO/Ethernet-HOWTO-4.html). Si vous ne trouvez pas votre
bonheur dans cette page, faites des recherches dans Google (http://www.google.fr) en tapant comme mots cls :
Marque_de_la_carte Nom_du_modle_de_la_carte Linux module.
12
Chapitre 4. Les prliminaires
Figure 4-2. Recherche Google
Si vous avez un ordinateur portable, commencez votre recherche en allant sur le site Linux on Laptops
(http://www.linux-on-laptops.com/). Ce site indexe par marque et par modle les pages web ralises par les possesseurs
dordinateurs portables o ils expliquent les drivers utiliser pour faire marcher les diffrents composants intgrs dans
lordinateur portable, dont la carte Ethernet.
Une fois que vous avez trouv le nom du module correspondant votre carte rseau, notez-le, vous en aurez besoin
pendant la procdure dinstallation.
Note : Pour les cartes rseau 3Com PCI de la famille 905 (cartes rseau prtes par VIA), le module sappelle 3c59x.
Si vous tes connect un rseau local...
Si lordinateur connect un rseau local reli Internet, renseignez-vous pour savoir sil y a un serveur DHCP sur le
rseau local (cas de la majorit des rseaux et en particulier du rseau VIA) :
si un serveur DHCP est prsent, vous navez rien faire, la conguration rseau se fera automatiquement lors de la
procdure dinstallation,
sil ny a pas de serveur DHCP, il faut que vous connaissiez vos paramtres rseau (adresse IP, masque de sous-rseau,
passerelle, nom de domaine, adresse des serveurs DNS) avant de commencer linstallation. Vous pouvez les obtenir avec
la commande winipcfg sous Windows 95 - 98 - ME ou ipcong /all sous Windows NT 4 - 2000 - XP.
Si vous avez un modem ADSL ou cble de type USB ou PCI...
Si vous avez un modem ADSL ou cble de type USB ou PCI, il faut que vous connaissiez prcisement le modle de votre
modem.
13
Chapitre 5. Cration des CDs et des disquettes
Cration du mdia de boot
Quest-ce quune saveur ?
Dans le langage Debian, une saveur est un type de noyau utilis par la procdure dinstallation. Ce noyau sera utilis
jusqu ce que vous installiez un autre noyau, comme expliqu dans la deuxime partie au chapitre Conguration du noyau
Linux. Il existe 4 saveurs : idepci, vanilla, compact et bf24. Chaque saveur a ses spcicits, comme expliqu dans le
manuel dinstallation ofciel (http://www.debian.org/releases/stable/i386/ch-install-methods.fr.html#s-kernel-choice).
La saveur par dfaut est idepci, mais nous allons utiliser la saveur bf24 qui est base sur un noyau plus rcent et qui a donc
lavantage de supporter lUSB et les systmes de chiers journaliss. Certains ordinateurs (surtout des portables)
refuseront de booter la saveur bf24, il faudra alors essayer les autres saveurs.
Mthode 7 CDs / 1 DVD
Le mdia de boot est entre vos mains : le CD n

1 (ou le DVD) contient les 4 saveurs, les pilotes de priphriques, le


systme de base ainsi quune partie des 9000 packages (tous dans le cas du DVD).
Mthode 1 mini-CD ou 1 CD
Tlcharger limage du CD
Mthode 1 mini-CD : vous allez tlcharger une image de 10 Mo environ qui comprend la saveur bf24 ainsi que les
pilotes de priphriques ; le systme de base et les packages seront tlchargs par Internet pendant la procdure
dinstallation. Cette image a t faite par un dveloppeur Debian, mais nest pas ofcielle. Tlchargez limage depuis le
site du dveloppeur Debian (http://people.debian.org/~dwhedon/boot-oppies/bootbf2.4.iso) ou, pour les personnes
connectes VIA, depuis le miroir priv de VIA (ftp://ftp.via.ecp.fr/pub/debian-cd/3.0_netiso/bootbf2.4.iso).
Mthode 1 CD : vous allez tlcharger limage ofcielle du CD n

1 de Debian version 3.0r0 ou 3.0r1. Ce CD est


disponible en deux version : la version normale, et la version non-US, qui contient des logiciels incluant des fonctions
cryptographiques interdits dexportation aux Etats-Unis. Vous allez donc tlcharger la version non-US du CD n

1 ;
cette image pse un peu moins de 650 Mo et contient les 4 saveurs, les pilotes de priphriques, le systme de base ainsi
quune partie des 9000 packages. Tlcharge limage depuis le miroir Debian de Nerim
(ftp://ftp.nerim.net/debian-cd/3.0r1/i386/debian-30r1-i386-binary-1_NONUS.iso) ou, pour les personnes connectes
VIA, depuis le miroir priv de VIA
(ftp://debian.via.ecp.fr/pub/debian-cd/3.0_r1/debian-30r1-i386-binary-1_NONUS.iso).
Vrier lintgrit de limage du CD
Pour vrier quun chier est bien le vrai chier original, on calcule la somme MD5 du chier, et on la compare la
somme MD5 ofcielle. Deux chiers ayant la mme somme MD5 sont normalement identiques.
Pour calculer la somme MD5 dun chier sous Windows, utilisez le petit programme GPL MD5Summer
(http://www.md5summer.org). Il faut ensuite comparer le rsultat obtenu avec celui indiqu sur la page de tlchargement :
Mthode 1 mini-CD : page du dveloppeur Debian (http://people.debian.org/~dwhedon/boot-oppies/) pour les
mini-CDs.
14
Chapitre 5. Cration des CDs et des disquettes
Mthode 1 CD : chier MD5SUMS (ftp://ftp.nerim.net/debian-cd/3.0/i386/MD5SUMS) sur le site miroir de Nerim.
Graver le CD
Gravez limage du CD en utilisant votre logiciel de gravure favori. Cette page
(http://www.linux-mandrake.com/howtos/iso/howtoisofr.html) explique comment on fait sous Windows avec WinOnCD et
Easy CD Creator (cest pour une ISO Linux Mandrake, mais cest videmment pareil pour les ISOs Debian).
Avertissement
Il ne faut pas graver le chier machin.iso sur le CD, mais trouver dans votre logiciel de gravure le
menu qui vous permet de graver un CD partir de son image ISO !
Mthode 6 disquettes
Tlcharger les images des disquettes
Commencez par tlcharger les 6 chiers, correspondant aux images des 6 disquettes de la saveur bf24, depuis un des
miroirs proposs et mettez-les dans un rpertoire temporaire. Ces 6 disquettes contiennent le noyau de la saveur bf24 ainsi
que les pilotes de priphriques ; le systme de base et les packages seront tlchargs par Internet pendant la procdure
dinstallation.
rescue.bin : Miroir Debian franais
(ftp://ftp.fr.debian.org/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/rescue.bin) ou Miroir VIA
(ftp://ftp.via.ecp.fr/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/rescue.bin).
root.bin : Miroir Debian franais
(ftp://ftp.fr.debian.org/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/root.bin) ou Miroir VIA
(ftp://ftp.via.ecp.fr/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/root.bin).
driver-1.bin : Miroir Debian franais
(ftp://ftp.fr.debian.org/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/driver-1.bin) ou Miroir VIA
(ftp://ftp.via.ecp.fr/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/driver-1.bin).
driver-2.bin : Miroir Debian franais
(ftp://ftp.fr.debian.org/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/driver-2.bin) ou Miroir VIA
(ftp://ftp.via.ecp.fr/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/driver-2.bin).
driver-3.bin : Miroir Debian franais
(ftp://ftp.fr.debian.org/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/driver-3.bin) ou Miroir VIA
(ftp://ftp.via.ecp.fr/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/driver-3.bin).
driver-4.bin : Miroir Debian franais
(ftp://ftp.fr.debian.org/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/driver-4.bin) ou Miroir VIA
(ftp://ftp.via.ecp.fr/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/driver-4.bin).
Crer les disquettes
Tlchargez et installez la dernire version de RawWrite for Windows
(http://uranus.it.swin.edu.au/~jn/linux/rawwrite.htm).
Dans longlet Write, slectionnez le chier image rescue.bin puis cliquez sur Write. Faites de mme pour les 5 autres
chiers images.
15
Chapitre 5. Cration des CDs et des disquettes
Figure 5-1. RawWrite for Windows
Les chiers de conguration et les pilotes spciques
Mthode 6 disquettes ou 1 mini-CD
Vous navez pas besoin de pilotes spciques et vous tlchargerez les chiers de conguration au fur et mesure. Passez
directement au chapitre suivant Prparation du disque dur.
Mthode 1 CD ou 7 CDs / 1 DVD
Tlchargez :
Larchive chiers-cong-linux.tar.gz (http://www.via.ecp.fr/~alexis/formation-linux/chiers-cong-linux.tar.gz) (28 Ko)
contenant les chiers de conguration.
Si vous avez un modem ADSL USB de type Alcatel SpeedTouch, tlchargez la dernire version du package Debian sur
la page de tlchargement (http://speedtouch.sourceforge.net/index.php?/download.fr.html) du projet de dveloppement
dun driver GPL pour ce modem ainsi que le microcode du modem speedmgmt.tar.gz
(http://download.ethomson.com/download/speedmgmt.tar.gz).
Si vous avez un modem ADSL USB de type Hi-Focus, tlchargez la dernire version du package Debian sur la page de
tlchargement (http://eciadsl.ashtux.org/download.php) du projet de dveloppement dun driver libre pour ce modem.
Si vous avez un modem ADSL USB de type SAGEM F@st 800, tlchargez la dernire version du driver sur le site
Eagle USB 4 Linux (http://eagle-usb.fr.st/) (il sagit du chier eagle-version.tar.gz) ainsi quune version modie
du package hotplug
(http://www.fs.tum.de/~bunk/debian/dists/woody/bunk-1/main/binary-i386/hotplug_0.0.20030117-4_all.deb).
Ensuite, deux cas se prsentent :
si vous comptez faire cohabiter Windows et Linux sur le mme ordinateur, gardez tous ces chiers dans un rpertoire
temporaire de votre partition Windows.
16
Chapitre 5. Cration des CDs et des disquettes
sinon, copiez tous ces chiers sur une disquette ou gravez-les sur un CD pour pouvoir ensuite les utiliser sur lordinateur
sur lequel vous ferez linstallation.
17
Chapitre 6. Prparation du disque dur
Deux cas
Si vous avez dj de lespace disque non partionn de taille sufsante pour accueillir Linux, alors vous pouvez tout de
suite passer au chapitre suivant Dbuter linstallation.
Sinon, il va falloir librer de la place et crer une partition vierge destine accueillir Linux. Cest lobjet de ce chapitre.
Crer une partition vierge
Dmarche
Je suppose que votre disque dur contient simplement une seule partition primaire ddie Windows au format FAT ou
NTFS qui couvre tout le disque dur.
Pour savoir si votre partition est formate en FAT ou NTFS, allez dans le Poste de Travail, faites un clic-droit sur le lecteur
C : cest crit dans longlet Gnral.
Lorsque Windows doit crire un chier sur le disque, il le fait la suite du dernier chier crit. Mais quand vous supprimez
des chiers, Windows ne remplit pas systmatiquement les trous de votre disque dur. Si bien que rapidement, votre disque
ressemble du gruyre...
Figure 6-1. Disque fragment
La premire opration consiste donc faire une dfragmentation, cest--dire dfragmenter vos chiers et mettre de lordre
dans le disque dur, de sorte quil ne reste quun bloc de donnes compact en dbut de disque.
Figure 6-2. Disque dfragment
Ensuite, vous allez utiliser un utilitaire tel que ps ou Partition Magic pour rduire la taille de la partition initiale et crer
une deuxime partition sur lespace libre la n de la grande partition initiale.
Figure 6-3. Disque avec 2 partitions
18
Chapitre 6. Prparation du disque dur
Dfragmenter
Cest trs simple : sous Windows, allez dans le poste de travail et faites un clic droit sur votre disque dur (lecteur C:
normalement). Slectionnez Proprits, allez dans longlet Outils et cliquez sur Dfragmenter maintenant.
Cest un peu long, je vous laccorde, mais dune part a fait du bien votre disque dur, et dautre part cest ncessaire alors
patience !
Avertissement
Avant daller plus loin, jespre que vous avez bien fait une sauvegarde des donnes importantes de
votre disque dur comme je vous lai conseill.
Rduire la partition Windows...
formate en FAT 16 ou FAT 32
Je vous conseille dutiliser le programme GPL Fips. Tlchargez le chier ps20.zip
(ftp://ftp.fr.debian.org/debian/tools/ps20.zip) et dcompressez-le dans un rpertoire temporaire.
Crez une disquette bootable : allez dans le poste de travail, faites un clic-droit sur le lecteur de disquette, slectionnez
Formater. Une bote de dialogue apparat :
sous Windows 95 - 98 - ME, slectionnez Complet, cochez Copier les chiers systme et cliquez sur Dmarrer.
sous Windows 2000 - XP, cochez Crer une disquette de dmarrage MS-DOS et cliquez sur Dmarrer.
Copiez le chier fips.exe sur la disquette.
Bootez alors sur la disquette. Pour cela, mettez-la dans le lecteur de disquette et redmarrez votre ordinateur. Vriez la
squence de boot dans le BIOS de votre ordinateur, et assurez-vous que le lecteur de disquette dsign par A ou Floppy y
intervient avant le disque dur dsign par C ou HDD-0.
Lancez le programme fips.exe qui est sur la disquette. Aprs deux Press any Key, il vous demande si vous voulez faire
une copie de vos secteurs root et boot : faites ce quil vous plait ! Ensuite, utilisez les ches gauche et droite pour xer la
limite entre votre partition Windows et vos futures partitions Linux. Cest l quil faut xer la taille totale que vous
allouerez Linux. Il vous marque alors le futur rsultat. Si a vous plait, tapez c, sinon tapez r. Ensuite vient la validation
nale : tapez y. Voil, cest fait ! Ne vous inquitez pas sil vous marque la n Erreur dallocation mmoire,
Impossible de charger COMMAND, systme suspendu : a a quand mme march ! Enlevez la disquette et faites
Ctrl-Alt-Suppr pour redmarrer sous Windows. Il est conseill de faire un scandisk sur la partition qui a t rduite.
formate en NTFS
Deux utilitaires payants sont capables de rduire une partition NTFS pour laisser de la place la n du disque pour
installer Linux :
Partition Magic (http://www.powerquest.com/partitionmagic/),
Partition Manager (http://www.partition-manager.com/frn/n_pm_main.htm).
Un outil libre est en dveloppement : ntfsresize (http://mlf.linux.rulez.org/mlf/ezaz/ntfsresize.html). Il marche, mais il
reste pour linstant compliqu utiliser et ne permet pas de rcuprer tout lespace disque libre sur la partition NTFS
mme si le disque a t dfragment. Je vous dconseille de lutiliser.
19
Chapitre 6. Prparation du disque dur
Rsultat
Votre disque dur contient maintenant deux partitions : une premire pour Windows, et une deuxime qui servira pour
installer Linux.
20
Chapitre 7. Dbuter linstallation
Vous allez enn commencer la procdure dinstallation de Linux !
Booter
Rgler la squence de boot
Redmarrez votre ordinateur et entrez dans le BIOS en appuyant sur une touche au dmarrage (gnralement Suppr ou
F1).
Naviguez dans les menus du BIOS jusqu la page qui permet de changer la squence de boot. Assurez-vous que le lecteur
de CD ou DVD dsign par CD-ROM ou le lecteur de disquette dsign par A ou Floppy y intervient avant le disque dur
dsign par C, Hard Drive ou HDD-0.
Quittez le BIOS en sauvegardant les changements.
Cest parti...
Figure 7-1. Le premier cran
Mthode 1 mini-CD
Insrez le CD et redmarrez votre ordinateur. Quand vous voyez lcran ci-desssus, appuyez sur Entre et le systme
devrait booter sans problme.
Mthode 1 CD ou 7 CDs / 1 DVD
Insrez le CD n

1 ou le DVD et redmarrez votre ordinateur. Quand vous voyez lcran ci-desssus, tapez bf24 :
boot: bf24
...et le systme devrait booter sans problme.
21
Chapitre 7. Dbuter linstallation
Mthode 6 disquettes
Insrez la disquette rescue et redmarrez votre ordinateur. Quand vous voyez lcran ci-desssus, appuyez sur Entre et le
systme devrait booter sans problme. Aprs quelques secondes, il sarrte et vous dit :
VFS: Insert root floppy to be loaded into
RAM disk and press ENTER
Insrez alors la disquette root et appuyez sur Entre.
Ca marche ?
Certains ordinateurs (surtout des portables) sont incompatibles avec la saveur bf24 et se bloquent lors du boot. Il vous faut
alors essayer les autres saveurs :
si vous utilisez la mthode 6 disquettes, vous allez devoir tlcharger les images des disquette dune autre saveur et les
refaire ;
si vous utilisez la mthode 1 mini-CD, vous allez devoir tlcharger une ISO correspondant une autre saveur depuis la
page du dveloppeur Debian (http://people.debian.org/~dwhedon/boot-oppies/) pour les mini-CDs et re-graver un CD ;
si vous utilisez la mthode 1 CD ou 7 CDs / 1 DVD, il vous suft de booter de nouveau sur le CD et de taper le nom
dune autre saveur au prompt boot:.
Par contre, la suite de cette formation nest pour linstant pas adapte aux autres saveurs. Si vous utilisez un modem ADSL
USB, ladaptation risque dtre un peu difcile ; sinon, le seul changement est que vous ne pourrez pas choisir le type de
systme de chiers pour vos partitions Linux (ce sera forcment Ext2 au lieu de Ext3). Dans tous les cas, si vous rencontrez
ce problme, merci de me le signaler ladresse formation-linux@via.ecp.fr (mailto:formation-linux@via.ecp.fr) pour que
je puisse estimer la frquence de ce problme et savoir plus exactement sur quel type dordinateur il intervient.
Mais dans limmense majorit des cas, le boot se passe sans problme et vous arrivez alors dans linterface
Bleu-Blanc-Rouge qui va vous accompagner tout au long de cette installation.
Choix de la langue puis du clavier
Choisissez la langue fr et la varit de votre choix.
Aprs un cran de bienvenue, vous arrivez dans le menu principal dinstallation. Vous pouvez voir une liste dtapes, et en
haut une suggestion pour ltape suivante, avec deux alternatives. Normalement, vous utiliserez toujours ltape propose
comme tape suivante.
22
Chapitre 7. Dbuter linstallation
Figure 7-2. Menu principal dinstallation
Ltape suivante est donc la conguration du clavier. Une bonne conguration du clavier est indispensable dans la mesure
o vous aurez saisir vos mots de passe qui napparatront jamais en clair lcran. Si vous avez un clavier franais,
choisissez le clavier azerty/fr-latin0.
23
Chapitre 8. Le systme de chiers
Larborescence
Contrairement au systme de chiers Windows, il nexiste pas de lecteurs A:, C:, etc...
Lentre du systme de chier se situe la racine, note / .
Ensuite, il existe un certain nombre de rpertoires prsents par dfaut. Chaque rpertoire un rle bien prcis, comme
indiqu dans le tableau ci-dessous.
Tableau 8-1. Le systme de chiers de Linux
Rpertoire Description
/ Rpertoire "racine", point dentre du systme de chiers
/boot Rpertoire contenant le noyau Linux
/bin Rpertoire contenant les excutables de base, comme par
exemple cp, mv, ls, etc...
/cdrom Rpertoire dans lequel on montera les CD-ROMs
/dev Rpertoire contenant des chiers spciaux nomms devices
qui permettent le lien avec les priphriques de la machine
/etc Rpertoire contenant tous les chiers de conguration du
systme
/oppy Rpertoire dans lequel on montera les disquettes
/home Rpertoire contenant les chiers personnels des utilisateurs
/lib Rpertoire contenant les librairies et les modules du noyau
(/lib/modules)
/lost+found Rpertoire spcial contenant les chiers abims ou trouvs
aprs un crash du disque dur. Il y en a un dans la racine de
chaque partition Linux.
/mnt Rpertoire vide dans lequel on "montera" (cf ci-dessous)
dautres systmes de chiers
/proc Rpertoire contenant des chiers spciaux reprsentant
certaines caractristiques matrielles ou certains paramtres
du noyau.
/root Rpertoire personnel de ladministrateur
/sbin Rpertoire contenant les excutables destins
ladministration du systme
/tmp Rpertoire contenant des chiers temporaires utiliss par
certains programmes
/usr Rpertoire contenant les excutables des programmes
(/usr/bin et /usr/sbin), la documentation (/usr/doc),
et les programmes pour le serveur graphique (/usr/X11R6).
/var Rpertoire contenant les chiers qui servent la maintenance
du systme (les chiers de logs notamment dans /var/log)
24
Chapitre 8. Le systme de chiers
Les priphriques
Laccs aux priphriques
Une des orginialits des systmes Unix est leur manire daccder aux priphriques. Chaque priphrique du systme
(souris, disque dur, lecteur CD, carte son, etc...) est reprsent par un chier, quelques exceptions prs (clavier, carte
rseau et carte graphique). Le fait dcrire dans un tel chier va envoyer des commandes au priphrique. Le fait de lire
dans un tel chier permet de recevoir des donnes du priphrique. Cest une mthode trs simple qui a fait ses preuves !
Exemple de priphriques
Tableau 8-2. Exemple de priphriques
Fichier Priphrique
/dev/psaux Le port PS/2 de la souris
/dev/fd0 Le lecteur de disquettes
/dev/hda Le disque dur IDE primary master
/dev/hdb Le disque dur IDE primary slave
/dev/hdc Le disque dur IDE secondary master
/dev/hdd Le disque dur IDE secondary slave
/dev/eth0 La premire carte rseau
/dev/ttyS0 Le port srie COM1
/dev/ttyS1 Le port srie COM2
Les partitions
Pour connatre la position de vos disques durs IDE et de vos lecteurs de CD (primary master, primary slave, secondary
master ou secondary slave), le plus simple est de regarder dans le BIOS. Vous pouvez aussi le savoir partir des
branchements des nappes IDE et des cavaliers sur les disques durs ou les lecteurs de CD : primary correspond la premire
nappe IDE, et secondary la seconde ; sur chaque nappe, on peut brancher au plus deux priphriques, un master et un
slave (a se rgle avec un cavalier sur le priphrique).
Sur un disque dur IDE (/dev/hda par exemple), les partitions sont numrotes de la faon suivante :
Tableau 8-3. La numrotation des partitions
Type Ordre Numros
primaires et tendues Ordre dapparition sur le disque de 1 4
lecteurs logiques Ordre dapparition dans la partition
tendue
de 5 20
Exemples :
Si vous avez 4 partitions primaires, elles sont numrotes dans lordre hda1, hda2, hda3 et hda4.
Si vous avez dans lordre : 2 partitions primaires, 1 partition tendue avec 3 lecteurs logiques dedans, et 1 dernire
partition primaire la n, a donne :
Les deux premires partitions primaires sont hda1 et hda2,
La parition tendue est hda3,
25
Chapitre 8. Le systme de chiers
Les lecteurs logiques de la partition tendue sont, dans lordre, hda5, hda6 et hda7,
La dernire partition primaire est hda4.
Les priphriques spciaux
Il existe un certain nombre de priphriques "spciaux" qui ne correspondent aucun matriel, mais qui servent quand
mme !
Tableau 8-4. Exemple de priphriques spciaux
Fichier Priphrique
/dev/null Tout ce qui est envoy ce priphrique est dtruit
/dev/zero On peut lire une innit de zros depuis ce priphrique
/dev/random On peut lire des nombres alatoires depuis ce priphrique
Intgration dun systme de chiers
Considrons deux disques : un disque principal, et un disque contenant les rpertoires utilisateurs. Au dpart, les deux
disques sont spars.
Figure 8-1. Avant intgration
Nous allons pouvoir intgrer le second systme de chier dans le rpertoire /home du premier laide de la commande
mount.
Par exemple, si le deuxime systme de chiers est /dev/hdb1, il sufra de taper :
# mount /dev/hdb1 /home
pour obtenir la conguration suivante :
26
Chapitre 8. Le systme de chiers
Figure 8-2. Aprs intgration
27
Chapitre 9. Partitionner
Lorganisation des partitions sous Linux
Les types de systmes de chiers
Linux utilise deux types de systmes de chiers :
Linux Swap qui sert stocker la mmoire virtuelle, qui est utilise quand la mmoire vive est pleine ;
Linux Native qui sert stocker les chiers et les rpertoires.
Dcoupage et dimensionnement
Traditionnellement, on cre une partition avec un systme de chiers de type Linux Swap de taille :
double ou triple de la taille de la mmoire vive quand celle-ci est infrieure 128 Mo ;
gale la taille de la mmoire vive quand celle-ci est suprieure ou gale 128 Mo.
Cette partition est appele partition de Swap ou partition dchange.
Pour stocker les chiers et les rpertoires, on cre souvent plusieurs partitions avec un systme de chiers de type Linux
Native.
Pour les serveurs, les administrateurs Linux ont souvent pour habitude de sectionner le systme de chiers en de
nombreuses partitions pour assurer une meilleure rsistance du systme aux crash disk, aux failles de scurit et aux
attaques de tout type. Par exemple, il ne faudrait pas quun simple utilisateur puisse saturer la partition sur laquelle se
trouve la racine du systme de chiers juste en remplissant son rpertoire personnel (/home/son_login), car ceci
pourrait rendre le systme instable. Il ne faudrait pas non plus que les journaux systme (ou logs) qui se trouvent dans le
rpertoire /var/log remplissent la partition sur laquelle se trouve la racine suite une attaque rseau ce qui aurait la
mme consquence. Il est galement bon de mettre sur une partition part le rpertoire /tmp car il est accessible en
criture tous les utilisateurs et tous les programmes.
Sur une machine personnelle, de telles prcautions ne sont pas forcment ncessaires et imposent des contraintes inutiles
sur la taille des rpertoires.
Deux exemples
Ci-dessous se trouvent deux exemples de partionnement : un pour une machine personnelle et un pour un serveur.
Tableau 9-1. Pour un ordinateur personnel
Partition Taille
Swap Egale ou double de la mmoire vive
/ Tout le reste de lespace allou Linux
Tableau 9-2. Pour un serveur
Partition Taille
Swap Egale ou double de la mmoire vive
28
Chapitre 9. Partitionner
Partition Taille
/ 200 Mo
/tmp 150 Mo
/var 300 Mo
/usr 2 Go
/home 100 Mo par utilisateur
Partitionner avec cfdisk
Lance ltape suivante intitule Partitionner un disque dur. Slectionnez le disque dur partitionner (/dev/hda pour un
disque IDE primary master). Aprs un avertissement pour les possesseurs de vieux ordinateurs ( lire attentivement pour
ces utilisateurs), vous arrivez dans cfdisk, qui est un outil de partitionnement trs pratique et trs efcace.
Figure 9-1. cfdisk
La liste des partitions apparat dans leur ordre dapparition sur le disque dur. Chaque ligne correspond une partition, et
cfdisk indique dans lordre :
le device correspondant (hdaX) ;
les ags ventuels (en fait, seules les partitions de Windows 95-98 ont besoin dun ag Boot pour tre bootables) ;
le type de partition : primary ou logical ;
le type de systme de chiers : FAT 16, FAT 32, NTFS, Linux (alias Linux Native) ou Linux Swap ;
la taille en Mgaoctet.
29
Chapitre 9. Partitionner
Les ches haut / bas vous permettent de slectionner une partition. Les ches droite / gauche vous permettent de vous
dplacer dans le menu en bas.
Si vous avez utilis ps, commencez par supprimer la dernire partition (a doit tre une partition primaire de type FAT).
Ensuite, crez vos partitions en slectionnant lespace libre (Free Space) et en slectionnant dans le menu New, puis le type
de partition (Primary ou Logical) puis la taille en Mo, et enn la position lintrieur de lespace libre (beginning ou end).
Le type de systme de chier mis par dfaut est Linux, ce qui correspond en fait Linux Native. Pour changer de type et
passer par exemple Linux Swap, il suft de slctionner Type dans le menu puis de taper le numro du systme de chiers
(82 pour Linux Swap).
Note : Contrairement au fdisk de DOS, la cration dune partition logique (en slectionnant New puis Logical ...)
entraine automatiquement la creation de la partition tendue sous-jacente.
Une fois que vous avez une conguration qui vous satisfait, il faut lcrire sur le disque dur. Pour cela, slectionnez Write
dans le menu. Puis Quit pour revenir au menu principal dinstallation.
Initialiser et activer les partitions
La partition de Swap
Ltape suivante est linitialisation et lactivation de votre partition de Swap ou partition dchange. Elle est reconnue
automatiquement par la procdure dinstallation. Si vous avez du temps perdre, vous pouvez faire la recherche des
secteurs dfectueux qui vous est propose...
Les partitions Linux
Ensuite, il faut initialiser et activer les partitions Linux une une, en commenant par la partition racine. Pour chaque
partition, il vous demande :
1. le type de systme de chiers : choisissez Ext3,
2. le device correspondant la partition,
3. si vous voulez faire une recherche des secteurs dfecteux,
4. il vous demande conrmation avant de formater,
5. il formate,
6. et enn il vous demande de slectionner le point de montage.
Une fois que vous avez ralis lopration pour la partition racine, il faut recommencer ltape Initialiser une partition
Linux (qui est alors propose en comme Autre Choix) pour chaque partition Linux.
Toutes vos partitions Linux sont formates et montes ? Cest bien, vous pouvez passer ltape suivante...
30
Chapitre 10. Installation et conguration du noyau
Installation du noyau et des modules
Ltape suivante sappelle Installer le noyau et les modules des pilotes.
Mthode 1 mini-CD, 1 CD ou 7 CDs / 1 DVD
Il trouve le CD ou DVD Debian tout seul, vous approuvez, et ensuite ltape se droule toute seule !
Mthode 6 disquettes
Il vous demande dinsrer la disquette rescue, puis les 4 disquettes de drivers dans lordre.
Conguration des modules
Ltape suivante sappelle Congurer les modules des pilotes matriels.
Si vous faites cohabiter Windows et Linux sur la mme machine, vous avez besoin du support du format FAT et/ou NTFS :
pour les partitions FAT, le support est inclus dans le noyau ;
pour les partitions NTFS, vous avez besoin de charger un module spcique : allez dans la catgorie kernel/fs/ntfs et
slectionnez le module ntfs. Tapez Entre : il vous demande alors si vous voulez insrer le module que vous avez
slectionn dans le noyau ; rpondez Oui. Il vous propose ensuite dentrer des arguments en ligne de commande qui
seront passs en option lors de linsertion du module : laissez la ligne vide et rpondez OK.
Si vous navez pas de carte rseau Ethernet
Vous navez plus rien faire cette tape : demandez sortir de ltape.
Si vous avez une carte rseau Ethernet
Si vous avez une carte rseau PCMCIA, vous navez plus rien faire cette tape : demandez sortir de ltape.
Si vous avez une carte rseau PCI ou une carte rseau intgre (ce qui est souvent le cas sur les ordinateurs portables
rcents), votre carte a peut-tre t reconnue automatiquement au dmarrage. Pour le vrier, ouvrez une nouvelle console
en utilisant la combinaison de touches Alt-F2 puis Entre. Tapez la commande suivante :
# dmesg | grep eth0
Si une ligne commanant par eth0: safche, comme par exemple :
eth0: PCnet/PCI II 79C970A at 0x10a0, 00 50 56 66 2f 4a
alors cela signie que votre carte rseau a dj t reconnue. Vous pouvez alors revenir la console de la procdure
dinstallation par la combinaison de touches Alt-F1 et demander sortir de ltape.
31
Chapitre 10. Installation et conguration du noyau
Si aucune ligne napparat, cela signie que votre carte rseau na pas t reconnue automatiquement. Revenez la
console de la procdure dinstallation par la combinaison de touches Alt-F1. Allez dans la catgorie kernel/drivers/net et
slectionnez le driver (alias module) correspondant votre carte rseau (vous avez d noter son nom la section Si vous
avez une carte rseau Ethernet...). Tapez Entre : il vous demande alors si vous voulez insrer le module que vous avez
slectionn dans le noyau ; rpond Oui. Il vous propose ensuite dentrer des arguments en ligne de commande qui seront
passs en option lors de linsertion du module : normalement, vous nen avez pas besoin ; laissez la ligne vide et
rpondez OK.
Il va alors essayer dinsrer le module :
si a marche : victoire ! Vous pouvez sortir de ltape et aller directement au chapitre suivant Conguration du rseau.
sil vous dit Echec de linstallation, vous avez deux possibilis :
si vous tes sr du nom du module, vous pouvez essayer de le r-insrer en prcisant cette fois des paramtres dans
la ligne de commande,
si vous ntes pas sr du nom du module, essayez-en dautres dans la liste... jusqu que vous en trouvez un qui
sinsre !
Une fois que vous avez insr le module correspondant votre carte rseau, demandez sortir de ltape.
Les ordinateurs portables
Si vous avez un ordinateur portable avec des ports PCMCIA, slectionnez ltape Congurer le support PCMCIA et
rpondez aux questions en lisant bien ce quil y a marqu sur lcran :
1. Dans le premier cran, slectionnez PCMCIA controller uniquement.
2. Dans le deuxime cran, slectionnez i82365: Intel i82365SL ou compatible. Si a ne marche pas, vous pourrez
recommencer ltape et slectionner lautre choix.
3. Dans les 3 tapes suivantes, avec un peu de chance, vous naurez pas besoin de saisir quoi que ce soit dans les lignes.
4. Conrmez vos choix dans la dernire tape.
Si votre portable a une carte rseau PCMCIA, elle doit maintenant fonctionner... ce que vous allez pouvoir vrier au
chapitre suivant !
32
Chapitre 11. Conguration du rseau
Ltape suivante dpend de la mthode que vous utilisez :
si vous utilisez la mthode 1 mini-CD ou 6 disquettes, cest ltape Congurer le rseau ;
si vous utilisez la mthode 1 CD ou 7 CDs / 1 DVD, cest ltape Congurer le nom de la machine.
Mthode 1 CD ou 7 CDs / 1 DVD
Lancez ltape Congurer le nom de la machine et donnez un joli nom votre ordinateur !
Mthode 1 mini-CD ou 6 disquettes
Choisir un nom pour lordinateur
Lancez ltape Congurer le rseau. Le premier cran de cette tape vous propose de choisir un nom pour votre ordinateur.
En gnral, quand on est sur un rseau local et que le nom DNS de la machine veut dire quelque chose, on prend le nom
DNS de la machine... mais ce nest pas obligatoire.
Congurer le rseau automatiquement
Dans lcran suivant, il vous demande si vous souhaitez congurer le rseau par DHCP. DHCP est un protocole de
conguration automatique du rseau. Rpondez Oui si vous tes dans un des cas suivants :
vous utilisez la FreeBox en Ethernet,
vous tes connect Noos (ou un autre fournisseur daccs cble qui utilise encore DHCP et pas PPPoE) avec un
modem Ethernet,
vous tes connect un rseau local sur lequel se trouve un serveur DHCP (cest le cas le plus courant... et cest le cas
du rseau VIA).
Note : Si vous ne savez pas si un serveur DHCP est prsent, a ne cote rien dessayer en rpondant Oui ...
Congurer le rseau " la main"
Sil ny a pas de serveur DHCP sur votre rseau local ou si la conguration par DHCP na pas march, il faut congurer le
rseau " la main". Pour cela, il vous demandera successivement :
1. ladresse IP de lordinateur,
2. le masque de sous-rseau ou "netmask",
3. ladresse de la passerelle ou "gateway",
4. le nom de domaine,
5. les adresses IP des serveurs DNS.
33
Chapitre 12. Installation du systme de base
Ltape suivante sintitule Installer le systme de base. Si vous ntes pas pass par ltape Congurer le rseau, il faut
aller la chercher dans la liste des tapes en vous dplaant vers le bas avec la che. La procdure diffre selon la mthode
dinstallation que vous avez choisie :
Mthode 1 CD ou 7 CDs / 1 DVD
Soit il commence linstallation du systme de base sans vous poser aucune question ;
Soit il vous afche une bote de dialogue et vous propose dinstaller le systme de base depuis le CD-ROM : appuyez sur
Entre pour conrmer, puis une deuxime fois pour conrmer que cest bien le premier CD Debian qui est insr, et
encore une troisime fois pour approuver le rpertoire propos par dfaut depuis lequel se fera linstallation du systme
de base.
Mthode 1 mini-CD ou 6 disquettes
1. Slectionnez Rseau : HTTP ou FTP par rseau,
2. Dans la case Tlcharger URL, rentrez ladresse du miroir Debian le plus proche accessible par HTTP (comme
indiqu dans laide, seul HTTP est support pour le moment) :
Miroir Franais : http://ftp.fr.debian.org/debian
Miroir VIA : http://debian.via.ecp.fr/debian
Si vous devez passer par un Proxy pour accder au miroir Debian, entrez son adresse dans la champ Mandataire et son
port dans le champ Port du mandataire.
34
Chapitre 13. Premier boot !
Prparation du redmarrage
Installation de LILO
Pour prparer le premier boot sous Linux, il faut rendre votre nouveau systme dexploitation bootable directement depuis
le disque dur. Cest lobjet de ltape suivante Rendre le systme amorable. Le programme LILO (LInux LOader), qui
permet de booter Linux et Windows, va tre install sur le Master Boot Record (MBR) de votre disque dur.
Il vous demande o vous voulez installer LILO. Rpondez Installer dans le MBR (dfaut).
Si vous avez un Windows dj install sur votre machine, il le dtecte et vous prsente un menu avec trois choix.
Slectionnez Voir pour vrier quil a bien dtect votre Windows ; par exemple, si vous avez un Windows install sur la
premire partition primaire, il vous afche :
/dev/hda1(Windows)
Si ce quil vous afche correspond effectivement votre Windows dj install, slectionnez Continuer puis Inclure.
Une disquette damorage ?
Ltape propose en tape suivante Crer une disquette damorage nest pas ncessaire si vous comptez garder le CD n

1,
le DVD ou la disquette rescue qui vous ont permis de dmarrer la procdure dinstallation : ils pourront vous servir
booter en cas de problme.
Redmarrage et premier boot !
Lancez ltape Ramorcer le systme puis enlevez le CD, le DVD ou la disquette de votre lecteur et conrmez le
ramorage. Lordinateur redmarre... Aprs le lancement du BIOS, LILO se lance :
si vous faites cohabiter Linux et Windows sur le mme ordinateur, LILO vous afche un menu rouge qui vous donne le
choix entre vos deux O.S. : tapez Entre pour conrmer le lancement de Linux qui est slectionn par dfaut ;
si vous navez que Linux dinstall sur lordinateur, LILO lance Linux directement sans vous afcher de menu rouge.
Une fois que Linux a ni de booter, vous tes accueilli par le message ci-dessous et il vous reste encore quelques tapes
pour nir linstallation.
35
Chapitre 13. Premier boot !
Figure 13-1. Le premier cran aprs le reboot
36
Chapitre 14. La n de la conguration du systme
A partir de l, la procdure dinstallation repasse en anglais... je ne sais pas pourquoi !
Le rglage de lhorloge
Ltape suivante est Time Zone Conguration. A la question Will the hardware clock be set to GMT ?, rpondez :
Non, si cest un ordinateur personnel sur lequel Windows et Linux cohabitent, car sinon votre horloge aura une ou deux
heures de dcalage sous Windows, parce que Windows ne sait pas faire la diffrence entre horloge matrielle et horloge
systme.
Oui, si la machine est destine faire ofce de serveur.
Ensuite, slectionnez votre fuseau horaire (Europe puis Paris pour la France).
Les mots de passe
Les options de stockage des mots de passe
Ltape suivante concerne les mots de passe. Il commence par vous poser deux questions sur la manire de stocker les mots
de passe :
1. Enable md5 passwords ? : rpondez Oui.
2. Enable shadow passwords ? : rpondez Oui.
Le mot de passe root
Qui est Monsieur Root ?
Linux est un systme dexploitation multi-utilisateurs. Chaque utilisateur a son login et son mot de passe personnel, et il
existe un systme de gestion des droits pour les chiers et les rpertoires. Un seul utilisateur a les pleins pouvoirs : cest
Monsieur Root, aussi appel super utilisateur ou simplement root.
Entrer le mot de passe root
On vous demande de rentrer deux reprises le mot de passe root. Il faut choisir un mot de passe complexe car celui qui le
devine dtient tous les droits sur la machine ! Noubliez pas davoir le verrouillage numrique allum si vous tapez des
chiffres sur le pav numrique.
Crer un compte utilisateur
Pourquoi ?
Ltape suivante est la cration dun compte utilisateur. Vous allez par exemple pouvoir crer votre propre compte
utilisateur. En effet, lutilisation du compte root est rserve la modication de la conguration du systme,
37
Chapitre 14. La n de la conguration du systme
linstallation de packages et aux rares tches qui ncessitent les droits de root ; pour toutes les autres tches, il faut utiliser
un compte utilisateur.
Pourquoi ? Parce que lutilisation du compte root est dangereuse : une fausse manipulation peut dtruire le systme... ce
qui est impossible en tant que simple utilisateur !
Cration du compte
Il vous demande dabord un login, puis un nom complet (facultatif), puis dentrer deux fois le mot de passe. Comme pour
le root, un mot de passe non trivial est fortement conseill.
Quelques questions pour nir...
Il vous pose la question Remove the PCMCIA package ? Rpondez Non si vous avez un ordinateur portable avec des ports
PCMCIA ; Oui sinon.
La question suivante est Use a PPP connection to install the system ?. Une connexion PPP correspond une connexion par
modem classique. Quelle que soit la mthode dinstallation utilise, rpondez Non (si vous avez une connexion par modem
classique, nous la congurerons plus tard).
38
Chapitre 15. Les packages
La source des packages
Le systme de gestion des packages de Debian sappelle APT (Advanced Package Tool). Pour fonctionner, il a besoin de
connatre la source des packages susceptibles dtre installs : cette source peut-tre des CDs, des sources rseau
accessibles par HTTP ou FTP, ou encore des chiers sur votre disque dur. Cette nouvelle tape sappelle APT conguration.
Mthode 1 CD ou 7 CDs / 1 DVD
Insrez le CD n

1 ou le DVD. Dans la liste des sources possibles, slectionnez CD-ROM. Il va scanner le CD ou le DVD
la recherche dune liste de packages. Ensuite, il vous demande si vous possdez dautres CD Debian : si vous avez les 7
CDs, insrez le CD n

2 et rpondez Oui... et ainsi de suite jusquau dernier CD ; sinon, rpondez Non.


Il vous demande alors si vous voulez ajouter une autre source APT : rpondez Non. Puis il vous demande si vous voulez
utiliser les mises jour de scurit disponibles sur security.debian.org : rpondez Non, puisque votre connexion Internet ne
marche pas encore.
Mthode 1 mini-CD ou 6 disquettes
Dans la liste des sources possibles, slectionnez HTTP. Rpondez aux crans suivants avec les consignes ci-dessous :
1. Use non-US software ? : rpondez Oui. Il sagit de logiciels dont lexportation est interdite aux Etats-Unis en raison
dune loi sur le cryptage.
2. Use non-free software ? : rpondez Oui, sauf si vous tes dj allergique aux programmes non libres. En effet, les
programmes que Debian appelle "non-free" sont des programmes gratuits, mais pas libres. La nuance est trs
importante !
3. Use contrib software ? : rpondez Oui.
4. Select the mirror : slectionnez votre pays ou un pays proche puis le nom dun miroir dans la liste quil vous propose...
sauf si vous avez connaissance dun miroir Debian sur votre rseau local (cest le cas du rseau VIA). Dans ce dernier
cas, slectionnez dans la liste : enter information manually. Il vous demande alors le nom DNS (hostname) du miroir
Debian (tapez debian.via.ecp.fr dans la cas du rseau VIA) et le rpertoire o se trouve le miroir (tapez /debian dans
la cas du rseau VIA).
5. Enter HTTP proxy information :
si votre proxy ne require pas dauthentication par login et mot de passe, tapez :
http://proxy.exemple.org:8080
o proxy.exemple.org est le nom DNS de votre proxy et 8080 son port.
si votre proxy require une authentication par login et mot de passe, tapez :
http://login:password@proxy.exemple.org:8080
o proxy.exemple.org est le nom DNS de votre proxy, 8080 son port, login et password votre login et mot de passe
pour le proxy.
6. Add another apt source ? : rpondez Non.
7. Use security updates from security.debian.org ? : rpondez Oui pour bncier automatiquement des mises jour de
scurit sorties depuis la dernire release de la version stable.
39
Chapitre 15. Les packages
Choix du prol dinstallation
Ltape tasksel
Il vous demande ensuite : Run tasksel ?. Rpondez Non. En effet, nous allons nous contenter des quelques packages de base
quil va installer, et nous installerons les autres packages au fur et mesure, dans les parties suivantes de cette formation.
Ltape dselect
La question suivante est Run dselect ?. Rpondez Oui.
Figure 15-1. Ecran de bienvenue de dselect
Cette tape va vous permettre dinstaller certains packages de base qui nont pas encore t installs. Passez lcran de
bienvenue en tapant Espace.
Vous arrivez alors dans la liste des packages ; appuyez sur Entre pour approuver les packages quil a slectionn par
dfaut. Il vous afche alors la liste des packages quil veut installer (80 environ) (et vous annonce quil va retirer le
package pcmcia-cs si vous laviez demand lors dune tape prcdente) et vous demande Do you want to continue ? [Y/n].
Acceptez en tapant simplement Entre ; en effet, quand il y a comme ici deux choix dont lun en majuscule [Y/n], cest le
choix en majuscule qui est choisi quand vous tapez simplement Entre. Si vous utilisez la mthode 1 CD ou 7 CDs / 1
DVD, assurez-vous que cest bien le CD n

1 qui est insr et appuyez sur Entre. Il va alors procder aux installations et
aux ventuels retraits de packages.
Pendant linstallation de certains packages, il va vous afcher certaines informations et vous poser des questions de
conguration. Rpondez-y en suivant les consignes ci-dessous :
Le premier cran concerne la conguration du package binutils et commence par Kernel link failure info. Cest juste un
message pour effrayer les dbutants, ne vous inquitez pas... comme moi, vous ne comprenez probablement rien ce
quil dit, slectionnez OK et ne vous inquitez pas !
Conguration du package less : Add a mime handler for "application/*" ? Rpondez Non.
Conguration du package locales :
40
Chapitre 15. Les packages
1. Select locales to be generated : cochez (avec la touche Espace) :
en_US ISO-8859-1
fr_FR ISO-8859-1
fr_FR.UTF-8 UTF-8
fr_FR@euro ISO-8859-15
2. Which locale should be the default in the system environment ? : rpondez fr_FR.
Conguration du package nfs-common : rpondez OK lcran dinformation quil vous afche ;
Conguration du package ssh :
1. Allow SSH protocol 2 only ? Rpondez Oui.
2. Aprs un cran dinformation, il vous demande : Do you want /usr/bin/ssh-keysign to be installed SUID root ?
Rpondez Oui.
3. Do you want to run the sshd server ? Rpondez Non (nous modierons ce paramtre plus tard lors de la
conguration du serveur SSH au chapitre Laccs distance par SSH).
Conguration du package ispell : Select the number of the default dictionary ; choisi parmi les deux dictionnaires
proposs (vous pourrez en installer dautres plus tard).
Si vous avez d tlcharger des packages cette tape, il vous demande : Do you want to erase any previously downloaded
.deb les ? [Y/n]. Tapez Entre pour accepter, et encore une deuxime fois pour continuer.
Enn, il vous pose une question sur la conguration du serveur de mail Exim : tapez Entre, puis choisissez loption n

5
No conguration. Nous peaunerons la conguration du serveur de mail plus tard, au chapitre Le mail en console !
Have fun !
Quand il vous afche lcran Have fun !, cest que vous avez ni linstallation ! Vous avez enn Linux !
41
Chapitre 15. Les packages
Figure 15-2. Le dernier cran : Have fun !
42
Chapitre 16. Utiliser LILO
Tester LILO
Si vous avez install pendant la procdure dinstallation un double boot Windows / Linux, cest le moment ou jamais de
tester si vous pouvez encore booter Windows !
Pour rebooter la machine, utilisez la combinaison de touches classique Ctrl-Alt-Suppr.
Au dmarrage, le menu de boot de LILO safche :
Figure 16-1. Menu de boot de LILO
Vous avez alors 3 choix :
Linux = la Debian que vous venez dinstaller,
LinuxOLD = la Debian que vous venez dinstaller, mais avec un noyau plus vieux ( utiliser si vous narrivez pas
booter avec le choix Linux),
Windows.
En cas de problme...
LILO ne marche pas et vous voulez au plus vite pouvoir booter de nouveau sous Windows ? Suivez la prcdure suivante :
Rcuprer un MBR pour Windows 95/98/ME
1. Bootez sur une disquette de rcupration ou le CD dinstallation de Windows : slectionnez Dmarrage partir du
CD-ROM puis Dmarrer lordinateur sans prise en charge du lecteur de CD-ROM.
2. Au prompt, tapez :
C:\> fdisk /mbr
3. Rebootez.
43
Chapitre 16. Utiliser LILO
Rcuprer un MBR pour Windows 2000/XP
1. Bootez sur le CD dinstallation de Windows et choisissez Rparer ou rcuprer une installation de Windows.
2. Slectionnez votre installation de Windows dans la liste des choix proposs puis rentrez votre mot de passe
administrateur.
3. Au prompt, tapez :
C:\WINDOWS> fixmbr
et conrmez que vous voulez r-crire sur le MBR.
4. Rebootez en tapant :
C:\WINDOWS> exit
44
II. Utilisation et conguration de base de
Debian GNU/Linux
Introduction
La premire partie de cette formation vous a permis de suivre toute la procdure dinstallation. Cette deuxime partie
pour but dexpliquer un certain nombre de choses quil est possible de faire en console, cest--dire dans linterface en
mode texte qui est prsente par dfaut. Vous allez apprendre vous servir des commandes de base, dun diteur de texte, de
loutil de gestion de packages de Debian et compiler un noyau Linux sur mesure pour faire marcher (si possible...) tous
les priphriques de votre ordinateur. Ce nest que dans la troisime partie que vous apprendrez installer un serveur
graphique et les applications graphiques les plus courantes.
Figure 20. Une console ouverte
Chapitre 17. Dbuter en console
Notions de base
Se logguer
Une fois que la procdure dinstallation est termine, vous arrivez au prompt de login :
Figure 17-1. Prompt de login sur la machine alpy
Pour vous logguer, vous avez le choix entre :
vous logguer en tant que root : tapez root, appuyez sur Entre, ensuite tapez le mot de passe root que vous avez dni
pendant la procdure dinstallation et appuyez sur Entre. Vous voyez alors apparatre un certain nombre de messages et
enn le prompt du root :
Figure 17-2. Prompt du root sur la machine alpy
Quand vous tes ainsi loggu en tant que root, vous avez tous les droits sur le systme.
vous logguer en tant que simple utilisateur : tapez le nom dutilisateur que vous avez dni pendant la procdure
dinstallation, appuyez sur Entre, ensuite tapez le mot de passe associ cet utilisateur et appuyez sur Entre. Vous
voyez alors apparatre un certain nombre de messages et enn le prompt de lutilisateur :
Figure 17-3. Prompt de lutilisateur alexis sur la machine alpy
Quand vous tes ainsi loggu en tant que simple utilisateur, vous navez que des droits limits sur le systme.
Attention
Rappel : lutilisation du compte root est rserve la modication de la conguration du systme,
linstallation de packages et aux rares tches qui ncessitent les droits de root ; pour toutes les
autres tches, il faut utiliser un compte utilisateur. En effet, lutilisation du compte root est
dangereuse : une fausse manipulation peut dtruire le systme... ce qui est impossible en tant que
simple utilisateur !
Convention
Dans toute la suite de cette formation, nous adopterons la convention suivante :
46
Chapitre 17. Dbuter en console
les commandes qui devront tre excutes en tant que root auront un prompt # :
# commande__excuter
les commandes qui devront tre excutes en tant que simple utilisateur auront un prompt % :
% commande__excuter
Passer dune console une autre
Vous navez peut-tre pas encore remarqu, mais vous disposez de plusieurs consoles. Au dmarrage, vous arrivez sur la
premire console, appele tty1. Vous pouvez passer la deuxime console (appele tty2) avec la combinaison de touches
Alt-F2. Pour revenir la premire console, utilisez la combinaison de touches Alt-F1. Vous pouvez aussi utiliser
Alt-Flche Gauche et Alt-Flche Droite pour passer dune console voisine lautre. Par dfaut, il y a 6 consoles.
Les commandes Unix
Liste des commandes de base connatre
Ci-dessous se trouve une liste de commandes Unix de base connatre :
ls
cd
mv
cp
rm
mkdir
rmdir
ln
cat
more
less
nd
grep
chmod
chown
chgrp
Si vous ne les connaissez pas, il existe des cours sur Internet qui vous permettront de les apprendre. Par exemple ce cours
de lEcole Polytechnique de Montral (http://www.grbb.polymtl.ca/syst_info/cours_unix.html).
47
Chapitre 17. Dbuter en console
Les principales commandes systme
Mount
Une premire explication de lutilisation de cette commande a dj t donne dans la section Intgration dun systme de
chiers de la permire partie de cette formation. Elle sert intgrer un systme de chier dans le systme de chier du
racine. Elle doit tre excute en tant que root. Sa syntaxe habituelle est :
# mount -t type_de_systme_de_fichier -o options /dev/periphrique /mnt/rpertoire_de_montage
condition que le type de systme de chier soit support par le noyau et que le rpertoire
/mnt/rpertoire_de_montage existe dj.
Pour dmonter ce systme de chier, il suft de taper en root :
# umount /dev/priphrique
ou :
# umount /mnt/rpertoire_de_montage
Par contre, nimporte quel utilisateur peut taper la commande mount tout court pour savoir quels sont les systmes de
chiers monts linstant dexcution de la commande.
su
Cette commande sert changer dutilisateur, aprs avoir rentr le bon mot de passe, bien sr !
su permet de devenir root.
su toto permet de devenir lutilisateur toto.
Note : Le passage de root un simple utilisateur par la commande su toto se fait sans rentrer le mot de passe de
lutilisateur toto.
ps
Cette commande sert lister les processus et leurs proprits. Sous Unix, chaque tche sexcute au sein dun ou plusieurs
processus. Chaque processus a un PID (Processus ID) qui lui est propre. Si un processus "plante", les autres processus ne
sont pas affects. On peut tuer un processus avec la commande kill ou killall.
ps : liste les processus de lutilisateur qui excute la commande qui sont rattachs au terminal depuis lequel la
commande est excute.
ps -u : liste les processus de dutilisateur qui excute la commande quel que soit le terminal de rattachement.
ps -au : liste les processus de tous les utilisateurs quel que soit le terminal de rattachement.
ps -aux : liste les processus de tous les utilisateurs mme ceux qui sont rattachs aucun terminal. Cette commande liste
donc lintgralit des processus du systme. Elle est quivalente la commande ps -A
ps -faux : liste tous les processus du systme en les regroupant par enchanement dexcution.
48
Chapitre 17. Dbuter en console
kill et killall
Les commandes kill et killall servent envoyer des signaux des processus.
kill 42 : envoie le signal TERM au processus dont le PID est 42. En gros, on demande au processus 42 de se terminer
tout seul. Bien sur, on ne peux terminer que les processus que lon a soi-mme lanc, sauf le root qui peut faire ce quil
veut avec tous les processus.
kill -9 42 : envoie le signal KILL au processus dont le PID est 42. Quand un processus est plant, cest le seul moyen de
larrter, car la commande prcdente naura pas deffet.
killall vlc : envoie le signal TERM au processus dont le nom est vlc. Cette commande est rpter plusieurs fois sil y a
plusieurs processus qui portent le nom vlc.
killall -9 vlc : envoie le signal KILL au processus dont le nom est vlc.
nice et renice
Les commandes nice et renice servent grer la priorit des processus. La priorit dun processus est un nombre entier
relatif compris entre -20 (priorit haute) et 19 (priorit basse).
Par dfaut, les programmes lans par les utilisateurs du systme ont la priorit 0 (priorit moyenne). Certains services sont
lans par le systme avec une priorit diffrente de 0. Pour voir la priorit des processus lans, utilisez le programme top
: il vous afche la liste des processus classs par utilisation du processeur et actualise toutes les 5 secondes. La quatrime
colonne intitule NI indique la priorit. Pour quitter top, appuyez sur q.
Seul le root a le droit de lancer des processus avec une priorit comprise entre -20 et -1 inclus. Pour lancer un programme
avec un priorit X (X compris entre -20 et 19) :
# nice -n X nom_du_programme
Pour changer la priorit dun processus dj lanc, il faut tre soit root soit le propritaire du processus et connatre son
PID :
# renice X PID_du_processus
Autres commandes systme
id : permet de savoir quel numro dutilisateur (uid, comme user id) et quel numro de groupe (gid, comme group id)
sont associs un utilisateur.
passwd : change le mot de passe (il commence par demander lancien mot de passe quand il sagit dun simple
utilisateur).
groups : pour savoir quels groupes appartient lutilisateur.
adduser toto : ajoute lutilisateur toto au systme.
deluser toto : supprime lutilisateur toto du systme.
adduser toto disk : ajoute lutilisateur toto au groupe disk (modication effective aprs que lutilisateur toto se soit
dloggu puis reloggu).
deluser toto audio : enlve lutilisateur toto du groupe audio.
printenv : afche les variables denvironnement de lutilisateur.
df -h : fait le point sur lespace libre de chaque partition.
du -sh : mesure la taille du rpertoire depuis lequel il est excut.
49
Chapitre 17. Dbuter en console
halt : teint lordi. Equivaut la commande shutdown -h now.
reboot : reboote lordi. Equivaut la commande shutdown -r now.
uptime : dit depuis combien de temps le systme na pas reboot. Certains samusent ainsi faire des concours duptime
pour prouver la stabilit de leur machine sous Linux !
w : permet de savoir quels utilisateurs sont loggs sur le systme et ce quils font.
lspci : donne des informations sur les bus PCI du systme et les priphriques PCI qui y sont rattachs (AGP est
considr comme un bus PCI) : trs pratique pour avoir des renseignements sur le hardware du systme ! Attention,
quand la commande afche Unknown device, cela veut juste dire que lID PCI du priphrique na pas de nom
correspondant dans la base de donne de lspci, mais cela ne veut pas dire que le priphrique "marche", "ne marche pas"
ou "ne marchera jamais" sous Linux !
cat /proc/cpuinfo : donne plein dinfos sur le processeur.
cat /proc/interrupts : donne des infos sur lutilisation des IRQs par les priphriques.
cat /proc/dma : donne des infos sur lutilisation des DMA par les priphriques.
cat /proc/ioports : donne des infos sur lutilisation des ports I/O (Input / Output) par les priphrique.
uname -a : donne des informations sur le systme, notamment la version du noyau.
Les petites commandes pratiques
date : donne lheure systme.
cal : afche un calendrier du mois courant. cal 2003 afche un calendrier de lanne 2003.
bc : une calculatrice en mode texte.
la combinaison de touches Ctrl-l permet de rafrachir lafchage dune application en console quand lafchage est
perturb (par un message derreur par exemple).
50
Chapitre 18. Avant daller plus loin...
Prliminaires divers
Bug du package locales
Il y a un bug dans le package locales qui fait quil ne se congure pas du premier coup et cela peut produire des messages
derreur perl: warning... lors de la conguration des packages. Pour rsoudre ce problme, recongurez-le en tapant en
root :
# dpkg-reconfigure locales
Il va vous poser les mmes questions qu ltape dselect lors de la procdure dinstallation (chapitre Les packages), et
vous allez y apporter les mmes rponses :
1. Select locales to be generated : cochez :
en_US ISO-8859-1
fr_FR ISO-8859-1
fr_FR.UTF-8 UTF-8
fr_FR@euro ISO-8859-15
2. Which locale should be the default in the system environment ? : rpondez fr_FR.
Installer wget
Pour la suite, quel que soit la mthode choisie, vous aurez besoin du programme wget, qui permet de tlcharger des
chiers par FTP ou HTTP. Pour cela, il suft dinstaller le package wget. Comme je ne vous ai pas encore appris installer
des packages, je vous propose de taper sans comprendre la commande suivante :
# apt-get install wget
et de suivre les instructions qui safchent lcran...
Mthode 1 mini-CD ou 6 disquettes
Vous allez maintenant rcuprer par HTTP larchive contenant les chiers de conguration. Tlchargez le chier
fichiers-config-linux.tar.gz dans le home du root :
1. Si vous devez passer par un proxy pour accder Internet :
si votre proxy ne require pas dauthentication par login et mot de passe :
# export http_proxy="http://proxy.exemple.org:8080"
o proxy.exemple.org est le nom DNS de votre proxy et 8080 son port.
si votre proxy require une authentication par login et mot de passe :
# export http_proxy="http://login:password@proxy.exemple.org:8080"
51
Chapitre 18. Avant daller plus loin...
o proxy.exemple.org est le nom DNS de votre proxy, 8080 son port, login et password votre login et mot de passe
pour le proxy.
2. Tlchargez le chier et dplacez-le dans le home du root :
% wget http://www.via.ecp.fr/~alexis/formation-linux/fichiers-config-linux.tar.gz
# mv fichiers-config-linux.tar.gz ~
3. Mettez-vous dans le home du root, puis dcompressez larchive :
# cd
# tar xvzf fichiers-config-linux.tar.gz
Mthode 1 CD ou 7 CDs / 1 DVD
Vous allez rcuprer les chiers de conguration ainsi que les chiers ncessaires faire marcher le modem ADSL USB
que je vous avais demand de stocker sur votre partition Windows, sur un CD ou sur une disquette.
Copie partir dune disquette
Insrez la disquette et montez-la :
# mount /floppy
Copiez larchive contenant les chiers de conguration :
# cp /floppy/fichiers-config-linux.tar.gz ~
Copiez galement les autres chiers si vous avez un modem ADSL USB.
Une fois que vous avez copi tout ce quil fallait, dmontez la disquette :
# umount /floppy
Mettez-vous dans le home du root, puis dcompressez larchive :
# cd
# tar xvzf fichiers-config-linux.tar.gz
Copie partir dun CD
Idem que pour une disquette, en remplaant oppy par cdrom.
Copie partir dune partition Windows
Crez un rpertoire destin accueillir la partition Windows :
# mkdir /mnt/windows
Montez la partition Windows dans ce rpertoire :
si elle est formate en FAT :
# mount -t vfat /dev/hdXY /mnt/windows
52
Chapitre 18. Avant daller plus loin...
si elle est formate en NTFS :
# mount -t ntfs /dev/hdXY /mnt/windows
o /dev/hdXY dsigne votre partition Windows (la dsignation des partitions tait explique dans la section Les partitions
dans la premire partie).
Copiez larchive contenant les chiers de conguration :
# cp /mnt/windows/chemin_vers_le_rpertoire_que_tu_avais_cre/fichiers-config-linux.tar.gz ~
Mettez-vous dans le home du root, puis dcompressez larchive :
# cd
# tar xvzf fichiers-config-linux.tar.gz
Si vous avez un modem ADSL USB ou PCI, copiez galement dans le home du root les autres chiers que je vous avais
demand de tlcharger.
53
Chapitre 19. Vim : un diteur de texte
Un outil de base sous Linux
Lditeur de texte est un outil de base sous Linux. Il sert notamment modier les chiers de conguration du systme.
Les deux diteurs de texte les plus connus et les plus utiliss sont vim (http://vim.sourceforge.net/) et emacs
(http://www.gnu.org/software/emacs/). Et comme je ne connais pas emacs... et bien je vais vous expliquer comment
fonctionne vim !
VIM signie ViIMproved ; il sagit dune version amliore du classique vi. Il est trs complet, peu gourmand en
ressources, et fait trs bien la coloration syntaxique. Il nest pas facile matriser au dbut... mais vous serez rapidement
conquis !
Installer et congurer Vim
Il va falloir installer les packages permettant de faire marcher vim. Pour linstant, vous ne savez pas encore installer des
packages ; je vous propose donc de taper sans comprendre la commande suivante en root :
# apt-get install vim
Remplacez le chier de conguration install par dfaut par mon chier de conguration :
# cp ~/config/vimrc /etc/vim/
ou, si vous ne suivez pas ma formation depuis le dbut :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/vimrc
# mv vimrc /etc/vim/
Ce chier deviendra le chier de conguration de vim par dfaut pour tous les utilisateurs. Un utilisateur pourra aussi
utiliser son propre chier de conguration en le mettant dans son home (mme nom mais prcd dun point).
Se servir de vim
Pour diter un chier texte existant ou crer un nouveau chier texte, il suft de taper :
# vim nom_du_fichier
54
Chapitre 19. Vim : un diteur de texte
Figure 19-1. Vim
Tout dabord, il faut comprendre quil existe plusieurs modes de fonctionnement :
Le mode Commande, dans lequel vous vous trouvez quand vous ouvrez vim. Dans ce mode, vous tapez des
commandes... que nous verrons plus loin ! Si vous tes dans un autre mode et que vous voulez revenir au mode
commande, tapez Echap.
Le mode Insertion auquel on accde par la touche Inser. Lindicateur -- INSERT -- apparat alors en bas de lcran.
Dans ce mode, vous insrez du texte classiquement.
Le mode Remplacement auquel on accde en appuyant une deuxime fois sur Inser. Lindicateur -- REPLACE --
apparat alors en bas de lcran. Dans ce mode, le texte entr remplace le texte prsent sous le curseur.
Le mode Visuel auquel on accde par la touche v depuis le mode Commande. Lindicateur -- VISUAL -- apparat
alors en bas de lcran. Ce mode permet de slectionner du texte pour y appliquer globalement des commandes.
Figure 19-2. Comment passer dun mode un autre ?
Voici une liste des commandes les plus utilises. Il faut bien entendu tre en mode Commande pour les taper :
55
Chapitre 19. Vim : un diteur de texte
:h pour accder laide,
:w pour enregistrer,
:w nom_du_chier pour faire enregistrer-sous nom_du_fichier,
:q pour quitter,
:wq pour enregistrer et quitter,
:q! pour quitter sans enregistrer les modications,
:r pour inclure le contenu dun autre chier,
/mot_clef pour faire rechercher un mot (n pour passer litration suivante),
:numro_de_ligne pour aller directement cette ligne,
y nombre_de_lignes y (sans espace) pour copier ce nombre de ligne partir du curseur (yy pour copier une ligne ou un
groupe de mots en mode visuel),
d nombre_de_lignes d (sans espace) pour couper ce nombre de ligne partir du curseur (dd pour couper une ligne en
mode commande ou un groupe de mots en mode visuel),
p pour coller aprs le curseur,
u pour annuler la dernire modication. Vous pouvez appuyer plusieurs fois sur u pour annuler les dernires
modications.
Ctrl-r pour annuler la dernire annulation. Vous pouvez renouveler la combinaison de touches pour annuler les
annulations antrieures.
:%s/toto/tata/g pour remplacer toutes les occurrences de la chane de caractres toto par la chane de caractre tata.
Editer un chier de conguration Unix
Sous Unix, et en particulier sous Linux, la conguration du systme et des programmes se fait trs souvent en ditant des
chiers textes qui contiennent des paramtres de conguration. Ces paramtres de conguration suivent une certaine
syntaxe, diffrente pour chaque programme, et que lutilisateur doit connatre. Gnralement, il y a une instruction de
conguration par ligne de texte. Le systme ou le programme va alors lire son ou ses chier(s) de conguration et
sadapter la conguration demande.
Presque tous les programmes et systmes Unix sont conus avec une rgle qui dit quil ne tient pas compte des lignes du
chier de conguration qui commencent par un certain caractre (souvent #). Lutilisateur peut alors mettre des lignes de
commentaires dans le chier de conguration en commenant ces lignes par le caractre particulier. Il peut aussi
facilement activer ou dsactiver une ligne du chier de conguration en enlevant ou en ajoutant le caractre particulier au
dbut de la ligne. Le fait de dsactiver ainsi une ligne de conguration se dit "commenter une ligne" et le fait dactiver ainsi
une ligne de conguration se dit "dcommenter une ligne". Ces expressions seront rgulirement utilises dans la suite de
cette formation.
Note : Quand vous ditez un chier de conguration existant, il est gnralement trs facile de savoir quel est le
caractre particulier : les lignes de commentaires sont nombreuses, contiennent souvent des phrases rdiges et
apparaissent normalement en bleu sous vim.
56
Chapitre 20. Congurer le shell
Quest-ce quun shell ?
Le shell est ce qui sexcute quand vous vous logguez. Cest lui qui vous prsente le prompt, qui envoie vos commandes au
systme, qui enregistre certaines variables. Il est encore l quand vous vous dlogguez.
Vous avez un vaste choix de shells diffrents. Le shell par dfaut sous Linux sappelle bash. Mais il existe aussi csh, tcsh,
zsh, sash, etc...
Je vais vous proposer dinstaller le shell zsh (http://www.zsh.org/), de tlcharger des chiers de conguration et ensuite de
passer de bash zsh.
Installer et congurer zsh
Installer le package et les chiers de conguration
Pour linstant, vous ne savez pas encore installer des packages. Je vous propose donc de taper sans comprendre la
commande suivant en root :
# apt-get install zsh
Remplacez les chiers de conguration par dfaut par mes chiers de conguration :
# cd ~/config
# cp zshrc zshenv zlogin zlogout dir_colors /etc/
ou, si vous ne suivez pas ma formation depuis le dbut :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/zshrc
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/zshenv
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/zlogin
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/zlogout
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/dir_colors
# mv zshrc zshenv zlogin zlogout dir_colors /etc/
Congurer le proxy
Si vous devez passer par un proxy pour accder Internet, au lieu de taper chaque fois export http_proxy=..., vous allez
diter en root le chier /etc/zshenv puis dcommenter et personnaliser les lignes adquates :
si votre proxy ne require pas dauthentication par login et mot de passe :
# Proxy HTTP / FTP sans mot de passe
export http_proxy="http://proxy.exemple.org:8080"
export ftp_proxy="ftp://proxy.exemple.org:8080"
# Ne pas passer par le proxy pour les domaines locaux
export no_proxy="exemple.org"
o proxy.exemple.org est le nom DNS de votre proxy et 8080 son port.
si votre proxy require une authentication par login et mot de passe :
57
Chapitre 20. Congurer le shell
# Proxy HTTP / FTP avec mot de passe
export http_proxy="http://login:password@proxy.exemple.org:8080"
export ftp_proxy="ftp://login:password@proxy.exemple.org:8080"
# Ne pas passer par le proxy pour les domaines locaux
export no_proxy="exemple.org"
o proxy.exemple.org est le nom DNS de votre proxy, 8080 son port, login et password votre login et mot de passe pour
le proxy.
Enregistrez et quittez.
Changer de Shell
Pour changer de shell, un utilisateur doit exctuer la commande chsh et prciser o se trouve son nouveau shell. Il
bnciera alors des chiers de conguration par dfaut que vous venez dinstaller. Il pourra aussi mettre ses propres
chiers de conguration dans son home (mme nom mais prcd dun point).
Pour passer zsh, un utilisateur doit donc taper :
% chsh
Enter the new value, or press return for the default
Login Shell [/bin/bash]:/bin/zsh
Pour que le changement soit effectif, il faut se dlogger (Ctrl-d) et se relogguer. Vous pouvez alors admirer la diffrence !
Shell par dfaut pour les nouveaux utilisateurs
Pour changer le shell par dfaut pour les nouveaux utilisateurs, il faut modier le chier de conguration de la commande
adduser qui sert ajouter un utilisateur au systme. En root, ditez le chier /etc/adduser.conf avec vim :
# vim /etc/adduser.conf
Changez la ligne :
DSHELL=/bin/bash
par la ligne :
DSHELL=/bin/zsh
Enregistrez et quittez. Comme a, quand le root rajoutera un nouvel utilisateur avec la commande :
# adduser toto
ce nouvel utilisateur aura un shell zsh bien congur.
Quest-ce que le PATH ?
PATH est une variable denvironnement. Pour afcher le contenu dune variable denvironnement, on utilise la commande
echo :
% echo $PATH
/usr/local/bin:/usr/local/sbin:/bin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/X11R6/bin:/usr/games:
/sbin:/home/alexis/bin
58
Chapitre 20. Congurer le shell
La variable PATH contient la liste de tous les rpertoires dans lesquels le systme va chercher les excutables des
commandes que vous tapez au prompt, spars par des "deux points". Par exemple, le rpertoire /bin/ contient les
commandes Unix de base, et vous pouvez vrier quil est bien dans le PATH.
Pour modier le PATH, ditez le chier de conguration /etc/zshenv et ajoutez ou supprimez un rpertoire la ligne
qui commence par export PATH=.
59
Chapitre 21. Faire marcher la connexion Internet
Linstallation des pilotes du modem et la conguration de la connexion dpendent du modle de votre modem. Avec un peu
de chance, vous trouverez une section ci-dessous spcique votre modem.
Note : Si vous utilisez la FreeBox en Ethernet, votre connexion Internet est dj congure... vous pouvez passer
directement au chapitre suivant.
Si vous avez un modem USB...
Si vous avez un modem ADSL ou cble de type USB, il faut dabord que vous activiez le support de lUSB.
Mthode 1 mini-CD ou 6 disquettes ou 7 CDs / 1 DVD
Installez les packages hotplug et usbutils en tapant la commande suivante :
# apt-get install hotplug usbutils
Mthode 1 CD
Editez le chier /etc/fstab et rajoutez la n du chier la ligne suivante :
usbdevfs /proc/bus/usb usbdevfs defaults 0 0
Ensuite, demandez au systme de tenir compte de ce changement :
# mount -a
Connexion par modem ADSL USB SpeedTouch
Le modem ADSL USB Alcatel SpeedTouch est un des plus rpandus en France. Son installation sous Linux est maintenant
bien matrise.
Installer le driver et le microcode
Je vous avais demand de tlcharger le package Debian et le microcode avant de dmarrer la procdure dinstallation, puis
de le rapatrier dans le home du root. Cest maintenant le moment dinstaller le package :
# dpkg -i ~/speedtouch_version_i386.deb
Dcompressez larchive contenant le microcode et copiez-le dans le rpertoire /usr/share/speedtouch que vous
crerez pour loccasion :
# tar xvzf ~/speedmgmt.tar.gz
# mkdir /usr/share/speedtouch
# cp ~/mgmt/mgmt.o /usr/share/speedtouch
60
Chapitre 21. Faire marcher la connexion Internet
Congurer la connexion
Vous allez lancer un script qui va vous poser une srie de questions concernant votre connexion :
# chmod 755 ~/config/adsl-conf-pppd
# ~/config/adsl-conf-pppd
Rpondez aux questions en suivant mes instructions :
1. Login : tapez le login qui vous a t attribu par votre fournisseur daccs ;
2. Password : tapez le mot de passe qui va avec ;
3. Your Vpi : tapez 8 pour la France, la Belgique ou la Suisse ;
4. Your Vci : tapez 35 pour la France, la Belgique ou la Suisse ;
5. Do you want pppd to reconnect automatically ? : rpondez y pour quil se reconnecte automatiquement en cas de
dconnexion imprvue ;
6. Do you want pppd to use peer DNS ? : rpondez y pour utiliser les serveurs DNS de votre fournisseur daccs ;
7. Do you want to set the adsl connection as your default route ? : rpondez y pour que votre connexion ADSL soit
utilise par dfaut par les programmes qui ont besoin du rseau ;
8. Do you want pppd to be in debug mode ? : rpondez n pour ne pas avoir les messages de dbuggage.
Il va alors crire les chiers de conguration votre place. Si vous vous tes tromp une question, relancez le script.
Se connecter
Cest trs simple :
# modem_run -m -f /usr/share/speedtouch/mgmt.o
# pon adsl
Pour suivre ltablissement de la connexion, tapez :
# plog -f
Ds que vous voyez une ligne du genre :
Dec 27 19:42:54 alpy pppd[1825]: Script /etc/ppp/ip-up started (pid 1843)
cela signie que la connexion est tablie. Vous pouvez alors arrter lafchage des messages (encore appels logs) par la
combinaison de touches Ctrl-c.
Pour se dconnecter :
# poff adsl
Se connecter automatiquement au dmarrage
Ce paragraphe vous explique comment congurer votre systme pour quil se connecte automatiquement au dmarrage.
Commencez par copier mon chier de conguration dans le rpertoire /etc/ :
# cp ~/config/speedtouch.conf /etc/
Copiez et dcompressez le script de lancement :
61
Chapitre 21. Faire marcher la connexion Internet
# cp /usr/share/doc/speedtouch/examples/speedtouch.sh.gz /etc/init.d/
# gunzip /etc/init.d/speedtouch.sh.gz
La commande suivante va permettre au script de se lancer au dmarrage (pour initier la connexion ADSL) et larrt du
systme (pour fermer proprement la connexion) :
# update-rc.d speedtouch.sh start 90 2 3 4 5 . stop 10 0 1 6 .
Connexion par modem ADSL USB Hi-Focus
Note : Section crite partir du chapitre sur le modem Hi-Focus
(http://cedric.lignier.free.fr/guide-debian/html/bmodemeciusb.html) du tutoriel Debian de Cdric Lignier.
Installer le driver et congurer la connexion
Je vous avais demand de tlcharger le package Debian contenant le driver avant de dmarrer la procdure dinstallation,
puis de le rapatrier dans le home du root. Cest maintenant le moment dinstaller le package :
# dpkg -i ~/eciadsl-usermode_version_i386.deb
Congurer la connexion
Vous allez lancer un script qui va vous poser une srie de questions concernant votre connexion :
# eciconftxt.sh
Rpondez aux questions en suivant mes instructions :
1. Enter your choice : tapez 1 pour Congure all settings ;
2. Type in your user name : tapez le login qui vous a t attribu par votre fournisseur daccs ;
3. Type in your password : tapez le mot de passe qui va avec ;
4. Select your provider : consultez le liste de fournisseurs daccs qui safche et tapez le numro du vtre ;
5. Type in an IP for DNS1 : si ladresse IP du serveur DNS primaire correspond bien celui fourni par votre fournisseurs
daccs (ce qui devrait tre le cas si vous avez bien rpondu la question prcdente), tapez simplement Entre ;
6. Type in an IP for DNS2 : idem que la question prcdente pour le serveur DNS secondaire ;
7. Type in your VPI : tapez 8 pour la France, la Belgique ou la Suisse ;
8. Type in your VCI : tapez 35 pour la France, la Belgique ou la Suisse ;
9. Select your modem : slectionnez votre modem dans la liste propose ;
10. Type in a VID1 : appuyez simplement sur Entre ;
11. Type in a PID1 : idem que prcdemment ;
12. Type in a VID2 : idem que prcdemment ;
13. Type in a PID2 : idem que prcdemment ;
14. Select your .bin le for synch : pour la slection du binaire de synchronisation, vous navez pas vraiment le choix... un
seul est propos ;
62
Chapitre 21. Faire marcher la connexion Internet
15. Select your PPP mode : laissez le choix par dfaut et tapez simplement Entre ;
16. Is DHCP used by your provider ? : tapez n ;
17. Did you get a static IP from your provider ? : si votre fournisseur daccs ne vous a pas donn dIP xe, tapez n ;
18. Press ENTER to create cong les or Ctrl+C to exit now without saving : tapez Entre !
Se connecter
Lanez le script charg dtablir la connexion :
# startmodem
et croisez les doigts pour que a marche !
Se connecter automatiquement au dmarrage
Copiez mon script charg dexcuter la commande startmodem dans le rpertoire /etc/init.d/ et donnez-lui les droits
dexcution :
# cp ~/config/eciadsl.sh /etc/init.d/
# chmod 755 /etc/init.d/eciadsl.sh
La commande suivante va permettre au script de sexcuter chaque dmarrage :
# update-rc.d eciadsl.sh start 90 S .
Connexion Free par modem ADSL USB SAGEM F@st 800
Prliminaires
Le package hotplug de la Woody ntant pas assez rcent pour supporter ce modem, je vous propose dinstaller la place le
package que je vous avais fait tlcharger avant de dmarrer la procdure dinstallation et que je vous avais demand de
rapatrier dans le home du root :
# dpkg -i ~/hotplug_0.0.20030117-7_all.deb
Le driver pour le modem tait sous forme de code source et non sous forme binaire comme les drivers livrs en packages
Debian, il est ncessaire dinstaller les en-ttes des sources du noyau Linux pour pouvoir compiler le driver.
Installez les en-ttes des sources du noyau :
# apt-get install kernel-headers-2.4.18-bf2.4
Ensuite, ajoutez votre compte utilisateur au groupe src :
# adduser toto src
Puis faites un lien symbolique /usr/src/linux pointant vers les en-ttes des sources du noyau en tapant les commandes
suivantes dans une console frachement ouverte en tant que simple utilisateur (pour que le systme tienne compte de votre
nouvelle appartenance au groupe src) :
% cd /usr/src/
% ln -s kernel-headers-2.4.18-bf2.4 linux
63
Chapitre 21. Faire marcher la connexion Internet
Compilation et installation du driver
Copiez les sources du driver dans le rpertoire /usr/src/, dcompressez-les et compilez-les :
% cp /root/eagle-version.tar.gz /usr/src/
% cd /usr/src/
% tar xvzf eagle-version.tar.gz
% cd eagle-version
% make clean
% make
Dbranchez votre modem et procdez linstallation du driver en root :
# make install
Pendant linstallation, il vous pose un certain nombre de questions :
1. Etes-vous dgroup ? Vous devez normalement connatre la rponse cette question !
2. Veuillez entrer le nom dutilisateur pour la connexion au fournisseur daccs : tapez le login qui vous a t attribu par
Free ;
3. Veuillez entrer le mot de passe pour cet utilisateur : tapez le mot de passe qui vous a t attribu par Free ;
4. Votre fournisseur daccs supporte-t-il le cryptage du mot de passe ? rpondez oui ;
5. Voulez-vous que la connexion soit lane chaque dmarrage ? rpondez selon votre utilisation de la connexion.
Si vous tes dgroup, il faut bidouiller un peu plus : ditez le chier /etc/analog/adiusbadsl.conf et modiez les
paramtres suivants :
remplaez VCI=00000023 par VCI=00000024 ;
remplaez Encapsulation=00000006 par Encapsulation=00000004.
Se connecter Free
Branchez votre modem et lanez le script de connexion :
# startadsl
Pour fermer la connexion proprement :
# stopadsl
Connexion par modem cble USB
Crez un chier /etc/modutils/reseau et crivez dans ce chier la ligne suivante :
alias eth0 CDCEther
Si vous avez dj une carte rseau Ethernet fonctionnelle sous Linux, remplacez eth0 par eth1.
Demandez au systme de tenir compte de ce changement de conguration :
# update-modules
Editez le chier /etc/network/interfaces et ajoutez la n du chier les deux lignes suivantes :
64
Chapitre 21. Faire marcher la connexion Internet
auto eth0
iface eth0 inet dhcp
Si vous avez dj une carte rseau Ethernet fonctionnelle sous Linux, remplace encore une fois eth0 par eth1.
Demandez au systme de tenir compte de ce changement :
# /etc/init.d/networking restart
La connexion devrait maintenant fonctionner !
Connexion par modem ADSL Ethernet ou modem cble Ethernet en PPPoE
Si vous avez bien suivi mes consignes, le module de votre carte rseau doit tre charg. Vriez-le avec la commande
suivante qui liste les modules chargs :
% lsmod
Ensuite, il faut faire marcher la liaison vers votre fournisseur daccs, qui est de type PPPoE (Point to Point Protocol over
Ethernet). Pour cela, lancez lassistant et rpondez ses questions :
# pppoeconf
Rpondez aux questions en lisant les messages avec attention :
1. Tous les priphriques ont-ils t trouvs ? Si vous avez une seule carte rseau, et si son module est bien charg, il doit
afcher Jai trouv 1 priphrique ethernet : eth0. Rpondez Oui.
2. Il part ensuite la recherche dun concentrateur PPPoE... et si tout va bien, il annonce Jai trouv un concentrateur
daccs sur eth0. Dois-je congurer PPPoE pour cette connexion ? Rpondez Oui.
3. Ensuite, il vous met en garde contre un crasement du chier de conguration /etc/ppp/peers/dsl-provider :
rpondez Oui, mme si vous navez pas de copie de sauvegarde !
4. Sensuit une question au sujet des options noauth et defaultroute : rpondez Oui.
5. Entrez le nom dutilisateur : tapez le login qui vous a t attribu par votre fournisseur daccs.
6. Entrez le mot de passe : tapez le mot de passe associ.
7. Utilisation du serveur de nom associ ? Suivez le choix recommand : rpondez Oui.
8. Problme de MSS restreint : si vous ntes pas un expert rseau, vous ne comprendez probablement pas grand chose
cette question... suivez-donc encore une fois le choix recommand, i.e. rpondez Oui.
9. Voulez-vous que la connexion soit tablie au dmarrage de la machine ? Rpondez selon votre utilisation habituelle de
la connexion Internet.
10. Voulez-vous dmarrer la connexion tout de suite ? Cest loccasion de tester : rpondez Oui !
Si vous avez mal rpondu une des questions, relanez lassistant :
# pppoeconf
Comme expliqu au dernier cran, pour tablir la connexion (si elle nest pas lane au dmarrage), lanez :
# pon dsl-provider
et pour la terminer, tapez :
# poff
65
Chapitre 21. Faire marcher la connexion Internet
Connexion par modem classique
Cette section explique comment se connecter Internet avec un modem classique branch sur une ligne tlphonique
classique. La procdure ci-dessous doit marcher sans problme avec un modem externe branch sur port srie, ou avec un
modem PCMCIA ; par contre, pour les modems PCI ou les modems intgrs, la procdure est diffrente et dpend de
chaque modem...
Si cest un modem PCMCIA...
Vriez que le package pcmcia-cs est bien install (si vous avez bien suivi mes consignes pour la procdure dinstallation,
il doit ltre). Avec la commande suivante, il installe le package sil nest pas install, et, dans le cas contraire, tinforme
quil est dj install.
# apt-get install pcmcia-cs
Si cest un modem externe sur port srie...
Regardez sur quel port srie le modem est branch :
sil est connect sur le port srie COM1, le device correspondant sera /dev/ttyS0 ;
sil est connect sur le port srie COM2, le device correspondant sera /dev/ttyS1.
Crez un lien symbolique /dev/modem pointant vers le bon priphrique ; par exemple, sil est branch sur le port COM1,
tapez :
# cd /dev
# ln -s ttyS0 modem
Vrier que le modem est bien reconnu
Si cest un modem PCMCIA, insrez le carte dans votre portable ; si cest un modem externe, allumez-le. Vous allez
maintenant vrier que le systme a bien reconnu le modem :
# setserial /dev/modem
/dev/modem, UART: 16550A, Port: 0x03e8, IRQ: 0
Si la ligne qui safche contient UART: 16550A, alors cela signie que le modem est bien reconnu.
Si, par contre, la ligne qui safche contient UART: unknown, alors cela signie que le modem nest pas reconnu (et l
je ne sais pas trop ce quon peut faire...).
Congurer la connexion vers le fournisseur daccs
Le plus simple pour congurer la connexion vers votre fournisseur daccs est dutiliser lassistant qui est install par
dfaut :
# pppconfig
66
Chapitre 21. Faire marcher la connexion Internet
Figure 21-1. Premier cran de pppcong
Slectionnez Create - Create a connection et rpondez aux questions successives :
1. Provider Name : rentrez un nom pour cette connexion (par exemple le nom de votre fournisseur daccs Internet) ;
2. Congure Nameservers (DNS) : slectionnez Use dynamic DNS pour obtenir automatiquement les adresses des
serveurs DNS de votre fournisseur daccs chaque connexion ;
3. Authentication Method : slectionnez PAP Peer Authentication Protocol [FIXME : je ne sais pas dans quel cas il faut
slectionner Chat] ;
4. User Name : tapez le login qui vous a t attribu par votre fournisseur daccs (tapez-le entre guillemets si le login
contient des caractres de ponctuation) ;
5. Password : tapez le mot de passe qui vous a t donn par votre fournisseur daccs (tapez-le entre guillemets si le mot
de passe contient des caractres de ponctuation) ;
6. Speed : laissez la valeur 115200 qui est prsente par dfaut ;
7. Pulse or Tone : si votre ligne tlphonique fonctionne frquences vocales (ce qui est le cas presque partout en
France), slectionnez Tone ; si votre ligne fonctionne avec les impulsions, slectionnez Pulse ;
8. Phone Number : rentrez le numro de tlphone de votre fournisseur daccs ;
9. Choose Modem Cong Method : rpondez No ;
10. Manually Select Modem Port : tapez /dev/modem, qui est le lien symbolique qui pointe vers le bon priphrique ;
11. Properties of nom_de_la_connexion : si vous pensez avoir bien rpondu toutes les questions, slectionnez Finished -
Write les and return to main menu et OK lcran suivant ;
67
Chapitre 21. Faire marcher la connexion Internet
Figure 21-2. pppcong : proprits de la connexion
12. Main Menu : slectionnez Quit - Exit this utility.
Pour crer une deuxime connexion, changer une connexion existante ou supprimer une connexion, relancez cet assistant
et laissez-vous guider par les boites de dialogues (qui ne sont malheureusement pas encore traduites).
Se connecter
Pour se connecter au fournisseur daccs, cest trs simple :
# pon nom_de_la_connexion
o nom_de_la_connexion est le nom que vous aviez entr la premire question de lassistant.
Vous devez normalement entendre le modem se connecter. Pour suivre ltablissement de la connexion, tapez :
# plog -f
Ds que vous voyez une ligne du genre :
Dec 27 19:42:54 alpy pppd[1825]: Script /etc/ppp/ip-up started (pid 1843)
cela signie que la connexion est tablie. Vous pouvez alors arrter lafchage des messages (encore appels logs) par la
combinaison de touches Ctrl-c.
Pour se dconnecter :
# poff
Pour permettre un simple utilisateur de se connecter et se dconnecter, il faut le rajouter aux groupes dialout et dip ; et
pour lui permettre dutiliser la commande plog, il faut le rajouter au groupe adm :
# adduser toto dialout
# adduser toto dip
# adduser toto adm
o toto est le nom de lutilisateur qui vous voulez rajouter les droits. Il pourra alors lancer lui-mme les commandes pon,
poff et plog.
68
Chapitre 22. Le Web et le FTP en console
Surfer sur le web en console ?
Cest possible... mais pas trs joli ! Il existe (au moins) trois navigateurs en mode texte : lynx (http://lynx.browser.org/),
w3m (http://w3m.sourceforge.net/index.en.html) et links (http://atrey.karlin.mff.cuni.cz/~clock/twibright/links/) qui se
trouvent dans les packages du mme nom.
Si, par exemple, vous voulez suivre ma formation dans une console, vous pouvez lancer lynx, qui est install par dfaut :
% lynx www.via.ecp.fr/~alexis/formation-linux/
Figure 22-1. Lynx
Vivement linstallation du serveur graphique pour pouvoir surfer avec Mozilla !
Le FTP en console
Le client FTP le plus facile utiliser en console est, mon got, yafc (http://yafc.sourceforge.net/).
Installation et conguration
Commencez par installer le package :
# apt-get install yafc
Ensuite, installez mon chier de conguration pour yafc :
# cp ~/config/yafcrc /etc/
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/yafcrc
69
Chapitre 22. Le Web et le FTP en console
# mv yafcrc /etc/
Utiliser yafc
Lutilisation de yafc est trs simple :
1. Pour se connecter :
en utilisateur toto sur le serveur ftp.exemple.org :
% yafc toto@ftp.exemple.org
en anonyme sur le serveur FTP archive.debian.org :
% yafc -a archive.debian.org
2. Une fois connect, un nouveau prompt apparat :
yafc login@nom_du_serveur:~>
Les commandes de base disponibles ce prompt sont les suivantes (la compltion automatique des noms de chiers
marche) :
help : afche la liste des commandes disponibles,
ls : liste le contenu du rpertoire distant,
ls -la : liste le contenu du rpertoire distant avec les chiers cachs et les permissions,
cd rpertoire : change de rpertoire distant,
lcd rpertoire : change de rpertoire local,
get chier : tlcharge le chier,
get *.img : tlcharge tous les chiers avec lextension img,
get -r rpertoire : tlcharge le rpertoire,
get --help : afche laide de la commande get,
put chier : dpose le chier,
put test* : dpose tous les chiers dont le nom commence par test,
exit : met n la connexion.
70
Chapitre 23. Le systme de gestion des packages
Debian
Gnralits
Quest-ce quun package ?
Ceci avait t abord dans la premire partie de cette formation la section Quest-ce quun package ?.
Les trois acteurs de la gestion des packages
Trois programmes soccupent de la gestion des packages Debian : dpkg, apt-get et dselect :
Tableau 23-1. Les 3 acteurs de la gestion des packages
Couche Programme Fonction
suprieure apt-get ou dselect Gestion intelligente des packages :
sources, versions, dpendances et
conits
infrieure dpkg Installation et retrait de packages
Dpkg
Utilit
Il faut viter de lutiliser en temps normal pour installer et dsinstaller des packages, puisque quil ne gre pas les
dpendances entre packages.
Par contre, cest souvent le seul moyen dinstaller des packages qui ne sont pas prsents dans la distribution. Il faut alors
tlcharger les chiers correspondant aux packages et les installer avec la commande dpkg.
Utilisation
Les commandes savoir sont les suivantes :
Installe les packages package1 et package2 (comme dpkg ne gre pas les dpendances, il faut installer en mme temps
les packages qui dpendent lun de lautre ; si une ancienne version du package est dj installe, elle sera remplace) :
# dpkg -i package1_0.1_i386.deb package2_0.2_i386.deb
Dsinstalle le package package1 mais ne supprime pas ses chiers de conguration :
# dpkg -r package1
Dsinstalle le package package1 et supprime ses chiers de conguration :
71
Chapitre 23. Le systme de gestion des packages Debian
# dpkg -r --purge package1
Recongure le package package1 qui est dj install :
# dpkg-reconfigure package1
Donne le nom du package qui a install le chier /usr/bin/vim (la rponse est facile, cest le package vim !) :
% dpkg -S /usr/bin/vim
Afche la liste des chiers installs par le package vim :
% dpkg -L vim
Afche la liste des packages installs :
% dpkg -l
Pour plus dinformations ou pour avoir la liste complte des options disponibles, consultez le manuel de dpkg :
% man dpkg
Apt-get
Utilit
Apt-get est la couche qui apporte une certaine intelligence et une grande facilit dutilisation au systme de gestion des
packages Debian. Avec apt-get, on dnit les sources des packages dans un chier de conguration et il gre linstallation
et le retrait des packages en tenant compte des dpendances ainsi que le tlchargement des packages sils sont sur une
source rseau.
Apt-get est donc utilis pour installer et retirer les packages inclus dans la distribution ainsi que des packages qui peuvent
tre inclus dans les sources.
Dnir les sources des packages
La thorie
Les sources des packages sont dnies dans le chier de conguration /etc/apt/sources.list. Une source doit tenir
sur une seule ligne (pas de retour la ligne au milieu de la dnition dune source) et commencer par un des deux mots
cls suivants :
deb pour dnir une source de packages binaires ;
deb-src pour dnir une source de packages sources (cela nintressera que les dveloppeurs qui veulent examiner le
code source des programmes).
Pour ajouter ou retirer une source rseau ou chier, il faut diter le chier " la main".
Pour ajouter comme source un CD ou DVD Debian, il faut excuter la commande suivante :
72
Chapitre 23. Le systme de gestion des packages Debian
# apt-cdrom add
Pour enlever un CD ou DVD Debian de la liste des sources, il faut diter le chier et supprimer la ligne correspondant au
CD ou au DVD.
Vous trouverez tous les dtails sur la syntaxe dans man sources.list.
Mthode 6 disquettes, 1 mini-CD ou 1 CD
Le chier /etc/apt/sources.list doit contenir :
deb http://ftp.fr.debian.org/debian woody main contrib non-free
deb http://ftp.fr.debian.org/debian-non-US woody/non-US main contrib non-free
deb http://security.debian.org/ woody/updates main contrib non-free
Si vous aviez suivi la mthode 6 disquettes ou la mthode 1 mini-CD, vous navez normalement rien changer. Par contre,
si vous aviez suivi la mthode 1 CD, vous devez supprimer la ligne qui correspond au CD et taper les trois lignes ci-dessus.
Note : Vous pouvez remplacer ftp.fr.debian.org par le nom DNS dun autre miroir Debian, notamment si vous avez
accs un miroir plus rapide. Par exemple, pour avoir le miroir Debian de VIA (http://www.via.ecp.fr), il faut mettre
debian.via.ecp.fr la place de ftp.fr.debian.org.
Mthode 7 CDs / 1 DVD
Pour linstant, le chier /etc/apt/sources.list doit normalement contenir 7 lignes correspondant aux 7 CDs, ou une
seule ligne si vous utilisiez un DVD. Selon les cas, vous devrez ajouter ou non des lignes au chier :
si lordinateur na pas de connexion Internet, alors vous navez pas besoin de modier le chier ;
si lordinateur a une connexion Internet par modem classique que vous avez russi la faire marcher au chapitre Faire
marcher la connexion Internet, alors rajoutez la ligne suivante pour bncier des mises jour de scurit :
deb http://security.debian.org/ woody/updates main contrib non-free
si lordinateur a une connexion Internet de type ADSL ou cble que vous avez russi la faire marcher au chapitre Faire
marcher la connexion Internet, alors rajoutez les lignes suivantes pour bncier des nouvelles releases de Debian et des
mises jour de scurit :
deb http://ftp.fr.debian.org/debian woody main contrib non-free
deb http://ftp.fr.debian.org/debian-non-US woody/non-US main contrib non-free
deb http://security.debian.org/ woody/updates main contrib non-free
Utilisation
Les commandes savoir sont les suivantes :
Met jour la liste des packages disponibles (pour les sources rseau ou chier, il doit aller voir si elles ont t mises
jour ; pour les sources CD, il ne fait rien de particulier) :
# apt-get update
73
Chapitre 23. Le systme de gestion des packages Debian
Met jour tous les packages dj installs la dernire version disponibles dans les sources :
# apt-get upgrade
Idem que la commande prcdente, mais cette commande est optimise pour les migrations vers une version suprieure
de Debian (par exemple passer de la version stable la version instable) :
# apt-get dist-upgrade
Installe les packages package1 et package2 et tous les packages dont ils dpendent :
# apt-get install package1 package2
Dsinstalle le package package1 sans effacer ses chiers de conguration :
# apt-get remove package1
Idem que la commande prcdente mais ses chiers de conguration sont supprims :
# apt-get remove --purge package1
Efface du disque dur les packages tlchargs pour tre installs (inutile quand la source est un CD ou un chier du
systme de chiers local) :
# apt-get clean
Pour plus informations ou pour avoir la liste complte des options disponibles, lisez le trs complet APT HOWTO
(http://www.debian.org/doc/manuals/apt-howto/index.fr.html) ou consultez le manuel dapt-get :
% man apt-get
Dselect
Dselect est une alternative apt-get pour la gestion intelligente des packages. Vous vous en tes dj servi une fois pendant
la procdure dinstallation, au chapitre Les packages.
Il a un certain nombre davantages par rapport apt-get, mais il a aussi de nombreux inconvnients, notamment la
complexit dutilisation pour un dbutant ainsi que la difcult de rsoudre les problmes de dpendance. Jai donc dcid
de ne pas expliquer dans ce chapitre lutilisation de dselect ; vous trouverez une explication dtaille de son utilisation dans
lannexe Utiliser Dselect.
Avant daller plus loin...
Complter linstallation de vim
Maintenant que, quelle que soit la mthode que vous avez utilise, vous avez accs lintgralit des packages, vous allez
pouvoir complter linstallation de vim, en installant le programme par, qui permet de reformatter du texte dans vim :
# apt-get install par
74
Chapitre 23. Le systme de gestion des packages Debian
Ce programme apporte deux nouvelles fonctions vim quand vous tes en mode commande :
la touche # coupe les lignes dun paragraphe 72 caractres (on dit wrapper), ce qui est la norme pour les documents
texte que vous envoyez (mail, post dans les news...) ;
la touche @ fait la mme chose que # mais en justiant le texte.
Mthode 1 CD et conguration de lUSB
Vous pouvez dsormais installer les packages hotplug et usbutils comme ceux qui ont suivi les autres mthodes :
# apt-get install hotplug usbutils
Vous pouvez maintenant retirer la ligne que vous aviez ajout la n du chier /etc/fstab et qui commenait par
usbdevfs.
Dsinstaller les packages inutiles
Certains packages qui ont t installs par la procdure dinstallation ou par dselect ne vous sont en ralit par utiles, ou en
tout cas pas dans limmdiat (notamment les packages ipchains pour faire du rewalling avec les vieux noyaux de la
branche 2.2, lpr qui est un vieux serveur dimpression, nvi qui est une vieux clone de vi...) ; je vous conseille de les enlever
:
# apt-get remove --purge ipchains lpr nvi ipmasqadm
# rm /etc/printcap
75
Chapitre 24. Le rseau et la scurit
Introduction la scurit
Qui est concern ?
Ce chapitre vous concerne si votre ordinateur nest pas isol mais connect un rseau local ou Internet.
Mais pourquoi sembter ?
Le raisonnement de base est le suivant : "La scurit de ma machine, je men fous : ya rien de prcieux sur ma machine...
personne na intrt me pirater !"
Avertissement
Cest FAUX ! Les pirates recherchent les machines vulnrables pour avoir accs un compte sur
ces machines. Ils peuvent ainsi lancer leur vraie attaque destructrice depuis cette machine
vulnrable au lieu de le faire depuis leur machine personnelle. Ainsi, on remonte beaucoup plus
difcilement jusqu eux !
Autre raisonnement dangereux : "Jai Linux, donc je suis tranquille niveau scurit !"
Avertissement
Cest encore une fois FAUX ! Il y a des failles de scurit, mme sous Linux. Par exemple, sur les
noyaux 2.4.20 et infrieurs, une faille permet nimporte quel utilisateur de devenir root ! On appelle
a un local root exploit . Plus grave, il y a rgulirement des failles dans des programmes qui
permettent un pirate dexcuter du code sur la machine avec les mmes privilges que
lapplication vulnrable ! On appelle a un remote exploit ; et quand lapplication vulnrable tourne
en root (cest le cas du serveur daccs distance SSH par exemple), alors on appelle a un remote
root exploit , et le pirate a alors le contrle total sur la machine !
Morale...
Jespre que je vous ai convaincu de limportance de se tenir au courant des problmes de scurit et de mettre votre
systme jour ds quune faille est dcouverte et rpare.
Lavantage dappartenir au monde du logiciel libre est que tous les programmeurs du monde entier ont accs au code
source du noyau et des programmes et peuvent alors corriger les failles de scurit. La correction des failles est donc
beaucoup plus rapide quavec dautres OS non libres.
Protger son systme
Les failles de scurit dans les packages Debian
Avec Debian, quand un package a une faille de scurit, une quipe spciale, le security team, se charge de mettre
rapidement disposition des utilisateurs une version corrige du package contenant le programme vulnrable sur un site
ddi.
76
Chapitre 24. Le rseau et la scurit
Pour tre mis au courant de la disponibilit dune mise jour de scurit, il faut sabonner la mailing-list
debian-security-announce. Pour sinscrire, il suft de se rendre ladresse www.debian.org/MailingLists/subscribe
(http://www.debian.org/MailingLists/subscribe). Par la mme occasion, vous pouvez vous abonnez la mailing-list
debian-announce pour recevoir les annonces des sorties de nouvelles versions de la distribution Debian. Je vous conseille
de vous abonnez galement la mailing-list debian-news pour recevoir chaque semaine un rsum de lactualit du projet
Debian.
Quand une faille de scurit est corrige par Debian, vous recevez un mail par la mailing-list debian-security-announce. Ce
mail dcrit la faille et la procdure pour mettre jour facilement votre systme.
En pratique, la procdure de mise jour est toujours la mme. Normalement, vous avez d rajouter au chapitre prcdent le
site de Debian ddi aux mises jour de scurit dans la liste des sources de packages en ajoutant au chier
/etc/apt/sources.list la ligne suivante :
deb http://security.debian.org/ woody/updates main contrib non-free
Ensuite, il suft de mettre jour la liste des packages puis les packages eux-mmes :
# apt-get update
# apt-get upgrade
Les failles de scurit noyau
Il arrive galement quil y ait des failles de scurit dans le noyau Linux. Lquipe de dveloppement du noyau se charge
alors de corriger la faille au plus vite.
Il nexiste pas ma connaissance de mailing-list dannonce ofcielle pour tre mis au courant des failles de scurit du
noyau... mais il suft de jeter un oeil rgulirement aux sites dactualit Linux, comme par exemple LinuxFR
(http://www.linuxfr.org/), qui relayent ce genre dinformation.
La solution pour corriger une faille du noyau consiste gnralement recompiler une version plus rcente du noyau, ou
appliquer un patch sur la dernire version disponible avant de recompiler. La procdure de compilation du noyau Linux et
la faon dappliquer des patches est explique aux chapitres suivants.
Surveiller son systme en lisant les logs
Les logs sont des chiers textes produits par le systme, dans lesquels celui-ci raconte ce quil fait et ce qui lui arrive. Il
donne des renseignements sur ce que font les programmes, les connexions qui arrivent votre machine, les personnes qui
sy connectent.
Les logs se trouvent dans le rpertoire /var/log/. Il faut appartenir au groupe adm pour pouvoir les lire. Rajoutez donc
votre compte utilisateur ce groupe pour viter de lire les logs en root :
# adduser toto adm
Les chiers de logs les plus importants sont :
syslog : cest le chier de log principal. Il contient tous les messages du noyau (que lon retrouve dans kernel.log),
tous les messages des serveurs (que lon retrouve dans daemon.log), tous les messages de la cron...
auth.log : il vous raconte tout ce qui concerne les authentications.
Lire rgulirement les logs de sa machine permet de voir si quelquun essaye de vous attaquer. Cela permet aussi de voir si
tout se passe bien au niveau du systme, du noyau, etc...
77
Chapitre 24. Le rseau et la scurit
Dsactiver les services inetd inutiles
Il est conseill de dsactiver les services inetd activs par dfaut, qui sont de vieux services Unix qui ne sont plus utiliss
par les applications modernes. Pour cela :
# update-inetd --disable discard,daytime,time,ident
Il afche alors un avertissement :
WARNING!!!!!! /etc/inetd.conf contains multiple entries for
the discard service. Youre about to disable these entries.
Do you want to continue? [n]
Rpondez y.
Rajouter une console de logs
Il peut tre intressant davoir une console sur laquelle les logs dlent en direct. Cela permet de voir en temps rel ce qui
se passe au niveau du systme, et donc de rsoudre les ventuels problmes plus rapidement.
Pour cela, ditez en root le chier de conguration de syslog (le programme qui gre les logs) /etc/syslog.conf.
Dcommentez les 4 lignes lendroit o les commentaires parlent de cette fonction (vers la ligne 50) :
daemon,mail.*;\
news.=crit;news.=err;news.=notice;\
*.=debug;*.=info;\
*.=notice;*.=warn /dev/tty8
Pour que le systme tienne compte de cette modication, tapez :
# /etc/init.d/sysklogd restart
En allant sur la console n

8, vous devez dj voir une premire ligne de texte qui vous informe que syslog a redmarr !
Aller plus loin...
Pour en savoir plus sur lart et la manire de scuriser un systme Debian, je vous conseille la lecture du Securing Debian
Manual (http://www.debian.org/doc/manuals/securing-debian-howto/), en anglais.
78
Chapitre 25. Conguration du noyau Linux
Recompiler le noyau
Quest-ce que le noyau Linux ?
Cela a dj t expliqu dans la section Un noyau de la premire partie de la formation.
Pourquoi recompiler le noyau ?
Le noyau qui tourne en ce moment sur votre Linux frachement install est le noyau fourni en standard dans la distribution
Debian. Cest un noyau assez gros qui est destin pouvoir fonctionner sur la plupart des ordinateurs.
Ce que nous allons faire est personnaliser le noyau pour quil supporte nos priphriques et eux seulement. Plus le noyau
est petit, plus le systme dexploitation est rapide. Ltape la plus difcile sera la conguration du noyau, pour quil
supporte bien tous nos priphriques.
La numrotation des noyaux
Les noyaux Linux sont rigoureusement numrots. Le numro comporte 3 chiffres : les deux premiers chiffres
correspondent au numro de la branche, et le dernier chiffre correspond la version du noyau dans cette branche. Par
exemple, le chier linux-2.4.22.tar.gz contient les sources de la version n

22 de la branche 2.4.
Il existe deux types de branches :
les branches stables dont le dernier numro est pair (exemple : 2.0, 2.2, 2.4) ;
les branches instables ou beta qui servent au dveloppement et dont le dernier numro est impair. Elles servent au
dveloppement de la branche de numro pair suprieur (exemple : la branche 2.3 sert au dveloppement de la branche
stable 2.4, et la branche 2.5 sert au dveloppement de la future branche stable 2.6).
Quel noyau choisir ?
Cest trs simple : il faut choisir, sauf cas particulier, le dernier noyau de la dernire branche stable. Au jour o jcris ces
lignes, la dernire branche stable est la branche 2.4 et le dernier noyau de cette branche porte le numro 22. Il faut donc
installer le noyau 2.4.22. Pour avoir les dernires infos sur les versions des noyaux, vous pouvez aller sur le site ofciel du
noyau Linux : The Linux Kernel Archives (http://www.kernel.org).
Les prparatifs
Se renseigner sur son chipset et son processeur
Pour bien congurer son noyau, il faut bien connatre le hardware de sa machine, et notamment le modle du chipset et le
type de processeur. Pour connatre le type de processeur :
% cat /proc/cpuinfo
La ligne model name vous donnera le type de processeur de votre machine.
Pour connatre le modle du chipset de votre machine :
79
Chapitre 25. Conguration du noyau Linux
% lspci
La premire ligne devrait vous donner le modle de votre chipset. Les lignes suivantes vous donneront plein dautres
informations intressantes sur le hardware de la machine, et certaines de ces informations vous seront utiles lors de la
conguration du noyau.
Se renseigner sur sa carte son
Si vous avez une carte son, vous devez savoir quil existe deux architectures pour faire marcher le son sous Linux :
la vieille architecture OSS (Open Sound System), qui est intgre aux sources du noyau 2.4,
la nouvelle architecture ALSA (Advanced Linux Sound Architecture), plus moderne au niveau du code, et qui supporte
plus de cartes son. Elle sera intgre aux sources du futur noyau 2.6.
Je vous conseille donc dutiliser ALSA... sauf si vous avez une carte son qui nest supporte que par OSS. Pour le savoir,
regardez la page ALSA Soundcard Matrix (http://www.alsa-project.org/alsa-doc/) avec un navigateur graphique :
les cartes sur fond blanc sont supportes par ALSA,
les cartes sur fond vert avec "OSS driver" dans la colonne Commentaire ne sont supportes que par OSS,
Les cartes sur fond rouge ne sont supportes par aucune des deux architectures.
Une fois que vous avez trouv votre carte dans la liste, relevez le nom du module ALSA ou OSS :
si votre carte est supporte par ALSA, cliquez sur Details ; le nom du module est crit dans la premire phrase (il
commence toujours par le prxe snd-). Ensuite, allez sur la page daccueil (http://www.alsa-project.org) et notez
galement la dernire version du driver dans la ligne Stable release.
si votre carte est supporte uniquement par OSS, le nom du module est indiqu, ou bien il y a un lien vers un page
explicative contenant le nom du module OSS.
Note : Pour les possesseurs dun ordinateur portable, le site Linux on Laptops (http://www.linux-on-laptops.com/) est
aussi une trs bonne source dinformation pour savoir quel driver utiliser pour sa carte son, ainsi que pour tous les
autres priphriques intgrs dans lordinateur portable.
Se renseigner sur son systme dconomie dnergie
Tout dabord, posez-vous la question suivante : ai-je vraiment besoin dun systme dconomie dnergie ? Si vous voulez
monter un serveur ou une station de travail qui na pas besoin dtre mise en veille, vous navez pas vous proccuper du
systme dconomie dnergie. Par contre, si vous voulez pouvoir mettre votre ordinateur en veille ou si vous avez un
ordinateur portable, il faut partir aux renseignements pour savoir quel systme dconomie dnergie est support par le
BIOS (regardez dans le manuel de la carte mre ou de votre portable) :
lAPM (Advanced Power Management),
ou lACPI (Advanced Conguration and Power Interface).
Note : Si votre systme supporte les deux, lAPM et lACPI, je vous conseille, pour la suite de la conguration de votre
systme, de choisir lAPM, car plus simple et mieux support sous Linux.
80
Chapitre 25. Conguration du noyau Linux
Droits et packages
La plus grande partie de la procdure ne ncessite pas dtre root. Cependant, il va falloir dabord ajouter lutilisateur que
vous tes au groupe src. En root, tapez :
# adduser toto src
o toto est votre nom dutilisateur. Pour que le changement soit effectif, il faut que lutilisateur se dloggue puis se
reloggue.
Pour la dcompression et la conguration du noyau, installez les deux packages suivants :
# apt-get install bzip2 libncurses5-dev
Se procurer les sources du noyau
Maintenant que vous avez les droits et les packages ncessaires, vous allez repasser en simple utilisateur et tlcharger les
sources du noyau.
Si vous avez une connexion Internet rapide
Si vous avez dj une connexion rapide Internet qui marche, tlchargez les sources (32 Mo environ) sur un miroir du
noyau Linux, par exemple le miroir de VIA ftp.via.ecp.fr ou le miroir ofciel franais ftp.fr.kernel.org, et mettez-les dans
le rpertoire /usr/src :
% wget -P /usr/src ftp://ftp.via.ecp.fr/pub/linux/kernel/v2.4/linux-2.4.22.tar.gz
en remplaant ventuellement ftp.via.ecp.fr par un autre miroir plus proche, et en adaptant le numro de version.
Tlchargez galement la signature cryptographique des sources, qui vous permettra par la suite de vrier leur
authenticit et leur intgrit :
% wget -P /usr/src ftp://ftp.via.ecp.fr/pub/linux/kernel/v2.4/linux-2.4.22.tar.gz.sign
Pour vrier lauthenticit et lintgrit des sources du noyau (par exemple pour vrier que les sources nont pas t
modies par un pirate qui se serait introduit sur le site miroir), on va utiliser le programme GnuPG (alias GPG), qui est un
quivalent libre de PGP, et qui est install par dfaut (package gnupg). Commencez par tlcharger la cl publique de Linux
Kernel Archives :
% gpg --keyserver wwwkeys.pgp.net --recv-keys 0x517D0F0E
Comme cest la premire fois que vous utilisez GPG, il cre le rpertoire ~/.gnupg avec un chier options, et vous
demande de rexcuter la commande. Excutez donc la mme commande une deuxime fois.
Ensuite, vriez lauthenticit de la cl publique en comparant le ngerprint de la cl que vous avez tlcharg avec le
ngerprint de la vraie cl de Linux Kernel Archives : ils doivent tre strictement identiques !
Pour connatre le ngerprint de la cl que vous avez tlcharge :
% gpg --fingerprint
/home/toto/.gnupg/pubring.gpg
-------------------------------
pub 1024D/517D0F0E 2000-10-10 Linux Kernel Archives Verification Key <ftpadmin@kernel.org>
Key fingerprint = C75D C40A 11D7 AF88 9981 ED5B C86B A06A 517D 0F0E
sub 4096g/E50A8F2A 2000-10-10
81
Chapitre 25. Conguration du noyau Linux
Pour connatre le vrai ngerprint de la cl, regardez sur le site principal du noyau Linux ladresse
http://www.kernel.org/signature.html.
Si les deux ngerprints sont identiques, alors cest bien la vraie cl publique de Linux Kernel Archives que vous avez
tlcharg dans votre trousseau de cls. Vous pouvez alors passer la vrication des sources :
% cd /usr/src/
% gpg --verify linux-2.4.22.tar.gz.sign linux-2.4.22.tar.gz
Il doit normalement vous rpondre que la signature est bonne (ce qui prouve lauthenticit et lintgrit), mais que la cl
nest pas certie avec une signature de conance.
Si vous navez pas de connexion Internet rapide
Si vous navez pas de connexion rapide Internet, vous avez le choix entre :
trouver les sources du dernier noyau chez un ami qui a une connexion Internet rapide et un graveur de CD ou sur le CD
dun magazine Linux,
installer le package Debian contenant les sources du noyau (sur une Woody, le package contenant les sources les plus
rcentes contient les sources du noyau 2.4.18) :
# apt-get install kernel-source-2.4.18
Dcompresser les sources
Vous devez donc maintenant avoir un chier contenant les sources du noyau Linux dans le rpertoire /usr/src/.
Dcompressez les sources, crez (ou mettez--jour) le lien symbolique /usr/src/linux qui doit pointer sur le nouveau
rpertoire contenant les sources du noyau, et placez-vous dans ce nouveau rpertoire :
si votre chier contenant les sources se nomme linux-version.tar.gz :
% cd /usr/src/
% tar xvzf linux-version.tar.gz
% ln -sfn linux-version linux
% cd linux/
sil se nomme linux-version.tar.bz2 :
% cd /usr/src/
% tar xvjf linux-version.tar.bz2
% ln -sfn linux-version linux
% cd linux/
si vous avez install le package Debian contenant les sources :
% cd /usr/src/
% tar xvjf kernel-source-version.tar.bz2
% ln -sfn kernel-source-version linux
% cd linux/
82
Chapitre 25. Conguration du noyau Linux
Appliquer un patch sur les sources ?
Quest-ce quun patch ?
Dans certains cas particuliers, les sources du noyau standard ne sufsent pas ou ne conviennent pas pour certains usages.
De nombreux projets dveloppent et maintiennent des patchs pour le noyau Linux. Un patch est un chier texte contenant
des instructions pour modier par diffrence les sources dun programme (il donne les lignes ajouter et les lignes retirer
dans les chiers source). Le nom dun chier patch est normalement compos dans lordre :
1. de la fonctionnalit ajoute ou modie par le patch,
2. du numro de version du patch,
3. du numro de version des sources sur lesquels il sapplique,
4. de son extension .diff.
Par exemple, le chier ebtables-brnf-2_vs_2.4.22.diff, tlchargeable depuis la page de tlchargement
(http://sourceforge.net/project/showles.php?group_id=39571) du projet ebtables sur Sourceforge, est la version 2 du
patch qui permet de faire un bridge rewallant avec un noyau Linux, et qui sapplique sur la version 2.4.22 des sources du
noyau (le nom du chier ne prcise pas la version du patch dans ce cas particulier).
Patcher les sources
Pour un usage normal, vous navez a priori pas besoin dappliquer un patch sur les sources du noyau (on dit patcher les
sources) ; vous pouvez alors passer directement la section suivante. Par contre, si vous savez que vous avez besoin dun
patch pour un besoin bien particulier et que vous savez o le tlcharger, suivez les instructions ci-dessous.
Avertissement
Attention ne pas tlcharger nimporte quel patch nimporte o : il en va de la scurit de votre
futur noyau !
Pour expliquer comment on applique un patch, je vais prendre exemple sur le patch cit ci-dessus. Il se prsente
gnralement sous forme compresse (extension .gz ajoute la n du nom du chier). Je suppose que vous avez
tlcharg le patch dans le rpertoire /usr/src/.
Dcompressez le patch et appliquez-le sur les sources du noyau :
% cd /usr/src/
% gunzip ebtables-brnf-version_vs_2.4.22.diff.gz
% cd linux-2.4.22/
% patch -p1 < ../ebtables-brnf-version_vs_2.4.22.diff
Si la dernire commande afche une liste de chiers patchs sans message derreur, cela signie que lopration sest bien
droule.
Note : Vous pouvez appliquer successivement plusieurs patchs sur les sources du noyau condition que les patchs
soient "compatibles" entre-eux.
83
Chapitre 25. Conguration du noyau Linux
Congurer le noyau
Rcuprer un chier de conguration modle
La conguration du noyau est stocke dans un chier .config la racine des sources du noyau. Ce chier est lu et
modi par lutilitaire de conguration du noyau, et il est lu lors de la compilation du noyau. Pour vous faciliter la tche,
jai mis votre disposition un chier de conguration type pour noyau 2.4 (ordinateur xe avec une carte rseau, une carte
son, des disques IDE, un graveur IDE et un lecteur DVD IDE). Je vous conseille de prendre ce chier comme base de
travail pour la conguration de votre noyau 2.4 :
% cp /root/config/config-2.4.x .config
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/config-2.4.x
% mv config-2.4.x .config
Lancer lutilitaire de conguration
Pour lancer lutilitaire de conguration du noyau, tapez, toujours en tant que simple utilisateur :
% make menuconfig
Vous arrivez alors dans linterface de conguration du noyau. Vous pouvez naviguer avec les ches et entrer dans les
menus en appuyant sur Entre.
84
Chapitre 25. Conguration du noyau Linux
Figure 25-1. Menu de conguration du noyau
En dur ou en modules ?
Pour ceux qui ont la mmoire courte : Quest-ce quun module ?
Pour certaines options du noyau, vous avez le choix entre mettre loption en dur ou en modules. Nous allons mettre un
maximum de priphriques en modules... mais pas tous !
Il y a deux types doptions pour la conguration du noyau (on passe dune option la suivante en appuyant sur Espace) :
Les options entre crochets droits [ ] ; vous avez alors le choix entre mettre cette option :
en dur dans le noyau : vous devez faire apparatre une toile : [*],
ou ne pas la mettre : la case doit rester vide : [ ].
Les options entre crochets chs < > ; vous avez le choix entre mettre cette option :
en dur dans le noyau : vous devez faire apparatre une toile : <*>,
en module : vous devez faire apparatre un M : <M>,
ou ne pas la mettre : la case doit rester vide : < >.
85
Chapitre 25. Conguration du noyau Linux
Les options de conguration
Certaines options ne sont destines qu faire apparatre de nouvelles options. Cest par exemple le cas du premier menu.
Dans tous les cas, nhsitez pas lire laide qui est attache chaque option. Vous y trouverez gnralement des
informations pertinentes vous permettant de juger si vous devez activer loption ou pas. Pour cela, placez-vous sur une
option et appuyez sur Tab jusqu tre positionn sur Help et appuyez sur Entre.
Nous allons maintenant passer en revue chaque menu !
Code maturity level options
Ce menu ne contient quune seule option qui, si elle est coche, fait apparatre les options considres comme instables
dans tous les autres menus. Ces options apparaissent alors avec un ag [EXPERIMENTAL] ou mme [DANGEROUS].
Activez loption.
Loadable module support
Ce menu concerne la capacit pour votre noyau dinsrer et denlever des modules la vole sans rebooter. Activez les
options Enable loadable module support et Kernel module loader.
Processor type and features
Commencez par dnir votre type de processeur dans Processor family pour bncier des optimisations spciques :
attention, la compatibilit est ascendante mais pas descendante, i.e. un noyau compil pour Pentium fonctionnera sur
Pentium II mais pas sur un 486.
Ensuite, il faut activer MTRR (Memory Type Range Register) support et, si vous avez la chance davoir une babasse
multi-processeur, il faut aussi activer Symmetric multi-processing support.
General setup
Dans tous les cas, mettez les options suivantes en dur :
Networking support
PCI support avec loption Any pour PCI access mode
PCI device name database
System V IPC
BSD Process Accounting
Sysctl support
Kernel support for ELF binaries
En plus, activez les options suivantes si vous en avez besoin :
ISA bus support pour faire marcher le bus ISA.
Support for hot-pluggable devices pour utiliser les priphriques USB et / ou PCMCIA.
le support du bus PCMCIA : allez dans le sous-menu PCMCIA/CardBus support qui apparat. Dans ce sous-menu,
mettez en module PCMCIA/CardBus support, et en dur CardBus support. Si vous avez un portable pas trop vieux,
vous navez pas besoin des trois dernires options concernant le support du bridge entre le bus PCMCIA et le bus ISA
ou PCI : utilisez laide pour le savoir.
86
Chapitre 25. Conguration du noyau Linux
le support de lAPM (Advanced Power Management) : activez loption Power Management support, puis mettez en
module loption Advanced Power Management BIOS support et en dur loption Make CPU Idle calls when idle.
le support de lACPI (Advanced Conguration and Power Interface) : allez dans le sous-menu ACPI Support, activez
ACPI Support et mettez en module tout ce dont vous avez besoin (aidez-vous de laide et de votre intuition !).
Memory Technology Devices (MTD)
Ce menu est vide car il ne concerne pas larchitecture Intel.
Parallel port support
Mettez le support du port parallle en module. Pour cela, mettez les options Parallel port support et PC-style hardware
en modules.
Plug and Play conguration
Activez Plug and Play support en module, et ventuellement ISA Plug and Play support en module si vous avez un bus
ISA.
Block devices
Mettez le lecteur de disquettes Normal PC oppy disk support en module. Mettez galement Loopback device support
en module, a servira plus tard...
Multi-device support (RAID and LVM)
Si vous avez un ordinateur "normal", ne mettez rien.
Networking options
Cest l que vous congurez la couche rseau de Linux.
Attention
Un ordinateur sous Linux a besoin dune couche rseau mme sil nest connect aucun rseau !
En effet, certains programmes comme par exemple le serveur graphique ont besoin de cette couche
rseau pour fonctionner.
Dans tous les cas, mettez en dur les options suivantes :
Packet socket
Socket Filtering
Unix domain sockets
Si lordinateur est destin tre connect Internet, vous aurez besoin du protocole TCP/IP. Mettez alors en dur les
options suivantes :
TCP/IP networking
IP Multicast
87
Chapitre 25. Conguration du noyau Linux
Si vous voulez vous connecter Internet par modem ADSL USB Speedtouch, activez en plus loption Asynchronous
Transfer Mode (ATM) (EXPERIMENTAL).
Si vous comptez utiliser les fonctions de rewalling du noyau Linux (ces fonctions sont notamment requises si vous voulez
faire du partage de connexion, autrement dit monter un serveur NAT), cochez Network packet ltering (replaces
ipchains) puis allez dans le sous-menu IP: Netlter Conguration qui apparat alors un petit peu plus bas et mettez en
modules toutes les options sauf les deux dernires : ipchains et ipfwadm (cela reprsente plus de trente options !).
Telephony Support
Menu pour tout ce qui concerne la voix-sur-IP. Ne rien mettre.
ATA/IDE/MFM/RLL support
Attention
Cest l quil ne faut pas se tromper ! Je suppose que vous bootez sur un disque dur IDE qui contient
votre noyau Linux. Il faut donc que votre disque dur soit en dur dans le noyau et non en module... car
Linux a videmment besoin du support du disque dur dans le noyau pour pouvoir ensuite lire les
modules qui sont crits sur le disque dur !
Mettez en dur loption ATA/IDE/MFM/RLL support, allez dans le sous-menu qui safche, et mettez en dur
Enhanced IDE/MFM/RLL disk/cdrom/tape/oppy support et Include IDE/ATA-2 DISK support.
Mettez loption pour les lecteurs de CD-ROM et DVD-ROM IDE Include IDE/ATAPI CDROM support en module.
Ensuite se trouve loption SCSI emulation support qui est ncessaire pour graver avec un graveur IDE : si vous avez un
tel graveur, mettez cette option en module.
Mettez en dur les options Generic PCI IDE chipset support, Sharing PCI IDE interrupts support, Generic PCI
bus-master DMA support et Use PCI DMA by default when available.
Enn, vous trouvez une liste de chipsets ; ces options servent optimiser les performances du chipset de votre carte
mre. Mettez en dur loption correspondant au chipset de votre carte-mre. Par exemple, si vous avez un chipset Intel,
mettez en dur Intel PIIXn chipsets support ; si vous avez un chipset VIA, mettez en dur VIA82CXXX chipset support,
etc... Si vous ne trouvez pas votre chipset, ce nest pas grave, on survit trs bien sans a.
SCSI support
Si vous voulez graver sous Linux, il faut mettre en module les options SCSI support, SCSI CD-ROM support et SCSI
generic support.
Si vous avez un disque dur ou un lecteur de CD SCSI, il faut activer SCSI disk support (en dur sil est destin accueillir
votre noyau) et/ou SCSI CD-ROM support et trouver votre carte SCSI dans la liste du sous-menu SCSI low-level drivers
(la mettre en dur si votre disque dur SCSI accueille le noyau).
Si vous voulez vous servir dune cl USB ou de tout lecteur USB compatible avec la norme "USB Mass Storage", il faut
mettre en module les options SCSI support, SCSI disk support et SCSI generic support.
Fusion MPT device support
Ne rien mettre.
88
Chapitre 25. Conguration du noyau Linux
IEEE 1394 (FireWire) support
Si vous avez un port FireWire, mettez IEEE 1394 (FireWire) support en module ainsi que votre contrleur et les
protocoles dont vous avez besoin (utiliser laide).
I2O device support
Ne rien mettre.
Network device support
Cest dans ce menu quil faut activer le support de votre carte rseau, si vous en avez une, et le protocole PPP, utilis pour
se connecter Internet par modem. Cochez Network device support pour voir apparatre les options et les sous-menus.
Si vous avez une carte rseau Ethernet PCI, ISA ou intgre votre carte mre, allez dans le sous-menu Ethernet (10 or
100Mbits) et mettez votre carte en modules. Attention, il faut cocher des options pour faire apparatre des sous-menus
avec des listes de cartes (par exemple, loption 3COM cards fait apparatre la liste des cartes 3Com supportes, et
loption EISA, VLB, PCI and on board controllers fait apparat une longue liste des cartes rseau supportes). Si vous ne
savez pas quelle carte vous avez, aidez-vous de la commande lspci que vous pouvez excuter dans une autre console.
Note : Pour les connects VIA : ceux qui ont une carte PCI prte par VIA doivent cocher 3COM cards et mettre
en module 3c590/3c900 series (592/595/597) Vortex/Boomerang support.
Si vous avez une carte rseau PCMCIA, allez dans le sous-menu PCMCIA network device support et mettez en
module loption qui correspond votre carte.
Note : Note pour les connects VIA : ceux qui ont une carte PCMCIA 10 Mbit prte par VIA doivent mettre en
module 3Com 3c589 PCMCIA support, et ceux qui ont une carte PCMCIA 100Mbit prte par VIA doivent mettre
en module 3Com 3c574 PCMCIA support.
Si vous avez une carte rseau WiFi, allez dans le sous-menu Wireless LAN (non-hamradio) et mettez en module
loption qui correspond votre carte.
Dans tous les cas, le nom du module qui sera gnr est normalement indiqu la n de laide associe loption, dans la
phrase "The module will be called nom_du_module.o" ; si cest le cas, retenez le nom du module.
Si vous voulez pouvoir vous connecter par modem classique Internet, activez :
PPP (point-to-point protocol) support en module,
PPP ltering en dur,
PPP support for async serial ports en module,
PPP Deate compression en module,
PPP BSD-Compress compression en module.
Si vous voulez vous connecter par modem ADSL ou cble, activez :
PPP (point-to-point protocol) support en module,
89
Chapitre 25. Conguration du noyau Linux
PPP ltering en dur,
PPP support for async serial ports en module,
PPP support for sync tty ports en module,
PPP Deate compression en module,
PPP BSD-Compress compression en module,
PPP over Ethernet (EXPERIMENTAL) en module.
Amateur Radio support
Ce menu concerne le support du protocole et des priphriques de Radio Amateur.
IrDA (infrared) support
Ce menu concerne le support du protocole et des priphriques infrarouges.
ISDN subsystem
Cette section est pour les modems ISDN (RNIS en franais).
Old CD-ROM drivers (not SCSI, not IDE)
Ne rien mettre, sauf si vous avez un trs vieux lecteur de CD-ROMs (genre un lecteur qui se branche sur la carte son !).
Input core support
Si vous avez une souris et/ou un clavier USB, mettez en modules Input core support ainsi que Keyboard support si vous
avez un clavier USB et/ou Mouse Support si vous avez une souris USB. Le chiffres concernant la rsolution de lcran ne
concernent que les tablettes graphiques.
Character devices
Les options suivantes sont activer pour tout le monde :
Virtual terminal,
Unix98 PTY support,
Enhanced Real Time Clock Support en module.
Si vous avez un port srie, mettez en module Standard/generic (8250/16550 and compatible UARTs) serial support.
Si vous avez un modem ADSL USB, cochez Non-standard serial port support et mettez en module HDLC line
discipline support.
Si vous avez une imprimante sur port parallle, mettez en module Parallel printer support.
Si vous avez une souris PS/2 ou srie, allez dans le sous-menu Mice et slectionnez en module :
si vous avez une souris sur port srie : Bus Mouse Support ;
si vous avez une souris sur port PS/2 : Mouse Support (not serial and bus mice) et activez loption PS/2 mouse (aka
auxiliary device) support.
90
Chapitre 25. Conguration du noyau Linux
Note : Pour les portables, le TrackPoint ou TrackPad sont gnralement connects en interne comme une souris
PS/2.
Si vous avez une carte video sur port AGP, slectionnez /dev/agpgart (AGP Support) en module et ventuellement
loption qui correspond votre chipset si vous en trouvez une.
Si vous avez une carte graphique avec acclration matrielle 3D avec une puce de marque 3Dfx, ATI, Intel i810, Matrox
ou SiS, mettez loption Direct Rendering Manager (DRM) ainsi que le module correspondant votre carte graphique.
Normalement, le nom du module qui sera gnr est indiqu la n de laide associe loption, dans la phrase "The
module will be called nom_du_module.o" ; si cest le cas, retenez le nom du module. Cela vous permettra davoir
lacclration 3D quand vous installerez un serveur graphique.
Si vous avez une carte nVidia, vous pouvez galement tirer parti de ses acclrations 3D mais par un autre moyen, qui sera
expliqu lors de linstallation du serveur graphique Installer le serveur graphique.
Si vous avez une carte-modem PCMCIA, allez dans le sous-menu PCMCIA character devices et mettez en module
PCMCIA serial device support.
Multimedia devices
Ce menu concerne les cartes TV, Satellite, radio et les Webcams.
File systems
L aussi, il ne faut pas se tromper !
Commencez par mettre le systme de chier sur lequel est stock le noyau en dur dans le noyau. Si vous avez suivi ma
formation depuis le dbut, votre noyau se trouve sur une partition avec un systme de chiers de type Ext3. Il faut donc
absoluement mettre en dur loption Ext3 journalling le system support (sur les noyaux 2.4.18, il est agg
EXPERIMENTAL, mais ne vous inquitez pas, il est parfaitement stable).
Mettez en dur /proc le system support et /dev/pts le system for Unix98 PTYs.
Ensuite, on peut passer au facultatif : mettez DOS FAT fs support et MSDOS fs support en modules pour pouvoir lire des
disquettes formate en DOS.
Si vous avez une partition FAT 16 ou FAT 32, qui est le systme de chier utilis par Windows 3.x, 95, 98, ME et certains
2000 et XP, mettez en plus VFAT (Windows-95) fs support en module pour pouvoir lire et crire sur ces partitions.
Ajoutez ISO 9660 CDROM le system support en module et activez loption Microsoft Joliet CDROM extensions
pour pouvoir lire des CD-ROMs.
Si vous avez une partition NTFS, qui est le systme de chier utilis par Windows NT4, et la majorit des 2000 et XP,
mettez NTFS le system support (read only) en module pour pouvoir y accder en lecture seule sous Linux. Loption
NTFS write support est agge DANGEROUS, donc je ne vous la conseille pas !
Enn, si vous voulez pouvoir lire des CD-RW gravs en mode "paquet" (avec DirectCD sous Windows par exemple),
mettez en module UDF le system support (read only) (le support en criture agge DANGEROUS, comme pour
NTFS).
A la n de la liste se trouvent trois sous-menus :
Network File Systems : si vous tes sur un rseau local o se trouvent des partages NFS et des partages de voisinage
rseau Windows, ce menu va vous intresser.
Si vous voulez pouvoir monter des rpertoires en partage NFS, mettez en module loption NFS le system support et
activez Provide NFSv3 client support.
91
Chapitre 25. Conguration du noyau Linux
Si vous voulez partager des rpertoires par NFS, mettez en module loption NFS server support et activez Provide
NFSv3 server support.
Si vous voulez pouvoir monter des rpertoires en partage sur le voisinage rseau Windows, mettez en module loption
SMB le system support. Il est bon de cocher Use a default NLS et de mettre la code page 850 europenne cp850 en
tant que Default Remote NLS Option pour avoir les caractres europens dans les noms des chiers et des rpertoires.
Partition Types : ne rien mettre.
Native Language Support : ce menu permet davoir les caractres europens sur les noms des chiers et des rpertoires
des partitions Windows et de certains CD-ROMs. Mettez en module :
Codepage 437 (United States, Canada)
Codepage 850 (Europe)
NLS ISO 8859-1 (Latin 1; Western European Languages)
NLS ISO 8859-15 (Latin 9; Western European Languages with Euro)
NLS UTF8
Tout en haut de la liste, mettez iso8859-15 dans la case Default NLS Option.
Console drivers
Activez VGA text console et ventuellement Video mode selection support pour pouvoir ventuellement changer la
rsolution en mode console en changeant des paramtres de LILO.
Sound
Si vous comptez utiliser larchitecture ALSA, mettez en module Sound card support uniquement.
Si vous comptez utiliser larchitecture OSS, mettez en module Sound card support ainsi que le module OSS qui
correspond votre carte son. Normalement, le nom du module qui sera gnr est indiqu la n de laide associe
loption, dans la phrase "The module will be called nom_du_module.o" ; si cest le cas, retenez le nom du module.
USB support
Si vous avez des ports USB et que vous comptez les utiliser, activez en module Support for USB. Vous voyez alors
apparatre plusieurs sections :
Miscellaneous USB options : activez loption Preliminary USB device lesystem.
USB Controllers : activez en module le contrleur USB correspondant votre chipset, en utilisant les noms entre
parenthses et laide. Si vous avez un contrleur USB 2.0, activez en plus en module EHCI HCD (USB 2.0) support. Si
votre seul priphrique est un modem ADSL USB, vous navez pas besoin dautre option.
USB Device Class drivers : activez en module les types de drivers USB dont vous avez besoin. Si vous voulez vous
servir dune cl USB ou de tout lecteur USB compatible avec la norme "USB Mass Storage", il faut mettre en module
loption USB Mass Storage support. Si vous avez une imprimante sur port USB, activez en module loption USB
Printer support.
USB Human Interface Devices (HID) : si vous avez une souris et/ou un clavier USB, activez en module USB Human
Interface Device (full HID) support avec loption HID input layer support.
USB Imaging devices : si vous avez un appareil photo numrique ou un scanner USB, activez en module loption
correspondant votre modle... si vous en trouvez une.
92
Chapitre 25. Conguration du noyau Linux
USB Multimedia devices : cette section regoupe dautres appareils photo numrique USB : si vous trouvez une option
correspondant votre modle, activez-la en module.
USB Network adaptors : si vous avez un modem cble USB, activez en module loption USB Communication Class
Ethernet device support.
les sections suivantes USB port drivers et USB Miscellaneous drivers regroupent divers drivers pour priphriques
USB : si vous trouvez une option correspondant un de vos priphriques, activez-la en module.
Bluetooth support
Ce menu concerne les priphriques Bluetooth.
Kernel hacking
Activez les options Kernel debugging et Magic SysRq key.
Cryptographic options
Ce menu concerne limplantation de fonctions de cryptographie lintrieur du noyau. Sauf si vous avez des besoins trs
particuliers, ne mettez rien.
Library routines
Ce menu concerne limplantation de fonctions particulires (compression et dcompression notamment) lintrieur du
noyau. Idem que prcdemment : sauf si vous avez des besoins trs particuliers, ne mettez rien.
Enregistrer et quitter
Une fois que vous pensez que votre noyau est bien congur, slectionnez Exit et acceptez denregistrer la nouvelle
conguration du noyau.
Voil, cest un premier essai dans lobjectif davoir le noyau parfait, cest dire un noyau qui vous permet de faire marcher
tous vos priphriques sans option inutile. Vous verrez, vous aurez probablement vous y reprendre plusieurs fois avant
davoir un noyau parfait... mais aprs, la conguration du noyau Linux naura plus aucun secret pour vous !
93
Chapitre 26. Compiler le noyau
Il existe deux mthodes pour compiler un noyau Linux :
la mthode gnrique, qui peut tre utilise pour toutes les distributions, y compris Debian ;
la mthode spcique Debian, qui consiste crer un package contenant le noyau puis linstaller. Cette mthode a
lavantage de pouvoir facilement compiler le noyau sur une machine pour linstaller sur une autre, mais elle a
linconvnient dtre trs peu pratique ( mon got...) quand on veut compiler des modules du noyau dont les sources ne
sont pas intgres dans le noyau ofciel (cest le cas des modules ALSA pour les cartes son par exemple).
La mthode gnrique est explique ci-dessous, et je vous conseille de lutiliser dans un premier temps. La mthode
Debian est explique en annexe La mthode Debian pour compiler un noyau.
La mthode gnrique
La compilation
Assurez-vous que vous tes toujours dans le rpertoire /usr/src/linux-version/. Lancez la compilation du noyau et
des modules :
% make dep clean bzImage modules
Il faut alors sarmer de patience, surtout si vous avez un ordinateur peu puissant ! Sur un ordinateur rcent, cela prend
quelques minutes.
Linstallation
Commencez par installer les modules :
# make modules_install
Puis copiez le noyau dans le rpertoire /boot/ avec la commande suivante, en remplaant X par le numro de version du
noyau :
# cp arch/i386/boot/bzImage /boot/vmlinuz-2.4.X
Copiez galement dans le mme rpertoire la System Map et faites une sauvegarde du chier de conguration du noyau :
# cp System.map /boot/System.map-2.4.X
# cp .config /boot/config-2.4.X
Mettez jour les liens symboliques qui se trouvent la racine du systme de chiers : le nouveau noyau devient votre
noyau par dfaut, et le noyau actuel devient le noyau de secours :
# mv /vmlinuz /vmlinuz.old
# ln -sf /boot/vmlinuz-2.4.X /vmlinuz
Compiler et installer ALSA
Si vous avez dcid dutiliser OSS au lieu dALSA, passez directement la section suivante Prparer le chargement
automatique des modules.
94
Chapitre 26. Compiler le noyau
Se procurer les sources
Deux cas se prsentent :
Si vous avez une connexion Internet qui marche, tlchargez les sources des drivers ALSA depuis le serveur FTP
dALSA (1,5 Mo environ) et enregistrez-les dans le rpertoire /usr/src/ :
% wget -P /usr/src ftp://ftp.alsa-project.org/pub/driver/alsa-driver-version.tar.bz2
o version est le numro de la dernire version stable dALSA que je vous avais demand de relever au chapitre
prcdent (cest la version 0.9.8 lheure de ma dernire mise jour de cette page).
Ensuite, dcompressez les sources et placez-vous dans le nouveau rpertoire :
% cd /usr/src/
% tar xvjf alsa-driver-version.tar.bz2
% cd alsa-driver-version/
Si vous navez pas de connexion rapide Internet, installez le package Debian contenant les sources des drivers ALSA
(elles seront moins rcentes que dans le cas prcdent) :
# apt-get install alsa-source
Vous pouvez rpondre nimporte quoi aux questions de conguration du package, nous allons re-congurer les sources
avant la compilation.
Ensuite, dcompressez les sources et placez-vous dans le nouveau rpertoire cre :
% cd /usr/src/
% tar xvzf alsa-driver.tar.gz
% cd modules/alsa-driver/
Compiler et installer les modules ALSA
Il faut maintenant congurer les sources :
% ./configure --with-cards=nom_du_driver --with-sequencer=yes --with-kernel=/usr/src/linux
o nom_du_driver est le nom du module ALSA que vous avez d noter dans la section Se renseigner sur sa carte son sans
le prxe snd-.
Compilez et installez les modules :
% make
# make install
Installer les packages ALSA
Installez les deux packages ncessaires au bon fonctionnement dALSA :
# apt-get install alsa-base alsa-utils
95
Chapitre 26. Compiler le noyau
Prparer le chargement automatique des modules
Lidal est que les modules du noyau se chargent tout seuls quand on a besoin deux. Pour cela, il faut dire au systme que
quand il veut accder au priphrique machin il doit charger le module truc. La procdure est dcrire un chier de
conguration dans le rpertoire /etc/modutils/, puis dexcuter le script update-modules qui va concatner tous les
chiers de ce rpertoire et mettre jour le chier de conguration des modules /etc/modules.conf.
La carte rseau
Si vous avez bien suivi mes instructions pour la conguration du noyau, vous avez not le nom du module de votre carte
rseau. Crez un chier /etc/modutils/reseau et crivez dans ce chier la ligne suivante :
alias eth0 nom_du_module
o nom_du_module est le nom du module de votre carte rseau, sans lextension ".o". Sil ntait pas indiqu dans laide
associe loption de votre carte rseau lors de la conguration du noyau, listez les chiers du rpertoire
/lib/modules/numero_de_version_du_noyau/kernel/drivers/net/. Il y a normalement 2 chiers : mii.o et
un deuxime chier dextension .o. Ce deuxime chier est le driver de votre carte rseau ; nom_du_module est alors le
nom de ce chier sans lextension .o.
Cette ligne signie tout simplement que quand le systme veut accder au device eth0 qui correspond la premire carte
rseau Ethernet, il doit charger le module adquat.
Note : Si vous avez plusieurs cartes rseau, il faut rpter cette ligne plusieurs fois :
alias eth0 nom_du_module_de_la_carte_rseau_n

1
alias eth1 nom_du_module_de_la_carte_rseau_n

2
alias eth2 nom_du_module_de_la_carte_rseau_n

3
La carte son
Si vous utilisez larchitecture OSS
Crez un chier /etc/modutils/son et crivez dans ce chier la ligne suivante :
alias sound-slot-0 nom_du_module_OSS
o nom_du_module_OSS est le nom du module OSS que vous avez compil pour votre carte son. Sil ntait pas indiqu
dans laide associe loption de votre carte son lors de la conguration du noyau, listez les chiers du rpertoire
/lib/modules/numero_de_version_du_noyau/kernel/drivers/sound/. Il y a normalement 3 chiers :
ac97_codec.o, soundcore.o et un troisime chier dextension .o. Ce troisime chier est le driver de votre carte son ;
nom_du_module_OSS est alors le nom de ce chier sans lextension .o.
Si vous utilisez larchitecture ALSA
Copiez mon chier de conguration type :
si vous avez tlcharg les sources sur Internet :
# cp ~/config/alsa-new /etc/modutils/son
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/alsa-new
96
Chapitre 26. Compiler le noyau
# mv alsa-new /etc/modutils/son
si vous avez utilis les sources du package Debian alsa-source :
# cp ~/config/alsa-old /etc/modutils/son
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/alsa-old
# mv alsa-old /etc/modutils/son
Editez le chier /etc/modutils/son que vous venez dinstaller et, la quatrime ligne non commente, remplacez
nom_du_module_ALSA par le nom du module ALSA avec le prxe snd-.
Ensuite, ditez le chier de conguration dALSA /etc/alsa/alsa-base.conf et modiez le premier paramtre de
conguration pour que la compatibilit avec OSS soit effective ds le dmarrage dALSA :
startosslayer=true
Le graveur
Si vous avez un graveur IDE, copiez mon chier de conguration type :
# cp ~/config/graveur /etc/modutils/
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/graveur
# mv graveur /etc/modutils/
La carte graphique
Si vous avez une carte graphique avec acclration matrielle 3D avec une puce de marque 3Dfx, ATI, Intel i810, Matrox
ou SiS, vous avez d mettre loption Direct Rendering Manager (DRM) dans le noyau avec un module correspondant
votre carte graphique, dont je vous avais donn le nom (cf Character devices). Crez un chier /etc/modutils/video
et crivez dans ce chier les lignes suivantes :
pre-install nom_du_module modprobe agpgart
o nom_du_module est le nom du module spcique votre modle de carte graphique. Sil ntait pas indiqu dans laide
associe loption du driver DRM de votre carte graphique lors de la conguration du noyau, listez les chiers du
rpertoire /lib/modules/numero_de_version_du_noyau/kernel/drivers/char/drm/. Il y a normalement un
seul chier qui est le driver DRM de votre carte graphique ; nom_du_module est alors le nom de ce chier sans lextension
.o.
Si vous avez un autre type de carte graphique, vous navez rien faire de particulier dans ce paragraphe.
update-modules
Maintenant que les chiers de conguration ncessaires ont t cres dans le rpertoire /etc/modutils/, il faut excuter
un script pour quil concatne tous ces chiers et gnre le chier de conguration des modules /etc/modules.conf :
# update-modules
97
Chapitre 26. Compiler le noyau
Le chier /etc/modules
Commentez toutes les lignes de ce chier, puis, si vous comptez utiliser les fonctions de rewalling, ajoutez les lignes
suivantes :
ip_conntrack_ftp
ip_conntrack_irc
Les priphriques USB
Si vous avez des priphriques USB, installez les packages hotplug et usbutils (sauf si vous lavez dj fait au dbut du
chapitre Faire marcher la connexion Internet) qui permettent de brancher chaud des priphriques USB sans se
proccuper de charger les modules la main :
# apt-get install hotplug usbutils
Le support du bus PCMCIA
Editez le chier /etc/default/pcmcia et modiez-le pour quil contienne :
PCMCIA=yes
PCIC=yenta_socket
PCIC_OPTS=
CORE_OPTS=
CARDMGR_OPTS=
Normalement, vous avez d modier la ligne qui commence par PCIC=. Cette ligne prcise le type de connexion entre le
bus PCMCIA et le reste du systme ; sur tous les portables pas trop vieux quips dun bus CardBus, il faut mettre
yenta_socket.
Prparer le redmarrage
Le chier de conguration de LILO
Dans cette section, nous allons nous intresser la conguration de LILO. Editez le chier de conguration de LILO
/etc/lilo.conf et modiez-le en regardant le chier de conguration dexemple ci-dessous et en ladaptant votre
conguration personnelle. Normalement, vous navez pas grand chose modier, et seulement quelques options ou
dnitions dO.S. ajouter ou retirer.
# /etc/lilo.conf
# Fichier de configuration de LILO
# Formation Debian GNU/Linux par Alexis de Lattre
# http://www.via.ecp.fr/~alexis/formation-linux/
# Plus dinformation dans "man lilo.conf"
# DEBUT de la partie GLOBALE
# Support des disques de grande capacit
lba32
# Disque sur lequel LILO va crire le MBR
98
Chapitre 26. Compiler le noyau
boot=/dev/hda
# La partition racine de Linux
root=/dev/hdXY
# Boot loader utiliser
install=/boot/boot-menu.b
# Emplacement de la "map"
map=/boot/map
# Je veux que LILO affiche un menu pour choisir entre les O.S.
prompt
# Temps en diximes de secondes au bout duquel LILO
# lance lO.S. dfinit par dfaut
timeout=150
# Choix du mode VGA pour la console
vga=normal
# FIN de la partie GLOBALE
# DEBUT de la partie de dfinition des O.S.
# "Label" de lO.S. boot par dfaut
default=Linux
# Dfinition de Linux avec son noyau principal
image=/vmlinuz
label=Linux
read-only
# Dfinition de Linux avec son noyau de secours
image=/vmlinuz.old
label=LinuxOLD
read-only
# Dfinition dun ventuel Windows 95, 98, ME, 2000 ou XP
# Partition sur laquelle est install Windows
other=/dev/hdXY
label=Windows
# FIN de la partie de dfinition des O.S.
Ecrire les changements sur le MBR
Maintenant que le chier de conguration est prt, excutez LILO pour quil crive les changements sur le MBR :
# lilo
Il vous afche alors la liste des O.S. que vous avez dnis :
Added Linux *
Added LinuxOLD
99
Chapitre 26. Compiler le noyau
Added Windows
Ltoile correspond au systme dexploitation boot par dfaut. Sil vous afche des messages derreur, cest probablement
quil y a un problme dans le chier de conguration ou dans les liens symboliques qui se trouvent la racine du systme
de chiers : faites les modications ncessaires puis rexcutez LILO.
Avertissement
Il faut excuter lilo si vous avez modi les liens symboliques qui se trouvent la racine du systme
de chiers et / ou si vous avez chang les chiers vers lesquels ils pointent, mme si vous navez
pas modi le chier /etc/lilo.conf, sous peine de ne plus pouvoir dmarrer Linux !
Redmarrer
Redmarrez sur le nouveau noyau :
# reboot
Si le redmarrage sur le nouveau noyau se passe mal et que votre Linux se bloque au dmarrage, il va falloir redmarrer
sur votre ancien noyau. Pour cela, faites Ctrl-Alt-Suppr, puis quand le menu de LILO safche, slectionnez
LinuxOLD. Vous navez plus qu recompiler un nouveau noyau... en vous aidant des dernires lignes quil vous a
afch avant de se bloquer au dmarrage pour essayer de trouver lorigine du problme et changer la conguration du
noyau en consquence. Bonne chance !
Si le redmarrage sest bien pass... flicitation, vous avez russi lune des tapes les plus difciles !
Rinstaller les modules annexes
Les drivers annexes ont gnralement besoin que lon ait pralablement reboot pour que la rinstallation se passe bien.
Driver du modem ADSL USB SAGEM F@st 800
Dbranchez le modem et procdez la rinstallation du driver :
% cd /usr/src/eagle-version/
% make clean
% make
# make install
Ensuite, vous pouvez rebrancher le modem et laner le script dtablissement de la connexion :
# startadsl
100
Chapitre 27. Tirer parti du nouveau noyau - 1
Manipuler les modules
Insrer et retirer des modules
Les modules du noyau sont stocks sous forme de chiers avec lextension .o dans le rpertoire /lib/modules/2.4.X/.
Par exemple, le driver dune carte son sera le chier
/lib/modules/2.4.X/kernel/drivers/sound/nom_du_module.o.
Il existe des dpendances entre modules, cest--dire que certains modules ont besoin de la prsence dautres modules pour
fonctionner. Pour voir la liste des modules insrs et leurs dpendances, tapez :
% lsmod
La colonne de droite montre les dpendances entre crochets. Par exemple :
Module Size Used by Tainted: PF
vfat 9500 0 (unused)
fat 29752 0 (autoclean) [vfat]
montre que le module vfat a besoin du module fat pour fonctionner. Cela signie galement que le module fat doit
imprativement tre insr avant le module vfat... et que lon ne peut retirer le module fat sans avoir retir pralablement
le module vfat.
La commande modprobe permet dinsrer et de retirer des modules en tenant compte de ces dpendances.
Par exemple, pour insrer le module vfat, tapez :
# modprobe vfat
Il va dabord insrer les modules requis par vfat puis insrer le module vfat.
Pour retirer un module, il faut dabord retirer les modules qui en dpendent. Par exemple, si on demande de retirer le
module fat on aura un message derreur :
# modprobe -r fat
fat: Device or resource busy
Le message derreur peut aussi venir du fait quun programme est entrain dutiliser le module : le numro de la colonne
Used by dans la sortie de la commande lsmod est alors non nul. Dans ce cas, il faut dabord arrter les programmes qui
utilisent le module avant de pouvoir le retirer.
Il faut donc dabord retirer le module vfat et ensuite le module fat :
# modprobe -r vfat
# modprobe -r fat
Si, aprs linsertion dun module, le priphrique correspondant ne marche pas ou marche bizarrement, retirez le module et
rinserez-le en prcisant des paramtres lors de linsertion. Pour connatre les paramtres dun module, utilisez la
commande modinfo :
% modinfo nom_du_module
Les paramtres sont indiqus sur les lignes qui commencent par parm:. Par exemple, si vous voyez un paramtre irq et un
paramtre dma, vous pouvez essayer de jouer sur ceux-ci pour faire marcher le priphrique :
# modprobe -r nom_du_module
101
Chapitre 27. Tirer parti du nouveau noyau - 1
# modprobe nom_du_module irq=7 dma=1
Le rpertoire /etc/modutils/
Une partie de lexplication de lutilisation de ce rpertoire pour le chargement automatique des modules gure la n du
chapitre prcdent Prparer le chargement automatique des modules. Je vais juste apporter une prcision.
Par exemple, pour que le module de la carte son se charge automatiquement avec certaines options, modiez le chier
/etc/modutils/son que vous avez cre au chapitre prcdent et rajoutez une ligne pour prciser les options. Par
exemple :
alias sound-slot-0 nom_du_module
options nom_du_module irq=7 dma=1
Noubliez pas dexcuter la commande update-modules pour que le systme puisse prendre en compte les modications
intervenues dans le rpertoire /etc/modutils/.
Le chier /etc/modules
Ce chier liste les modules qui doivent tre chargs au dmarrage. La syntaxe est dcrire un nom de module par ligne, en
prcisant sur la ligne les options si besoin est.
Cette solution est viter si le module peut-tre insr automatiquement par un alias.
Si vous modiez ce chier et que vous voulez que les modules soient chargs immdiatement sans redmarrer, excutez le
script suivant :
# /etc/init.d/modutils
Calculating module dependencies... done.
Loading modules: [liste des modules du fichier /etc/modules]
La conguration du rseau
Les interfaces rseau
Linterface de loopback
Linterface de loopback est une interface rseau qui relie la machine elle-mme. Cette interface est dsigne par lo,
ladresse IP associe est 127.0.0.1 et le nom DNS associe est localhost. Ainsi, un utilisateur du systme peut consulter un
serveur Web hberg sur la machine en demandant la page http://localhost/ et sa requte passera par linterface de
loopback.
Linterface associe la carte rseau
Si votre ordinateur est quip dune carte rseau Ethernet, vous allez pouvoir y associer une interface eth0. Les paramtres
rseau de cette interface pourront tre obtenus automatiquement par DHCP si ce service est disponible sur le rseau, o
tre entrs la main dans un chier de conguration.
102
Chapitre 27. Tirer parti du nouveau noyau - 1
Congurer les interfaces rseau
Ce paragraphe est prsent titre dinformation ; si vous avez bien suivi ma formation depuis le dbut, vous navez
normalement pas modier les chiers /etc/network/interfaces et /etc/resolv.conf dont la syntaxe est
explique ci-dessous.
/etc/network/interfaces
Avec Debian, la conguration des interfaces rseaux se fait dans le chier /etc/network/interfaces.
Pour congurer automatiquement la carte rseau par DHCP (sous rserve quun serveur DHCP soit disponible sur le
rseau), le chier doit contenir :
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
Pour congurer la carte rseau la main, vous devez prciser une adresse IP (address), un masque de sous-rseau
(netmask), une adresse de broadcast (broadcast) et une adresse de passerelle (gateway). Le chier ressemblera alors
lexemple ci-dessous :
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.0.12
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
/etc/resolv.conf
Le chier de conguration /etc/resolv.conf contient les informations sur les requtes DNS.
Pour ceux qui utilisent la conguration par DHCP, ce chier est gnr automatiquement chaque requte DHCP.
Pour ceux qui congurent le rseau la main, il faut prciser un ordre de recherche pour les noms DNS dont le domaine
nest pas prcis (search) et ladresse IP dun ou plusieurs serveurs DNS (nameserver). Le chier ressemblera alors
lexemple ci-dessous :
search labo.exemple.org exemple.org
nameserver 192.168.100.1
nameserver 192.168.100.2
Relancer le rseau
Pour que le systme tienne compte des changements effectus dans le chier de conguration, cest--dire dcongure les
interfaces rseau et les recongure selon les instructions du chier /etc/network/interfaces, lancez la commande
suivante :
# /etc/init.d/networking restart
103
Chapitre 27. Tirer parti du nouveau noyau - 1
Reconfiguring network interfaces: done.
Note : Si vous avez un message derreur SIOCDELRT: No such process dans la sortie de la commande, relanez la
commande une nouvelle fois, jusqu ce que le message derreur napparaisse plus.
Visualiser la conguration des interfaces rseau
Pour visualiser la conguration de toutes les interfaces rseau, lancez la commande :
% ifconfig
Pour visualiser la congration de linterface eth0 uniquement :
% ifconfig eth0
Pour visualiser la table de routage :
% route -n
Lecteur de CD ou graveur
Pour ceux qui ont un graveur
Installer le package
Si vous avez un graveur IDE, il faut utiliser lmulation SCSI que vous avez d activer en module lors de la compilation du
noyau. Si vous avez en plus un lecteur de CD et / ou DVD, vous allez utiliser lmulation SCSI pour ce lecteur galement
(ce nest pas obligatoire, mais cest plus simple).
Dans cette section, vous allez avoir besoin du programme cdrecord qui sert graver de CDs :
# apt-get install cdrecord
Il vous demande si vous voulez installer cdrecord SUID root. Si vous rpondez Non, seul le root pourra graver des CDs. Si
vous rpondez Oui, alors tous les utilisateurs appartenant au groupe cdrom pourront graver.
Droits daccs
En mulation SCSI, pour avoir accs au graveur et au lecteur de CD, il faut appartenir au groupe cdrom. Sans mulation
SCSI, pour avoir accs au lecteur de CD, il faut appartenir au groupe disk. Rajoutez votre compte utilisateur ces deux
groupes :
# adduser toto disk
# adduser toto cdrom
104
Chapitre 27. Tirer parti du nouveau noyau - 1
Les devices
Normalement, votre graveur IDE et votre lecteur de CD IDE ventuel devraient tre accessibles par un device /dev/hdX o
X = a, b, c ou d comme expliqu dans la premire partie de la formation (Les partitions).
Mais comme on utilise lmulation SCSI pour ces lecteurs, ils ne seront pas accessibles par un device /dev/hdX mais par
un device /dev/scdY o Y est un nombre compris entre 0 et 16, ce nombre tant en rapport avec lID SCSI qui est attribue
au lecteur par lmulateur SCSI.
Pour connatre ce nombre, lancez la commande suivante :
# cdrecord -scanbus
Pour comprendre le rsultat de cette commande, je vais prendre lexemple de mon ordinateur personnel. Il a un graveur
IDE Teac et un lecteur de DVD Hitachi. Le rsultat de la commande est le suivant :
Cdrecord 1.10 (i686-pc-linux-gnu) Copyright (C) 1995-2001 Jrg Schilling
Linux sg driver version: 3.1.22
Using libscg version schily-0.5
scsibus0:
0,0,0 0) HITACHI DVD-ROM GD-7000 X017 Removable CD-ROM
0,1,0 1) TEAC CD-W516EB 1.0B Removable CD-ROM
0,2,0 2) *
0,3,0 3) *
0,4,0 4) *
0,5,0 5) *
0,6,0 6) *
0,7,0 7) *
Je peux en dduire les renseignements suivants :
Tableau 27-1. Emulation SCSI : ID et devices
Lecteur Device ID SCSI
Lecteur DVD Hitachi /dev/scd0 0,0,0
Graveur Teac /dev/scd1 0,1,0
Il est intressant de voir que les modules ncessaires lmulation SCSI et au fonctionnement des priphriques SCSI ont
t chargs automatiquement lors de lexcution de la commande cdrecord -scanbus. La commande lsmod devrait faire
apparatre les priphriques suivants :
Module Size Used by Tainted: PF
sg 24036 0 (autoclean)
sr_mod 11800 2 (autoclean)
ide-scsi 7648 1
cdrom 28960 0 (autoclean) [sr_mod]
scsi_mod 50396 3 (autoclean) [sg sr_mod ide-scsi]
Les liens symboliques
Maintenant que vous connaissez les devices correspondant votre graveur et votre lecteur de CD ou DVD ventuel, vous
allez pouvoir crer les liens symboliques adquats. Ces liens ne sont pas obligatoires, mais ils sont vivement conseills
pour vous permettre de vous y retrouver plus facilement.
Je vais reprendre lexemple de ma conguration personnelle, et crer les liens symboliques /dev/cdrom, /dev/dvd, et
/dev/graveur qui pointeront respectivement vers les priphriques que jutilise pour la lecture de CD, la lecture de DVD et
la gravure de CD. Je vous laisse adapter les commandes suivantes votre conguration personnelle :
105
Chapitre 27. Tirer parti du nouveau noyau - 1
# cd /dev
# ln -sf scd0 cdrom
# ln -sf scd0 dvd
# ln -sf scd1 graveur
Pour ceux qui ont un lecteur de CD mais pas de graveur
Je suppose donc dans ce paragraphe que vous avez un lecteur de CD et / ou DVD IDE, et pas de graveur. Dans ce cas, cest
beaucoup plus simple car vous navez pas utiliser lmulation SCSI.
Droit daccs
Pour avoir accs au lecteur de CD, il faut appartenir au groupe disk. Rajoutez votre compte utilisateur ce groupe :
# adduser toto disk
Les devices
Votre lecteur de CD sera donc accessible par le priphrique /dev/hdX o X = a, b, c ou d selon la manire dont est
branch le lecteur. (Tout ceci a t expliqu dans la premire partie de cette formation, section Les partitions).
Les liens symboliques
Crez un lien symbolique /dev/cdrom qui pointe vers le bon priphrique :
# cd /dev
# ln -sf hdX cdrom
Vous pouvez galement crer un lien symbolique /dev/dvd qui pointera vers le priphrique correspondant votre lecteur
de DVD :
# ln -sf hdX dvd
Montage des systmes de chiers
/etc/fstab
Le chier de conguration /etc/fstab contient les informations statiques sur le montage des systmes de chiers.
La syntaxe du chier
Les rgles de syntaxe du chier sont les suivantes : une ligne par systme de chier, chaque ligne devant contenir dans
lordre les informations suivantes spares par au moins un espace :
1. lemplacement physique de la partition (par exemple /dev/hdXY pour une partition physique ou
nom_DNS:/rpertoire pour un rpertoire partag par NFS,
2. le point de montage (le rpertoire doit dj exister, sinon il faut le crer au pralable avec la commande mkdir),
3. le type de systme de chier (par exemple swap, ext3, vfat, ntfs, nfs, iso9660 pour les CD-ROM et DVD-ROM),
106
Chapitre 27. Tirer parti du nouveau noyau - 1
4. les options de montage, spares par des virgules :
ro pour monter le systme de chiers en lecture seule,
rw pour monter le systme de chiers en lecture-criture,
noauto pour que le systme de chiers ne soit pas mont au dmarrage (option contraire : auto),
user pour quun simple utilisateur puisse monter et dmonter le systme de chiers et pas seulement le root (option
contraire : nouser),
exec pour permettre lexcution de binaires (option contraire : noexec),
uid, gid et umask pour dnir des permissions pour lensemble du systme de chiers,
defaults pour les options par dfaut (notamment rw, exec, auto et nouser),
et enn sw pour la partition de swap.
5. la valeur 1 si le systme de chier doit tre sauvegard ou la valeur 0 sinon (mettez 0 si vous navez pas de systme de
sauvegarde),
6. la priorit pour la vrication des systmes de chiers par fsck au dmarrage quand cela est ncessaire : la partition
racine doit avoir la plus grande priorit (valeur 1), les autres doivent avoir une priorit infrieure (valeur 2). Les
systmes de chiers qui ne doivent pas tre vris auront la valeur 0.
Donc pour un systme classique, le chier contient par exemple :
/dev/hda1 / ext3 defaults,errors=remount-ro 0 1
/dev/hda2 none swap sw 0 0
/dev/hda5 /tmp ext3 defaults 0 2
/dev/hda6 /home ext3 defaults 0 2
proc /proc proc defaults 0 0
/dev/fd0 /floppy auto defaults,user,noauto 0 0
/dev/cdrom /cdrom iso9660 defaults,ro,user,noauto,exec 0 0
usbdevfs /proc/bus/usb usbdevfs defaults 0 0
Monter et dmonter une partition cite dans fstab
Un des avantages dutiliser le chier /etc/fstab est que le montage et le dmontage des systmes de chiers cits dans
ce chier de conguration sont trs simples. Il suft dutiliser la commande mount pour monter et umount pour dmonter,
suivie du device ou du rpertoire de montage.
Ainsi, les deux commandes suivantes sont quivalentes, et permettent de monter la disquette :
# mount /floppy
# mount /dev/fd0
Comme nous avons prcis loption user pour le lecteur de disquette dans fstab, les deux commandes prcdentes
peuvent tre excutes en tant que simple utilisateur. Dans ce cas, seul lutilisateur en question et le root pourront dmonter
le systme de chier avec lune des deux commandes suivantes :
# umount /floppy
# umount /dev/fd0
Important : Pour dmonter un systme de chier, il faut quaucun des utilisateurs du systme et aucun processus ne
soit entrain douvrir un des chiers du systme de chier dmonter et quaucun utilisateur ne se trouve dans un des
rpertoires du systme de chiers dmonter. Sinon, la commande umount renverra le message derreur suivant :
107
Chapitre 27. Tirer parti du nouveau noyau - 1
umount : /floppy : priphrique occup
Pour voir qui est responsable de cette occupation, utilise la commande lsof qui liste les chiers ouverts :
% lsof | grep floppy
Monter ses partitions Windows
Vous avez normalement compil le module pour pouvoir accder vos partitions Windows de type FAT ou NTFS depuis
Linux.
Prparer le montage dune partition FAT
Le systme de chier de type FAT (FAT 16 ou FAT 32) est utilis par Windows 95/98/ME et parfois par Windows 2000/XP.
Le driver Linux pour ce type de systme de chiers permet dy avoir accs en lecture et en criture.
Supposons que votre partition Windows de type FAT soit /dev/hda1 (premire partition primaire sur le disque dur Primary
Master). Nous allons la monter dans le rpertoire /mnt/win1 quil faut crer au pralable :
# mkdir /mnt/win1
Ensuite, ditez en root le chier /etc/fstab et rajoutez la ligne suivante :
/dev/hda1 /mnt/win1 vfat defaults,rw,user 0 0
Prparer le montage dune partition NTFS
Le systme de chier de type NTFS est souvent utilis par Windows 2000 et XP. Malheureusement, le driver Linux pour ce
type de systme de chier nest pas encore complet : il ne permet que dy accder en lecture, et pas en criture.
Supposons que votre partition Windows de type NTFS soit /dev/hda5 (premier lecteur logique sur le disque dur Primary
Master). Nous allons la monter dans le rpertoire /mnt/win2 quil faut crer au pralable :
# mkdir /mnt/win2
Ensuite, ditez en root le chier /etc/fstab et rajoutez la ligne suivante :
/dev/hda5 /mnt/win2 ntfs defaults,ro,user 0 0
Monter les partitions
Vous avez rajout les entres ncessaires dans le chier /etc/fstab : vos partitions Windows seront donc dornavant
montes automatiquement ds le dmarrage. Mais pour viter de redmarrer, vous allez simplement demander au systme
de monter les partitions cites dans fstab et non dj montes avec la commande suivante :
# mount -a
Si aucun message derreur napparat, vous devez maintenant pouvoir voir le contenu de votre ou vos partition(s) Windows
dans larborescence de votre systme.
108
Chapitre 27. Tirer parti du nouveau noyau - 1
Modier les droits sur les partitions Windows
Par dfaut, les partitions Windows montes appartiennent root, et dans le cas des partitions NTFS, elles ne sont pas
lisibles par les autres utilisateurs. Pour modier les droits daccs appliques aux partitions Windows, vous pouvez rajouter
des options dans la ligne qui leur correspond dans le chier /etc/fstab.
Par exemple, si vous voulez que sur la partition Windows /dev/hda1 formate en FAT, les chiers et les rpertoires :
appartiennent lutilisateur dont lID est 1000,
appartiennent au groupe dont lID est 1000,
aient des droits rwxr-xr-x,
alors la ligne correspondant la partition dans fstab devient la suivante :
/dev/hda1 /mnt/win vfat defaults,rw,user,uid=1000,gid=1000,umask=022 0 0
Avec le mme exemple, mais pour une partition de type NTFS (donc monte en read-only) o les chiers et les rpertoires
auront des droits r-xr-xr-x, la ligne devient :
/dev/hda1 /mnt/win ntfs defaults,ro,user,uid=1000,gid=1000,umask=222 0 0
Pour que les changements soient pris en compte, la commande mount -a ne suft pas. Il faut dmonter et remonter la
partition :
% umount /mnt/win
% mount /mnt/win
Monter sa cl USB
Si vous avez une cl USB (ou nimporte quel priphrique compatible avec la norme "USB mass storage"), commencez
par crer le rpertoire dans lequel vous monterez la cl :
# mkdir /mnt/cleusb
Puis, si votre cl USB est formate en FAT et que vous voulez que les chiers une fois monts appartiennent lutilisateur
dont lID est 1000, rajoutez la ligne suivante la n du chier /etc/fstab :
/dev/sda1 /mnt/cleusb vfat defaults,noauto,user,sync,uid=1000,gid=1000,umask=022 0 0
Vous pouvez alors monter votre cl USB :
% mount /mnt/cleusb
Attention
Noubliez pas de dmonter votre cl USB avant de la dbrancher, sous peine de corrompre les
donnes qui y sont stockes :
% umount /mnt/cleusb
109
Chapitre 28. Tirer parti du nouveau noyau - 2
Vrier que la souris est reconnue
Pour vrier que la souris est reconnue, vous pouvez regarder si des donnes sortent sur le device correspondant la souris
quand vous la bougez ou quand vous cliquez sur un de ses boutons.
Le device correspondant la souris est :
/dev/psaux pour une souris sur le port PS/2 (les trackpoints et les touchpads des ordinateurs portables sont
gnralement raccords ce port),
/dev/input/mice pour une souris sur port USB,
/dev/ttyS0 pour une souris sur le premier port srie,
/dev/ttyS1 pour une souris sur le second port srie,
Pour vrier que des donnes sortent sur le device :
# cat device
ou device est le device correspondant votre type de souris.
Vous devez alors voir safcher plein de caractres bizarres quand vous bougez la souris. Faites Ctrl-c pour arrter.
Le son
Rglages prliminaires
Les droits daccs
Pour avoir accs la carte son, il faut appartenir au groupe audio. Rajoutez-vous dans ce groupe :
# adduser toto audio
Le rglage du son
Pour rgler le volume sonore, il faut utiliser le programme aumix :
# apt-get install aumix
Pour le lancer, il suft de taper :
% aumix
et de faire bouger les curseurs avec les ches.
110
Chapitre 28. Tirer parti du nouveau noyau - 2
Figure 28-1. Aumix
Jouer de la musique
Jouer un chier MP3 ou Ogg Vorbis
Le programme music123 sait faire a trs bien ! Installez le package contenant le programme ainsi que les codecs :
# apt-get install music123 mpg321 vorbis-tools
Pour jouer un chier MP3 :
% music123 mon_fichier.mp3
Pour jouer un chier Ogg Vorbis :
% music123 mon_fichier.ogg
Jouer un CD audio
Vous pouvez par exemple utiliser le package cdtool :
# apt-get install cdtool
Pour jouer un CD, tapez :
% cdplay
Pour jouer le CD de la piste n

2 la piste n

5 :
% cdplay 2 5
Vous disposez aussi des commandes cdstop et cdpause.
Note : Pour que la lecture de CDs audio avec cdtool marche, il faut que le lecteur de CD soit reli directement la
carte son par un petit cble (cest normalement le cas).
111
Chapitre 28. Tirer parti du nouveau noyau - 2
Les systmes dconomie dnergie
LAPM
Pour faire marcher lAPM (Advanced Power Management), il faut, en plus des options que je vous avais conseill dactiver
dans le noyau, installer le package apmd :
# apt-get install apmd
Vous pouvez alors vous servir des fonctions apportes par lAPM :
Pour mettre votre ordinateur en mode standby :
# apm -S
Pour mettre votre ordinateur en mode suspend :
# apm -s
Si vous avez un ordinateur portable (qui supporte lAPM) et que vous voulez avoir des informations sur ltat de la
batterie :
# apm
LACPI
Pour faire marcher lACPI (Advanced Conguration and Power Interface), il faut, en plus des options que je vous avais
conseill dactiver dans le noyau, installer le package acpid :
# apt-get install acpid
[TODO : complter]
112
Chapitre 29. Congurer son serveur de mail local
Tous les ordinateurs sous Linux ont besoin dun serveur de mail pour fonctionner correctement. Par contre, pour mettre en
place un vrai serveur de mail destin recevoir des mails de lextrieur, il faut des entres dans la DNS et surtout un
machine en tat de fonctionnement 24h/24 et 7j/7.
Ce chapitre explique seulement la conguration dun serveur mail qui gre le mail en local et lenvoi des mails. La
conguration dun vrai serveur de mail avec les entres DNS qui vont avec est explique dans la partie Debian GNU/Linux
en rseau.
Installation de Postx
Le serveur de mail install par dfaut sur une Debian est Exim. Je vous propose de le remplacer par Postx
(http://www.postx.org/), qui est rput able et facile congurer :
# apt-get install --purge postfix
Conguration de Postx
Lors de linstallation du package, il vous pose des questions de conguration. A la premire question General type of
conguration ?, rpondez No conguration.
Une fois quil a ni linstallation du package, lancez la commande suivante pour relancer la procdure de conguration
(cette astuce permet davoir un assistant de conguration plus dtaill) :
# dpkg-reconfigure postfix
Au deuxime cran, quand il vous redemande General type of conguration ?, rpondez cette fois Internet Site. Ensuite,
acceptez tous les paramtres quil vous propose par dfaut, sauf la question Use procmail for local delivery ?, laquelle
vous rpondrez Yes.
113
Chapitre 30. Outils dadministration systme
La programmation de tches
Excuter une commande priodiquement
La cron est un programme (install par dfaut) qui est charg de lancer dautres programmes de manire priodique et
automatique. Chaque utilisateur peut dnir avec sa cron les programmes quil veut lancer priodiquement. Il lui suft
dditer sa cron et de dnir la commande et sa priodicit dexcution.
Par exemple, je veux que mon ordinateur me rveille tous les matins 7h12 en jouant un mp3. Jdite ma cron :
% crontab -e
Je me retrouve alors dans vim avec un chier vide. Jajoute la ligne :
12 7 * * * mpg321 ~/music/fichier.mp3
Jenregistre et je quitte ; les changements sont alors automatiquement pris en compte par le systme.
Explications :
1. Les 5 premiers ensembles de caractres spars par des espaces (ici, 12 7 * * *) dnissent la frquence. Dans lordre,
on trouve :
les minutes,
les heures,
le jour du mois,
le mois,
le jour de la semaine (sachant que Lundi vaut 1, Mardi vaut 2, etc...).
Pour excuter une commande chaque jour 7h12, on xe donc le champ minute 12, le champ heure 7, puis on met
des toiles dans les autres champs pour dire quil faut que ce soit excut tous les jours dans le mois, tous les mois et
tous les jours de la semaine.
2. Enn, on trouve la commande excuter : (ici, mpg321 ~/music/chier.mp3).
Quand la cron lance un programme, elle envoie par mail lutilisateur le texte que ce programme crirait sur la console sil
tait lan la main ; sauf si le programme na rien crit. Pour viter de recevoir un mail tous les matins qui me dit quil a
bien jou mon chier mp3, je modie lentre dans la cron en renvoyant la sortie texte du programme vers /dev/null :
12 7 * * * mpg321 ~/music/fichier.mp3 1>/dev/null 2>&1
Autre exemple : jai une connexion permanente Internet et je veux aussi que fetchmail aille chercher mes mails tous les
quarts dheure. Jdite ma cron et je rajoute la ligne suivante :
*/15 * * * * fetchmail --silent
Explications :
1. Les 5 premiers ensembles de caractres */15 * * * * dnissent la frquence "tous les quarts dheure".
2. Jexcute fetchmail avec loption --silent qui ncrit dans sa sortie que les messages derreur ; comme a, je ne
recevrais un mail que quand le rappatriement des mails se passe mal.
114
Chapitre 30. Outils dadministration systme
Excuter une commande une date donne
Par exemple, pour excuter les commandes date puis df -h le 22 Janvier 2003 midi 42, tapez :
% at 12:42 03.01.22
Note : Attention, pour la date, lordre des chiffres est invers par rapport la notation habituelle !
Vous voyez alors apparatre le prompt du programme at pour taper les commandes :
at> date
at> df -h
Une fois que vous avez ni de taper les commandes, utilisez la combinaison de touches Ctrl-d. Le rsultat de la srie de
commandes, appele job, vous sera envoy par mail juste aprs leur excution.
Pour voir la liste des jobs en attente, utilisez la commande atq. Pour annuler un job, tapez atrm numro_du_job.
Donner des droits tendus certains utilisateurs
Vous avez peut-tre dj remarqu, certaines commandes pourtant courantes ne sont accessibles qu lutilisateur root, par
exemple les commandes pour teindre lordinateur, pour le rebooter ou encore le mettre en veille. Si cela se comprend pour
un serveur, cest souvent gnant pour un ordinateur familial. La mauvaise solution serait de donner le mot de passe root
tout le monde ; la bonne solution est dutiliser le programme sudo qui permet au root de spcier que certains utilisateurs
ont le droit dexcuter certaines commandes avec les droits de root.
Attention
La conguration du programme sudo doit se faire avec attention, pour ne pas compromettre la
scurit du systme. Par exemple, si vous donnez un utilisateur le droit dexcuter le programme
/bin/sh en tant que root, alors cela revient lui donner les droits root tout entiers, car il pourra
obtenir un shell avec les droits de root . Plus subtil : si vous donnez un utilisateur le droit dexcuter
vim un_certain_fichier en tant que root, cela revient galement lui donner les droits de root
tout entiers, car il peut alors ouvrir dautres chiers en tant que root en tapant en mode commande
:split autre_chier ou encore excuter des commandes shell en tant que root en tapant en mode
commande :! commande_shell ; il vaut donc mieux dans ce cas changer les permissions sur le
chier en question.
Maintenant que vous tes prvenu, vous pouvez installer le package :
# apt-get install sudo
La conguration se fait dans le chier /etc/sudoers. Mais attention, il ne faut pas diter ce chier directement avec un
diteur de texte, mais utiliser le programme visudo :
# visudo
Vous vous retrouvez alors dans un vim normal entrain dditer le chier /etc/sudoers. Pour donner lutilisateur toto le
droit dexcuter les commandes halt, reboot et apm, rajoutez la ligne suivante :
toto ALL = NOPASSWD: /sbin/halt, /sbin/reboot, /usr/bin/apm
Enregistrez et quittez, comme avec un vim normal. Lutilisateur toto peut alors teindre le systme en tapant :
% sudo halt
115
Chapitre 30. Outils dadministration systme
Si vous voulez obliger les utilisateurs re-taper leur mot de passe quand ils utilisent le programme sudo (pour tre sr que
quelquun nest pas entrain de proter dune console laisse ouverte) enlevez de la ligne le mot NOPASSWD: .
Pour en savoir plus sur la syntaxe du chier sudoers, consultez /usr/share/doc/sudo/examples/sudoers.
Les outils de compression
Installer les packages
Le package gzip qui supporte le .gz est install par dfaut, mais ce nest pas le cas des packages qui supportent les .bz2 et
.zip :
# apt-get install bzip2 zip unzip
Dcompresser un chier ou un arborescence
La commande utiliser dpend de lextension du chier :
% tar xvf archive.tar
% tar xvzf archive.tar.gz
% tar xvjf archive.tar.bz2
% gunzip archive.gz
% bunzip2 archive.bz2
% unzip archive.zip
Compresser un chier
Le but de ce paragraphe nest pas de comparer la performance des diffrents algorithmes de compression, mais simplement
de donner les commandes :
pour produire un chier dextension .gz :
% gzip fichier1
pour produire un chier dextension .bz2 :
% bzip2 fichier1
pour produire un chier dextension .zip :
% zip fichier1.zip fichier1
Compresser une arborescence
Par exemple, je veux comprimer en un seul chier le contenu du rpertoire /etc/ avec en plus le chier
/var/log/syslog :
pour produire un chier dextension .tar.gz :
% tar cvfz archive.tar.gz /etc/ /var/log/syslog
116
Chapitre 30. Outils dadministration systme
pour produire un chier dextension .tar.bz2 :
% tar cvfj archive.tar.bz2 /etc/ /var/log/syslog
pour produire un chier dextension .zip :
% zip -r archive.zip /etc/ /var/log/syslog
Les outils rseau
Les outils rseau suivant peuvent tre utiles pour rsoudre un problme ou surveiller le trafc rseau (la plupart ne sont
accessibles quen root) :
traceroute, qui se trouve dans le package du mme nom, et qui permet de dessiner la route que prennent les packets
pour aboutir une machine distance ;
tcpdump, qui se trouve dans le package du mme nom, et qui permet dafcher tout le trafc qui passe par linterface
rseau ;
iptraf, un moniteur de trafc et de dbit ;
les outils du package netdiag, qui permettent de diagnostiquer un problme de connexion.
117
III. Debian GNU/Linux en mode graphique
Introduction
La premire partie de cette formation vous a expliqu en dtail la procdure dinstallation ; et la deuxime partie vous a
appris les commandes et les outils de base ainsi que la mthode pour recompilier le noyau. Cette troisime partie va vous
apprendre installer un serveur graphique : vous pourrez enn avoir un systme qui ressemble un poste de travail
classique avec un bureau et des icnes ! Pour ceux dont lobjectif tait dinstaller un systme serveur, cette partie ne leur
sera pas utile, puisque les serveurs nont gnralement pas besoin de serveur graphique... par contre, la quatrime partie
Debian GNU/Linux en rseau est faite pour eux !
Les notions de serveur graphique, de bureau et de gestionnaire de fentre
Le serveur graphique est le programme qui permet de passer en "mode graphique" en utilisant les fonctions avanes de
la carte graphique. Il gre notamment le clavier, la souris, les polices de caractres, lcran (rsolution, nombre de
couleurs, etc...) et la carte graphique. Il nexiste quun seul programme qui rempli cette tche sous Linux : XFree86
(http://www.xfree86.org), galement appel serveur X.
Le gestionnaire de fentre est le programme qui, comme son nom lindique, gre les diffrentes fentres, et il ne fait
normalement que a ! Il existe de trs nombreux gestionnaires de fentre sous Linux : Sawsh
(http://sawmill.sourceforge.net/), Enlightenment, AfterStep, Window Maker, fvwm, etc...
Le bureau est le programme qui soccupe dafcher un menu, une barre de lanement, une barre des tches, des icnes
sur le bureau, etc... Il existe galement de nombreux bureaux sous Linux, mais les deux plus connus sont Gnome
(http://www.gnome.org) et KDE (http://www.kde.org).
Avoir un serveur graphique et un gestionnaire de fentre est obligatoire pour travailler "en mode graphique" ; mais on nest
pas oblig davoir un bureau ! Certains gestionnaires de fentre font aussi ofce de bureau minimaliste (par exemple
Windows Maker afche un menu de lancement rapide). Normalement, lutilisateur peut choisir nimporte quelle
combinaison de gestionnaire de fentres et de bureau, mais certains bureaux recommandent un gestionnaire de fentre
particulier (par exemple, Gnome recommande Sawsh pour tirer parti de certaines fonctions avanes et pour pouvoir
intgrer loutil de conguration du bureau et loutil de conguration du gestionnaire de fentre dans une seule interface).
Dans cette formation, nous documentons le couple Gnome / Sawsh (bureau et gestionnaire de fentre). Pour les dbutants
en Linux qui suivent cette formation, nous leurs conseillons de suivre ces choix, et, quand ils auront plus dexprience avec
Linux en gnral et Debian en particulier, ils pourront essayer dautres bureaux et dautres gestionnaires de fentres et
choisir celui qui leur convient le mieux !
Figure 31. Screenshot de Gnome et Sawsh
Chapitre 31. Passer en Sid ?
Le choix
Comme expliqu au chapitre La distribution Debian, il existe 3 versions de Debian, dont deux seulement sont utilisables
pour un usage courant :
la version stable, appele Woody ;
la version unstable, appele Sid.
Les caractristiques de chaque version sont dtailles dans le tableau Les trois versions de Debian.
Ceux qui ont suivi cette formation depuis le dbut ont install une Woody. Il va falloir maintenant choisir entre rester en
Woody ou passer en Sid.
La Sid a un fonctionnement trs diffrent de la Woody. Les packages de la Woody ne sont mis--jour
quexceptionnellement :
lors de la dcouverte dune faille de scurit : une package corrig est alors mis disposition sur le serveur
security.debian.org par lquipe scurit de Debian ;
loccasion dune rvision de la version stable (par exemple passage de la version 3.0 release 1 la version 3.0 release
2) pour corriger des problmes de dpendances ou des problmes trs particuliers (mais pas pour corriger des bugs
logiciels qui naffectent pas la scurit).
Au contraire, la Sid est en volution permanente ! Les dveloppeurs Debian mettent jour les packages de la Sid trs
rgulirement loccasion de la sortie dune nouvelle version dun programme ou pour corriger des bugs. Ils mettent
galement jour les packages quand une faille de scurit est dcouverte.
Le tableau ci-dessous est conu pour vous aider faire le bon choix :
Tableau 31-1. Choix Woody ou Sid
Woody Sid
Avantages Mises jour des packages rares et trs
encadres (donc pas de ncessit davoir
une connexion Internet rapide).
Packages plus nombreux et trs rcents.
Serveur graphique rcent qui supporte
les cartes graphiques rcentes.
Inconvnients Packages vieux, ce qui est criant pour les
applications graphiques, mais pas trs
gnant pour les serveurs et les
applications en console. Serveur
graphique vieux qui ne supporte pas les
cartes graphiques trop rcentes.
Mises jour incessantes (donc ncessit
davoir une connexion rapide Internet
type ADSL ou cble). Packages parfois
dfectueux (mais rapidement rpars).
Prol dutilisation Les machines serveur qui nont pas
besoin dapplications graphiques ; les
ordinateurs personnels qui nont pas de
carte graphique trop rcente et/ou pas de
connexion rapide Internet ; les
utilisateurs qui dbutent sous Linux.
Pour les utilisateurs qui ont dj un peu
dexprience de Linux et qui ont une
connexion rapide Internet et/ou qui ont
une carte graphique rcente.
120
Chapitre 31. Passer en Sid ?
Attention
Vous pouvez facilement passer de Woody Sid ; mais vous ne pourrez que difcilement revenir en
Woody ensuite.
Si vous choisissez de rester en Woody, passez directement au chapitre suivant Installer le serveur graphique et suivez la
Mthode Woody dans la suite de cette formation. Vous pourrez toujours passer en Sid ultrieurement en suivant la section
ci-dessous.
Si vous choisissez de passer en Sid, continuez ce chapitre jusqu la n et suivez la Mthode Sid dans la suite de cette
formation.
La Sid
Passer de Woody Sid
Changer la source des packages
Editez le chier /etc/apt/sources.list. Je suppose dans ce paragraphe que votre systme est congur pour aller
chercher les packages sur un miroir Debian et non sur des CDs. Si vous utilisez le miroir Debian franais, votre chier doit
donc ressembler ceci :
deb http://ftp.fr.debian.org/debian woody main contrib non-free
deb http://ftp.fr.debian.org/debian-non-US woody/non-US main contrib non-free
deb http://security.debian.org/ woody/updates main contrib non-free
Pour passer en Sid, modiez le chier pour quil ressemble lexemple ci-dessous (on garde la ligne contenant les mises
jour de scurit de la version stable de Debian) :
deb http://ftp.fr.debian.org/debian sid main contrib non-free
deb http://ftp.fr.debian.org/debian-non-US sid/non-US main contrib non-free
deb http://security.debian.org/ stable/updates main contrib non-free
Mettre jour les packages
Et cest parti pour la grande mise jour : pratiquement tous les packages vont tre upgrads ! Pour passer de Woody Sid,
il est prfrable dutiliser la commande apt-get dist-upgrade au lieu de la commande apt-get upgrade qui est utilise
habituellement :
# apt-get update
# apt-get dist-upgrade
Pendant la mise jour, vous aurez beaucoup de questions sur la conguration des packages. Sauf si vous avez de bonnes
raisons de faire autrement, rpondez en suivant le choix propos par dfaut en appuyant simplement sur Entre.
Jattire cependant votre attention sur un certain nombre de questions de la mme forme qui concernent la mise jour de
chiers de conguration, comme par exemple ci-dessous pour le chier /etc/pam/other :
Configuration file /etc/pam.d/other
==> File on system created by you or by a script.
==> File also in package provided by package maintainer.
What would you like to do about it ? Your options are:
Y or I : install the package maintainers version
N or O : keep your currently-installed version
121
Chapitre 31. Passer en Sid ?
D : show the differences between the versions
3 or T : show a thre way difference between current, older,
and new versions of the file
M : Do a 3 way merge between current, older,
and new versions of the file [Very Experimental]
Z : start a new shell to examine the situation
The default action is to keep your current version.
*** /etc/pam.d/other (Y/I/N/O/D/Z) [default=N] ?
Dans ce genre de question, vous avez donc le choix entre :
N : garder votre chier de conguration actuel, qui nest pas forcmment le mieux adapt la nouvelle version (cest le
choix par dfaut) ;
Y : installer le chier de conguration livr dans le nouveau package, ce qui crasera les personnalisations que vous avez
pu faire sur le chier de conguration actuel.
Je vous conseille de rpondre Y quand il sagit dun chier de conguration que vous navez jamais modi (ce qui est le
cas dans lexemple ci-dessus) et de rpondre N quand il sagit dun chier de conguration que vous avez personnalis (par
exemple le chier /etc/vim/vimrc).
Dans ce genre de grosses mises jour, il arrive que la procdure apt-get dist-upgrade sinterrompe en cours de route sur
une erreur. Contentez-vous de la relaner lidentique :
# apt-get dist-upgrade
Dplacer les chiers de conguration de zsh
Comme indiqu par un message lors de la mise jour des packages, lemplacement des chiers de conguration de la
nouvelle version de zsh nest plus /etc/ mais /etc/zsh/ ; vous devez donc dplaer vos chiers de conguration :
# cd /etc/
# mv zshrc zshenv zlogin zlogout zsh/
Rcrire le MBR
Jai remarqu quun passage en Sid corrompait le MBR... ce qui implique que le systme ne pourra plus booter sur le
disque dur au prochain redmarrage ! Pour viter cela, rcrivez le MBR en excutant LILO sans modier sa conguration
:
# lilo
[TODO : comprendre pourquoi !]
Du bon usage de la Sid
Frquence conseille des mises jour
La mise jour est termine ? Bienvenue dans la Sid ! Vous venez de dcouvrir une autre grande force de Debian : passer
une version suprieure sans mme rebooter la machine !
Comme expliqu au dbut de ce chapitre, la Sid est en volution permanente ! Il faut donc mettre jour son systme
rgulirement pour rester en phase avec les volutions... mais sans passer sa vie faire des upgrades, qui ncessitent
parfois des adaptations et introduisent parfois des packages dfectueux.
122
Chapitre 31. Passer en Sid ?
Je vous conseille donc de mettre jour votre Sid :
en temps normal, une fois par semaine, pour rester en phase avec les volutions ;
quand une faille de scurit est corrige dans la Sid, tel quannone dans la mailing-list debian-security-announce.
Regarder les bugs connus avant de mettre jour
Pour viter dinstaller des packages dfectueux sur votre Sid, vous pouvez regarder dans le systme de gestion des bugs de
Debian (alias BTS, Bug Tracking System) si les packages que vous vous apprtez installer nont pas de bugs critiques
dj refrencs. Plutt que de faire cela la main, installez un outil qui liste automatiquement les bugs critiques avant
dinstaller les nouveaux packages, et, si des bugs critiques sont rfrencs, qui vous demande de conrmer ou non la mise
jour. Cet outil est contenu dans le package apt-listbugs :
# apt-get install apt-listbugs
Mettre jour
Pour mettre jour une Sid, suivez la procdure classique :
# apt-get update
# apt-get upgrade
Lors de lexcution de la commande apt-get upgrade, si vous avez install loutil apt-listbugs, il vous afchera la liste des
bugs critiques rfrencs pour les packages que vous vous apprtez mettre jour, et, si des bugs critiques sont rfrencs,
il vous proposera alors de continuer ou dabandonner la mise jour.
123
Chapitre 32. Installer le serveur graphique
Prliminaires
Linstallation du serveur graphique nest pas une tape facile, surtout si vous avez une carte graphique dernier cri ou
exotique. Pour que le serveur graphique puisse se lancer, il faut quil connaisse les caractristiques de :
votre clavier,
votre souris,
votre carte graphique (cest le plus difcile),
votre cran.
Deux mthodes
La version XFree86 package dans la Woody est la 4.1.0, et la version de Gnome est la 1.4. Si vous avez une bonne
connexion Internet, vous avez la possibilit dinstaller de passer en sid et de bncier de XFree 4.2.1 et Gnome 2.2.
Note : Si vous avez une carte graphique trs rcente, il pourrait quelle ne soit supporte que par XFree 4.2.1.
Je vous propose donc de choisir une des deux mthodes suivantes :
Mthode Sid pour ceux qui ont une connexion Internet haut-dbit type ADSL ou cble (si vous navez quun simple
modem, les temps de tlchargement risquent dtre beaucoup trop longs). Cela vous permettra de bncier des
avantages dune version plus rcentre dXFree, davoir un bureau plus joli et un certain nombre dapplications qui seront
plus rcentes (Mozilla notamment) ;
Mthode Woody pour ceux qui nont pas de connexion Internet rapide. Vous devrez vous contenter des programmes
packags dans la Woody ; ils ne sont pas toujours trs rcents, mais ils conviennent trs bien une utilisation normale.
Se renseigner sur votre carte graphique
La premire tapez consiste se renseigner sur votre carte graphique. Si vous connaissez le modle exact de votre carte
graphique, vous pouvez passer au paragraphe suivant. Sinon, il va falloir partir aux renseignements pour connatre le
modle exact de votre carte graphique. Vous avez trois sources dinformations :
la documentation et/ou la facture de votre ordinateur,
la commande lspci sous Linux, qui liste les priphriques PCI et AGP. Vous devez avoir un paragraphe qui commence
par "VGA compatible controller", et la suite le nom du modle de votre carte graphique.
si vous avez encore un Windows install sur votre ordinateur, regardez dans le Gestionnaire de priphriques, dans la
section Carte Graphique, pour avoir le nom de votre carte.
Comprendre lacclration 3D sous X
Trois cas se prsentent :
votre carte graphique ne possde pas dacclration 3D matrielle : vous ntes pas concern par ce paragraphe !
124
Chapitre 32. Installer le serveur graphique
vous avez une carte graphique possdant une puce de marque 3Dfx, ATI, Intel i810, Matrox ou SiS : pour tirer parti de
leur acclration 3D matrielle, vous devez utiliser le DRM (Direct Rendering Manager) et le DRI (Direct Rendering
Infrastructure). DRM est un module du noyau que vous avez d activer avec en plus une option spcique votre type
de carte (cf Character devices) ; et vous avez d crire un chier /etc/modutils/video pour que le module sinsre
comme il faut (cf La carte graphique). DRI est un module dXFree quil faudra activer lors de la conguration du
serveur X.
vous avez une carte nVidia TNT / TNT 2 / GeForce 1 2 3 ou 4 / nForce. Vous avez alors le choix entre deux drivers : le
driver OpenSource inclus dans XFree, et le driver propritaire de nVidia. Le driver OpenSource marche trs bien mais ne
tire pas parti de lacclration matrielle 3D de la carte, alors que le driver propritaire sait en tirer parti. Le driver
OpenSource ne supporte gnralement pas les tous derniers modles de cartes nVidia.
Installer et congurer un serveur X
Installer les packages
Installation et dbut de conguration des packages
Installez les packages ncessaires :
# apt-get install x-window-system-core
Il vous pose alors des questions de conguration :
1. Grer les droits de lancement du serveur X avec debconf ? ; rpondez Oui.
2. Grer la conguration du serveur XFree86 4.x avec debconf ? ; rpondez Non.
Installer le driver propritaire nVidia
Si vous souhaitez installer le driver propritaire nVidia, allez sur le site web de nVidia (http://www.nvidia.com) et cliquez
sur Download Drivers, puis sur Linux and FreeBSD Drivers, et enn sur la dernire version des drivers de la section Linux
IA32. Vous arriverez alors sur la page des drivers Linux : tlchargez le chier NVIDIA-Linux-x86-version.run (tout
cela peut mme se faire avec w3m en console).
Dplacez le chier que vous venez de tlcharger dans le rpertoire /usr/local/src puis lanez linstallation :
Si vous suivez la mthode Woody :
# sh /usr/local/src/NVIDIA-Linux-x86-version.run
Si vous suivez la mthode Sid, alors le compilateur par dfaut est plus rcent que celui que vous avez utilis pour
compiler votre noyau. Il faut donc dire linstalleur du driver nVidia de ne pas saffoler :
# export IGNORE_CC_MISMATCH=yes
# sh /usr/local/src/NVIDIA-Linux-x86-version.run
Une interface en mode texte safche alors. Aprs avoir accept la licence propritaire des drivers, il dit quil ne trouve pas
de driver prcompil et propose den tlcharger un depuis le serveur FTP de nVidia : rpondez Non (ils ne font pas de
packages Debian pour le driver). Il vous informe ensuite que linstalleur va compiler une nouvelle interface noyau : faites
OK... et si tout se passe bien, il dit ensuite : Installation of the NVIDIA Accelerated Graphics Driver for Linux-x86 is now
complete ! Faites OK pour quitter linstalleur.
125
Chapitre 32. Installer le serveur graphique
Pour que le module se charge automatiquement au lancement du serveur graphique, crez un chier
/etc/modutils/nvidia contenant :
alias /dev/nvidia* nvidia
alias char-major-195 nvidia
puis excutez :
# update-modules
Note : A chaque changement de noyau, vous devrez rexcuter sh /usr/local/src/NVIDIA-Linux-x86-version.run.
Autorisez lutilisateur toto tirer parti de lacclration matrielle de la carte :
# adduser toto video
Congurer le serveur X avec debconf
Vous allez maintenant congurer le serveur X avec debconf : il va vous poser une srie de questions puis gnrer le chier
de conguration de XFree /etc/X11/XF86Config-4 :
# dpkg-reconfigure xserver-xfree86
A la question Grer la conguration du serveur XFree86 4.x avec debconf ? rpondez Oui cette fois.
La carte graphique
1. Il commence par vous demander de slectionner le pilote de votre carte graphique. Cest l o il ne faut pas se tromper
! Choisissez le driver supportant votre carte graphique dans la liste quil vous propose. Ce nest pas toujours vident...
En fait, chaque driver supporte plusieurs modles de cartes graphiques, et le nom du driver est gnralement le nom du
constructeur de la puce graphique, ou un mix entre le nom du constructeur de la puce et le nom du modle de la carte.
Par exemple :
si vous avez une carte nVidia et que vous voulez utiliser le driver OpenSource, slectionnez nv,
si vous avez une carte nVidia et que vous voulez utiliser le driver propritaire, slectionnez nvidia,
si vous avez une carte ATI et que vous avez install la dernire version dXFree, slectionnez ati,
si vous avez une carte ATI et que vous avez install la version dXFree de la Woody, il y a plusieurs drivers
possibles selon votre modle (r128 pour les Rage 128, radeon pour les Radeons, ati ou atimisc pour les autres).
Note : Si vous avez une carte graphique non supporte par XFree ou que vous ne trouvez pas le driver qui
correspond votre carte graphique, slectionnez le driver vesa : il marche avec quasiment toutes les cartes vido.
2. Ensuite, il vous demande un identiant : on crit gnralement le nom de sa carte graphique.
3. Entrez lidentiant du bus de la carte vido : si vous navez quune seule carte vido, vous pouvez laisser le champ
vide.
4. Entrez la quantit de mmoire que va utiliser votre carte vido : elle est normalement dtecte automatiquement, vous
pouvez laisser le champ vide.
126
Chapitre 32. Installer le serveur graphique
5. Utiliser linterface framebuffer du noyau ? : rpondez Non.
Le clavier
1. Choisir lensemble XKB utiliser : rentrez xfree86.
2. Veuillez choisir votre type de clavier : en fonction du nombre de touches que vous avez, choisissez pc102 (clavier
standard) ou pc105 (clavier standard avec les trois touches Windows en plus).
3. Choisir la disposition de votre clavier : rentrez fr si vous avez un clavier franais.
4. Slectionner la variante de votre clavier : laissez le champ vide.
5. Slectionner les options de votre clavier : laissez le champ vide galement.
La souris
1. Indiquez le port de branchement de votre souris :
/dev/psaux pour une souris sur le port PS/2 (les trackpoints et les touchpads des ordinateurs portables sont
gnralement raccords ce port),
/dev/input/mice pour une souris sur port USB,
/dev/ttyS0 pour une souris sur le premier port srie,
/dev/ttyS1 pour une souris sur le second port srie,
2. Ensuite il vous demande de slectionner le protocole de la souris. Choisissez :
PS/2 si vous avez une souris de base,
ImPS/2 si vous avez une souris un peu plus perfectionne.
3. Emuler une souris 3 boutons ? Si vous avez une souris 2 boutons, rpondez Oui ; si vous avez une souris avec 3
boutons ou plus, rpondez Non.
4. Activer le dlement avec la roulette ? Si vous avez une souris avec roulette, rpondez Oui.
Lcran
1. Commencez par entrer un identiant pour votre moniteur.
2. Votre moniteur est-il de type LCD ? Rpondez Oui si vous avez un cran plat ou un ordinateur portable, et Non si vous
avez un cran classique.
3. Ensuite viennnent les questions sur les rglages de lcran. Si vous ne connaissez pas les spcications techniques de
votre cran, choisissez le mode Simple. Si vous choisissez le mode Expert, il faut connatre prcisement les
caractristiques de votre cran et notamment les frquences de rafrachissement verticales et horizontales (cest
normalement crit dans le manuel de votre cran).
4. Choisissez les modes vido que vous dsirez utiliser pour le serveur X : cochez toutes les rsolutions supportes par
votre cran ; il choisira la meilleur rsolution possible parmi les rsolutions slectionnes (donc a priori la plus leves
de celles que vous avez slectionnes).
5. Choisissez la profondeur de couleur par dfaut : sauf si vous avez une vieille carte graphique avec une mmoire vido
limite, slectionnez 24 bits.
127
Chapitre 32. Installer le serveur graphique
Les modules
1. Slectionnez les modules du serveur XFree86 chargs par dfaut : ne modiez pas la liste, sauf pour trois modules
importants qui doivent tre chargs ou pas selon les cas (ils concernent tous lacclration 3D) :
Tableau 32-1. Les modules XFree pour la 3D
Type de module \ Nom
du module
dri glx GLcore
Driver nVidia propritaire non oui non
Driver nVidia OpenSource non oui non
Cartes 3D avec DRI/DRM oui oui oui
Autres cartes non non non
2. Mettre une section "Files" de rfrence dans la conguration ? : rpondez Oui.
3. Mettre une section "DRI" de rfrence dans la conguration ? : rpondez Oui si vous comptez utiliser le DRI.
Fin...
Une fois que debconf a ni sa srie de questions, il gnre le chier de conguration du serveur graphique
/etc/X11/XF86Config-4.
Recommencer ?
Si vous vous tes tromp dans la conguration, vous pouvez recommencer en recongurant le package xserver-xfree86 :
# dpkg-reconfigure xserver-xfree86
Lancer le serveur X
Pour que le serveur X puisse se lancer, il faut avoir un bureau, ou au minimum un gestionnaire de fentre.
Installer le bureau et le gestionnaire de fentre
Note : Mme si cela peut surprendre, cette tape est la mme, que vous suiviez la mthode Woody ou la mthode Sid.
Installez le bureau Gnome et le gestionnaire de fentre Sawsh :
Mthode Woody :
# apt-get install gnome-session nautilus gnome-control-center gnome-applets sawfish-gnome
Mthode Sid :
# apt-get install gnome-session nautilus gnome-control-center gnome-applets gnome-icon-theme
sawfish-gnome
128
Chapitre 32. Installer le serveur graphique
Il y a beaucoup de dpendances : il va installer une soixantaine de packages supplmentaires.
Il faut ensuite spcier que vous voulez utiliser Gnome comme environnement graphique. Pour cela, en tant que simple
utilisateur, crez dans votre home un chier .xsession contenant la commande gnome-session :
% echo "gnome-session" > ~/.xsession
start X !
Maintenant que tout est prt, vous allez pouvoir lancer le serveur X en tant que simple utilisateur (on ne lance jamais un
server graphique en root) avec la commande suivante :
% startx
Rsultat...
Il y a trois scnarios possibles :
votre serveur X plante.
le serveur X se lance, et vous arrivez dans un beau bureau Gnome... mais la souris devient folle ds que vous la bougez.
Pour fermer le serveur graphique, utilisez la combinaison de touches Ctrl-Alt-Backspace.
le serveur X se lance, et vous arrivez dans un beau bureau Gnome avec une souris qui bouge normalement... VICTOIRE
! Vous pouvez passer directement au chapitre suivant Le bureau Gnome si vous tes press.
Note : Si vous suivez la mthode Sid, il vous afche un message Il y a eu une erreur au dmarrage de lcran de
veille : cochez Ne plus afcher ce message et validez. [TODO : vrier]
Le chier de log
A chaque lancement ou tentative de lancement du serveur X, celui-ci produit un chier de log
/var/log/XFree86.0.log qui contient tous les messages qui ont dl trs vite sur votre cran quand vous avez lanc
le serveur graphique et que vous navez pas pu lire.
Ce chier va vous permettre de comprendre les problmes de votre serveur X et ventuellement de vrier quil marche de
faon optimale. Il faut donc en particulier consulter attentivement ce chier aprs chaque plantage.
Editez /var/log/XFree86.0.log. Aprs les messages au dbut du chier, vous trouvez des lignes qui commencent par
des sigles qui ont leur importance :
(**) informe de quelque chose lu dans le chier de conguration,
(==) informe dun paramtre mis par dfaut,
(II) correspond un message dinformation,
(WW) correspond un avertissement,
(EE) correspond une erreur.
Vous devez donc vous concentrer tout particulirement sur les lignes qui commencent par (WW) ou (EE) et essayer de
comprendre lorigine du problme. Cest gnralement la conguration de la souris ou de la carte graphique qui pose
129
Chapitre 32. Installer le serveur graphique
problme. Il ne faut pas trop se proccuper des messages davertissement qui concernent les polices (en anglais fonts) et
lAPM, il ne sont jamais lorigine de plantages ou de problmes avec la souris !
Recongurer si ncessaire
Une fois que vous avez une petite ide de la cause du mauvais fonctionnement du serveur X, relancez la procdure de
conguration :
# dpkg-reconfigure xserver-xfree86
Note : Si vous avez un serveur X qui marche mais une souris folle ds que vous la bougez, vous naurez probablement
qu changer le protocole de la souris.
Puis testez de nouveau le fonctionnement du serveur X :
% startx
Si vous ne parvenez pas faire marcher votre serveur graphique aprs plusieurs tentatives infructueuses de lancement et
reconguration, lisez attentivement la section suivante...
Peauner la conguration du serveur X
La conguration du serveur X est contenue dans le chier /etc/X11/XF86Config-4. Vous pouvez diter ce chier pour
modier la main la conguration de votre serveur X.
Les sections
Le chier est divis en plusieurs sections, qui ont des liens entre-elles :
Figure 32-1. Liens entre les sections
Les liens entre les sections sont assurs par des identiants appels Identier. Si vous modiez un Identier, noubliez pas
de le modier deux endroits : l o il est dni et l o il est appel (cf les liens sur le schma prcdent) !
Il existe aussi des sections indpendantes des autres :
130
Chapitre 32. Installer le serveur graphique
une section Files qui contient les chemins des polices de caractres,
une section optionnelle ServerFlags qui peut contenir un certain nombre doptions,
une section Module qui contient la liste des modules charger,
une section DRI qui contient les permissions pour lutilisation du DRI (Direct Rendering Infrastructure).
Nous vous prcisons ci-dessous les paramtres importants dans chaque partie, en suivant lordre du chier :
Les polices de caractres
La section Files contient les chemins vers les polices de caractres. Supprimez la ligne correspondant au serveur de polices
local ainsi que la ligne correspondant aux polices de lalphabet cyrillic (nous navons pas install les packages
correspondants, car nous nen avons pas besoin). Pour avoir par dfaut des polices de 75dpi plutt que des polices de
100dpi (100dpi est un peu trop gros mon got...), mettez les lignes contenant 75dpi avant les lignes contenant 100dpi. La
section devient alors :
Section "Files"
FontPath "/usr/lib/X11/fonts/misc"
FontPath "/usr/lib/X11/fonts/75dpi/:unscaled"
FontPath "/usr/lib/X11/fonts/100dpi/:unscaled"
FontPath "/usr/lib/X11/fonts/Type1"
FontPath "/usr/lib/X11/fonts/Speedo"
FontPath "/usr/lib/X11/fonts/75dpi"
FontPath "/usr/lib/X11/fonts/100dpi"
EndSection
Les modules
Normalement, si vous avez suivi mes consignes lors de la conguration avec debconf , vous navez pas besoin de modier
la section Modules.
Le clavier
Loption XkbLayout permet de prciser la nationalit du clavier (franais, amricain, etc...).
Loption XkbModel xe le nombre de touches du clavier (pc102, pc104,...).
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "keyboard"
Option "CoreKeyboard"
Option "XkbRules" "xfree86"
Option "XkbModel" "pc105"
Option "XkbLayout" "fr"
EndSection
La souris
Debconf gnre deux sections pour la souris :
une premire section dont lidentiant est Congured Mouse et qui a une option CorePointer qui dsigne la souris
principale ;
131
Chapitre 32. Installer le serveur graphique
une deuxime section dont lidentiant est Generic Mouse et qui a une option SendCoreEvents qui dsigne une souris
dappoint (par exemple une souris externe sur un ordinateur portable).
Note : Dans le cas o les deux souris sont utilises en mme temps, les mouvements sadditionnent.
Si vous navez quune seule souris, supprimez la section dont lidentiant est Generic Mouse et supprimez galement la
ligne correspondante dans la section ServerLayout.
Loption Device dnit le priphrique correspondant la souris.
Loption Protocol dnit le langage parl par la souris.
Loption Emulate3Buttons doit tre active si vous avez une souris 2 boutons et que vous voulez pouvoir faire du
copier-coller sous X quand mme (ce sera expliqu au chapitre Les bases de Linux en mode graphique).
Loption ZAxisMapping doit tre rgle "4 5" pour faire marcher la roulette si votre souris en as une.
Cela donne par exemple :
pour la souris principale :
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/psaux"
Option "Protocol" "imps/2"
# Dcommentez la ligne suivante si vous avez une souris 2 boutons
# Option "Emulate3Buttons" "true"
# Dcommentez la ligne suivante si vous avez une roulette
# Option "ZAxisMapping" "4 5"
EndSection
pour la souris dappoint ventuelle :
Section "InputDevice"
Identifier "Generic Mouse"
Driver "mouse"
Option "SendCoreEvents" "true"
Option "Device" "/dev/input/mice"
Option "Protocol" "imps/2"
# Dcommentez la ligne suivante si vous avez une souris 2 boutons
# Option "Emulate3Buttons" "true"
# Dcommentez la ligne suivante si vous avez une roulette
# Option "ZAxisMapping" "4 5"
EndSection
La carte graphique
Le paramtre Driver xe le pilote utilis par le serveur X pour votre carte graphique. Le nom du driver correspond
exactement la liste prsente dans debconf ltape de slection du driver de la carte graphique. Vous trouverez des
informations intressantes ce sujet dans le rpertoire /usr/share/doc/xserver-xfree86.
Section "Device"
132
Chapitre 32. Installer le serveur graphique
Identifier "Generic Video Card"
Driver "nvidia"
EndSection
Lcran
Le paramtre HorizSync prcise la plage des frquences de synchronisation horizontale en kHz.
Le paramtre VertRefresh prcise la plage des frquences de rafrachissement verticale en Hz.
Loption DPMS active loption dconomie dnergie si vous avez un cran qui supporte la norme DPMS.
Toutes ces informations techniques sont normalement crites dans le manuel de lcran.
Section "Monitor"
Identifier "Generic Monitor"
HorizSync 28-50
VertRefresh 43-75
Option "DPMS"
EndSection
La rsolution
Le paramtre Device assure le lien avec la section concernant la carte graphique : il doit tre exactement identique aux
paramtres Identier de la section Device.
Le paramtre Monitor assure le lien avec la section concernant lcran : il doit tre exactement identique au paramtres
Identier de la section Monitor.
Le paramtre DefaultDepth dnit sur combien de bits sont codes les couleurs (1 bit = noir et blanc, 8 bits = 256
couleurs, 16 bits = 65536 couleurs, 24 bits = 16 millions). Elle renvoie une des sous sections suivantes.
Il y a ensuite un certain nombre de sous-sections. Seule la section dont le paramtre Depth est gale au paramtre
DefaultDepth est prise en compte par le serveur X.
Les paramtres des sous-sections sont les suivants :
Le paramtre Depth dnit sur combien de bits sont codes les couleurs.
Le paramtre Modes dnit une liste de rsolutions de lcran. Le Serveur X va choisir la plus haute rsolution possible
dans la liste.
Section "Screen"
Identifier "Default Screen"
Device "Generic Video Card"
Monitor "Generic Monitor"
DefaultDepth 24
SubSection "Display"
Depth 1
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 8
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 16
133
Chapitre 32. Installer le serveur graphique
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 24
Modes "1024x768" "800x600" "640x480"
EndSubSection
EndSection
La section ServerLayout
Elle sert principalement assurer le lien avec dautres sections :
Le paramtre Screen assure le lien avec la section concernant la rsolution : il doit tre exactement identique au
paramtres Identier de la section Screen.
Le paramtre InputDevice assure le lien avec le clavier et la souris : il doit donc tre prsent deux fois.
On peut ventuellement rajouter le paramtre OffTime qui xe le nombre de minutes dinactivit au bout duquel un
cran DPMS se met en mode dconomie dnergie. Pour que a marche, il faut galement avoir activ loption DPMS
dans la section Monitor.
Cela donne par exemple :
si vous navez quune seule souris :
Section "ServerLayout"
Identifier "Default Layout"
Screen "Default Screen"
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
Option "OffTime" "20"
EndSection
si vous avez une souris principale et une souris dappoint :
Section "ServerLayout"
Identifier "Default Layout"
Screen "Default Screen"
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
InputDevice "Generic Mouse"
Option "OffTime" "20"
EndSection
La section DRI
Cette section permet de xer les permissions pour lutilisation du DRI. Si vous nutilisez pas le DRI (parce que vous avez
une carte nVidia par exemple), alors ne mettez pas cette section dans votre chier de conguration. Avec la section
dexemple ci-dessous, vous donnez le droit dutiliser DRI tous les utilisateurs du systme :
Section "DRI"
Mode 0666
EndSection
134
Chapitre 32. Installer le serveur graphique
FIN...
Une fois que le chier de conguration est au point, vous navez plus qu enregistrer les changements et relancer le
serveur X.
Manipulations de base
Zapper entre les consoles et le serveur graphique
Pour passer du serveur graphique la console numro X, utilisez la combinaison de touches Ctrl-Alt-FX.
Pour passer de la console X la console Y, utilisez la combinaison habituelle Alt-FY.
Pour revenir sur le serveur graphique, utilisez la combinaison de touches Alt-F7.
Changer de rsolution en live
Quand le serveur X se lance, il gnre une liste de rsolutions valides (i.e. supportes par lcran) partir du paramtre
Modes de la sous-section active de la section Screen du chier de conguration. Sous X, vous pouvez changer de
rsolution sans redmarrer le serveur graphique en utilisant les combinaisons de touches suivantes :
Ctrl-Alt- + (du pav numrique) pour passer la rsolution suivante dans la liste,
Ctrl-Alt- - (du pav numrique) pour revenir la rsolution prcdente.
135
Chapitre 33. Le bureau Gnome
Gnome (http://www.gnome.org) est un grand projet ayant pour but de construire un environnement graphique complet,
facile utiliser et entirement libre. Il est n linitiative de la Free Software Foundation (http://www.fsf.org/) (FSF) en
raction au projet KDE (http://www.kde.org) dont la licence du Toolkit graphique (QT
(http://www.trolltech.com/products/qt/)) ntait lpoque pas libre au sens de la FSF. Gnome est la fois un bureau et un
ensemble dapplications qui partagent le mme toolkit graphique et donc le mme look au niveau de linterface. Sawsh
(http://sawmill.sourceforge.net/) est le gestionnaire de fentre ; nous lavons choisi pour sa stabilit et sa bonne intgration
Gnome.
Personnaliser son bureau
Personnaliser Sawsh
Mthode Woody
En Woody, la conguration de Sawsh se fait dans le Centre de contrle Gnome, accessible en cliquant sur licne
reprsentant une bote outils dans la barre du bas.
Figure 33-1. Centre de contrle Gnome 1.4
Mthode Sid
En Sid, le plus pratique pour congurer Sawsh est de laner le programme sawsh-ui. Pour cela, cliquez sur Action puis
Lancer un programme et tapez sawsh-ui puis cliquez sur Lancer.
136
Chapitre 33. Le bureau Gnome
Figure 33-2. Lancer sawsh-ui
Le programme de conguration de Sawsh apparat alors :
Figure 33-3. Programme de conguration de Sawsh
La conguration de Sawsh
En vous baladant dans les diffrents menus ou onglets, vous pouvez notamment congurer les paramtres suivants :
le thme, i.e. lapparence des fentres (celui qui apparat dans les screenshots est microGUI),
le nombre de bureaux dont vous voulez disposer. Le concept de bureau est quelque-chose inconnu des utilisateurs de
Windows, qui ne peuvent avoir quun seul bureau. Les utilisateurs de Linux ont la possibilit davoir plusieurs bureaux,
et de passer de lun lautre trs simplement. Un bureau est une sorte dcran virtuel, et un seul bureau nest afch la
fois. Vous verrez, cest trs pratique...
le comportement du focus, cest dire quelles sont les rgles pour le changement de focus des fentres,
les raccourcis clavier (pour passer facilement dun bureau lautre par exemple...)
137
Chapitre 33. Le bureau Gnome
Personnaliser Gnome
Mthode Woody
En Woody, la conguration de Gnome se fait dans le centre de contrle Gnome, comme pour Sawsh. Si vous voulez
pouvoir changer le thme prsent par dfaut qui sappliquera Gnome et toutes les applications ayant une interface
Gnome, installez en plus les packages contenant les thmes : ceux sont les packages dont le nom commence par
gtk-engines. Mon thme prfr est Crux, contenu dans le package gtk-engines-eazel.
Mthode Sid
En Sid, la conguration de Gnome se fait dans le menu Applications / Prfrences de Bureau. Si vous voulez pouvoir
changer le thme qui sappliquera Gnome 2 et toutes les applications ayant une interface Gnome 2, installez en plus les
packages contenant les thmes Gnome 2 : ceux sont les packages dont le nom commence par gtk2-engines. Mon thme
prfr est Crux, contenu dans le package gtk2-engines-crux. Un des plus beau thmes est SphereCrystal, contenu dans le
package gtk2-engines-spherecrystal : il impressionne avec ses icnes vectoriels, mais il est trs gourmand en ressources...
La conguration de Gnome
Vous pouvez choisir votre fond dcran, les thmes, et rgler divers paramtres. En ce qui concerne lconomiseur dcran,
nous verrons a plus tard dans le chapitre Lconomiseur dcran.
Tout le reste se congure par clic droit sur les deux tableaux de bord Gnome, qui sont les deux barres afches aux
extrmits suprieures et infrieures de lcran (vous ntes pas oblig de conserver les deux). Vous pouvez les
personnaliser votre got, cest trs facile.
Par exemple, si vous avez un portable et que vous voulez avoir un indicateur de charge de la batterie dans un tableau de
bord, faites un clic droit un endroit vide du tableau de bord et :
en Woody, slectionnez Tableau de bord / Ajouter au tableau de bord / Applets / Moniteurs / Moniteur de charge de la
batterie ;
en Sid, slectionnez Ajouter au tableau de bord / Utilitaire / Moniteur de charge de la batterie.
Utiliser Gnome
L encore, je ne vais pas faire de grands discours : promenez votre souris un peu partout et vous dcouvrirez par
vous-mme. Vous retrouverez un menu comme sous Windows, o la patte dours de Gnome remplace le bouton Windows.
Figure 33-4. La patte Gnome
Utiliser le gestionnaire de chier Nautilus
Le gestionnaire de chier de Gnome sappelle Nautilus. Pour le lancer :
en Woody, cliquez sur la patte Gnome, puis sur Programmes, Applications et enn Nautilus ;
en Sid, cliquez sur Applications, puis sur Rpertoire Maison.
Vous avez alors un beau gestionnaire de chiers comme ci-dessous.
138
Chapitre 33. Le bureau Gnome
Figure 33-5. Nautilus
Fermer le serveur graphique
Pour fermer Gnome et le serveur graphique :
en Woody, cliquez sur la patte Gnome, puis sur Clore la session ;
en Sid, cliquez sur Action, puis sur Clore la session.
139
Chapitre 34. Les bases de Linux en mode graphique
Dans ce chapitre, vous allez apprendre taper des commandes en mode graphique, lancer des applications graphiques,
faire du copier-coller sous X et enn tuer des applications graphiques.
Un terminal sous X
La premire chose faire est de pouvoir taper des commandes sous X. Pour avoir une console sous X, nous vous
proposons dutiliser xterm :
# apt-get install xterm
Crez un icone pour xterm en faisant un clic-droit sur le Panel Gnome, puis en slectionnant successivement :
en Woody : Tableau de bord / Ajouter au tableau de bord / Lanceur... ;
en Sid : Ajouter au tableau de bord / Lanceur....
Rentrez alors dans le champ Commande la commande qui correspond lapplication que vous voulez utiliser avec les
options ventuelles. Dans le cas de xterm, rentrez la commande suivante :
xterm -bg black -fg white -geometry 80x38 -sl 2000
Choisissez un icne dans la liste et validez.
Figure 34-1. Crer un icone
Vous pouvez alors lancer un Terminal sous X en cliquant sur licne que vous avez cr !
140
Chapitre 34. Les bases de Linux en mode graphique
Figure 34-2. xterm
Faire du copier-coller sous X
Vous pouvez trs facilement faire du copier-coller sous X au sein dune mme application ou dune application une autre
; tout est gr par le serveur graphique :
1. slectionnez du texte avec le bouton gauche de votre souris,
2. placez le curseur l o vous voulez coller le texte,
3. collez le texte en cliquant sur le troisime bouton de votre souris ou, si votre souris na que deux boutons, en cliquant
sur le bouton gauche et le bouton droit en mme temps (il faut alors que vous ayez activ loption Emulate3Buttons
dans le chier de conguration de votre serveur graphique).
Lancer et tuer une application graphique
Quatre possibilits pour lancer une application graphique
Utiliser le menu Gnome
Cliquez sur la patte Gnome et un menu souvre, comme quand vous cliquez sur Dmarrer sous Windows. Vous pouvez
alors chercher lapplication graphique dans les sous-menus (toutes les applications graphiques y sont ajoutes
automatiquement lors de leur installation).
Figure 34-3. Patte Gnome
141
Chapitre 34. Les bases de Linux en mode graphique
Crer un icne
Cest ce que lon a fait au dbut du chapitre pour xterm... donc vous savez le faire !
Utiliser le lanceur Gnome
en Woody, cliquez sur la patte Gnome et slectionnez Lancer... et cliquez ventuellement sur Avan.
en Sid, cliquez sur Actions puis Lancer un programme.
Ensuite, tapez la commande correspondant lapplication avec les options ventuelles. Par exemple, pour lancer le
programme xlogo :
Figure 34-4. Le lanceur Gnome
Lancer depuis un terminal
Vous pouvez galement lancer une application graphique depuis un xterm. Pour cela, tapez au prompt dun xterm la
commande avec ses options suivie du caractre & qui permet de dtacher le programme du xterm. Par exemple, pour lancer
le programme xlogo :
Figure 34-5. Lancer depuis xterm
Cette mthode permet de lancer facilement une application graphique en root : il suft de devenir root dans le xterm avec la
commande su avant de lancer le programme.
Note : La quasi-totalit des applications graphiques se lancent avec la commande qui porte leur nom !
142
Chapitre 34. Les bases de Linux en mode graphique
Tuer une application graphique
Lancez le programme xkill grce une des mthodes cites prcdemment (il napparat pas dans le menu, la premire
mthode ne marche donc pas). Vous avez alors un curseur de souris spcial avec lequel vous allez cliquer sur lapplication
graphique que vous voulez tuer. Bien sr, cette technique doit tre utilise que pour une application qui ne veut pas se
fermer normalement.
Leuro sous X
# apt-get install xfonts-base-transcoded xfonts-75dpi-transcoded xfonts-100dpi-transcoded
Crez un chier /etc/X11/Xsession.d/60xmodmap contenant la ligne suivante :
/usr/bin/X11/xmodmap -e keycode 26 = e E currency
Ensuite, ditez le chier /etc/X11/app-defaults/XTerm et rajoutez la n du chier la ligne suivante :
*font: -misc-fixed-medium-r-semicondensed-*-*-111-75-75-c-*-iso8859-15
Fermez votre session Gnome et redmarrez le serveur graphique avec la commande startx. Vous devriez alors avoir le
symbole euro dans votre xterm avec la combinaison des touches AltGr-e.
Vim sous X
Vous pouvez bien sr utiliser vim dans un xterm... mais vous pouvez aussi utiliser la version graphique de vim :
# apt-get install vim-gtk
Il se lance avec la commande gvim.
143
Chapitre 34. Les bases de Linux en mode graphique
Figure 34-6. Gvim
Vrier que lacclration matrielle 3D fonctionne
Si vous avez une carte graphique avec acclration matrielle 3D, vous pouvez vrier que lacclration matrielle
fonctionne :
avec la commande glxinfo excute dans un xterm : les trois premires lignes doivent contenir :
name of display: :0.0
display: :0 screen: 0
direct rendering: Yes
Sil marque la troisime ligne direct rendering: No, cest que lacclration matrielle 3D ne fonctionne pas.
avec le programme glxgears excut dans un xterm :
144
Chapitre 34. Les bases de Linux en mode graphique
Figure 34-7. glxgears
Les performances safchent alors dans le xterm. Pour vous donner un ordre de grandeur, on obtient environ 1100 FPS
(frames par seconde) avec une GeForce 1 DDR et les drivers propritaires Nvidia et 550 FPS avec une ATI Radeon
Mobility 7500.
145
Chapitre 35. Le Web, le mail et les news en mode
graphique
Nous arrivons enn la partie applicative de cette formation ! Le but de ce chapitre est de vous faire dcouvrir Mozilla
(http://www.mozilla.org), un logiciel qui va vous permettre de surfer et lire vos mails sous Linux en mode graphique !
Mozilla est une grand projet libre issu de la dcision douvrir le code source de Netscape, et il propose aujourdhui un
navigateur, un lecteur de mail et de news libre et multi-plateforme (il fonctionne sous Linux, Windows et Mac OS X).
Installer Mozilla
Installer les packages
Mthode Woody
# apt-get install mozilla
Mthode Sid
# apt-get install mozilla mozilla-xft
Mettre Mozilla en franais
Mthode Woody
Malheureusement, les packages de Mozilla prsents dans la Woody ne permettent pas davoir directement Mozilla en
franais. Il va donc falloir suivre une procdure pas trs pratique... mais qui marche !
Commencez par laner mozilla depuis un xterm dans lequel vous serez devenu root avec la commande su :
# mozilla
Le navigateur souvre alors... Allez dans le menu Help puis About Mozilla et notez la version de Mozilla. Ensuite, allez
dans le menu Edit puis Preferences. Dans la bote de dialogue des prfrences, allez dans Appearence puis
Languages/Content. Vous voyez alors que seul le "language pack" English (US) est install. Cliquez sur Download More
pour allez tlcharger le package franais pour Mozilla. Vous arrivez alors sur une page du projet Mozilla qui regroupe tous
les packages de langue dans un grand tableau :
la premire colonne correspond la version de Mozilla : descendez dans la page jusqu trouver votre version de
Mozilla ;
la deuxime colonne correspond la langue : cherchez French ;
la troisime colonne contient un lien intitul mac/unix/win vers le package de langue : cliquez sur le lien. Ensuite,
autorisez linstallation du package en cliquant sur Install. Si tout sest bien pass, vous obtenez deux messages
successifs qui disent que linstallation sest termine avec succs !
Fermez Mozilla et relanez-le en tant que simple utilisateur :
% mozilla
146
Chapitre 35. Le Web, le mail et les news en mode graphique
Allez de nouveau dans les prfrences (menu Edit / Preferences) dans Appearence puis Languages/Content : slectionnez
Franais (FR) dans la liste des Installed language packs, cliquez sur OK et quittez de nouveau Mozilla.
Au prochain lanement, Mozilla vous parlera franais !
Mthode Sid
Installez le package contenant la traduction de Mozilla en franais :
# apt-get install mozilla-locale-fr
Ensuite, ouvrez Mozilla, allez dans les prfrences (menu Edit / Preferences) dans Appearence puis Languages/Content :
slectionnez Franais (FR) dans la liste des Installed language packs, cliquez sur OK et quittez Mozilla.
Au prochain lanement, Mozilla vous parlera franais !
Figure 35-1. Le navigateur de Mozilla
Surfer avec Mozilla
Si vous devez passer par un Proxy pour aller sur Internet, retournez de nouveau dans les prfrences : la conguration du
proxy se fait dans Avances / Proxies.
Une des originalits du navigateur de Mozilla est la navigation par onglets : au lieu douvrir plusieurs sites ou pages Web
dans plusieurs fentes diffrentes, vous pouvez les avoir dans la mme fentre mais sous plusieurs onglets diffrents,
comme sur le screenshot prcdent. Pour cela, il faut faire un clic droit sur le lien et slectionner Ouvrir le lien dans un
nouvel onglet ; ou congurer dans les prfrences quun clic sur un lien avec le bouton du milieu de la souris ouvre la page
dans un nouvel onglet (option cocher dans Navigateur / Onglets). Pour fermer longlet courant, il faut cliquer sur la croix
qui se trouve tout droite la hauteur des onglets.
147
Chapitre 35. Le Web, le mail et les news en mode graphique
Le mail et les news avec Mozilla
Mozilla comprend galement un lecteur de mail (et de news) complet capable de faire du POP, de lIMAP, et de trier les
mails automatiquement.
Pour laner Mozilla Mail :
depuis le navigateur, allez dans le menu Fentre / Mail & Newsgroups ou cliquez en bas gauche sur licne
reprsentant une lettre ;
ou utilisez la commande :
% mozilla -mail
Au premier lanement, un assistant se lance et vous propose de congurer un compte mail ou news. Pour changer la
conguration des comptes de mail et/ou de news ou rajouter de nouveaux comptes, allez dans le menu Edition / Mail &
Newsgroups Account Settings. La conguration du ltrage des messages se fait dans le menu Outils / Filtrer les messages.
Mozilla est facile congurer et linterface de la version Linux est identique celle de la version Windows : je vous laisse
donc dcouvrir tout seul toutes ses capacits !
Figure 35-2. Le lecteur de mail de Mozilla
148
Chapitre 35. Le Web, le mail et les news en mode graphique
Figure 35-3. Le lecteur de news de Mozilla
Un client FTP graphique
Installer gFTP
Le navigateur de Mozilla peut faire ofce de client FTP... mais vous prfrerez probablement utiliser un client FTP ddi,
plus pratique utiliser. Nous vous proposons dinstaller gFTP :
# apt-get install gftp-gtk
Lancer gFTP
gFTP se lance avec la commande gftp, et son utilisation est exactement la mme que pour les clients FTP graphiques de
dautres O.S.
149
Chapitre 35. Le Web, le mail et les news en mode graphique
Figure 35-4. gFTP
Note : gFTP fait aussi ofce de client SFTP, comme expliqu dans le chapitre Laccs distance par SSH.
150
Chapitre 36. La musique sous X
Nous vous proposons dinstaller un quivalent de Winamp sous Linux, qui sappelle Xmms (http://www.xmms.org/).
Comme Winamp, il sait lire des chiers MP3, Ogg Vorbis, Wav, etc... ainsi que des CDs audio. Dans ce chapitre, vous
apprendrez galement encoder un CD audio en Ogg Vorbis avec Grip (http://nostatic.org/grip/).
Jouer de la musique avec Xmms
Installation
Installez le package xmms :
# apt-get install xmms
Utilisation
Xmms se lance grce la commande xmms. Lutilisation est similaire celle de Winamp.
Figure 36-1. Xmms
Prfrences
La conguration se fait en cliquant sur le bouton en haut gauche. Pour afcher la play-list, il suft de cliquer sur Editeur
de Liste de Lecture.
Pour le congurer de faon plus pousse, il faut aller dans Options / Prfrences. Par exemple, pour faire de lextraction
audio (i.e. CD -> wav) ou de la transformation MP3 -> wav, il suft de slectionner comme plug-in de sortie Plugin
Enregistreur Disque [libdisk_writer.so].
151
Chapitre 36. La musique sous X
Figure 36-2. Prfrences de xmms
Encoder un CD en Ogg Vorbis avec Grip
Pourquoi Ogg Vorbis et pas MP3 ?
Le format MP3 est malheureusement soumis des brevets au niveau de lencodage, ce qui rend illgal lencodage MP3
sans le paiement de royalties. Le projet Ogg Vorbis (http://www.vorbis.com/) a donc dvelopp un format de compression
audio ouvert et soumis aucun brevet, ainsi que les outils ncessaires la compression et la dcompression. Aujourdhui,
le format Ogg Vorbis est plus efcace en terme de qualit pour une mme compression que le format MP3 et devient de
plus en plus populaire (sous Windows, il est notamment lisible avec les versions rcentes de Winamp) !
Installer Grip
Grip est un programme qui fait de lextraction audio, assure la connexion une CD database et sinterface avec des
encodeurs MP3 ou Ogg Vorbis ; il prsente une belle interface graphique qui permet de congurer et dutiliser le tout trs
facilement.
Installez Grip :
# apt-get install grip
Encoder un CD en Ogg Vorbis
Mettez un CD audio dans le lecteur et lancez grip. Si vous avez une connexion Internet, il va automatiquement consulter
une CD database et tlcharger le nom de lauteur, de lalbum et des chansons.
152
Chapitre 36. La musique sous X
Figure 36-3. Grip
Si vous utilisez lmulation SCSI sur le lecteur de CD que vous allez utiliser (parce que cest un graveur par exemple), il
faut changer certaines permissions pour pouvoir utiliser grip en tant que simple utilisateur :
# chgrp cdrom /dev/sg0
# chmod g+rw /dev/sg0
Nous allons maintenant jeter un oeil la conguration. Allez dans longlet Cong :
dans longlet Extr., slectionnez comme Extracteur grip (cdparanoia) (extraction = passage du CD au format Wav),
cochez Inhiber le mode "paranoa" et ainsi que Inhiber le mode "extra paranoa" et mettez comme Format du chier
extrait : /tmp/%n.wav.
Si vous utilisez lmulation SCSI, entrez /dev/sg0 commePriphrique SCSI gnrique.
dans longlet MP3, slectionnez comme Encodeur oggenc (encodage = passage du format Wav au format Ogg Vorbis ou
MP3) et personnalisez le format des futurs chiers Ogg Vorbis dans la case Format des chiers MP3, sachant que les
conventions sont les suivantes :
%n = le nom de la chanson,
%t = le numro de la piste,
%a = le nom du chanteur de la chanson,
%A = le nom de lartiste du disque,
%d = le nom de lalbum.
Si vous voulez stocker vos chiers musique dans le rpertoire ~/music/, vous pouvez par exemple mettre dans la case
Format des chiers MP3 : ~/music/%A/%d/%t-%a-%n.ogg. Ensuite, allez dans longlet Options et cochez Efface les
chiers Wav aprs lencodage et rglez le Bitrate de lencodage (kbits/sec) 128 ou 160 ou plus selon la qualit que
vous voulez obtenir.
faites le tour des onglets restants, mais nous avons rgl lessentiel.
153
Chapitre 36. La musique sous X
Retournez dans longlet Pistes et slectionnez les pistes que vous voulez encoder par un clic droit sur celles-ci (pour les
slectionner toutes dun seul coup, cliquez sur le titre de la dernire colonne).
Pour commencer lextraction et lencodage, allez dans longet Extr. et cliquez sur Extr. + Encodage.
Patientez... tout cela prend du temps, et lencodage prend normment de ressources processeur !
Vous prfrez quand mme utiliser le format MP3...
Comme lencodage MP3 sans paiement de royalties est illgal, nesprez pas trouver dencodeur MP3 dans la distribution
Debian ! Si vous voulez quand mme encoder en MP3, tlchargez BladeEnc, un encodeur MP3 libre : allez sur un point
de distribution de BladeEnc (http://www2.arnes.si/~mmilut/BladeEnc.html), tlchargez le package Debian
BEnc-version-LinuxSid-i386.deb puis installez-le :
# dpkg -i BEnc-version-LinuxSid-i386.deb
Relancez grip ; dans longlet Conguration / MP3 / Encodeur, il vous suft alors de slectionner comme encodeur
bladeenc au lieu de oggenc.
154
Chapitre 37. VLC, un player multimdia
VideoLAN, cest quoi ?
VideoLAN est un projet libre dvelopp par des lves de lEcole Centrale Paris (http://www.ecp.fr) et des dizaines de
dveloppeurs travers le monde. Lobjectif est de diffuser de la vido numrique haute rsolution sur un rseau
informatique. Une solution Client / Serveur permet de diffuser sur le rseau des chiers MPEG, des DVDs, des chanes
satellites, des chanes de la tlvision numrique terrestre ou encore la vido dune camra encode en temps rel.
VLC, alias VideoLAN Client, est capable de lire :
des chiers MPEG-1, MPEG-2 et MPEG-4 / DivX, etc...
des DVDs et des VCDs,
depuis une carte satellite,
depuis le rseau (utile pour la solution globale Client / Serveur).
Pour plus dinformations, je vous invite visiter le site web de VideoLAN (http://www.videolan.org) et en particulier la
page "features" du VLC (http://www.videolan.org/vlc/features.html).
Installer VLC
Rajoutez comme source pour les packages Debian le site de VideoLAN, ce qui vous permettra dinstaller libdvdcss, une
librairie qui permet de dcrypter les DVDs, et davoir une version rcente de VLC si vous tes en Woody (VLC est
rgulirement mis--jour dans la Sid). Pour cela, ajoutez la ligne suivante au chier /etc/apt/sources.list :
deb http://www.videolan.org/pub/videolan/debian $(ARCH)/
Ensuite, mettez jour les sources :
# apt-get update
Mthode Woody
Installez VLC avec son interface Gnome et libdvdcss :
# apt-get install libdvdcss2 gnome-vlc
Mthode Sid
Installez VLC avec son interface wxWindows (qui est linterface la plus jour) et libdvdcss :
# apt-get install libdvdcss2 wxvlc
Lancer VLC
Pour lancer VLC, il suft dutiliser la commande vlc. Ensuite, linterface est intuitive et tout se fait au clic !
155
Chapitre 37. VLC, un player multimdia
Note : Si vous voulez lire des DVDs, vriez que vous avez bien laccs en criture au device correspondant au lecteur
de DVD.
Figure 37-1. Interface wxWindows de VLC
156
Chapitre 38. La bureautique avec OpenOfce.org
OpenOfce.org (http://www.openofce.org/) est une suite bureautique OpenSource trs complte, qui comprend un
traitement de texte, un tableur, un outil pour faire des prsentations et un logiciel de dessin. Elle a lavantage dtre
galement disponible sous Windows et Mac OS X, tout en tant compatible avec les formats de chiers de Microsoft Ofce
: vous pouvez ouvrir des documents Word, Excel et PowerPoint, et enregistrer vos documents dans ces diffrents formats.
OpenOfce est le descendant de StarOfce 5.2 qui tait une suite bureautique gratuite dite par Sun Microsystems. Sun a
dcid douvrir le code source de StarOfce et de lancer le projet OpenOfce, mais Sun continue de sortir de nouvelles
versions de StarOfce (StarOfce 6...) dsormais payantes et packages avec des fonctions supplmentaires.
Installer OpenOfce.org
Mthode Woody
OpenOfce est prsent dans la Sid, mais pas dans la Woody. Pour linstaller sur une Woody, il faut donc ajouter une source
supplmentaire de packages Debian. Pour cela, ditez le chier /etc/apt/sources.list et rajoutez la ligne suivante :
deb http://ftp.freenet.de/pub/debian-openoffice/ woody main contrib
Mettez jour la liste des packages puis installez les packages requis :
# apt-get update
# apt-get install openoffice.org-l10n-fr openoffice.org-help-fr openoffice.org-spellcheck-fr-fr
Mthode Sid
OpenOfce tant prsent dans la Sid, il suft dinstaller les packages :
# apt-get install openoffice.org-l10n-fr openoffice.org-gnome
Lancer OpenOfce.org
Pour lancer OpenOfce, utilisez une des commandes ci-dessous :
Fonction Commande
Traitement de texte oowriter
Tableur oocalc
Prsentation ooimpress
Dessin / Schmas / Organigrammes oodraw
157
Chapitre 38. La bureautique avec OpenOfce.org
Figure 38-1. Traitement de texte dOpenOfce
Pour faire fonctionner le correcteur orthographique, allez dans le menu Outils / Options, puis dans la section Paramtres
Linguistiques / Linguistique et cochez OpenOfce MySpell SpellChecker dans la premire liste ; cliquez sur le bouton
Editer en face de la premire liste et cochez de nouveau OpenOfce MySpell SpellChecker dans cette nouvelle bote de
dialogue ; puis cliquez sur Fermer. Rglez les options pour la correction orthographique dans la liste du bas, puis validez
par OK.
Pour lutilisation proprement dite, nous vous laissons dcouvrir : cest trs simple, et a ressemble beaucoup Microsoft
Ofce ! Si vous prfrez tre guid dans votre apprentissage, il existe des guides et des HOWTOs en franais disponibles
sur le la partie francophone (http://fr.openofce.org/Documentation/Index.html) du site ofciel dOpenOfce.
158
Chapitre 39. La bureautique sans OpenOfce
Vous avez peut-tre remarqu quOpenOfce est trs puissant et trs complet... mais il est trs gourmand en ressources et
met une ternit se lancer.
Nous vous proposons donc trois alternatives OpenOfce :
AbiWord (http://www.abisource.com/) pour le traitement de texte,
GNUmeric (http://www.gnome.org/projects/gnumeric/) pour les tableurs,
MagicPoint (http://www.mew.org/mgp/) pour les prsentations.
Le traitement de texte avec AbiWord
Installation
# apt-get install abiword-gnome
Screenshot
Figure 39-1. Abiword
159
Chapitre 39. La bureautique sans OpenOfce
Les tableurs avec GNUmeric
Installation
# apt-get install gnumeric libguppi16
Screenshot
Figure 39-2. GNUmeric
Les prsentations avec Magic Point
Installation
# apt-get install mgp libjpeg-progs
Utilisation
Magic Point nest pas un outil WYSIWYG... il faut crire la prsentation avec un diteur de texte en utilisant une syntaxe
bien prcise, puis lancer Magic Point : il va alors interprter le chier et afcher la prsentation.
Un tutoriel expliquant la syntaxe est disponible cette adresse
(http://www.fr.linuxfocus.org/Francais/September2000/article158.shtml).
160
Chapitre 39. La bureautique sans OpenOfce
Un bon exemple pour apprendre la syntaxe est le chier Magic Point de la confrence Debian de Samuel Hocevar du 24
avril 2002 : tlchargez-le (http://www.via.ecp.fr/~alexis/formation-linux/chiers/conf-debian-20020424.tar.gz),
dcompressez-le et lancez la prsentation (il utilise un chier Makele, comme en programmation) :
% tar xvzf conf-debian-20020424.tar.gz
% cd conf-debian-20020424
% make show
Figure 39-3. Magic Point
Magic Point permet de convertir trs simplement la prsentation au format HTML, avec la commande :
% mkdir html
% make html
... et vous pouvez voir le rsultat sur le site Web de Samuel Hocevar (http://sam.zoy.org/doc/debian/20020424/).
Lire des chiers PDF
avec xpdf
xpdf est un programme GPL pour lire des chiers PDF. Pour linstaller :
# apt-get install xpdf-reader
Pour lire un chier PDF :
% xpdf fichier1.pdf &
161
Chapitre 39. La bureautique sans OpenOfce
avec Acrobat Reader
Tlchargez Acrobat Reader pour Linux sur la page Web de tlchargement
(http://www.adobe.com/products/acrobat/readstep2.html) en slectionnant la langue English et la plateforme Linux.
Dplacez le chier que vous venez de tlcharger dans un rpertoire temporaire, puis dcompressez-le et excutez le script
dinstallation :
# tar xvzf linux-version.tar.gz
# ./INSTALL
Gardez le chemin dinstallation par dfaut /usr/local/Acrobat5 quand le script dinstallation vous pose la question
Enter installation directory for Acrobat. Enn, dplacez le binaire acroread quil a install au mauvais endroit :
# mv /usr/local/Acrobat5/bin/acroread /usr/local/bin/
Acrobat Reader se lance alors avec la commande acroread.
162
Chapitre 40. La manipulation dimages
Les outils dImageMagick
# apt-get install imagemagick
ImageMagick (http://www.imagemagick.com/) est un ensemble doutils en ligne de commande trs pratiques :
La commande display permet de visualiser une image :
% display nom_du_fichier_image &
La commande identify permet davoir des informations sur limage :
% identify mon_image.jpg
mon_image.jpg JPEG 861x306 DirectClass 8-bit 142kb 0.0u 0:01
La commande convert permet de convertir dun format un autre. Par exemple, pour passer une image du format JPEG
au format EPS :
% convert image1.jpg image1.eps
On peut aussi redimensionner une image :
% convert -geometry 100x100 image_originale.jpg image_redimensionne.jpg
Albums photos
sous X
Le programme gthumb (http://gthumb.sourceforge.net/) permet de browser un rpertoire dimages : il construit des
vignettes et permet de visionner les images en slectionnant les vignettes, ou de faire un diaporama.
# apt-get install gthumb
Pour lutiliser, il suft de le lancer en lui indiquant le rpertoire contenant les photos :
% gthumb mes_photos/ &
163
Chapitre 40. La manipulation dimages
Figure 40-1. gThumb
en HTML
Pour faire des albums aussi beaux que ceux de Jihem (cf son album de photos sur Paris
(http://sphere.dnsalias.org/gallery/paris)), vous pouvez utiliser gallery qui est disponible dans le package du mme nom.
Le jour o jessayerais, je donnerais quelques instructions ici...
La retouche dimages avec The Gimp
The Gimp (http://www.gimp.org) est un logiciel de retouche dimage sous licence GPL. Il est galement disponible pour
Windows. Il est souvent compar Photoshop.
Installez les packages requis :
Mthode Woody
# apt-get install gimp1.2 gimp1.2-nonfree
Note : Le package gimp1.2-nonfree inclut le support des images GIF et TIFF dont lutilisation est gne par le brevet
sur la compression LWZ.
164
Chapitre 40. La manipulation dimages
Mthode Sid
# apt-get install gimp
Utiliser The Gimp
Lutilisation de The Gimp est trs simple. La plupart des fonctions sont accessibles par le menu contextuel, que lon ouvre
par clic-droit sur limage.
Figure 40-2. The Gimp
The Gimp permet aussi de faire facilement des captures dcran sous X : menu Fichier, Acquisition, Capture dcran.
165
Chapitre 41. Graver des CDs audio et des CDs de
donnes
Prliminaires
Congurer le systme
Le systme et le noyau doivent avoir t congurs pour que la gravure de CD soit possible. Si vous avez bien suivi mes
instructions aux chapitres Conguration du noyau Linux et Tirer parti du nouveau noyau - 1, il ne devrait pas y avoir de
problmes !
Installer les packages
Je vous propose dinstaller le logiciel de gravure Eroaster (http://sourceforge.net/projects/eroaster/), qui est en ralit une
interface Gnome pour les outils de gravure en mode texte mkisofs (programme de gnration dimages ISO) et cdrecord
(programme de gravure de CDs) :
# apt-get install eroaster
Utiliser Eroaster
Eroaster se lance avec la commande du mme nom. Si vous avez install cdrecord SUID root et si vous vous tes rajout
au groupe cdrom (comme je lavais conseill au chapitre Tirer parti du nouveau noyau - 1), alors vous pouvez laner le
programme en tant que simple utilisateur.
166
Chapitre 41. Graver des CDs audio et des CDs de donnes
Figure 41-1. Eroaster
Commencez par aller dans longlet Prfrences et regardez les diffrentes options. Vous devez notamment congurer le
graveur et le lecteur ventuel en cliquant sur les boutons Detect Recorder et Detect Reader et rgler la vitesse pour les
CD-R et les CD-RW. Dcochez loption Generate Joliet directory information (jai rencontr des problmes lors de la
gnration de limage ISO quand cette option tait active).
Ensuite, sil sagit dun CD-RW, il faut effaer le CD : allez dans longlet Special et cliquez sur :
Erase disc [full] si le CR-RW est tout neuf,
Erase disc [minimal] si le CD-RW a dj t utilis.
Enn, allez dans longlet Data CD si vous voulez crer un CD de donnes, ou dans longlet Audio CD si vous voulez crer
un CD audio. Aprs avoir slectionn les chiers de donnes ou de musique graver, cliquez sur Burn CD pour dmarrer
la gravure !
Longlet ISO Image permet dobtenir un certain nombre dinformations sur une image ISO. Longlet Read CD permet de
convertir un CD de donnes en une image ISO, ou de faire de lextraction audio sur un CD audio (je vous avais dj
expliqu comment on pouvait le faire avec xmms). Longlet Copy CD permet de faire de la copie directe de lecteur
graveur, mais attention aux problmes de synchronisation des vitesses : si le lecteur narrive pas suivre la cadence du
graveur, et si le graveur ne supporte pas le burnproof , alors vous risquez de rater la gravure !
167
Chapitre 42. Lconomiseur dcran
xscreensaver (http://www.jwz.org/xscreensaver/) est lutilitaire qui gre et contient les conomiseurs dcran pour XFree.
Installation des packages
Installez les packages dxscreensaver :
# apt-get install xscreensaver-gnome
Note : Si vous avez une carte dacclration 3D et que le DRI marche bien sur votre systme, vous pouvez installer en
plus le package xscreensaver-gl pour avoir les conomiseurs dcran 3D.
Conguration dxscreensaver
Fermez votre session Gnome et redmarrez le serveur graphique : xscreensaver sera alors automatiquement activ au
dmarrage de Gnome.
Pour congurer xscreensaver :
en Woody, allez dans le Centre de Contrle Gnome (dont licne est une bote outils) et cliquez sur Proprits de
lconomiseur dcran.
en Sid, cliquez sur la patte Gnome et allez dans le menu Prfrences de bureau / Prfrences avances / Screensaver.
Dans le premier onglet, vous avez une liste dconomiseurs dcran, dont beaucoup sont activs. Si vous ne voulez quun
seul conomiseur dcran, dslectionnez-les tous sauf celui que vous avez choisi. Sinon, vous pouvez garder une
multitude dconomiseurs dcran slectionns et il choisira au hasard un conomiseur dcran dans la liste de ceux qui
sont slectionnes, puis passera un autre conomiseur dcran au bout dun temps spci dans le champ Cycle After.
168
Chapitre 42. Lconomiseur dcran
Figure 42-1. Menu de conguration dxscreensaver
Verrouiller lcran
Pour verrouiller lcran avec lconomiseur dcran sans attendre quil ne se dclenche, utilisez la commande suivante :
% xscreensaver-command -lock
169
Chapitre 43. Se logguer en graphique
Il est possible de dmarrer le serveur graphique ds le dmarrage de Linux et de se logguer dans une belle fentre
graphique comme sous Windows 2000 ou XP Pro.
Figure 43-1. Gnome Display Manager
Pour cela, nous vous proposons dinstaller GDM (http://www.5z.com/jirka/gdm.html) (Gnome Display Manager). Cest
tout fait facultatif : vous pouvez garder lancien schma o les utilisateurs se loggent en console et lancent le serveur
graphique avec la commande startx.
Installation et conguration de GDM
Installer le package
Fermez votre serveur graphique puis installez le package requis :
# apt-get install gdm
Congurer GDM
Mthode Woody
Pour avoir la touche euro sous X avec GDM, il faut rajouter la commande xmodmap que lon avait mis dans le chier
/etc/X11/Xsession.d/60xmodmap la n du chier /etc/gdm/PreSession/Default :
# cat /etc/X11/Xsession.d/60xmodmap >> /etc/gdm/PreSession/Default
170
Chapitre 43. Se logguer en graphique
Mthode Sid
Pour avoir la touche euro sous X avec GDM, ditez le chier /etc/gdm/PreSession/Default et ajoutez la ligne
suivante juste aprs la premire ligne qui commence par PATH= :
/usr/bin/X11/xmodmap -e keycode 26 = e E currency
Lancer GDM
Dmarrez GDM :
# /etc/init.d/gdm start
Starting GNOME Display Manager: gdm.
Le fait de lancer GDM a pour effet de lancer le serveur graphique et GDM.
Note : Quand vous changez la conguration du serveur graphique et que vous voulez le redmarrer, il vous faudra
utiliser dornavant la commande suivante :
# /etc/init.d/gdm restart
Stopping GNOME Display Manager: gdm.
Starting GNOME Display Manager: gdm.
Se logguer avec GDM
Allez sur la console n

7 et logguez-vous en entrant votre login et votre mot de passe.


Vous pouvez maintenant congurer GDM sous X avec une belle interface graphique. Ouvrez un xterm, passez root avec la
commande su puis lanez le programme de conguration de GDM :
# gdmconfig
Mthode Woody
Par exemple, pour mettre GDM en franais, il faut aller dans longlet Comportement du login et mettre fr_FR comme
locale par dfaut.
Mthode Sid
Par exemple, pour avoir un beau GDM graphique, slectionnez Bannire graphique pour le paramtre Bannire Locale
dans longlet Gnral.
171
Chapitre 43. Se logguer en graphique
Figure 43-2. Bannire graphique de GDM (Sid)
172
IV. Debian GNU/Linux en rseau
Introduction
Les trois premires parties de cette formation vous ont permis (nous lesprons !) de savoir refaire avec Linux ce que vous
saviez dj faire avec Windows.
Dans cette quatrime partie, nous proposons ceux qui ont un accs permanent Internet et/ou qui sont connects un
rseau local de dcouvrir une des grandes forces de Linux : ses capacits de serveur dans un rseau IP.
Chapitre 44. Laccs distance par SSH
Introduction et mise-en-garde
Quest-ce que SSH ?
SSH signie Secure SHell. Cest un protocole qui permet de faire des connexions scurises (i.e. cryptes) entre un serveur
et un client SSH. Nous allons utiliser le programme OpenSSH (http://www.openssh.org/), qui est la version libre du client
et du serveur SSH.
Mise en garde sur la scurit
Nature du problme
Installer un serveur SSH permet aux utilisateurs daccder au systme distance, en rentrant leur login et leur mot de passe
(ou avec un mcanisme de cls). Cela signie aussi quun pirate peut essayer davoir un compte sur le systme (pour
accder des chiers sur le systme ou pour utiliser le systme comme une passerelle pour attaquer dautres systmes) en
essayant plein de mots de passes diffrents pour un mme login (il peut le faire de manire automatique en saidant dun
dictionnaire lectronique). On appelle a une attaque en force brute.
Il y a donc trois contraintes majeures pour garder un systme scuris aprs avoir install un serveur SSH :
avoir un serveur SSH jour au niveau de la scurit, ce qui doit tre le cas si vous faites consciencieusement les mises
jour de scurit en suivant la procdure Debian, comme expliqu au chapitre Le rseau et la scurit ;
que les mots de passes de TOUS les utilisateurs soient sufsamment complexes pour rsister une attaque en force brute
;
surveiller les connexions en lisant rgulirement le chier de log /var/log/auth.log.
Choisir des mots de passe complexes
Un mot de passe complexe est un mot de passe qui ne veut rien dire, qui nest pas dans le dictionnaire et qui comporte au
moins 8 caractres, de prfrence avec un mlange de lettres minuscules, de lettres majuscules, de chiffres et de caractres
de ponctuation.
Une bonne mthode pour obtenir un mot de passe complexe et facile retenir consiste choisir une phrase et prendre la
premire lettre de chaque mot, avec quelques complications en plus.
Par exemple, la phrase "Linux, moi jy comprends rien de rien !" donne le mot de passe Lmjycr2r!
Tester la complexit des mots de passe
Pour vrier que les mots de passe des utilisateurs du systme sont vraiment complexes, le root peut les soumettre un
cracker de mots de passe... et voir combien de temps ils rsistent !
Les mots de passes des utilisateurs sont stocks dans le chier /etc/shadow. Seul lutilisateur root peut lire ce chier.
Pour tester la complexit des mots de passes, le root peut donc installer le programme john
(http://www.openwall.com/john/) et le lancer sur le chier /etc/shadow :
# apt-get install john
# john /etc/shadow
174
Chapitre 44. Laccs distance par SSH
Quand john a trouv un mot de passe, il lafche avec le login associe.
Attention, john utilisera le processeur 100 % ! Il est donc conseill de lui donner un priorit faible (commande nice ou
renice) si la machine doit tre utilise pendant ce temps. Plus le nombre dutilisateurs est grand, plus il faudra laisser
tourner john longtemps pour que le test soit signicatif.
Le systme de cls de SSH
La thorie de la cryptographie asymtrique
SSH utilise la cryptographie asymtrique RSA ou DSA. En cryptographie asymtrique, chaque personne dispose dun
couple de cl : une cl publique et une cl prive. La cl publique peut tre librement publie tandis que la cl prive doit
rester secrte. La connaissance de la cl publique ne permet pas den dduire la cl prive.
Si la personne A veut envoyer un message condentiel la personne B, A crypte le message avec la cl publique de B et
lenvoie B sur un canal qui nest pas forcment scuris. Seul B pourra dcrypter le message en utilisant sa cl prive.
La thorie de la cryptographie symtrique
SSH utilise galement la cryptographie symtrique. Son principe est simple : si A veut envoyer un message condentiel
B, A et B doivent dabord possder une mme cl secrte. A crypte le message avec la cl secrte et lenvoie B sur un
canal qui nest pas forcment scuris. B dcrypte le message grce la cl secrte. Toute autre personne en possession de
la cl secrte peut dcrypter le message.
La cryptographie symtrique est beaucoup moins gourmande en ressources processeur que la cryptographie asymtrique...
mais le gros problme est lchange de la cl secrte entre A et B. Dans le protocole SSL, qui est utilis par SSH et par les
navigateurs Web, la cryptographie asymtrique est utilise au dbut de la communication pour que A et B puissent
schanger un cl secrte de manire scurise... puis la suite la communication est scurise grce la cryptographie
symtrique en utilisant la cl secrte change.
Pour plus dinformations sur la cryptographie, je vous conseille la lecture du dossier consacr ce sujet par le magazine
pour la science (http://www.pourlascience.com) dans son hors-srie de Juillet-Octobre 2002.
Ltablissement dune connexion SSH
Un serveur SSH dispose dun couple de cls RSA stock dans le rpertoire /etc/ssh/ et gnr lors de linstallation du
serveur. Le chier ssh_host_rsa_key contient la cl prive et a les permissions 600. Le chier
ssh_host_rsa_key.pub contient la cl publique et a les permissions 644.
Nous allons suivre par tapes ltablissement dune connexion SSH :
1. Le serveur envoie sa cl publique au client.
2. Le client gnre une cl secrte et lenvoie au serveur, en cryptant lchange avec la cl publique du serveur
(cryptographique asymtrique). Le serveur dcrypte la cl secrte en utilisant sa cl prive, ce qui prouve quil est bien
le vrai serveur.
3. Pour le prouver au client, il crypte un message standard avec la cl secrte et lenvoie au client. Si le client retrouve le
message standard en utilisant la cl secrte, il a la preuve que le serveur est bien le vrai serveur.
4. Une fois la cl secrte change, le client et le serveur peuvent alors tablir un canal scuris grce la cl secrte
commune (cryptographie symtrique).
175
Chapitre 44. Laccs distance par SSH
5. Une fois que le canal scuris est en place, le client va pouvoir envoyer au serveur le login et le mot de passe de
lutilisateur pour vrication. La canal scuris reste en place jusqu ce que lutilisateur se dloggue.
La seule contrainte est de sassurer que la cl publique prsente par le serveur est bien sa cl publique... sinon le client
risque de se connecter un faux serveur qui aurait pris ladresse IP du vrai serveur (ou toute autre magouille). Une bonne
mthode est par exemple de demander ladministrateur du serveur quelle est le ngerprint de la cl publique du serveur
avant de sy connecter pour la premire fois. Le ngerprint dune cl publique est une chane de 32 caractres
hexadcimaux unique pour chaque cl ; il sobtient grce la commande ssh-keygen -l.
Installation et conguration de SSH
Installation du client et du serveur SSH
Le client et le serveur SSH sont dans le mme package ssh. Ce package est install ds la premire utilisation de dselect. Si
vous avez bien respect nos consignes lors de la procdure dinstallation (chapitre Les packages) vous navez pas activ le
serveur SSH.
Maintenant que votre systme est jour niveau scurit, vous pouvez activer le serveur SSH, si vous le souhaitez. Pour
cela, supprimez le chier /etc/ssh/sshd_not_to_be_run et lancer SSH :
# rm /etc/ssh/sshd_not_to_be_run
# /etc/init.d/ssh start
Starting OpenBSD Secure Shell server: sshd.
Conguration du serveur SSH
Le chier de conguration du serveur SSH est /etc/ssh/sshd_config. A ne pas confondre avec le chier
/etc/ssh/ssh_config, qui est le chier de conguration du client SSH.
Nous allons vous commenter les lignes les plus importantes de ce chier de conguration :
Port 22
Signie que le serveur SSH coute sur le port 22, qui est le port par dfaut de SSH. Vous pouvez le faire couter sur un
autre port en changeant cette ligne. Vous pouvez aussi le faire couter sur plusieurs ports la fois en rajoutant des lignes
similaires.
Protocol 2
Signie que votre serveur SSH accepte uniquement la version 2 du protocole SSH. Cest une version plus scurise que
la version 1 du protocole. Seuls certains vieux clients SSH ne savent faire que du SSH version 1. Si vous voulez que le
serveur accepte les deux protocoles, changez la ligne en :
Protocol 2,1
PermitRootLogin yes
Signie que vous pouvez vous logguer en root par SSH. Vous pouvez changer et mettre "no", ce qui signie que pour
vous connecter en root distance, vous devrez dabord vous connecter par SSH en tant que simple utilisateur, puis
utiliser la commande su pour devenir root. Cest une sorte de double protection.
X11Forwarding yes
176
Chapitre 44. Laccs distance par SSH
Signie que vous allez pouvoir travailler en export display par SSH. Ce sera expliqu plus tard, dans la troisime partie
de cette formation Faire de lexport display.
Si vous avez modi le chier de conguration du serveur, il faut lui dire de relire son chier de conguration :
# /etc/init.d/ssh reload
Reloading OpenBSD Secure Shell servers configuration.
Se logguer par SSH
Authentication par mot de passe
Cest la mthode la plus simple. Depuis la machine cliente, tapez :
% ssh login@nom_DNS_du_serveur_SSH
Si cest la premire connexion SSH depuis ce client vers ce serveur, il vous demande si le ngerprint de la cl publique
prsente par le serveur est bien le bon. Pour tre sr que vous vous connectez au bon serveur, vous devez connatre de
faon certaine le ngerprint de sa cl publique et la comparer celle quil vous afche. Si les deux ngerprints sont
identiques, rpondez yes, et la cl publique du serveur est alors rajoute au chier ~/.ssh/known_hosts.
Si vous vous tes dj connect depuis ce client vers le serveur, sa cl publique est dj dans le chier
~/.ssh/known_hosts et il ne vous demande donc rien.
Ensuite, entrez votre mot de passe... et vous verrez apparatre le prompt, comme si vous vous tiez loggu en local sur la
machine.
Authentication par cl
Au lieu de sauthentier par mot de passe, les utilisateurs peuvent sauthentier grce la cryptographie asymtrique et
son couple de cls prive/publique, comme le fait le serveur SSH auprs du client SSH.
Gnrer ses cls
Pour gnrer un couple de cls DSA, tapez :
% ssh-keygen -t dsa
Les cls gnres ont par dfaut une longueur de 1024 bits, ce qui est aujourdhui considr comme sufsant pour une
bonne protection.
Par dfaut (il demande conrmation lors du processus de cration), la cl prive est stocke dans le chier
~/.ssh/id_dsa avec les permissions 600 et la cl publique est stocke dans le chier ~/.ssh/id_dsa.pub avec les
permissions 644.
Lors de la cration, il vous demande une pass phrase qui est un mot de passe pour protger la cl prive. Cette pass phrase
sert crypter la cl prive. La pass phrase vous sera alors demande chaque utilisation de la cl prive, cest dire
chaque fois que vous vous logguerez en utilisant cette mthode dautentication. Un mcanisme appel ssh-agent permet
de ne pas rentrer le mot de passe chaque fois... comme nous le verrons un peu plus loin dans ce chapitre.
Note : Vous pouvez tout moment changer la pass phrase qui protge votre cl prive avec la commande
ssh-keygen -p.
177
Chapitre 44. Laccs distance par SSH
Autoriser votre cl publique
Pour cela, il suft de copier votre cl publique dans le chier ~/.ssh/authorized_keys de la machine sur laquelle vous
voulez vous logguer distance. La commande suivante permet de raliser cette opration via SSH :
% ssh-copy-id -i ~/.ssh/id_dsa.pub login@nom_DNS_du_serveur
et entrez le mot de passe de votre compte sur le serveur.
Se logguer
La commande est la mme que pour une autentication par mot de passe.
Transfert de chiers par SSH
En console
Le transfert de chiers par SSH est possible de deux faons :
avec scp (comme Ssh CoPy), qui sutilise la mme manire que la commande cp ;
avec yafc, dont je vous avais dj parl au chapitre Le Web et le FTP en console pour les transferts de chiers par FTP.
Encore une fois, vous pouvez utiliser la mthode dautentication par mot de passe ou par cls, lutilisation est la mme.
Utiliser SCP
Pour illustrer la syntaxe, je vais donner quelques exemples :
pour transfrer le chier test1.txt situ dans le rpertoire courant vers le home du compte toto de la machine
ordi1.exemple.org sur laquelle tourne un serveur SSH :
% scp test1.txt toto@ordi1.exemple.org:
pour rcuprer le chier test2.txt situ le home de lutilisateur toto de la machine ordi2.exemple.org et lcrire dans
le rpertoire courant :
% scp toto@ordi2.exemple.org:test2.txt .
pour rcuprer tous les chiers ayant lextension .txt situs dans le rpertoire /usr/local de la machine
ordi2.exemple.org et lcrire dans le sous-rpertoire test-scp du rpertoire courant :
% scp toto@ordi2.exemple.org:/usr/local/*.txt test-scp
pour transfrer lintgralit du sous-rpertoire test-scp du rpertoire courant vers le sous rpertoire incoming du
home de lutilisateur toto de la machine ordi1.exemple.org :
% scp -r test-scp toto@ordi1.exemple.org:incoming
178
Chapitre 44. Laccs distance par SSH
Utiliser yafc
Je vous avais dj parl dutilisation de yafc comme client FTP dans la section Le FTP en console. Mais ce que je ne vous
avais pas dit, cest que yafc sait aussi transfrer des chiers par SSH !
Pour linstallation et la conguration de yafc, reportez-vous la section Le FTP en console.
Pour se connecter par SSH en utilisateur toto sur le serveur ordi1.exemple.org :
% yafc ssh://toto@ordi1.exemple.org
Ensuite, les commandes sont exactement les mmes que lors de lutilisation de yafc comme client FTP !
En graphique
gFTP, dont linstallation est explique la n du chapitre Le Web, le mail et les news en mode graphique fait galement
ofce de client SFTP.
Lanez gFTP avec la commande gftp. Ensuite, allez dans le menu FTP / Options, slectionnez longlet SSH, mettez le
paramtre Chemin sftp-server SSH2 /usr/lib/ et cliquez sur Enregistrez.
Pour vous connecter, entrez le nom DNS du serveur ainsi que le login et le mot de passe, slectionnez SSH2 la place de
FTP dans la liste droulante et tapez Entre.
Figure 44-1. gFTP en SFTP
179
Chapitre 44. Laccs distance par SSH
Se logguer par SSH sans taper de mot de passe
Le principe
Cette section sadresse ceux qui utilisent un couple de cls publiques / prives, et qui ont crypt leur cl prive avec une
pass phrase (cest la conguration la plus sre). Par consquent, le client SSH demande la pass phrase chaque utilisation
des cls pour sautentier.
Pour viter davoir taper systmatiquement sa pass phrase, il faut utiliser ssh-agent : ce programme tourne en tche de
fond et garde la clef en mmoire. La commande ssh-add permet de donner sa cl ssh-agent. Ensuite, quand vous utilisez
le client SSH, il contacte ssh-agent pour quil lui donne la cl.
La pratique
en console
Dans une console, ouvrez un screen avec ssh-agent en tche de fond :
% ssh-agent screen
Puis donnez votre cl lagent :
% ssh-add
Il vous demande alors votre pass phrase. Maintenant que votre cl a t transmise lagent, vous pouvez vous connecter
sans entrer de mot de passe toutes les machines pour lesquelles vous avez mis votre cl publique dans le chier
~/.ssh/authorized_keys.
en mode graphique
Dmarrez le serveur graphique avec la commande :
% ssh-agent startx
Puis ouvrez un xterm et tapez :
% ssh-add
Lagent sera alors actif pour toutes les applications que vous utiliserez en mode graphique, et notamment tous les xterm
ouverts ou que vous ouvrirez.
avec GDM
Si vous utilisez GDM, lagent SSH a dj t lan par GDM. Vous navez donc plus qu excuter ssh-add une fois que
vous tes loggu.
Faire des tunnels SSH
Faire un tunnel SSH est un moyen simple de crypter nimporte quelle communication TCP entre votre machine et une
machine sur laquelle vous avez un accs SSH.
Par exemple, pour tablir un tunnel SSH pour une connexion HTTP vers la machine serveur.exemple.org :
180
Chapitre 44. Laccs distance par SSH
% ssh -L 2012:serveur.exemple.org:80 toto@serveur.exemple.org
o 2012 est le port sur la machine cliente partir duquel la connexion entre dans le tunnel SSH (le port doit tre suprieur
1024 si on ne veut pas avoir laner le tunnel en tant que root).
Ensuite, il suft de laner un navigateur Web en lui demandant de se conneecter en local sur ce port :
% w3m http://localhost:2012
Figure 44-2. Exemple de tunnel SSH
Et le bon vieux Telnet... ?
Quest-ce que Telnet ?
Telnet, cest comme SSH... mais en moins bien ! Telnet est un protocole qui permet daccder distance une machine,
mais la connexion nest pas scurise : le mot de passe et les donnes sont transfres en clair ! Telnet ne permet pas de
faire des transferts de chiers. Il est donc conseill de ne pas utiliser Telnet mais uniquement SSH.
Client et Serveur Telnet
Le client Telnet se trouve dans le package telnet. Ce package est install par dfaut.
Le serveur Telnet se trouve dans le package telnetd. Il ny a aucune conguration faire.
Pour se connecter un serveur Telnet, tapez :
% telnet nom_DNS_du_serveur_telnet
et ensuite rentrez votre login et votre mot de passe quand il vous le demande.
181
Chapitre 45. Faire de lexport display
Quest-ce que lexport display ?
Lexport display consiste se logguer distance en mode graphique, comme on le fait avec un client et un serveur SSH en
mode texte. On peut alors excuter des applications graphiques sur le serveur distant : la fentre graphique de lapplication
et son contenu seront envoys par le rseau vers la machine cliente ; les donnes du clavier et de la souris de la machine
cliente sont envoyes vers le serveur.
Lexport display ncessite une bonne connexion rseau entre le client et le serveur puisque le serveur envoie des images de
lcran au client...
Figure 45-1. Le principe de lexport display
Se connecter un Unix/Linux distance...
depuis un autre Unix/Linux
Il y a trois possibilites de connexion, sachant que seule la premire est entirement crypte.
Export display par SSH
SSH possde une fonction dexport display. Il faut que le serveur SSH distant ait autoris la fonction dexport display,
comme expliqu au chapitre Laccs distance par SSH. Pour lutiliser, tapez dans un xterm :
% ssh -X login@serveur.exemple.org
puis lancez lapplication graphique de votre choix...
Export display classique
Le serveur graphique possde une fonction dexport display, mais qui nest pas crypte comme avec SSH. Il faut dabord
autoriser les connexions en provenance du serveur X, puis demander au serveur X distant de renvoyer le display vers le
182
Chapitre 45. Faire de lexport display
serveur X de la machine cliente :
% xhost + serveur.exemple.org
% ssh login@serveur.exemple.org
% export DISPLAY=client.exemple.org:0.0
Note : Pour que cela marche, il faut que le serveur X de la machine cliente ne soit pas lan avec loption -nolisten
tcp, ce qui est le cas par dfaut !
Si vous utilisez la commande startx, enlevez cette option du chier /etc/X11/xinit/xserverrc :
#!/bin/sh
exec /usr/bin/X11/X -dpi 100
et redmarrez le serveur X.
Si vous utilisez GDM, enlevez cette option du paramtre command= de la section serveur-Standard du chier
/etc/gdm/gdm.conf :
[server-Standard]
name=Standard server
command=/usr/bin/X11/X -deferglyphs 16
et redmarrez GDM.
Export display avec XDMCP
Le protocole XDMCP permet de se logguer au serveur graphique dune machine distante, et de faire exactement comme si
on tait loggu sous X en local sur la machine.
Avertissement
Ce protocole fait tout transiter en clair sur le rseau, y compris les mots de passe !
Pour cela, installez GDM sur le serveur, comme expliqu au chapitre Se logguer en graphique. Toujours sur le serveur,
ditez le chier /etc/gdm/gdm.conf et modiez la section xdmcp :
[xdmcp]
Enable=true
Redmarrez GDM :
# /etc/init.d/gdm restart
Stopping GNOME Display Manager: gdm.
Starting GNOME Display Manager: gdm.
Sur le client, vous pouvez alors vous logguer au serveur graphique distant. En console, tapez :
% X -query serveur.exemple.org
et vous devriez voir la fentre GDM du serveur :
183
Chapitre 45. Faire de lexport display
Figure 45-2. Export display par XDMCP
Si vous avez dj un serveur graphique de lan sur le client et que vous ne pouvez pas le fermer, vous pouvez lancer un
deuxime serveur graphique depuis une console :
% X :1 -query serveur.exemple.org
Le deuxime serveur X est alors prsent sur la console n

13 ; pour y accder depuis une autre console, vous pouvez vous


mettre sur la console n

1 et faire Alt-Flche Gauche.


depuis un Windows
Il suft dinstaller sur le Windows un programme qui sait se connecter un serveur X, comme Cygwin
(http://www.cygwin.com) qui a lavantage dtre libre. Cygwin est en fait un environnement Unix complet pour Windows.
Installer Cygwin
Allez sur www.cygwin.com (http://www.cygwin.com) et cliquez sur licne Install Cygwin now qui se trouve en haut
droite de la page. Tlchargez le chier setup.exe et excutez-le. Le chier contient le programme dinstallation, mais
pas Cygwin en lui-mme.
La procdure dinstallation dmarre alors :
1. Une fois pass lcran daccueil, slectionnez Install from Internet.
2. Slectionnez le rpertoire dinstallation.
3. Slectionnez un rpertoire dans lequel il va crire les chiers quil va tlcharger.
4. Si vous devez passer par un proxy pour accder Internet, entrez ses paramtres. Sinon, slectionnez Direct
Connection.
5. Slectionnez un miroir dans la liste. Si vous tes connect au rseau VIA, entrez ladresse
ftp://ftp.via.ecp.fr/pub/cygwin/ et cliquez sur Add.
184
Chapitre 45. Faire de lexport display
6. Ensuite vient ltape de slection des packages. Slectionnez deux packages supplmentaires par rapport la
conguration par dfaut :
openssh dans la section Net,
XFree86-base dans la section XFree86.
7. Il va ensuite tlcharger les packages slectionns et les installer.
8. Aprs la dernire tape, il lance les scripts de conguration-aprs-installation et ajoute licne Cygwin sur le bureau.
Utiliser Cygwin
Double-cliquez sur licne Cygwin ; une console apparat :
Figure 45-3. La console Cygwin
Vous pouvez alors lancer un serveur graphique vers une autre machine :
Administrateur@CLIENT
$ X -query serveur.exemple.org
Vous pouvez galement lancer un serveur X en local. Avant cela, pour avoir un clavier franais sous X, ditez le chier
/usr/X11R6/bin/startxwin.bat et rajoutez la n du chier la ligne suivante :
run setxkbmap -layout fr
Vous pouvez alors lancer le serveur X :
Administrateur@CLIENT
$ startxwin.bat
et ensuite faire de lexport display comme si vous tiez sous Linux et que vous vous connectiez un autre Linux
(expliqu au dbut de ce chapitre). [FIXME : les accents ne marchent pas]
185
Chapitre 45. Faire de lexport display
Figure 45-4. Export display avec Cygwin
Se connecter un Windows distance depuis un Linux
Il y a plusieurs possibilits ([FIXME : quels sont les niveaux de scurisation de chaque possibilit ?] :
par VNC vers un Windows sur lequel tourne un serveur VNC : installez le package xvncviewer qui contient un client
VNC puis lancez la commande suivante pour vous connecter au serveur VNC :
% xvncviewer serveur.exemple.org
par Terminal Serveur vers un Windows 2000 Server ou Remote Desktop vers un Windows XP Pro (le protocole est le
mme) : installez le package rdesktop qui contient un client RDP (Remote Desktop Protocol) et lancez la commande
suivante pour vous connecter au Windows distant :
% rdesktop -u login serveur.exemple.org
Note : Si vous utilisez Gnome 1.4, ajoutez loption -k 40c pour mettre le clavier en AZERTY franais (ne mettez pas
cette option si vous utilisez Gnome 2). Vous pouvez utiliser en plus loption -d nom_du_domaine pour prciser un
domaine.
186
Chapitre 45. Faire de lexport display
Figure 45-5. rdesktop
187
Chapitre 46. NFS : le partage de chiers sous Unix
NFS (Network File System) est un protocole standard de partage de rpertoires sous Unix/Linux. Dans ce chapitre, nous
allons vous apprendre monter un rpertoire partag par NFS, puis mettre en partage un rpertoire par NFS.
NFS ct client
Conguration ncessaire
Tout dabord, il faut avoir compil le module du noyau NFS File system support avec en plus loption Provide NFSv3 client
support (cf Conguration du noyau Linux). Ensuite, il faut le package nfs-common qui est normalement install par dfaut.
Monter un rpertoire partag par NFS
Pour monter le rpertoire /home/ftp/ partag par la machine dont le nom DNS est ordi1.exemple.org dans le rpertoire
/mnt/test dj cre, utilisez la commande mount :
# mount -t nfs ordi1.exemple.org:/home/ftp /mnt/test
Une fois que vous navez plus besoin de ce partage, vous pouvez le dmonter :
# umount /mnt/test
Pour que ce rpertoire soit mont chaque dmarrage, rajoutez la ligne suivante dans le chier de conguration
/etc/fstab :
ordi1.exemple.org:/home/ftp /mnt/test nfs soft,timeo=5,intr,rsize=8192,wsize=8192 0 0
Pour comprendre les options, regardez leur description dans man mount.
NFS ct serveur
Conguration ncessaire
Tout dabord, il faut avoir compil le module du noyau NFS Server support avec en plus loption Provide NFSv3 server
support (cf Conguration du noyau Linux).
Il faut galement le package nfs-kernel-server :
# apt-get install nfs-kernel-server
Partager un rpertoire
Editez le chier /etc/exports et rajoutez la ligne suivante pour partager le rpertoire /home/test/ la machine
ordi2.exemple.org :
/home/test ordi2.exemple.org(rw,root_squash)
Loption rw permet dexporter en lecture-criture (utiliser ro pour exporter en lecture seule). Loption root_squash
spcie que le root de la machine ordi2.exemple.org na pas les droits de root sur le rpertoire partag (loption
188
Chapitre 46. NFS : le partage de chiers sous Unix
no_root_squash spcie que le root de la machine sur laquelle le rpertoire est mont a les droits de root sur le rpertoire).
Loption root_squash est loption par dfaut.
Note : Loption rw signie en ralit que lutilisateur dont lID est 1001 (par exemple...) sur le client NFS a les droits
dcriture sur les chiers et les rpertoires qui appartiennent lutilisateur dont lID est 1001 sur le serveur NFS.
Attention, ces utilisateurs nont pas forcment le mme nom de compte Unix et ne correspondent pas forcment aux
mmes personnes !
Enn, demandez nfs-kernel-server de dmarrer :
# /etc/init.d/nfs-kernel-server start
Exporting directories for NFS kernel daemon...done.
Starting NFS kernel daemon: nfsd mountd.
Par la suite, il sufra de lui dire de relire son chier de conguration aprs chaque modication :
# /etc/init.d/nfs-kernel-server reload
Re-exporting directories for NFS kernel daemon...done.
189
Chapitre 47. Le voisinage rseau Windows sous Linux
Lobjectif de ce chapitre est dtre capable de surfer sur le voisinage rseau Windows (cest laspect client), et de pouvoir
mettre en partage des chiers (cest laspect serveur). Pour cela, on va utiliser les outils dvelopps par le projet GPL
Samba (http://ftp.easynet.be/samba/samba.html).
Samba ct serveur
Installation des packages
Il suft dinstaller le package samba, qui va installer par dpendance le package samba-common qui sert la fois au
serveur et au client :
# apt-get install samba
Conguration
Ds linstallation, il vous demande si vous voulez congurer Samba avec Debconf : rpondez Non. En effet, nous vous
proposons de tlcharger un chier de conguration que vous allez personnaliser.
Le chier de conguration de Samba est /etc/samba/smb.conf. Ce chier a une petite partie commune au client et au
serveur, le reste tant spcique au serveur. Copiez mon chier de conguration dexemple dans le rpertoire
/etc/samba/ :
# cp ~/config/smb.conf /etc/samba/
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/smb.conf
# mv smb.conf /etc/samba/
Editez le chier et personnalisez les paramtres en lisant les instructions en commentaire. Une fois que le chier est bien
personnalis, vriez sil est bien valide avec le programme testparm :
# testparm
Si le chier de conguration est bien valide, vous pouvez alors demander Samba de relire son chier de conguration :
# /etc/init.d/samba reload
Reloading /etc/samba/smb.conf (smbd only).
Note : Il ny a pas de processus samba qui tourne en tche de fond pour le serveur, mais deux processus : smbd qui
soccupe des partages et de lautentication, et nmbd qui soccupe de la rsolution des noms NetBIOS.
190
Chapitre 47. Le voisinage rseau Windows sous Linux
Samba ct client
en console
Installation du client en mode texte
Le client pour le voisinage rseau Windows en console sappelle smbclient :
# apt-get install smbclient
Utiliser smbclient
Voici une liste des commandes les plus utiles ( chaque fois il vous demandera de taper votre mot de passe pour le domaine
Windows) :
Pour avoir la liste des machines du voisinage rseau :
% smbclient -L nom_DNS_ou_NetBIOS_du_contrleur_de_domaine -U login_Windows
Pour voir les partages de lordinateur ordi1 :
% smbclient -L ordi1 -U login_Windows
Pour tlcharger le chier chier1.txt disponible dans le partage partage1 de lordinateur ordi1 :
% smbclient //ordi1/partage1 -U login_Windows
smb: \> ls
smb: \> cd rpertoire_distant
smb: \> lcd rpertoire_local
smb: \> get fichier1.txt
smb: \> quit
Pour imprimer le chier PostScript chier2.ps sur limprimante printer2 partage par lordinateur ordi2 :
% smbclient //ordi2/printer2 -U login_Windows
smb: \> print fichier2.ps
smb: \> quit
Pour dposer le chier chier3.txt sur le partage incoming partage en criture par lordinateur ordi3 :
% smbclient //ordi3/incoming -U login_Windows
smb: \> put fichier3.txt
smb: \> quit
Pour changer son mot de passe du voisinage rseau Windows :
% smbpasswd -r nom_DNS_ou_NetBIOS_du_contrleur_de_domaine -U login_Windows
191
Chapitre 47. Le voisinage rseau Windows sous Linux
Monter un partage du voisinage rseau
Tout dabord, il faut avoir compil le module smbfs du noyau (cf Conguration du noyau Linux). Ensuite, il faut installer le
package smbfs :
# apt-get install smbfs
Pour monter le partage partage1 de lordinateur ordi1 dans le rpertoire /mnt/test/ dj existant :
# mount -t smbfs //ordi1/partage1 /mnt/test -o username=login_Windows
Quand vous nen navez plus besoin, vous pouvez dmonter le systme de chiers :
# umount /mnt/test
en mode graphique
Installation et conguration
Installez le package xsmbrowser :
# apt-get install xsmbrowser smbclient
Pour congurer xsmbrowser, il faut dabord le lancer avec la commande du mme nom. Ensuite, cliquez sur le bouton
Network avec la croix verte :
Figure 47-1. Premier cran de conguration de xsmbrowser
Name : donnez un nom au rseau que vous tes entrain de congurer,
Type : slectionnez Wins si vous apartenez un vrai domaine Windows,
Primary Wins : entrez le nom DNS ou ladresse IP du contrleur de domaine,
Secondary Wins : entrez le nom DNS ou ladresse IP de lventuel deuxime contrleur de domaine,
192
Chapitre 47. Le voisinage rseau Windows sous Linux
Workgroup : entrez le nom du domaine ou du groupe de travail Windows.
Ensuite, cliquez sur Advanced Options :
Figure 47-2. Deuxime cran de conguration de xsmbrowser
Username and Password : entrez votre login Windows et le mot de passe correspondant,
Computer List : entrez le nom NetBIOS et ladresse IP (ou le nom DNS) du contrleur de domaine,
Workgroup Behavior : laissez la case Static Workgroup coche.
Se servir de xsmbrowser
Cliquez sur licne portant le nom du rseau que vous avez congur, et vous verrez apparatre la liste des ordinateurs du
voisinage rseau.
193
Chapitre 47. Le voisinage rseau Windows sous Linux
Figure 47-3. xsmbrowser
Le reste est intuitif : pour faire des transferts de chier, positionnez-vous sur le rpertoire dans lequel vous voulez
tlcharger ou dposer des chiers et cliquez sur Transfer.
194
Chapitre 48. Se synchroniser sur un serveur de temps
Quest-ce que le protocole NTP ?
NTP signie Network Time Protocol. Cest un protocole qui permet un ordinateur de synchroniser son horloge sur un
autre ordinateur de prcision plus leve. Il existe ainsi des serveurs NTP de diffrents niveaux (appels strates) qui
correspondent diffrentes prcisions. Les serveurs de Strate 1 (http://www.eecis.udel.edu/~mills/ntp/clock1.htm) sont les
plus prcis et les plus rares ; ils ne sont accessibles qu des serveurs de Strates 2
(http://www.eecis.udel.edu/~mills/ntp/clock2.htm) ou 3, certains de ces serveurs tant librement accessibles.
Nous vous proposons dans ce chapitre de vous synchroniser sur le serveur de temps de VIA (http://www.via.ecp.fr) qui est
un serveur NTP Strate 2. Ce serveur est en accs libre et son nom est ntp.via.ecp.fr.
Se synchroniser sur le serveur de VIA
Installation dun client NTP
Installez le programme ntpdate :
# apt-get install ntpdate
Conguration
Ds linstallation, il vous demande une liste de serveurs NTP. Tapez le nom du serveur NTP principal et du serveur
secondaire de VIA :
ntp.via.ecp.fr ntp2.via.ecp.fr
Les adresses sont alors crites dans le chier /etc/default/ntp-servers. Votre systme se synchronisera chaque
dmarrage. Vous pouvez aussi lancer une synchronisation ponctuelle en lanant :
# /etc/init.d/ntpdate start
Running ntpdate to synchronize clock.
195
Chapitre 49. Monter un serveur Web
Installer et congurer Apache
Installer le package
Le serveur web OpenSource le plus utilis dans le monde sappelle Apache (http://www.apache.org/). Pour linstaller :
# apt-get install apache
Congurer Apache
Les chiers de conguration dApache sont dans le rpertoire /etc/apache/. Nous nallons pas vous expliquer toutes les
possibilits de conguration, mais seulement le minimum pour pouvoir mettre une page web disposition du monde.
Editez le chier /etc/apache/httpd.conf, dcommentez la ligne 309 et mettez le nom DNS de votre machine :
ServerName le_nom_DNS_de_votre_ordinateur
Si vous voulez pouvoir mettre des restrictions daccs vos pages avec des chiers .htaccess, modiez galement la
ligne 357 et mettez :
AllowOverride All
Maintenant que la conguration a t modie, il faut dire Apache de relire ses chiers de conguration :
# /etc/init.d/apache reload
Reloading apache configuration.
Ajouter le support de PHP
PHP (http://www.php.net) est un langage de script simple et libre qui est trs utilis pour dvelopper des applications Web.
Si vous voulez installer des applications PHP, suivez les instructions de ce paragraphe ; sinon, passez directement au
paragraphe suivant.
Pour PHP, il exite un package de base php4 et des packages complmentaires contenant des modules de PHP (module pour
MySQL, pour PostgreSQL, pour LDAP, etc...). Pour avoir la liste complte des packages contenant des modules de PHP :
% apt-cache search php4|grep ^php4-
Installez le package de base (avec ventuellement des packages complmentaires) :
# apt-get install php4
A ltape de conguration des packages, il pose plusieurs questions :
1. Do you want me to run the apachecong script now ? [y/N] : rpondez y,
2. Save these changes to the conguration les ? [Y/n] : rpondez y,
3. Restart Apache now ? [Y/n] : rpondez n.
Ensuite, ditez le chier /etc/apache/httpd.conf :
196
Chapitre 49. Monter un serveur Web
pour dire Apache de charger le module PHP, dcommentez la ligne suivante :
LoadModule php4_module /usr/lib/apache/1.3/libphp4.so
pour dire Apache de faire passer par linterprteur PHP toutes les pages dextension .php, dcommentez la ligne
suivante :
AddType application/x-httpd-php .php
Enn, dites Apache de relire son chier de conguration :
# /etc/init.d/apache reload
Reloading apache configuration.
Toutes les pages ayant lextension .php seront dsormais traites par linterprteur PHP avant dtre envoyes par Apache
au navigateur Web distant.
Utiliser Apache
Mettre une page web disposition du monde !
La page web mettre disposition du monde doit se trouver dans le rpertoire /var/www/, sappeller index.html et
avoir les droits en lecture pour tout le monde. Une page Web a t mise par dfaut linstallation dApache.
Cette page web est maintenant disponible ladresse http://nom_DNS_de_la_machine/ pour le monde entier !
Une page perso pour les utilisateurs
Les utilisateurs du systme peuvent galement mettre leur page Web disposition du monde. Par exemple, pour
lutilisateur toto, il suft quil cre un rpertoire public_html/ dans son home avec un chier index.html dedans. Les
permissions doivent tre au minimum les suivantes :
% chmod 711 /home/toto/
% chmod 711 /home/toto/public_html/
% chmod 644 /home/toto/public_html/index.html
La page web de toto est dsormais disponible au monde entier ladresse http://nom_DNS_de_la_machine/~toto/
197
Chapitre 50. Monter un serveur FTP
Installer et congurer ProFTPd
Installer le package
Un des serveurs FTP les plus utiliss est ProFTPd (http://www.proftpd.net/). Pour linstaller :
# apt-get install proftpd
Congurer ProFTPd
Ds linstallation, il vous pose des questions de conguration :
Modier le chier de conguration /etc/proftpd.conf ? Rpondez Oui.
Lancer ProFTPd partir dinetd ou indpendamment ? Rpondez indpendamment.
Autoriser les connexions anonymes ? Les connexions anonymes sont des connexions sans autentication qui permettent
nimporte qui de venir se connecter par FTP et de tlcharger les chiers qui se trouvent dans le home de lutilisateur
ftp (par dfaut, cest le rpertoire /home/ftp/). Si vous voulez mettre en place un tel service, rpondez Oui.
Si vous avez rpondu Oui la question prcdente, il vous demande Do you want /etc/proftpd.conf to be updated ?
Rpondez Oui.
Votre serveur FTP est maintenant lan. Vous pouvez modier sa conguration en ditant le chier /etc/proftpd.conf
et en vous aidant ventuellement de la documentation disponible dans le package proftpd-doc. A chaque fois que le chier
de conguration change, il faut dire ProFTPd de relire ses chiers de conguration avec la commande :
# /etc/init.d/proftpd reload
Reloading proftpd configuration...proftpd.
done.
Utiliser ProFTPd
Connexion authenties
Les personnes qui ont un compte sur le systme peuvent dsormais se connecter par FTP avec leur login et leur mot de
passe. Ils peuvent tlcharger et dposer des chiers dans tous les rpertoires sur lesquels ils ont les droits ncessaires.
Note : Attention, les mots de passe sont transmis en clair lors dune session FTP : il est donc conseill dutiliser SSH
pour faire des transferts de chiers, comme expliqu au chapitre Laccs distance par SSH
Connexion anonymes
Si vous avez autoris les connexions anonymes, nimporte qui peut se connecter votre serveur FTP avec le login
anonymous ou ftp et avec un mot de passe vide ou quelconque. Il aura alors accs en tlchargement seulement tous les
chiers du rpertoire /home/ftp/.
198
Chapitre 50. Monter un serveur FTP
Administration
Pour voir la liste des machines connectes au serveur FTP linstant t, utilisez la commande ftpwho.
Les logs de transfert de chiers du serveur FTP sont contenus dans le chier /var/log/xferlog. La commande ftpstats
gnre un petit tableau de statistiques partir de ce chier.
199
Chapitre 51. Monter un serveur DHCP
DHCP (Dynamic Host Conguration Protocol) est un protocole qui permet de congurer automatiquement les paramtres
rseau des postes connects. Cela vite de mettre les congurations rseau "en dur" sur les postes connects.
Avertissement
Si vous tes sur un rseau dont vous ntes pas ladministrateur, ninstallez pas de serveur DHCP :
cela risquerait de perturber la bonne marche du rseau !
Installer le serveur DHCP
Plusieurs serveur DHCP sont disponibles dans la Debian ; je vous propose dinstaller le serveur DHCP de lInternet
Software Consortium (http://www.isc.org/), qui se trouve dans le package dhcp3-server :
# apt-get install dhcp3-server
A linstallation, il vous demande dentrer la liste des interfaces rseaux sur lesquelles le serveur DHCP doit couter
(spares par des espaces). Cette information est ensuite stocke dans le chier /etc/default/dhcp3-server.
Congurer le serveur DHCP
La conguration du serveur DHCP se fait dans le chier /etc/dhcp3/dhcpd.conf. La syntaxe de ce chier est
explique dans man dhcpd.conf. Le chier install par dfaut est largement comment et permet de comprendre la plupart
des options.
Jai galement crit un chier de conguration dexemple trs simpli qui peux vous servir comme base de travail :
# cp ~/config/dhcpd.conf /etc/dhcp3/
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/dhcpd.conf
# mv dhcpd.conf /etc/dhcp3/
Une fois que le chier de conguration est au point, relancez le serveur DHCP :
# /etc/init.d/dhcp3-server restart
Pour vrier en temps rel le bon fonctionnement du serveur DHCP, surveillez les critures dans le syslog :
% tail -f /var/log/syslog
200
Chapitre 52. Monter un serveur DNS
DNS (Domain Name System) est le protocole qui permet de faire la correspondance entre une adresse IP et le nom de
domaine, ou nom DNS, du type www.debian.org.
Note : Ce chapitre suppose une connaissance de base du protocole DNS. Pour apprendre les bases du
fonctionnement de la DNS, lisez les 6 premires pages de ce document
(http://www.toolinux.com/linutile/reseau/dns/index.htm).
Installer le serveur DNS
Plusieurs serveur DNS sont disponibles dans la Debian ; je vous propose dinstaller le serveur DNS de rfrence, BIND
(Berkeley Internet Name Domain) de lInternet Software Consortium (http://www.isc.org/) dans sa version 9 :
# apt-get install bind9
Congurer le serveur DNS
Les chiers de conguration
Les chiers de conguration de Bind se trouvent dans le rpertoire /etc/bind/. On y trouve notamment le chier
db.root, qui contient les adresses IP des serveurs DNS racines (i.e. les serveurs centraux du systme DNS), et le chier
named.conf qui est le chier de conguration principal de Bind.
Le rpertoire /var/cache/bind/ est destin accueillir les chiers de zone pour ceux qui veulent congurer un serveur
DNS primaire ou secondaire.
Congurer un serveur indpendant
Par dfaut, Bind est congur en tant que serveur DNS "indpendant", qui nest primaire ou secondaire pour aucun
domaine. Quel est lintrt dun tel serveur ? Faire ofce de cache DNS. En effet, le serveur DNS va retenir dans son cache
les correspondances IP-DNS demandes par les clients, et ne sera pas oblig daller chercher chaque fois auprs des
autres serveurs DNS la rponse aux requtes.
Par exemple, si vous trouvez que le serveur DNS de votre fournisseur daccs est trop long rpondre, vous aurez intrt
installer un serveur DNS sur votre ordinateur et congurer votre systme pour quil interroge en priorit le serveur local.
Pour optimizer les temps de requtes, congurez votre serveur DNS pour quil demande les enregistrements quil na pas
dans son cache aux serveurs DNS de votre fournisseur daccs au lieu daller les demander lui-mme auprs des autres
serveurs DNS.
Pour cela, ditez le chier named.conf et dcommentez les lignes de la sous-section forwarders de la section options en y
inscrivant les adresses IPs des serveurs DNS de votre fournisseurs daccs. Le dbut du chier named.conf ressemble
alors cela :
options {
directory "/var/cache/bind";
forwarders {
48.128.12.41;
48.128.12.42;
};
201
Chapitre 52. Monter un serveur DNS
auth-nxdomain no;
};
o 48.128.12.41 et 48.128.12.42 sont les adresses IPs de votre fournisseurs daccs.
Enn, modiez le chier /etc/resolv.conf et mettez votre serveur en premire position dans la liste des serveurs DNS :
search liste_de_domaines_pour_les_noms_DNS_dont_le_domaine_nest_pas_prcis
nameserver 127.0.0.1
nameserver 48.128.12.41
nameserver 48.128.12.42
Congurer un serveur DNS primaire pour une zone
Vous avez achet un nom de domaine et vous souhaitez hberger votre DNS primaire ? Il vous faut congurer votre Bind
comme autoritaire (ou master) pour votre domaine et donner lorganisme auquel vous avez achet votre domaine
ladresse IP de votre serveur.
Modication de named.conf
Ajoutez la n du chier named.conf les lignes suivantes :
zone "mondomaine.org" {
type master;
file "mondomaine.org.zone";
};
o :
mondomaine.org est le nom de domaine pour lequel votre serveur sera primaire,
mondomaine.org.zone dsigne le chier /var/cache/bind/mondomaine.org.zone o seront stocks les
enregistrements de la zone.
Ecriture du chier de zone
Cest de loin la partie la plus difcile ! Jai cris un chier de conguration type largement comment qui pourra vous
servir comme base de travail pour crire votre propre chier de zone :
# cp ~/config/mondomaine.org.zone /var/cache/bind/
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/mondomaine.org.zone
# mv mondomaine.org.zone /var/cache/bind/
Vrications et relance
Vriez que vous navez pas fait derreur de syntaxe dans le chier named.conf :
% named-checkconf
Si la commande nafche rien, cest que le chier named.conf est valide. Ensuite, vriez la syntaxe du chier de zone :
% named-checkzone mondomaine.org /var/cache/bind/mondomaine.org.zone
202
Chapitre 52. Monter un serveur DNS
zone mondomaine.org/IN: loaded serial 2003050102
OK
Si la commande nafche aucun message derreur, alors il ny a pas derreur de syntaxe dans le chier de zone. Vous
pouvez alors dire Bind de relire son chier de conguration :
# /etc/init.d/bind9 reload
Note : Attention, si vous faites un restart au lieu dun reload, le cache de votre serveur DNS se videra !
Congurer un serveur secondaire pour une zone
Un ami vous a demand de faire ofce de serveur DNS secondaire pour son domaine ? Vous avez accept ? Il ne reste plus
qu congurer votre Bind !
Modication de named.conf
Rajoutez la n du chier named.conf les lignes suivantes :
zone "domaine-ami.org" {
type slave;
file "domaine-ami.org.zone";
masters { 12.42.112.242; };
};
o :
domaine-ami.org est le nom de domaine pour lequel votre serveur sera secondaire,
domaine-ami.org.zone dsigne le chier /var/cache/bind/domaine-ami.org.zone o sera crite la zone lissue
du premier transfert depuis le serveur DNS primaire,
12.42.112.242 est ladresses IP du serveur primaire de la zone.
Vrication et relance
Vriez que vous navez pas fait derreur de syntaxe dans le chier named.conf :
% named-checkconf
Si la commande nafche rien, cest que le chier est valide. Vous pouvez alors dire Bind de relire son chier de
conguration :
# /etc/init.d/bind9 reload
Votre serveur DNS fera alors rgulirement des transferts de zone depuis le serveur primaire (et notamment chaque fois
que le serveur primaire lui notiera dun changement dans la zone) et lcrira dans le chier
/var/cache/bind/domaine-ami.org.zone.
203
Chapitre 52. Monter un serveur DNS
Tester le serveur DNS
Lutilitaire dig permet de faire des requtes DNS volues et fournit un maximum dinformations sur la requte. Il est trs
utile pour vrier la bonne conguration dun serveur DNS.
Exemples dutilisation de dig :
Requte sur le champ "A" du nom www.mondomaine.org auprs du serveur DNS 12.42.112.242 :
% dig @12.42.112.242 www.mondomaine.org A
Requte sur la champ "MX" du nom mondomaine.org auprs du serveur DNS 12.42.112.242 :
% dig @12.42.112.242 mondomaine.org MX
Requte sur tous les champs du nom mondomaine.org auprs du serveur DNS 12.42.112.242 :
% dig @12.42.112.242 mondomaine.org ANY
Requte AXFR sur le domaine mondomaine.org auprs du serveur DNS 12.42.112.242 :
% dig @12.42.112.242 mondomaine.org AXFR
Requte inverse (i.e. reverse DNS) sur lIP 12.42.111.422 auprs du serveur DNS 12.42.112.242 :
% dig @12.42.112.242 -x 12.42.111.422
La sortie de la commande dig est trs dtaille ; la rponse la requte (la partie qui vous intressera le plus !) se trouve en
dessous de la ligne suivante :
;; ANSWER SECTION:
204
Chapitre 53. Monter un serveur de mail
Vous avez russi faire fonctionner votre serveur DNS ? Vous avez prvu des champs "MX" pour faire fonctionner un
serveur mail ? Alors suivez ce qui suit...
Congurer Postx
Installer Postx
Si vous avez saut le chapitre Congurer son serveur de mail local, alors je vous invite y retourner et suivre la
procdure qui y est dcrite ! Vous aurez alors un serveur Postx avec une conguration pour dlivrer le mail en local.
main.cf
La conguration de Postx se fait dans le chier /etc/postfix/main.cf. Utilisez mon chier dexemple pour
comprendre les paramtres et bien congurer votre serveur :
# cp ~/config/main.cf /etc/postfix/
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/main.cf
# mv main.cf /etc/postfix/
Une fois que vous avez personnalis le chier main.cf en lisant les commentaires contenus dans le chier, il faut dire
Postx de relire sa conguration :
# /etc/init.d/postfix reload
Les utilisateurs qui ont des comptes sur le serveur peuvent alors reevoir du mail ladresse
nom_du_compte@nom_de_domaine. Le mail reu pour lutilisateur toto est stock dans le chier /var/mail/toto (sauf
si lutilisateur a un chier .procmailrc dans son home : cf Le mail en console pour comprendre procmail).
Les alias
Les alias permettent de faire des correspondances entre des adresses mail et des comptes locaux, dautres adresses mail ou
encore des commandes excuter. Ils sont dnis dans le chier /etc/aliases. La syntaxe de ce chier est trs simple :
# /etc/aliases
# Fichier dalias mail
# NE PAS OUBLIER dexcuter "newaliases" aprs chaque modification
# Fait suivre le mail reu ladresse <alexis.delattre@nom_de_domaine>
# au compte local "alexis" :
alexis.delattre: alexis
# Fait suivre le mail reu ladresse <toto@nom_de_domaine>
# ladresse <titi@yahoo.fr> :
toto: titi@yahoo.fr
# Fait suivre le mail reu ladresse <machin@nom_de_domaine>
# aux comptes "user1" et "user2" et ladresse <bidulle@exemple.org> :
machin: user1,user2,bidulle@exemple.org
205
Chapitre 53. Monter un serveur de mail
# A la rception dun mail ladresse <bruit@nom_de_domaine>,
# excute la commande "/usr/lib/ecartis/ecartis -s bruit" :
bruit: "|/usr/lib/ecartis/ecartis -s bruit"
Normalement, on dnit aussi dans ce chier quel compte local (ou quelle adresse) le serveur de mail doit faire suivre
le mail destin lutilisateur root. En effet, comme il ny a pas besoin davoir tous les pouvois pour lire le mail du root, il
serait absurde (et mme dangereux) de lire les mails du root en tant que root. Il est prfrable de faire suivre le mail du root
vers un autre compte ou une autre adresse.
Il faut galement faire des alias pour les adresses postmaster et abuse, qui sont deux adresses standard pour pouvoir joindre
les administrateurs du serveur de mail dun domaine. Par exemple, si vous utilisez un compte local admin pour lire les logs
et les mails dadministration, ajoutez les lignes suivantes au chier dalias :
root: admin
postmaster: admin
abuse: admin
Ensuite, excutez la commande suivante pour quil regnre la base de donne dalias contenue dans le chier
/etc/aliases.db (ne pas oublier dexcuter cette commande aprs chaque modication du chier /etc/aliases) :
# newaliases
Les adresses virtuelles
Quand le domaine de ladresse mail nest pas celui de la machine, on passe par un mcanisme dadresses virtuelles pour
faire correspondre ces adresses mail des comptes locaux, dautres adresses mail ou encore des commandes excuter.
Le nom du chier contenant les correspondances pour les adresses virtuelles est dnit dans le chier de conguration de
Postx /etc/postfix/main.cf par le paramtre virtual_maps :
virtual_maps = hash:/etc/postfix/virtual
La syntaxe du chier est semblable celle du chier dalias, mais sans la sparation par les deux-points :
# /etc/postfix/virtual
# Fichier de correspondance pour les adresses virtuelles
# NE PAS OUBLIER dexcuter "postmap /etc/postfix/virtual"
# aprs chaque modification
# Fait correspondre une adresse virtuelle un compte local
postmaster@exemple.org admin
alexis@exemple.org alexis
# Fait correspondre une adresse virtuelle une autre adresse mail
toto@exemple.org titi@yahoo.fr
# Fait correspondre une adresse virtuelle une commande excuter
bruit@exemple.org "|/usr/lib/ecartis/ecartis -s bruit"
Ensuite, excutez la commande suivante pour quil tienne compte des modications :
# postmap /etc/postfix/virtual
206
Chapitre 53. Monter un serveur de mail
Les commandes de base dadministration
Voici une petite liste des commandes de base dadministration de Postx :
Liste la queue de mails en attente denvoi :
% mailq
Cette commande est quivalente la commande postqueue -p.
Force Postx ressayer denvoyer les mails en attente denvoi immdiatement :
% postqueue -f
Supprime un mail de la queue des mails en attente denvoi :
# postsuper -d mail_ID
o mail_ID est lidentiant du mail dans la queue (il apparat gauche dans la sortie de la commande mailq).
Ajouter des serveurs POP et/ou IMAP...
Attention
Attention, les protocoles POP et IMAP font transiter les mots de passe en clair sur le rseau ! Il est
possible de les scuriser en les faisant passer par des tunnels SSH (cf Laccs distance par SSH)
ou faisant du SSL (non expliqu ici).
Installer un serveur POP3
Pour ajouter un service POP3 votre serveur de mail, il suft dinstaller qpopper :
# apt-get install qpopper
La conguration de qpopper se fait dans le chier /etc/qpopper.conf. Par dfaut, tout est comment, mais les
paramtres par dfaut doivent vous permettre de lutiliser normalement.
Installer un serveur IMAP
De mme, mais avec le package uw-imapd :
# apt-get install uw-imapd
Il ny a pas de chier de conguration... donc a devrait marcher tout seul !
207
Chapitre 54. Monter un serveur de mailing-listes
Vos serveurs DNS et mail fonctionnent bien ? Vous avez appris faire des alias qui pointent vers plusieurs comptes et/ou
adresses mail, mais vous voudriez aller plus loin pour communiquer au sein dune communaut ? Alors suivez ce qui suit
pour mettre en place des mailing-lists avec archivage sur le Web...
Monter le serveur
Installer et congurer Ecartis
Je vous propose dinstaller Ecartis (http://www.ecartis.org/), qui est un manager de mailing-lists robuste et performant.
Commencez par installer le package :
# apt-get install ecartis
Ecartis possde un chier de conguration global /etc/ecartis/ecartis.cfg. Editez-le et personnalisez les
paramtres suivants en vous aidant des commentaires (dans la plupart des cas, il sufra de remplacer localhost par le nom
de domaine de la machine) :
mailserver
listserver-address
listserver-admin
list-owner
Ajoutez les aliases ncessaires au bon fonctionnement dEcartis :
# cat /usr/share/doc/ecartis/examples/aliases >> /etc/aliases
# newaliases
Crer une mailing-list
Nous allons crer une premire mailing-list bruit, qui servira des ns de test, pour se familiariser avec Ecartis :
# /usr/lib/ecartis/ecartis -newlist bruit
Creating new list bruit...
List admin e-mail:
Il vous demande ladresse mail de ladministrateur de la mailing-list : entrez votre adresse mail ; cest avec cette adresse
que vous pourrez administrer la mailing-list.
Il cre ensuite le rpertoire et les chiers ncessaires au bon fonctionnement de la mailing-list dans le rpertoire
/var/lib/ecartis/lists/ :
Writing config file...done.
Creating default user file...done.
Enn, il afche une liste dalias crer dans votre serveur de mail :
Sending aliases for sendmail/Exim/Postfix/Zmailer to stdout.
# Aliases for bruit mailing list.
208
Chapitre 54. Monter un serveur de mailing-listes
bruit: "|/usr/lib/ecartis/ecartis -s bruit"
bruit-request: "|/usr/lib/ecartis/ecartis -r bruit"
bruit-repost: "|/usr/lib/ecartis/ecartis -a bruit"
bruit-admins: "|/usr/lib/ecartis/ecartis -admins bruit"
bruit-moderators: "|/usr/lib/ecartis/ecartis -moderators bruit"
bruit-bounce: "|/usr/lib/ecartis/ecartis -bounce bruit"
Copiez-collez le bloc ci-dessus, qui comprend les 6 alias ncessaires au fonctionnement de la mailing-list, dans le chier
dalias de votre serveur de mail (dans notre cas : /etc/aliases) puis mettez jour la base dalias :
# newaliases
La mailing-list est maintenant cre... passons la conguration !
Congurer la mailing-list
La conguration de la mailing-list se fait dans le chier /var/lib/ecartis/lists/bruit/config. Il existe un trs
grand nombre de paramtres de conguration, et le chier de conguration install par dfaut les explique tous dans les
commentaires (mais en anglais...).
Les paramtres les plus importants que vous devez absolument personnaliser sont les suivants (certains ont dj t
dcomments et personnaliss la cration de la liste) :
list-owner : adresse e-mail du responsable de la mailing-list (cest celle que vous avez donn lors de la cration de la
mailing-list) ;
subject-tag : tag ventuel rajout aux sujets des mails posts dans la mailing-list (commentez la ligne si vous ne voulez
pas de tag) ;
reply-to : permet de forcer le champ Reply-to sur une certaine adresse (par exemple ladresse de la mailing-list pour que
les rponses aux posts aillent par dfaut dans la mailing-list) ;
administrivia-address : adresse e-mail dadministration de la mailing-list o sont envoy les notications (et les
autorisations si la mailing-list est en subscribe-mode = closed) dabonnement et de dsabonnement (ne pas modier) ;
approved-address : adresse e-mail o sont renvoys les posts accepts ou refuss la modration : mettre
<$list>-repost@serveur.exemple.org, o serveur.exemple.org est le nom de domaine du serveur ;
mbox-archive-path : rpertoire dans lequel sont stockes les archives au format mbox (si vous voulez en avoir) ;
humanize-mime : mettre false si vous voulez que les pices jointes qui ne sont pas des chiers texte ne soient pas
supprimes !
closed-post : les personnes qui ne sont pas abonnes la mailing-list sont-elles autorises y poster ? (si vous rpondez
true, les posts des personnes extrieures la mailing-list sont alors modrs)
moderated : tous les posts doivent-ils tre approuvs par les modrateurs ?
moderator : adresse e-mail pour les modrateurs (ne pas modier) ;
send-as : adresse du chemin de retour SMTP (ne pas modier) ;
subscribe-mode : il y a 3 choix :
open pour que nimporte qui puisse sabonner,
conrm pour que nimporte qui puisse sabonner aprs conrmation du futur abonn,
closed pour que toutes les demandes dabonnement soient soumises lapprobation des administrateurs ;
unsubscribe-mode : idem que le paramtre prcdent pour les dsabonnements ;
209
Chapitre 54. Monter un serveur de mailing-listes
Le chier des abonns
Le chier des abonns est le chier /var/lib/ecartis/lists/bruit/users.
Sa syntaxe est simple : une ligne par abonn ; chaque ligne est compose des lments suivants dans lordre et spars par
des espaces :
une adresse e-mail ;
le caractre deux-points ;
une liste de ags encadrs et spars par le caractre |.
Les ags possibles sont les suivants :
ECHOPOST pour les abonns la mailing-list,
ADMIN pour les administrateurs de la mailing-list,
SUPERADMIN : [TODO : quel est la diffrence avec ADMIN ?],
MODERATOR pour les modrateurs de la mailing-list,
CCERRORS pour recevoir les mails derreur de la mailing-list (par exemple quand ladresse dun abonn ne marche pas),
REPORTS pour recevoir les rapports rguliers sur le fonctionnement de la mailing-list.
Pour ladministrateur, la ligne suivante est gnre la cration de la mailing-list :
alexis@via.ecp.fr : |ADMIN|SUPERADMIN|MODERATOR|CCERRORS|REPORTS|ECHOPOST|
Si lutilisateur toto@yahoo.fr est un simple abonn, on trouvera dans le chier une ligne :
toto@yahoo.fr : |ECHOPOST|
Si lutilisateur titi@caramail.com est abonn et modrateur, on trouvera une ligne :
titi@caramail.com : |ECHOPOST|MODERATOR|
Administrer la mailing-list
Toute ladministration de la mailing-list se fait en envoyant des commandes dans le sujet de mails envoys ladresse
ecartis@serveur.exemple.org. Le contenu du mail peut-tre quelconque ; si la commande contenue dans le sujet est valide,
le reste du mail ne sera pas lu par Ecartis.
Par exemple, si vous envoyez un mail ladresse ecartis@serveur.exemple.org avec un sujet lists, vous aurez en retour un
mail contenant la liste des mailing-listes hberges sur le serveur.
Quand un utilisateur veut sabonner la mailing-list bruit, il suft quil envoie un mail ladresse
ecartis@serveur.exemple.org avec un sujet subscribe bruit :
si la mailing-list est en subscribe-mode = open, lutilisateur recevra conrmation de son abonnement par mail,
si la mailing-list est en subscribe-mode = conrm, lutilisateur recevra un mail lui donnant les instructions pour
conrmer son abonnement,
si la mailing-list est en subscribe-mode = closed, un administrateur devra approuver labonnement.
Idem pour un dsabonnement, mais en mettant dans le sujet unsubscribe bruit.
Pour avoir une liste complte des commandes, envoyez un mail ladresse ecartis@serveur.exemple.org avec un sujet
commands.
210
Chapitre 54. Monter un serveur de mailing-listes
Pour la modration des mail, les modrateurs reoivent des mails indiquant les instructions pour approuver ou rejeter les
posts.
Pour avoir de laide sur Ecartis, envoyez un mail ladresse ecartis@serveur.exemple.org avec un sujet help.
Poster dans la mailing-list
Pour poster dans la mailing-list, il suft denvoyer un mail ladresse bruit@serveur.exemple.org. Les abonns reoivent
alors le post aprs quelques secondes, sauf si le mail doit passer en modration, i.e. dans les cas suivants :
si la mailing-list est modre ;
si la mailing-list nest pas modre, mais en closed-post = true et que la personne qui poste nest pas abonne la
mailing-list.
Archivage Web des mailing-lists
Conguration de base
Vous avez envie darchiver une mailing-list sur le Web ? MHonArc (http://www.mhonarc.org/) est loutil quil vous faut :
# apt-get install mhonarc
Le mcanisme darchivage des mailing-list que je vous propose de mettre en place va faire intervenir procmail, un
programme de tri des mails. Si vous ntes pas encore familier avec procmail, je vous invite lire et mettre en oeuvre le
chapitre Le mail en console au pralable.
Lavantage dutiliser procmail est quil va nous permettre une gestion simple des permissions. Tout dabord, il faut dcider
dun utilisateur qui appartiendra le rpertoire utilis pour larchivage Web : dans cet exemple, il sagit de lutilisateur toto
et larchivage se fait dans son rpertoire ~/public_html/archive-bruit/. Cet utilisateur devra tre abonn la
mailing-list et recevra donc les mails. A chaque rception dun mail de la mailing-list, son procmail lance lexcution de
MHonArc qui convertit le mail en HTML et met jour les pages Web dindex.
Note : Rappel : le procmail dun utilisateur sexcute avec les droits de lutilisateur.
Nous prenons donc comme exemple lutilisateur toto qui archive la mailing-list bruit dans le sous-rpertoire
archive-bruit de son public_html sur le systme dont le nom DNS est serveur.exemple.org (ce serveur pouvant
recevoir du mail).
Commencez par abonner toto@serveur.exemple.org la mailing-list bruit.
Ensuite, crivez un chier .procmailrc dans le home de lutilisateur toto, qui pourrait ressembler a :
# ~/.procmailrc
# Fichier de configuration de Procmail
# Je ne veux pas trop de messages dans les logs
VERBOSE=off
# Fichier de log de procmail
LOGFILE=$HOME/.procmail.log
# Rpertoire de stockage des archives (doit tre cr au pralable)
REPERTOIRE=$HOME/public_html/archive-bruit
211
Chapitre 54. Monter un serveur de mailing-listes
# Jenvoie les mails de la mailing-list "bruit" sur le programme "mhonarc"
# pour archivage
:0
* ^X-list: bruit
| mhonarc -add -quiet -umask 022 -outdir $REPERTOIRE
# Je trashe tous les autres mails
:0
/dev/null
Quelques prcisions sur les options de la commande mhonarc utilise dans le .procmailrc :
-add : archive les messages au fur et mesure de leur arrive ;
-quiet : ncrit dans les logs que les messages derreur ;
-umask 022 : met les permissions 644 sur les chiers HTML cres ;
-outdir $REPERTOIRE : crit les chiers HTML dans le rpertoire spci dans la variable REPERTOIRE (le rpertoire
doit tre cre au pralable).
Ds rception du premier mail, les archives seront accessibles ladresse
http://serveur.exemple.org/~toto/archive-bruit/threads.html. Si cela ne marche pas, consultez les logs de procmail dans
~toto/.procmail.log et mettez ventuellement le paramtre VERBOSE on dans .procmailrc pour avoir plus de
dtails dans les logs.
Si vous voulez restreindre laccs aux archives Web, la conguration se fait au niveau dApache avec un chier
.htaccess, et non au niveau de procmail ou de mhonarc !
Options avances
Les options suivantes peuvent galement tre utilises dans la commande mhonarc :
-spammode : brouille le domaine des adresses mail pour viter le spam ;
-tlevel 12 : autorise jusqu 12 niveaux dindentation pour lindex thread ;
-title Archives de la mailing-list bruit : met le titre spci sur la page dindex classique ;
-ttitle Archives de la mailing-list bruit : met le titre spci sur la page dindex threade ;
-nomailto : ne met pas de lien hypertexte sur les adresses e-mail ;
-nodoc : supprime la rfrence MHonArc la n des pages dindex.
Pour afcher la liste complte des options, tapez la commande mhonarc -help.
Archivage par mois
Il suft de modier le chier procmail en se basant sur lexemple ci-dessous :
# ~/.procmailrc
# Fichier de configuration de Procmail
# Je ne veux pas trop de messages dans les logs
VERBOSE=off
# Fichier de log de procmail
LOGFILE=$HOME/.procmail.log
212
Chapitre 54. Monter un serveur de mailing-listes
# Rpertoire de stockage des archives (doit tre cre au pralable)
REPERTOIRE=$HOME/public_html/archive-bruit
# Stocke la date du mois
DATE=/bin/date +%Y-%m
# Jenvoie les mails de la mailing-list "bruit" sur le programme "mhonarc"
# pour un archivage par mois
:0
* ^X-list: bruit
| mkdir -m 755 -p $REPERTOIRE/$DATE ; mhonarc -add -quiet -umask 022 -outdir $REPERTOIRE/$DATE
# Je trashe tous les autres mails
:0
/dev/null
213
Chapitre 55. Le travail en groupe avec CVS
Quest-ce que CVS ?
CVS (http://www.cvshome.org/) (Concurrent Versions System) est un logiciel libre bas sur une architecture client-serveur
qui permet de travailler plusieurs et en mme temps sur les mmes chiers. En effet, le serveur CVS dispose dun
mcanisme intelligent de fusion des modications apportes sur des chiers texte. Cest un outil trs utilis pour le
dveloppement de logiciels, mais il peut galement tre utilis pour grer des sites Web, crire des rapports en LaTeX,
etc... dune manire gnrale pour tout ce qui implique de travailler plusieurs sur les mmes chiers textes.
Installer et utiliser un client CVS
Installer le package
Le client et le serveur CVS sont contenus dans le package cvs :
# apt-get install cvs
Rpondez de la manire suivante aux questions quil vous pose :
O sont vos entrepts ? Il propose par dfaut /var/lib/cvs : effaez sa proposition et validez avec une ligne vide.
Faut-il activer le pserver ? Rpondez Non.
Utiliser CVS
[TODO : expliquer moi-mme ou lier vers une doc franaise]
Monter un serveur CVS
Installation et conguration de base
Installation de base
A cause dun bug dans le package, nous ne pouvons pas nous contenter de recongurer le package, il faut le rinstaller
compltement :
# apt-get remove --purge cvs
# apt-get install cvs
Rpondez de la manire suivante aux questions quil vous pose :
O sont vos entrepts ? Il propose par dfaut /var/lib/cvs ; rpondez OK.
Voulez-vous corriger les chemins dentrepts invalides ? Rpondez crer.
Faut-il activer le pserver ? Si vous comptez donner accs au CVS des utilisateurs qui nont pas de compte sur le
systme, rpondez Yes ; sinon, rpondez No.
Pour simplier un peu la vie des utilisateurs et de ladministrateur par la suite, crez le lien symbolique suivant :
214
Chapitre 55. Le travail en groupe avec CVS
# ln -s /var/lib/cvs /cvs
Ouvrir un premier projet
Je vais vous guider pas--pas pour la cration dun CVS pour un projet dexemple appel projet1.
Commenez par crer un utilisateur cvs-projet1 et un groupe associ cvs-projet1 qui permettront une bonne gestion des
droits daccs au CVS :
# adduser --system --group --home /var/lib/cvs cvs-projet1
Ensuite, crez le rpertoire CVS du projet et donnez-lui les bonnes permissions :
# cvs -d /cvs/projet1 init
# chown -R cvs-projet1.cvs-projet1 /cvs/projet1
Donner laccs aux utilisateurs du systme via SSH
Note : Cette section require quun serveur SSH soit install sur le systme. Pour plus dinformations sur ce sujet, cf
Laccs distance par SSH.
Pour donner un accs au CVS lutilisateur toto qui a un compte sur le systme, il suft alors de le rajouter dans le groupe
cvs-projet1 :
# adduser toto cvs-projet1
Lutilisateur toto peut alors se connecter au CVS par SSH :
% export CVSROOT=":ext:toto@server.exemple.org:/cvs/projet1"
% cvs checkout .
o serveur.exemple.org est le nom DNS du serveur. A lexcution de la commande cvs, il vous demandera votre mot de
passe systme (ou votre pass-phrase si vous avez mis en place des cls SSH protges par mot de passe).
Note : Sur un systme Unix ou Linux autre que Debian, il peut tre ncessaire de prciser au pralable quil faut
passer par SSH :
% export CVS_RSH=ssh
Donner laccs des utilisateurs extrieurs
Pour donner accs au CVS des utilisateurs qui nont pas de compte sur le systme, il faut passer par le pserver. Crez un
chier /etc/cvs-pserver.conf contenant :
CVS_PSERV_REPOS="/cvs/projet1"
Ensuite, crez le chier /cvs/projet1/CVSROOT/passwd contenant les utilisateurs et leurs mots de passe. Chaque ligne
de ce chier dnit un utilisateur ; chaque ligne contient dans lordre les trois paramtres suivants spares par des
"deux-points" :
le nom de lutilisateur,
215
Chapitre 55. Le travail en groupe avec CVS
le mot de passe crypt de lutilisateur (obtenu avec la commande mkpasswd --hash=md5),
le nom de lutilisateur systme correspondant (dans notre cas, il sagit de cvs-projet1).
Par exemple, pour deux utilisateurs login1 et login2, le chier ressemblera a :
login1:$1$s8JghKDB$E9z0bKfOgZQM5MIbRWDVn0:cvs-projet1
login2:$1$LG7Kx.zw$zoP/eCpgwFhZm9HVRn.1g1:cvs-projet1
Enn, restreignez les droits sur ce chier :
# chmod 600 /cvs/projet1/CVSROOT/passwd
Lutilisateur login1 peut maintenant se connecter au serveur en tapant :
% export CVSROOT=":pserver:login1@serveur.exemple.org:/cvs/projet1"
% cvs login
Logging in to :pserver:login1@serveur.exemple.org:2401/cvs/projet1
CVS password:
% cvs checkout .
o serveur.exemple.org est le nom DNS du serveur.
Avertissement
Attention, le mot de passe est transmis en clair sur le rseau !
Conguration avane
La notication de commit par mail
Nous allons congurer le serveur CVS pour quun mail soit envoy chaque commit ; ce mail devant contenir le nom de
lutilisateur qui a fait le commit, la liste des chiers quil a modis et le message de commit.
Boris Dors a crit des scripts qui grent tout cela trs bien. Copiez-les dans le rpertoire /usr/local/bin/ :
# cp ~/config/cvs-loginfo.sh ~/config/cvs-commitinfo.sh /usr/local/bin/
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/cvs-loginfo.sh
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/cvs-commitinfo.sh
# mv cvs-loginfo.sh cvs-commitinfo.sh /usr/local/bin/
Mettez les droits dexcution sur ces scripts :
# chmod 755 /usr/local/bin/cvs-loginfo.sh /usr/local/bin/cvs-commitinfo.sh
Ensuite, ajoutez la ligne suivante au chier /cvs/projet1/CVSROOT/commitinfo :
ALL /usr/local/bin/cvs-commitinfo.sh
Et ajoutez la ligne suivante la n du chier /cvs/projet1/CVSROOT/loginfo :
ALL /usr/local/bin/cvs-loginfo.sh adresse_de_provenance adresse_destination "Sujet_des_mails" $USER
en remplaant adresse_de_provenance et adresse_destination par les adresses mail de provenance et de destination que
vous voulez pour les mails de notication, et Sujet_du_mail par ce que vous voulez mettre en sujet des mails. Par exemple,
216
Chapitre 55. Le travail en groupe avec CVS
vous pouvez mettre en adresse de destination un alias ou une mailing-list qui diffusera le mail tous les participants au
projet.
Dsormais, les commits ne passeront plus inaperus !
Ajouter un accs un utilisateur extrieur en lecture seule
Pour donner accs en lecture seule dans le CVS un utilisateur extrieur, il faut commener par crer un compte
dutilisateur extrieur normal, et ensuite spcier par lintermdiaire du chier /cvs/projet1/CVSROOT/readers que
ce compte na que des droits en lecture. Ajoutez donc un compte, par exemple appel debutant, en ajoutant la ligne
suivante au chier /cvs/projet1/CVSROOT/passwd (avec le mot de passe gnr par mkpasswd --hash=md5) :
debutant:$1$LG7Kx.zw$zoP/eCpgwFhZm9HVRn.1g1:cvs-projet1
Note : Pour crer un compte auquel on puisse accder avec un mot de passe vide ou quelconque, il suft de ne rien
mettre la place du mot de passe crypt :
debutant::cvs-projet1
Puis crez un chier /cvs/projet1/CVSROOT/readers et inscrivez-y la liste des comptes qui nont un accs quen
lecture seul, raison dun nom de compte par ligne. Dans notre exemple, le chier contiendra simplement :
debutant
Ajouter un deuxime projet
Trs brivement, voil comment rajouter un deuxime projet dans le CVS, qui sappelle dans cet exemple projet2.
Crez un utilisateur et un groupe cvs-projet2 :
# adduser --system --group --home /var/lib/cvs cvs-projet2
Crez un deuxime rpertoire CVS avec les bons droits :
# cvs -d /cvs/projet2 init
# chown -R cvs-projet2.cvs-projet2 /cvs/projet2
Pour donner laccs certains utilisateurs du systme, ajoutez-les dans le groupe cvs-projet2 :
# adduser toto cvs-projet2
Pour donner laccs des utilisateurs extrieurs :
modiez /etc/cvs-pserver.conf :
CVS_PSERV_REPOS="/cvs/projet1:/cvs/projet2"
crez le chier /cvs/projet2/CVSROOT/passwd et le chier /cvs/projet2/CVSROOT/readers ventuel.
Restreignez les droits du chier passwd :
# chmod 600 /cvs/projet2/CVSROOT/passwd
217
Chapitre 55. Le travail en groupe avec CVS
Si vous voulez des mails de notication des commits, ajoutez aux chiers /cvs/projet2/CVSROOT/commitinfo et
/cvs/projet2/CVSROOT/loginfo les lignes requises comme pour le premier projet.
218
V. Debian GNU/Linux en console
Introduction
Une des originalits de Linux est davoir deux modes : le mode console et le mode graphique. Si le mode graphique est le
plus familier pour les utilisateurs Windows, je vais essayer dans ce chapitre de vous faire dcouvrir le mode console et ses
avantages.
Le principal avantage du mode console est de pouvoir accder facilement ses applications en mode console depuis
nimporte quel poste connect Internet quel que soit le systme dexploitation du poste. Cela est permis par lutilisation
de Laccs distance par SSH et ventuellement de screen, qui est expliqu la n de cette partie. En effet, il existe des
clients SSH pour tous les systmes dexploitation (cf Outils Windows pour Linuxiens pour avoir un exemple de client SSH
Windows), et vous pouvez vous connecter par SSH depuis nimporte quel ordinateur connect Internet vers un serveur
sur lequel vous avez un compte et ensuite laner vos applications en console prfres.
Figure 73. Exemple dapplication en console
Chapitre 56. Le mail en console
Je vous propose la solution suivante si vous voulez lire votre mail en console :
utiliser fetchmail (http://www.catb.org/~esr/fetchmail/) pour rapatrier votre mail sur votre ordinateur (dans le cas o
lordinateur sur lequel vous comptez lire votre mail nest pas le mme que celui qui hberge votre boite mail) ;
utiliser procmail (http://www.procmail.org/) pour le trier et spamassassin (http://spamassassin.org/) pour ltrer le spam ;
utiliser mutt (http://www.mutt.org/) comme lecteur de mail.
Rapatrier son mail
Commencez par installer fetchmail :
# apt-get install fetchmail
Ds linstallation du package, il vous demande : Faut-il installer un service fetchmail pour tout le systme ?. Rpondez
Non.
Ecrivez votre chier de conguration .fetchmailrc dans votre home en vous basant sur mon chier de conguration
type :
% cp /root/config/fetchmailrc ~/.fetchmailrc
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/fetchmailrc
% mv fetchmailrc ~/.fetchmailrc
et modiez le nom du serveur de mail, le login et le mot de passe.
Le chier de conguration doit avoir les permissions 600, sinon fetchmail refuse de fonctionner :
% chmod 600 ~/.fetchmailrc
Pour rapatrier les mails depuis le serveur sur votre ordinateur, il sufra de lancer la commande :
% fetchmail
mais avant a, nous allons mettre en place le ltrage avec procmail et spamassassin.
Trier son mail avec procmail et spamassassin
Le principe
Procmail est un programme simple capable de trier les mails en regardant leurs headers. Nous allons lui demander de trier
le mail dans diffrents rpertoires, appels mailbox.
Spamassassin est un programme qui scanne les headers, le message et les ventuelles pices jointes des mails et les
analyse. Pendant cette analyse, il regarde un certain nombre de critres gnralement vris par les spams, chaque
critre tant associ un nombre de points (plus le critre est signicatif, plus le nombre de points est grand). Enn, il
additionne les points pour attribuer au mail une note globale. Par dfaut, si la note globale atteint 5.0 (on peut la changer en
modiant le chier de conguration de spamassassin ~/.spamassassin/user_prefs qui est cre automatiquement la
premire utilisation), le mail est considr comme du spam. Spamassassin lui rajoute alors un header X-Spam-Status: Yes
220
Chapitre 56. Le mail en console
et un rapport de lanalyse dans le corps du mail. Le header rajout par spamassassin permet par exemple procmail
daiguiller le spam dans une mailbox poubelle.
Commencez par installer ces deux programmes (procmail est normalement dj install...) :
# apt-get install procmail spamassassin
Le principe du tri de mail avec procmail et spamassassin est la suivante :
1. le mail reu par Postx via fetchmail arrive dans le chier /var/mail/nom_de_lutilisateur,
2. Postx regarde si lutilisateur a un chier .procmailrc dans son home,
3. si oui, il lit ce chier ~/.procmailrc et suit les instructions quil contient,
4. dans notre cas, ces instructions lui disent de dplacer le mail dans une des mailboxes contenues dans le rpertoire
~/mail. Spamassassin est alors ventuellement appel par procmail pour envoyer dans la mailbox poubelle appele
"spam" les mails quil considre comme tant du spam.
Avertissement
Attention, une mauvaise utilisation de procmail peut aboutir la perte de mails. Il faut donc toujours
faire des tests aprs la mise en place et aprs chaque modication de la conguration de procmail .
La pratique
Utilisez le chier de conguration dexemple pour procmail procmailrc :
% cp /root/config/procmailrc ~/.procmailrc
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/procmailrc
% mv procmailrc ~/.procmailrc
Regardez les commentaires crits dans ce chier pour comprendre comment il est construit et personnalisez-le. Aidez-vous
ventuellement de man procmailrc et man procmailex.
Crez un rpertoire mail dans votre home qui accueillera toutes vos mailboxes :
% mkdir ~/mail
Les mailboxes seront des sous-rpertoires du rpertoire mail et seront cres automatiquement par procmail au premier
mail aiguill dans la mailbox.
Lire son mail avec mutt
Installer et congurer mutt
Le package mutt est normalement dj install.
Le chier de conguration de mutt est ~/.muttrc. Utilisez mon chier de conguration dexemple comme base de travail
:
% cp /root/config/muttrc ~/.muttrc
221
Chapitre 56. Le mail en console
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/muttrc
% mv muttrc ~/.muttrc
Editez-le et personnalisez au minimum les deux premiers paramtres (le champ From et la liste des adresses e-mail
utilises). Avec le chier de conguration que je vous propose, mutt gnre la liste des mailboxes partir de la liste des
sous-rpertoires du rpertoire ~/mail/ (les sous-rpertoires correspondant aux mailboxes sont crs la rception du
premier mail pour cette mailbox). Pour avoir la liste complte des paramtres et de leur description, utilisez man muttrc
ou ce manuel dutilisation en franais (http://cedricduval.free.fr/l10n/).
Si vous le dsirez, vous pouvez crire un carnet dadresse pour mutt sous forme dun chier texte ~/.aliases. Chaque
ligne du chier correspond une entre dans le carnet dadresse. A chaque entre dans le carnet dadresse, vous devez
associer une cl que vous pourrez alors utiliser dans mutt la place du nom et de ladresse e-mail complte. Les lignes de
chier doivent avoir la syntaxe suivante :
alias cl Nom_et_Prnom <adresse_mail>
Par exemple, si vous voulez me mettre dans votre carnet dadresse en me dsignant par la cl alex, ajoutez la ligne :
alias alex Alexis de Lattre <alexis@via.ecp.fr>
Utiliser mutt
Commencez par lancer mutt :
% mutt -y
La liste des mailboxes apparat lcran :
Figure 56-1. Mutt : liste des mailboxes
Slectionnez une mailbox pour lire les messages qui sy trouvent. Ensuite, pour passer dune mailbox une autre, utilisez
la touche c : si une mailbox contient un nouveau mail, son nom apparat et vous navez plus qu taper Entre ; si vous
voulez aller une mailbox particulire, tapez son nom prcd du signe = (la compltion automatique marche).
222
Chapitre 56. Le mail en console
Figure 56-2. Mutt : messages dans une mailbox
Pour crire un mail, placez-vous dans nimporte quelle mailbox et tapez m. Rentrez ladresse du destinataire ou sa cl si
vous lavez mis dans votre chier dalias, puis le sujet du message. Mutt ouvre alors votre diteur de texte prfr (vim si
vous navez pas chang ce paramtre dans le chier de conguration). Le texte contient dj des headers que vous pouvez
complter et / ou modier. Tapez le texte du message en dessous des headers :
Figure 56-3. Mutt : criture dun mail
Une fois que vous avez ni, enregistrez et quittez... Vous arriver alors dans lcran denvoi des mails :
223
Chapitre 56. Le mail en console
Figure 56-4. Mutt : cran denvoi des mails
Dans cet cran, vous pouvez appuier sur :
t pour modier la liste des personnes destinataires,
c pour modier la liste des personnes en Cc,
b pour modier la liste des personnes en Bcc,
s pour modier le Subject,
e pour rditer le message,
a pour attacher des chiers au mail,
p pour accder aux fonctions de cryptage et de signature de GnuPG (voir ci-dessous),
q pour annuler lenvoi du mail,
y pour envoyer le mail.
Dans une mailbox, que vous soyez dans la liste des messages ou entrain dafcher un message, vous avez accs aux
touches suivantes :
r pour rpondre lexpditeur du mail slectionn,
g pour rpondre lexpditeur et aux autres destinataires du mail slectionn,
Tab pour aller au mail non lu suivant,
v pour faire la liste des chiers attachs dun mail puis s pour les dtacher et les enregistrer sur le disque dur,
h pour afcher le message avec tous ses headers (et de nouveau h pour enlever lafchage des headers),
f pour forwarder le mail slectionn quelquun,
d pour marquer le mail comme devant tre effa,
u pour annuler le marquage deffacement,
F pour marquer le message comme important, i.e. afcher un point dexclamation au niveau du message (idem pour
enlever le marquage),
224
Chapitre 56. Le mail en console
a pour ajouter ou diter lentre de lexpditeur du message dans le carnet dadresse,
$ pour ractualiser la mailbox (effacer les messages marqus comme devant tre effas et afcher les messages qui
viennent darriver),
G pour aller directement la liste des mailboxes.
Quand vous tes dans la liste des messages dune mailbox (et non quand vous tes entrain dafcher un message), vous
avez en plus accs aux touches suivantes :
o pour trier les messages de la mailbox : il propose alors le choix entre un tri par date, par expditeur, par destinataire,
par sujet, par discussion (tri normal), etc...
w pour mettre un ag sur un message : il propose alors une liste des ags (cela permet notamment de remettre un
message comme non-lu en remettant le ag N),
l pour nafcher que certains messages de la mailbox : tapez alors :
~f toto pour afcher les messages contenant toto dans le champ From,
~C titi pour afcher les messages contenant titi dans le champ To et/ou dans le champ Cc (taper ~t titi pour se limiter
au champ To et ~c titi pour se limiter au champ Cc),
~s urgent pour afcher les messages contenant urgent dans le sujet,
~b bruit pour afcher les messages contenant le mot bruit dans le texte du message,
~F pour afcher les messages marqus comme important,
~A pour afcher tous les messages.
q pour quitter Mutt.
Note : Pour revenir la liste des messages quand vous tes entrain dafcher un message, tapez e.
A tout moment, vous pouvez taper ? pour accder la liste des touches disponibles avec leur fonction.
Cest parti !
Maintenant que tout est en place, vous pouvez :
1. lancer le rapatriement de vos mails :
% fetchmail
2. vrier quils sont correctement tris en consultant le chier ~/.procmail.log ;
3. les lire avec mutt :
% mutt -y
Quand vous envoyez un mail avec mutt, mutt le transmet Postx qui essaye alors de joindre le serveur mail du
destinataire. Si le serveur mail du destinataire nest pas joignable ou si vous ntes pas connect Internet, le mail reste
alors stock dans la queue de mails de Postx.
Pour voir les mails stocks dans la queue de Postx :
% mailq
225
Chapitre 56. Le mail en console
Pour effacer un mail stock dans la queue :
# postsuper -d ID_du_message
o ID_du_message est lID du message tel quil apparat avec la commande mailq.
Postx essaye de vider sa queue intervalles rguliers. Pour le forcer vider sa queue immdiatement :
% postqueue -f
Normalement, cette commande est excute automatiquement chaque tablissement dune connexion PPP.
Pour vous rendre la vie plus facile, jai cr des raccourcis clavier vers ces commandes dans mutt (cf .muttrc) :
F2 pour excuter mailq,
F3 pour excuter postqueue -f,
F4 pour excuter fetchmail.
226
Chapitre 57. Le mail en console (suite)
Archiver ses mails
Le principe
Au bout dun certain temps, si vous recevez beaucoup de mail, vos mailboxes peuvent commencer devenir trop grosses,
ce qui a deux inconvnients : ouvrir une mailbox (ou la synchroniser, comme expliqu ci-dessous) prend beaucoup de
temps, et le mail commence prendre beaucoup despace disque.
Pour remdier ce problme, je vous propose dutiliser le programme archivemail (http://archivemail.sourceforge.net/)
pour :
supprimer les mails trop vieux de certaines mailboxes (par exemple celles contenant des mailing-lists archives sur le
Web) ;
compresser les mails trop vieux de certaines mailboxes.
La mise en oeuvre
Commencez par installer le programme archivemail :
# apt-get install archivemail
La sytaxe darchivemail est trs simple :
pour supprimer les mails vieux de plus de 90 jours des mailboxes mailbox1 et mailbox2 :
% archivemail -d 90 --delete ~/mail/mailbox1 ~/mail/mailbox2
pour compresser les mails vieux de plus de 120 jours des mailboxes mailbox3 et mailbox4 et les stocker au format mbox
dans le rpertoire ~/mail-archive pralablement cre :
% archivemail -d 120 -o ~/mail-archive ~/mail/mailbox3 ~/mail/mailbox4
Si les commandes prcdentes ne marchent pas et gnrent un message derreur bizarre, il faut relaner la commande en
ajoutant loption -v (verbose) et regarder quel mail particulier est responsable de lerreur ; ensuite, diter le mail fautif pour
essayer de comprendre pourquoi il empche archivemail de fonctionner, et supprimer le la main sil nest pas important.
Si vous dcidez de mettre en place une telle solution, vous aurez probablement envie que cela se fasse automatiquement,
par exemple chaque Lundi 12h42. Pour cela, utiliser la commande cron, comme expliqu au chapitre Outils
dadministration systme et rsum ici. Editez votre cron avec la commande crontab -e et rajoutez les deux lignes
suivantes :
42 12 * * 1 archivemail --quiet -d 90 --delete ~/mail/mailbox1 ~/mail/mailbox2
43 12 * * 1 archivemail --quiet -d 120 -o ~/mail-archive ~/mail/mailbox3 ~/mail/mailbox4
227
Chapitre 57. Le mail en console (suite)
Synchroniser ses mails entre un serveur et un portable
Le principe
Cest la conguration que jutilise personnellement ; je vais donc parler la premire personne ! Je reois mes mails sur un
serveur sous Debian sur lequel jai un accs par SSH. Sur ce serveur, je trie mes mails avec procmail et spamassassin et je
les lis avec mutt, exactement comme expliqu au chapitre Le mail en console. Sur ce serveur, je fais galement larchivage
de mes mails comme expliqu dans la section prcdente. Avec cette solution, je peux lire mes mails depuis nimporte quel
ordinateur connect Internet et sur lequel je peux installer un client SSH.
Jai aussi un ordinateur portable sous Debian, et je veux pouvoir avoir mes mails sur mon portable mme quand il nest pas
connect. En plus de a, je veux :
pouvoir synchroniser facilement toutes mes mailboxes entre le serveur et mon portable de manire scurise (i.e. sans
que le mot de passe soit envoy en clair sur le rseau ni stock en clair dans un chier texte sur mon portable) ;
que les mails que je lis sur mon portable et ceux que je lis sur le serveur soient marqus comme lu sur mon portable et
sur le serveur aprs synchronisation ;
que les mails que je marque pour tre effacs sur mon portable et ceux que je marque pour tre effacs sur le serveur
soient effas sur mon portable et sur le serveur aprs synchronisation ;
que les mails auquels je rpond sur mon portable et ceux auquels je rpond sur le serveur soient marqus comme
rpondus sur mon portable et sur le serveur aprs synchronisation.
Cest le programme isync (http://isync.sourceforge.net/) qui va soccuper de la synchronisation. La mise en place de ma
solution avec isync require trois choses :
un accs SSH au serveur ;
un serveur IMAP install sur le serveur (mais pas forcmment joignable de lextrieur) ;
des mailboxes au format maildir sur le serveur.
Note : Si vous avez suivi les instructions du chapitre Le mail en console, vos mailboxes sont au format maildir .
Faire une sauvegarde
Dans ce genre de bidouilles, une mauvaise manipulation est vite arrive ; je vous conseille donc de faire une sauvegarde de
vos mails avant de commencer.
Sur le serveur...
Il faut quun serveur IMAP soit install sur le serveur et reprer lexcutable du serveur IMAP. Sur une Debian qui utilise
le serveur IMAP fourni dans le package uw-imapd, lexcutable du serveur est /usr/sbin/imapd.
Ensuite, il faut modier la conguration de mutt sur le serveur. Sur le serveur, ditez le chier de conguration ~/.muttrc
et, si vous utilisez mon chier de conguration, dcommentez la ligne suivante, situe dans la premire partie :
set maildir_trash
228
Chapitre 57. Le mail en console (suite)
Sur le portable...
Je suppose que le portable na pour linstant aucune conguration de faite au niveau mail.
Mutt est normalement dj install. Rcuprez mon chier de conguration type :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/muttrc
% mv muttrc ~/.muttrc
Editez le chier ~/.muttrc. Commencez par adapter la premire partie intitule Conguration Gnrale et dcommentez
la ligne suivante :
set maildir_trash
Ensuite, dans la 5me partie intitule Binding des touches, dans le paragraphe sur les macros, vous pouvez ventuellement
commenter les lignes qui bindent la touche F4 avec fetchmail et dcommenter les lignes qui bindent F4 avec isync.
Crez le rpertoire mail/ dans votre home pour accueillir vos mailboxes :
% mkdir ~/mail/
Installez isync :
si vous suivez la Mthode Woody, utilisez le package Debian que jai construis (le package de la Woody est trop vieux
pour ce que je propose de faire) :
% wget http://www.via.ecp.fr/~alexis/formation-linux/fichiers/isync_0.9.1-1_i386.deb
# dpkg -i isync_0.9.1-1_i386.deb
si vous suivez la Mthode Sid, utilisez le package prsent dans la Sid :
# apt-get install isync
Rcuprez mon chier de conguration type pour isync :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/isyncrc
% mv isyncrc ~/.isyncrc
Editez le chier ~/.isyncrc et adaptez les lignes commenant par :
Host : mettez le nom DNS de votre serveur ;
Host serveur.exemple.org
Tunnel : mettez votre login, le nom DNS de votre serveur et lexcutable du serveur IMAP sur votre serveur.
Tunnel "ssh -q toto@serveur.exemple.org /usr/sbin/imapd"
Synchroniser
Tout est maintenant prt pour la premire synchronisation ! Sur votre portable, vous allez lancer isync avec loption -a pour
synchroniser toutes les mailboxes, loption -L pour crer automatiquement les mailboxes en local et loption -V (verbose)
pour faciliter le diagnostic des ventuels problmes. Si en plus vous avez mis en place ssh-agent comme expliqu dans le
chapitre Laccs distance par SSH, excutez ssh-add pralablement pour ne mme pas avoir taper votre mot de passe !
% isync -a -L -V
229
Chapitre 57. Le mail en console (suite)
Si vous avez beaucoup de mails sur le serveur, cela risque de prendre un peu de temps. Pour les prochaines
synchronisation, vous pourrez excuter :
isync -a pour synchroniser toutes les mailboxes ;
isync mailbox1 mailbox2 pour ne synchroniser que certaines mailboxes.
et ce sera plus rapide puisquil naura que les nouveaux mails tlcharger.
Note : Un grand merci Oswald Buddenhagen, nouveau mainteneur disync, pour mavoir aid faire marcher cette
solution.
Crypter et signer ses mails avec GnuPG
A ladresse http://www.vilya.org/gpg/gpg-intro.html, vous trouverez une documentation en franais trs bien faite sur
GnuPG (http://www.gnupg.org/), son utilisation et son intgration mutt.
230
Chapitre 58. LIRC en console
Installer un client IRC
Je vous propose dinstaller le client IRC irssi (http://irssi.org/) :
# apt-get install irssi-text
Utiliser et congurer irssi
Lancer irssi
La conguration dirssi se fait lintrieur du programme par des commandes, plutt quen ditant son chier de
conguration ~/.irssi/config (qui sera cre au premier lancement). Lancez donc le programme :
% irssi
Quand vous lancez irssi, vous vous retrouvez dans une fentre aux bordures bleues avec un prompt [(status)] en bas de la
fentre :
Figure 58-1. Irssi son lancement
Vous tes en fait dans la premire fentre appele status dans laquelle se font les rglages.
La conguration se fait par des commandes commenant par /. Un des gros avantages dirssi est sa capacit tre connect
plusieurs serveurs IRC en mme temps. Pour cela, il faut dnir des ircnets, qui correspondent un serveur IRC seul ou
plusieurs serveurs IRC relis entre-eux, grce la commande /ircnet add. Il faut ensuite donner ladresse dau moins un
serveur IRC par ircnet avec la commande /server add.
Par exemple, je veux me connecter deux rseaux :
OpenProjects (alias OPN maintenant appel FreeNode), qui est dj congur par dfaut ;
ExempleNet qui est un rseau pour lexemple...
Pour voir la liste des rseaux dj dnis par dfaut :
[(status)] /ircnet
et il vous afche la liste suivante dans la fentre :
231
Chapitre 58. LIRC en console
18:27 Ircnets:
18:27 IRCNet: querychans: 5, max_kicks: 4, max_msgs: 5, max_modes: 3, max_whois: 4
18:27 EFNet: max_kicks: 4, max_msgs: 3, max_modes: 4
18:27 Undernet: max_kicks: 4, max_msgs: 3, max_modes: 3
18:27 DALNet: max_kicks: 4, max_msgs: 3, max_modes: 6
18:27 OPN: max_kicks: 4, max_msgs: 1, max_modes: 4
18:27 GIMPNet: max_kicks: 4, max_msgs: 3, max_modes: 4
18:27 PTLink: max_kicks: 1, max_msgs: 100, max_modes: 6
Vous voyez donc quOpenProjects (OPN) est dj dni. Pour rajouter le rseau ExempleNet, il faut lui choisir un alias
(nous choisirons ex) et dnir son serveur irc.exemple.org :
[(status)] /ircnet add ex
[(status)] /server add -auto -ircnet ex irc.exemple.org
Se connecter aux rseaux IRC
Maintenant que les deux ircnets sont dnis, il est trs facile de sy connecter en les dsignant par leurs alias :
[(status)] /connect opn
[(status)] /connect ex
Rejoindre des channels et jouer avec les fentres
Pour rejoindre le channel #debian sur OpenProjects :
[(status)] /join -opn #debian
La fentre se redessine et vous entrez dans le channel #debian. Le topic safche dans la barre bleue du haut et la liste des
personnes prsentes dans le channel apparat. Vous pouvez alors discuter normalement en bnciant de la compltion
automatique sur les nicks.
232
Chapitre 58. LIRC en console
Figure 58-2. Sur #debian avec irssi
En fait, irssi a ouvert une nouvelle fentre. Pour naviguer dune fentre lautre, utilisez les touches suivantes :
Ctrl-N : va la fentre suivante ;
Ctrl-P : va la fentre prcdente ;
Alt-2 : va la fentre n

2.
Avec une de ces combinaisons de touches, revenez la fentre status, qui est la seule fentre dans laquelle le rsultat des
commandes apparat. Pour rejoindre le channel #test du rseau ExempleNet, utilisez la commande suivante :
[(status)] /join -ex #test
Commandes pour un channel
/me message : envoie un message sur le channel,
/nick nouveau_nick : change de nick,
/query nick : entamme une conversation prive dans une nouvelle fentre,
/query : met n la conversation prive et ferme la fentre,
/leave : quitte le channel et ferme la fentre.
Commandes pour la fentre status
Les commandes suivantes peuvent tre tapes dans nimporte quelle fentre mais leur rsultat sera crit dans la fentre
status. Certaines commandes concernent un certain ircnet ; pour slectionner un ircnet, utilise la commande /window
server opn (pour slectionner OPN), ou la combinaison de touches Ctrl-X pour cycler sur les ircnets auquels vous tes
connect. Le nom de lircnet slectionn apparat dans la barre bleue du bas de la fentre status.
/list : afche la liste des channels de lircnet slectionn,
233
Chapitre 58. LIRC en console
/who #debian : afche la liste des gens prsents sur #debian,
/hilight mot : met en couleur le nick de la personne qui prononce le mot,
/dcc list : liste les chiers disponibles par dcc,
/dcc get nick : pour rcuprer un chier envoy par dcc,
/dcc send nick nom_du_chier : pour envoyer un chier par dcc,
/help pour avoir la liste des commandes,
/help nom_de_la_commande pour avoir de laide sur une commande particulire,
/quit pour quitter irssi.
Lindicateur dactivit
Dans la barre bleue du bas, il y a un indicateur dactivit des diffrentes fentres :
Figure 58-3. Barre dactivit dirssi
Si on prend lexemple de la barre bleue ci-dessus, on peut voir, de gauche droite :
lheure,
mon nick (alexis),
le nom du channel (#videolan) et le numro de la fentre (3),
lindicateur dactivit : les numros en blanc correspondent aux numros des autres fentres dans lesquelles il y a de
lactivit (4 et 6), et les numros en violet correspondent aux numros des autres fentres o quelquun a pronon mon
nick ou o quelquun me parle en priv (7).
Beep !
Si vous souhaitez que quelquun puisse facilement vous joindre sur lIRC, vous avez peut-tre envie que votre terminal
beepe quand on prononce votre nick, quand on vous parle en priv ou quand on vous envoie un message par DCC. Pour
cela, tapez les commandes suivantes dans la fentre status :
[(status)] /set beep_when_window_active on
[(status)] /set beep_when_away on
[(status)] /set bell_beeps on
[(status)] /set beep_msg_level HILIGHT MSGS DCC DCCMSGS
[(status)] /hilight ton_nick
Astuce
Je vous propose dutiliser les touches F1, F2,... jusqu F10 pour zapper facilement des fentres 1 10. Pour cela,
savegardez la conguration actuelle :
[(status)] /save
Puis, en utilisant une autre console, rajoutez la n du chier de conguration ~/.irssi/config les lignes contenues
dans le chier irssi-touches-fonction :
234
Chapitre 58. LIRC en console
% cat /root/config/irssi-touches-fonction >> ~/.irssi/config
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/irssi-touches-fonction
% cat irssi-touches-fonction >> ~/.irssi/config
Puis demande irssi de relire son chier de conguration :
[(status)] /reload
235
Chapitre 59. Les news en console
Installer et congurer slrn
Installer le package
Je vous propose dinstaller le client news en mode texte slrn (http://slrn.sourceforge.net/) :
# apt-get install slrn
Congurer slrn
Ds linstallation, il vous demande ladresse de votre serveur de news. Ce paramtre est en fait ladresse du serveur de
news par dfaut, mais chaque utilisateur pourra sil le dsire modier ce paramtre.
Chaque utilisateur a son propre chier de conguration .slrnrc dans son home. Ce chier est lu chaque lancement de
slrn. Je vous propose dutiliser mon chier de conguration type et de le mettre dans votre home sous le nom .slrnrc :
% cp /root/config/slrnrc ~/.slrnrc
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/slrnrc
% mv slrnrc ~/.slrnrc
Editez-le pour le personnaliser en vous aidant des commentaires. Les champs que vous devez absolument personnaliser
sont les suivants :
set username
set hostname
set realname
set organization
server
Une fois le chier de conguration au point, crez le rpertoire .news/ et lintrieur un chier score vide :
% mkdir ~/.news
% touch ~/.news/score
Note : Si vous voulez utiliser un serveur de news diffrent du serveur de news dnit par dfaut (dont ladresse est
stocke dans le chier /etc/news/server), il faut stocker son adresse dans la variable denvironnement
NNTPSERVER.
Utiliser slrn
Au premier lancement de slrn, vous devez ajouter une option pour crer le chier appel "newsrc" dans lequel seront
stockes les informations sur les forums :
236
Chapitre 59. Les news en console
% slrn -f ~/.jnewsrc-serveur --create
o .jnewsrc-serveur est le nom de chier que vous avez indiqu comme deuxime paramtre du champ server de
votre slrnrc.
Pour les prochains lancements, il vous sufra de taper simplement :
% slrn
Une fois que slrn est lanc, il vous prsente un bel cran presque vide. Cest normalement lcran dans lequel apparat la
liste des forums auquels vous tes abonn. Tapez L puis par exemple fr.comp* et Entre pour obtenir la liste des forums
en franais qui parlent dinformatique. Il y a un U (comme Unsubscribe) leur gauche, ce qui signie que vous ntes pas
abonn. Pour vous abonnez aux forums qui vous intressent, placez le curseur ct du nom du forum et tapez s (comme
Subscribe). Le U disparat alors. Pour se dsabonner, il suft de taper u. Le nombre gauche du nom des forums indique le
nombre de messages non marqus comme lu dans ce forum.
Figure 59-1. Fentre des forums de slrn
Maintenant que vous avez choisi les forums auquels vous voulez tre abonn, mettez-vous en face de lun dentre eux et
appuyez sur Espace. Vous avez alors accs la liste des threads, prcds du nombre de messages quils contiennent. Pour
ouvrir un thread et lire le premier message quil contient, appuyez de nouveau sur Espace. Pour faire dler le message
vers le bas, appuyez sur Espace ; pour le faire dler vers le haut, appuyez sur b. Pour passer la lecture du message
suivant, appuyez sur Espace une fois que vous tes arriv la n du message, ou slectionnez avec la che le message
suivant et appuyez sur Espace.
237
Chapitre 59. Les news en console
Figure 59-2. Fentre des articles de slrn
Pour revenir la liste des messages du forum, appuyez sur h. Pour marquer un message ou un thread comme lu sans mme
le lire, appuyez sur d en face de ce message ou de ce thread.
Pour revenir la liste des forums, appuyez sur q. Pour rapatrier depuis le serveur la liste des nouveaux posts, appuyez sur
G.
Entranez-vous poster avec slrn dans un forum prvu cet effet : fr.test. Pour cela, commencez par souscrire ce forum
comme dcrit ci-desssus. Ensuite, slectionnez ce forum et appuyez sur P : il vous demande en bas de lcran si vous tes
bien sr de vouloir publier, puis il vous demande de conrmer le nom du forum, et enn de dnir un sujet. Vous arrivez
alors dans votre diteur de texte favori (si vous naimez pas vim, vous pouvez en changer dans le chier de conguration).
Si vous voulez faire un crosspost, rajoutez un deuxime nom de forum dans le champ Newsgroups: (par exemple
edu.fr.test). Dans notre exemple, cela donne la ligne :
Newsgroups: fr.test,edu.fr.test
Pour mettre un Followup-to vers fr.test par exemple, il faut mettre le nom du forum dans le champ Followup-To: :
Followup-To: fr.test
Une fois le message crit, il vous suft de lenregistrer et de quitter. Vous revenez alors dans slrn qui vous demande
conrmation avant de poster.
Pour rpondre un message, placez-vous sur ce message et appuyez sur r ; pour rpondre par mail perso, appuyez sur f
(dans la conguration par dfaut, cest linverse, mais je prfre comme a !). Vous vous retrouvez alors une nouvelle fois
dans votre diteur de texte favori...
Pour connatre la liste complte des commandes, il suft de taper ? dans slrn. Vous y apprendrez par exemple que la
combinaison de touches Echap puis Ctrl-c permet dannuler un message que vous avez post.
238
Chapitre 60. ICQ en console
Note : Chapitre crit par Brian Fraval.
Il existe plusieurs clients ICQ en mode console, mais nous avons choisis centericq (http://konst.org.ua/centericq/) parce
quil est simple dutilisation et supporte beaucoup de protocoles de communication (Icq2000, Yahoo messenger, AIM,
MSN, IRC, Jabber, etc).
Installation et conguration de centericq
Installer le package
# apt-get install centericq
Lancer centericq
% centericq
La premire chose faire, comme dans la majorit des applications, est sa conguration. Chaque utilisateur a son propre
chier de conguration .centericq dans son home. Ce chier est lu chaque lancement de lapplication.
Au premier lancement de centericq, vous pouvez congurer lapplication pour quelle soit plus simple dutilisation. Bien
entendu, ces congurations peuvent changer dune personne lautre, cependant nous vous proposons une conguration de
base :
Figure 60-1. Paramtrage de centericq
Aprs la conguration de base de centericq, il faut indiquer votre compte ICQ. Si vous navez pas de compte, passez
directement au paragraphe suivant.
Pour congurer centericq avec un compte existant, il faut connatre votre UIN, qui est un numro unique, et votre mot de
passe.
239
Chapitre 60. ICQ en console
Figure 60-2. Compte existant
Cest dans ce formulaire que vous pouvez ajouter vos comptes de Yahoo messenger, AOL, et autres...
Cration dun compte ICQ
Si vous navez pas de compte ICQ, alors il faut en crer un en choisissant loption Register. Les informations que vous
allez indiquer vont permettre aux autres utilisateurs de vous retrouver en faisant une recherche dutilisateur.
Il faut au minimum indiquer un nickname et un mot de passe. Une fois que vous avez entr les informations, slectionnez
Go ahead pour lancer la cration du compte chez ICQ.
Figure 60-3. Cration dun compte ICQ
Rechercher un contact
Maintenant que lapplication est congure et quelle fonctionne, vous pouvez rechercher un contact avec qui discuter...
Pour faire une recherche, il faut appuyer sur la touche g, comme gnral. En effet toutes les actions gnrales sont
regroupes dans ce menu. Ensuite, il faut slectionner Find/add user.
240
Chapitre 60. ICQ en console
Figure 60-4. Rechercher un contact
Il y a plusieurs critres de recherche, mais personnellement jutilise souvent la recherche sur nickname ou le couple
nom/prnom. Voici le formulaire qui permet de faire une recherche par critres :
Figure 60-5. Formulaire de recherche
Voici par exemple le rsultat dune recherche sur le nom Fraval. Une fois que vous avez une liste de contacts qui
correspond vos critres de recherche, vous pouvez regarder le dtail de ces contacts, pour savoir si cest vraiment la
personne que vous recherchez. Si cest la bonne personne, il suft de slectionner Add pour ajouter le contact votre liste.
241
Chapitre 60. ICQ en console
Figure 60-6. Ajouter un contact la liste
Discuter avec une personne
Pour discuter avec une personne, il faut se positionner sur son nickname dans le menu de gauche de centericq avec les
ches de direction du clavier. Une fois que lutilisateur est surlign, appuyez sur Entre pour ouvrir une case de
discussion.
Cette case est reprsente dans limage ci-dessous par le texte Ah ouais ca vas plutot bien. La case au-dessus reprsente le
l de la discussion. Les habitus de lIRC ne seront pas drouts par ce genre de prsentation !
Figure 60-7. Discuter avec une personne
242
Chapitre 61. Graver en console
Installation des packages
Vous aurez besoin du package cdrecord que vous avez dj install, et du package mkisofs :
# apt-get install mkisofs cdrecord
Les CDs de donnes
Crer limage ISO du CD
A partir de chiers
Avant de commencer graver, il faut crer limage ISO du CD. Pour cela, on utilise la commande mkisofs.
Prenons lexemple dune sauvegarde du home de lutilisateur toto :
1. vriez quil fait moins que la capacit du CD-R ou RW :
% du -sh /home/toto/
2. crez lISO :
% mkisofs -R -r -J --hide-rr-moved -V "SauvHome" -o backup.iso /home/toto/
Explication des options utilises dans mkisofs:
-R : rajoute lextension Rock Ridge qui permet de conserver les noms longs et les permissions sous Linux,
-r : permet de gnrer une image qui soit lisible par tout le monde malgr les permissions actives par lextension Rock
Ridge,
-J : active lextension Joliet pour avoir les noms longs sous Windows,
--hide-rr-moved : renomme le rpertoire rr_moved (d aux extensions Rock Ridge) en un rpertoire cach
.rr_moved,
-V : spcie un Nom de Volume (ici "SauvHome"),
-o : spcie le nom et lemplacement du chier ISO (ici backup.iso dans le rpertoire courant).
Autre exemple : vous voulez crer une ISO qui contienne le rpertoire /home/toto/, le chier
/etc/X11/XF86Config-4, et en plus le contenu du rpertoire /mnt/win/toto/ qui devra apparatre sur le CD dans un
rpertoire win-toto :
% mkisofs -R -r -J --hide-rr-moved -V "SauvHome" -o backup.iso
-graft-points /home/toto/ /etc/X11/XF86Config-4 win-toto/=/mnt/win/toto/
243
Chapitre 61. Graver en console
A partir dun CD
Pour crer limage ISO dun CD de donnes, cest trs simple :
% dd if=/dev/cdrom of=backup.iso
Tester lISO
Pour vrier que lISO du CD marche bien, on va monter le chier contenant lISO en loopback dans le rpertoire
/mnt/tmp/ ( crer avant sil nexiste pas) :
# mount -t iso9660 -o loop backup.iso /mnt/tmp
Si tout va bien, vous pouvez aller vous balader dans le rpertoire /mnt/tmp/ pour voir le contenu de lISO. Une fois que
vous avez vri que tout est bon, dmontez lISO du CD :
# umount /mnt/tmp
Graver le CD
Les options de cdrecord
Maintenant que lISO est crer, vous allez utiliser la commande cdrecord pour graver le CD. Les options connatre et
utiliser sont :
speed=V o V est la vitesse laquelle vous voulez graver. Attention, cette vitesse est souvent diffrente selon que vous
gravez un CD-R ou un CD-RW. Par exemple, si vous avez un graveur 16/10/40, alors la vitesse pour un CD-R est 16 et
la vitesse pour un CD-RW est 10.
dev=X,Y,Z o X,Y,Z est la squence de trois chiffres qui correspond ladresse de votre graveur dans la chane SCSI.
-data image_ISO.iso pour prciser que lon grave partir de limage ISO dun CD.
si vous avez un graveur qui supporte le burnproof , loption driveropts=burnproof permet dactiver cette fonction.
Pralable pour un CD-RW
Si vous voulez graver sur un CD-RW, il faut au pralable effacer ce qui est crit dessus :
si le CD-RW est tout neuf :
# cdrecord -v speed=V dev=X,Y,Z -blank=all
si le CD-RW a dj t utilis :
# cdrecord -v speed=V dev=X,Y,Z -blank=fast
Lancer la gravure
Pour lancer la gravure, tapez la commande suivante :
si votre graveur supporte le burnproof :
244
Chapitre 61. Graver en console
# cdrecord -v speed=V dev=X,Y,Z driveropts=burnproof -data backup.iso
si votre graveur ne supporte pas le burnproof :
# cdrecord -v speed=V dev=X,Y,Z -data backup.iso
Dans la suite de ce chapitre, vous pourrez toujours ajouter loption driveropts=burnproof la commande cdrecord pour
activer cette fonctionnalit.
Copie directe de Lecteur CD Graveur
Pour raliser une copie directe de lecteur CD graveur, il faut lancer cdrecord avec loption -isosize :
# cdrecord -v speed=V dev=X,Y,Z -isosize /dev/cdrom
Avertissement
Le choix de la vitesse de gravure V est ici trs important : il faut choisir le minimum entre la vitesse
de votre lecteur de CD et la vitesse de gravure... car si le lecteur de CD est plus lent que le graveur,
le tapon du graveur va se vider et vous naurez plus qu jeter votre CD-R la poubelle !
Les CDs audio
Quel programme utiliser ?
Note : Lutilisation de cdrecord pour graver des CDs audio induit une pause de deux secondes entre chaque piste lors
de la lecture, car il utilise le mode TAO (Track At Once). Pour liminer cette pause, il faut graver le CD en mode DAO
(Disk At Once) en utilisant cdrdao, qui nest malheureusement plus disponible dans la Debian pour des problmes de
licence.
Graver avec cdrecord
Pour graver un CD audio avec cdrecord, il faut disposer dun chier son au format CDR, WAV ou AU pour chaque piste. Si
les chiers sont au format WAV ou AU, chaque chier doit tre en stro, 16-bits 44100 chantillons / seconde.
Convertir au bon format
Pour convertir un MP3 au format CDR, il suft dutiliser mpg321 :
% mpg321 ma_chanson.mp3 --cdr ma_chanson.cdr
Pour extraire une piste dun CD audio au format CDR, il faut utiliser cdparanoia (disponible dans le package du mme
nom) :
% cdparanoia -B -p
245
Chapitre 61. Graver en console
Graver le CD audio
Il suft alors de taper :
# cdrecord -v speed=V -dev=X,Y,Z -audio track1.cdr track2.cdr track3.cdr [etc...]
ou
# cdrecord -v speed=V -dev=X,Y,Z -audio track1.wav track2.wav track3.wav [etc...]
ou
# cdrecord -v speed=V -dev=X,Y,Z -audio track1.au track2.au track3.au [etc...]
[TODO : tester loption -dao pour graver en mode DAO]
246
Chapitre 62. Les screens
Le concept
Le problme rsoudre est le suivant : vous avez lanc sur votre systme un programme qui fonctionne en mode console
(un client IRC par exemple). Vous voulez vous dlogguer en laissant tourner le programme... et pouvoir vous relogguer
plus tard (en local ou distance) et rcuprer le programme lcran.
Pour cela, il faut lancer le programme dans un screen, qui est une sorte cran virtuel que lon peut dtacher et rattacher :
1. vous ouvrez un screen,
2. vous lancez le programme dedans,
3. si vous voulez vous dlogguer et laisser tourner le programme, vous dtachez le screen,
4. vous pouvez rattacher le screen et donc retrouver le programme depuis nimporte quelle connexion au systme
(console locale ou accs distant).
Installer et utiliser
Installer le package
# apt-get install screen
Nous allons prendre lexemple de 2 scnarios pour expliquer comment a fonctionne :
1er scnario
1. Depuis un premier ordinateur, ouvrez un screen depuis une console locale en lui donnant un nom. Pour cela, tapez la
commande :
% screen -S nom_du_screen
Un message dexplication apparat : appuyez sur Entre pour le zapper. Vous avez alors un prompt normal
lintrieur du screen. Lancez une application qui tourne en mode console (un client IRC par exemple).
2. Quittez le premier ordinateur en laissant le programme tourner et votre console ouverte (on dit que le screen reste
attach). Vous ouvrez une console sur un deuxime ordinateur et vous vous connectez au premier ordinateur (par une
connexion SSH par exemple). Pour rattacher le screen, cest--dire retrouver lcran le programme que vous avez
lan dans le screen sur le premier ordinateur, tapez la commande :
% screen -x nom_du_screen
Si vous ne vous souvenez plus du nom que vous aviez donn votre screen, lancer simplement la commande screen -x
et vous verrez la liste des screens avec leurs noms associs.
3. Si la taille de votre console sur le deuxime ordinateur nest pas la mme que la taille de votre console sur le premier
ordinateur, ce qui se traduit par un programme qui occupe plus ou moins de place que la taille de lcran : utilisez alors
la combinaison de touches Ctrl-a puis F, ce qui a pour effet de redimensionner le programme la taille de votre
nouvelle console.
4. Vous voulez quitter le deuxime ordinateur : dtachez le screen par la combinaison de touches Ctrl-a puis d. Le
message suivant apparat sur la console :
[detached]
247
Chapitre 62. Les screens
et vous pouvez vous dlogguer du deuxime ordinateur.
5. Vous revenez sur le premier ordinateur et vous retrouvez votre console avec le programme qui tourne lintrieur. Si
vous avez redimensionn le programme sur le deuxime ordinateur, vous devrez le redimensionner nouveau avec la
mme combinaison de touches pour le remettre aux dimensions de votre console initiale.
6. Vous voulez quitter le programme qui ne vous sert plus : quittez le programme normalement puis fermez le screen en
faisant comme si vous vous dlogguiez (combinaison de touches Ctrl-d ou commande logout). Le message suivant
safche sur la console :
[screen is terminating]
2me scnario
1. Depuis un premier ordinateur, vous vous connectez distance sur un deuxime ordinateur. Vous voulez lancer un
programme sur ce deuxime ordinateur et pouvoir le rcuprer quand vous voulez et depuis nimporte quel ordinateur.
Pour cela, lancez le programme dans un screen : pour faire dune pierre deux coups, cest dire ouvrir le screen et
lancer le programme en mme temps, tapez :
% screen -S nom_du_screen commande_qui_lance_le_programme
2. Vous voulez vous dlogguer du premier ordinateur : dtachez le screen avec la combinaison de touches Ctrl-a puis d,
dconnectez-vous du deuxime ordinateur puis dlogguez-vous du premier ordinateur.
3. Vous voulez retrouver le programme que vous aviez lan dans le screen : logguez-vous en local sur le deuxime
ordinateur ou connectez-vous sur le deuxime ordinateur distance depuis un autre ordinateur et tapez la commande
suivante pour rattacher le screen que vous aviez dtach :
% screen -r nom_du_screen
Si vous ne vous souvenez plus du nom que vous aviez donn votre screen, lancez simplement la commande screen
-r et vous verrez la liste des screens avec leurs noms associs.
Vous aurez peut-tre besoin de redimensionner le programme avec la combinaison de touches Ctrl-a puis F.
4. Vous voulez quitter le programme qui ne vous sert plus : quittez le programme normalement et le screen se fermera
tout seul car vous aviez ouvert le screen et lan le programme en mme temps. Le message suivant safche sur la
console :
[screen is terminating]
Plusieurs fentres dans un screen
A lintrieur dun screen, vous pouvez avoir une deuxime fentre avec un nouveau shell lintrieur. Pour cela, utilisez la
combinaison de touches Ctrl-a puis c. Vous pouvez en ouvrir autant que vous voulez en rptant cette combinaison de
touches. Vous pouvez ensuite passer dune fentre la suivante par la combinaison de touches Ctrl-a puis n (n comme
Next) et passer la fentre prcdente par la combinaison de touches Ctrl-a puis p (p comme Previous).
Pour fermer une fentre, il suft de fermer le shell quelle contient (combinaison de touches Ctrl-d ou commande logout).
Le fait de fermer la dernire fentre restante provoque la fermeture du screen.
248
VI. Conclusion et annexes
Ce que vous avez appris...
Si vous avez suivi cette formation de bout en bout, vous devez maintenant pouvoir vous dbrouiller sous Debian
GNU/Linux et commencer apprcier la puissance du systme de gestion des packages.
Jespre que nous vous avons donn le got den savoir plus et daller plus loin avec Linux... Pour cela, vous pouvez
enchaner avec les annexes de cette formation, qui prsentent dautres programmes, des congurations rseau avanes
ainsi que des trucs et astuces.
Mthode de rsolution des problmes
Linux nest pas un systme dexploitation facile, et cette formation ne peut pas couvrir tous les problmes quun dbutant
peut rencontrer. Nous voulons juste dcrire ici une mthode pour trouver, si possible rapidement, la solution un problme :
La documentation des packages
Tout dabord, chaque commande a son manuel (sauf exceptions...). Pour le consulter, il suft de taper :
% man nom_de_la_commande
Souvent, un mini-manuel de la commande est disponible en tapant :
% nom_de_la_commande --help
Chaque package vient avec de la documentation, disponible dans le rpertoire /usr/share/doc/nom_du_package/. Si
ce nest pas le cas, cest probablement que la documentation vient dans un package spar, comme par exemple dans les
packages zsh-doc, apache-doc ou encore samba-doc.
Les HOWTOs
Il existe des centaines de HOWTOs : chaque sujet qui touche Linux a son HOWTO ! Malheureusement, ils ne sont pas
tous jour, et ils ne sont pas tous traduits en franais. Il existe aussi des mini-HOWTOs, qui sont trs pratiques pour
apprendre rapidement se servir dune application.
Vous pouvez les consulter :
en local sur votre ordinateur :
# apt-get install doc-linux-fr doc-linux-html
Les HOWTOs en franais sont alors accessibles au format HTML dans le rpertoire
/usr/share/doc/LANG/fr/HOWTO/ et les HOWTOs en anglais sont accessible au format texte compress (vim
dcompresse les chiers texte compresss la vole lors de leur ouverture) dans le rpertoire
/usr/share/doc/HOWTO/en-txt/ et au format HTML dans le rpertoire /usr/share/doc/HOWTO/en-html/.
Les mini-HOWTOs sont dans tous les cas disponibles dans le sous-rpertoire mini.
sur le site web du Linux Documentation Project en franais (http://fr.tldp.org) et en anglais (http://www.tldp.org) ; vous
y trouverez probablement une version plus jour que celle des packages Debian.
Google est votre ami
Google (http://www.google.fr) est un trs bon moyen pour obtenir de laide sur Linux. Par exemple, quand vous avez un
message derreur, il suft gnralement de le copier-coller dans Google pour avoir des rponses pertinentes. Les rponses
se trouvent souvent dans les archives des mailing-lists des projets OpenSource.
Vous pouvez aussi utiliser une version spciale de Google pour Linux (http://www.google.com/linux).
Les recherches Google sont aussi un excellent moyen de trouver comment faire marcher un matriel particulier sous Linux.
Avec une recherche du type : Marque_du_matriel Modle_du_matriel Linux, vous trouverez coup sur des rsultats
pertinents.
Les mailing-lists et les forums de discussion
Si, aprs avoir cherch dans les manuels, les HOWTOs et dans Google, vous ne trouvez toujours pas de rponse votre
problme, vous pouvez faire appel laide la communaut Linux.
Vous pouvez poser vos questions sur les news, par exemple dans le forum fr.comp.os.linux.conguration, ou mieux, dans le
forum priv de votre cole, de votre universit ou de votre entreprise consacr Linux (par exemple, le forum
ecp.comp.unix pour les centraliens).
Vous pouvez aussi poster dans les mailing-lists des projets OpenSource. Pour connatre leur adresse, rendez-vous sur leur
site Web. Attention, avant de poster, regardez sil existe une FAQ ou si la question a dj t poste.
Annexe A. Apprendre et se tenir au courant
Se tenir au courant
Voil une liste de sites Webs traitant de lactualit Linux et des logiciels libres :
LinuxFr (http://www.linuxfr.org) est LE site de lactualit Linux et des logiciels libres en franais,
Slashdot (http://slashdot.org) ou ./ est son quivalent anglais, beaucoup plus forte audience...
Debian Planet (http://www.debianplanet.org) traite de lactualit Debian en anglais,
Weekly Debian News (http://www.debian.org/news) est un rsum en anglais de lactualit Debian de la semaine
coule (vous pouvez aussi le recevoir par mail chaque semaine),
Linux Today (http://www.linuxtoday.com) un site anglais dactualit gnraliste sur Linux,
FreshMeat (http://freshmeat.net) est un site anglais qui rassemble toutes les informations sur les logiciels Unix et
multiplateformes. Trs utile pour se tenir au courant des sorties de nouvelles versions ou recherche les programmes
OpenSource existant dans un certain domaine.
Apt-get.org (http://www.apt-get.org) est un site qui recense les sources APT non-ofcielles : trs pratique pour installer
un logiciel qui nest pas en standard dans la Debian.
Apprendre
Magazines
Le Linux Magazine France (http://www.linuxmag-france.org) est un mensuel trs technique sur Linux, les logiciels
libres et la programmation avec des outils libres. Il est disponible en kiosque au prix de 5,95 euros et par abonnement
avec CD au prix de 53 euros.
Le magazine Login (http://www.pcteam.posse-press.com) est un mensuel sur les systmes et la programmation
OpenSource. Il est galement dun assez haut niveau technique. Il est disponible kiosque au prix de 6,40 euros et par
abonnement avec CD au prix de 49,90 euros.
Livres
Les livres de la collection OReilly (http://www.oreilly.fr) sont trs connus et rputs srieux dans la communaut du
logiciel libre.
Internet
Le site Debian-fr.org (http://www.debian-fr.org) rassemble des documentations en franais sur des sujets divers et varis
: trs utile !
La section documentation du site ofciel Debian (http://www.fr.debian.org/doc/) franais rassemble tous les manuels
ofciels.
Les forums du site Andesi (http://www.andesi.org/) pourront tre dun grand secours aux dbutants.
Le guide de rfrence pour Debian (http://qref.sourceforge.net/Debian/reference/reference.fr.html), comme son nom
lindique, un guide en franais trs complet sur Debian,
251
Annexe A. Apprendre et se tenir au courant
Le Linux Documentation Project franais (http://fr.tldp.org) rassemble tous les HOWTOs franais disponibles.
Les LUGs
LUG signie Linux User Group. Ce sont des associations locales qui regoupent les fans de Linux et de linformatique libre
: rien de tel pour rencontrer des passionns de Linux prt vous aider ! Linux.org
(http://www.linux.org/groups/index.html) recense les LUGs classs par pays ; une recherche dans Google
(http://www.google.fr) avec comme mots cls LUG et le nom de votre ville, dune grosse ville prs de chez vous ou de
votre dpartemment devrait vous aider trouver le LUG le plus prs de chez vous. De nombreux LUGs organisent des
rencontres rgulires, qui sont rfrencs sur le site FirstJeudi.org (http://www.rstjeudi.org/).
252
Annexe B. En cas de blocage...
Mthode
Tout dabord, il faut perdre le rexe de rebooter la machine chaque fois quun problme ou un blocage intervient. Si
cette mthode fait ses preuves avec Windows, ce nest pas une bonne mthode pour Linux. La mthode adopter dpend
de ce qui est bloqu, comme expliqu ci-dessous.
Blocage dun service
Quand un service tel quun serveur Web, un serveur mail, etc... est bloqu ou ne marche plus comme il devrait, la premire
chose faire est de consulter les logs du service concern. Le service a parfois ses propres chiers de logs (par exemple, le
rpertoire /var/log/apache/ regroupe tous les chiers de logs dApache) ou il crit dans le chier de log gnrique
/var/log/daemon.log. Les messages crits dans les chiers de logs ne sont pas toujours facile comprendre, mais cest
LE moyen de diagnostiquer un problme avec un service.
Pour suivre en direct les messages qui scrivent dans un chier de log (par exemple le chier /var/log/daemon.log) :
% tail -f /var/log/daemon.log
Une des solutions peut tre de redmarrer le service. Par exemple, pour redmarrer Apache :
# /etc/init.d/apache restart
Reloading apache modules.
Blocage cause dun processus
Si le processus peut tre identi
Il peut arriver quun programme lan par un utilisateur plante et se mette utiliser toutes les ressources processeur
disponibles. Dans ce cas, il faut identier le PID du programme en cause avec le programme top et tuer le processus en
question avec la commande kill, dont lutilisation tait explique au chapitre Dbuter en console.
Dans certains cas, une solution plus radicale est ncessaire : tuer dun seul coup tous les processus appartenant un
utilisateur. Pour cela, il faut utiliser le programme slay qui nest pas install par dfaut :
# apt-get install slay
Pour tuer tous les processus de lutilisateur toto :
# slay toto
Quand on ne peut plus accder une console locale
Dans certains cas, comme par exemple quand le serveur graphique se bloque, on ne peut plus accder une console. Si
lordinateur est en rseau, il faut avoir le rexe de sy connecter distance par ssh pour tuer les processus bloquants.
253
Annexe B. En cas de blocage...
Les touches magiques
En cas de blocage grave du systme, et si toutes les solutions prcdentes nont pas fonctionn, il existe une ultime
mthode : les touches magiques. Pour que cette mthode marche, il faut avoir activ lors de la conguration du noyau les
options Kernel debugging et Magic SysRq key du menu Kernel hacking comme nous vous lavions suggr au chapitre
Conguration du noyau Linux.
Dans un premier temps, essayez dutiliser les combinaisons de touches susceptibles de tuer le processus bloquant :
Alt-Imprime Ecran-k tue tous les processus de la console courante,
Alt-Imprime Ecran-e envoie le signal TERM tous les processus du systme, sauf le processus pre init,
Alt-Imprime Ecran-i envoie le signal KILL (plus autoritaire que le prcdent) tous les processus du systme, sauf init.
Si ces combinaisons de touches ne permettent pas de rcuprer une console sur le systme, il faut alors se rsoudre
rebooter le systme en utilisant successivement les combinaisons de touches suivantes quelques secondes dcart :
1. Alt-Imprime Ecran-s (synchronise les disques durs)
2. Alt-Imprime Ecran-u (dmonte les systmes de chiers)
3. Alt-Imprime Ecran-b (reboote le systme)
Blocage au boot ou problme avec LILO
Vous avez mal congur votre LILO et vous narrivez mme plus dmarrer ? Vous avez rinstall Windows et il a cras
LILO ? Vous avez mal congur GDM et il bloque lordinateur ds le lancement ? Rassurez-vous, vous naurez pas tout
rinstaller ; suivez la procdure suivante pour vous en sortir :
1. Suivez toutes les instructions du chapitre Dbuter linstallation comme si vous recommenceriez la procdure
dinstallation.
2. Une fois que vous avez choisi votre clavier, passez sur la deuxime console avec la combinaison de touches habituelle
et appuyez sur Entre pour activer la console.
3. Montez votre partition Linux racine :
# mkdir /mnt/root
# mount /dev/hdXY /mnt/root
o /dev/hdXY dsigne votre parition Linux racine.
4. Demandez au systme que le rpertoire racine devienne /mnt/root/ :
# chroot /mnt/root
Vous vous retrouvez alors dans votre systme de chiers habituel.
5. Pour plus de confort, lancez votre shell habituel :
# zsh
6. Vous pouvez alors faire toutes les manipulations ncessaires la rparation, par exemple diter /etc/lilo.conf
avec vim et relancer lilo.
7. Une fois que la rparation est termine, dlogguez-vous deux fois pour retrouver votre prompt initial et rebootez le
systme avec la commande reboot.
254
Annexe C. Utiliser Dselect
Dselect ou apt-get ?
Comme nous lavons expliqu au chapitre Le systme de gestion des packages Debian, dselect est une alternative apt-get
pour la gestion intelligente des packages. Dselect apporte un certain nombre de fonctions supplmentaires par rapport
apt-get :
il afche la liste des packages disponibles avec leur tat et leur marquage ;
il permet de marquer un package ;
il prend en compte les packages recommands ou suggrs et pas seulement les packages dpendants, contrairement
apt-get.
Malheureusement, dselect a certains dfauts :
il est compliqu et pas trs intuitif utiliser,
la rsolution des dpendances est (parfois) problmatique (problmes de dpendances en boucle cause des packages
recommands).
Chaque utilisateur de Debian a le choix dutiliser apt-get ou dselect pour grer les packages. A vous de trouver celui que
vous prfrez...
Utiliser dselect
Dselect se lance simplement avec la commande du mme nom :
# dselect
Linterface apparat :
Figure C-1. Interface de dselect
7 tapes numrotes de 0 6 vous sont proposes. Nous allons vous les dtailler ci-dessous.
255
Annexe C. Utiliser Dselect
Etape 0 : Accder
Elle permet de congurer la liste des sources de packages. Nous vous conseillons cependant dditer la main le chier
/etc/apt/sources.list ou dutiliser apt-cdrom add, comme expliqu au chapitre Le systme de gestion des packages
Debian : le rsultat est le mme !
Etape 1 : Mise jour
Met jour la liste des packages disponibles. Cest lquivalent de la commande apt-get update pour apt-get.
Etape 2 : Slectionner
Cest ltape la plus importante : cest l o vous choisirez les packages installer ou dsinstaller. Cest galement cette
tape que sont grs le marquage, les dpendances, les conits...
Quand vous entrez dans ltape n

2, une page dexplication apparat : appuyez sur Espace pour voir apparatre lcran
suivant :
Figure C-2. Etape n

2 de dselect
Cet cran est divis en deux parties :
en haut, la liste de tous les packages (installs ou non) ;
en bas, un espace pour une description.
Dans la liste des packages (moiti haute de lcran), chaque ligne correspond un package. Sur chaque ligne, il y a
marqu, de gauche droite :
1. une srie de symboles (expliqu ci-dessous) ;
2. une importance : Std pour "standard", Imp pour "important", Req pour "requis", Opt pour "optionnel" et Xtr pour
"extra" ;
3. une section (par exemple : base, libs, graphics, editor, net, devel, etc...)
4. le nom du package ;
256
Annexe C. Utiliser Dselect
5. la version installe (<none> si non install) ;
6. la version disponible (<none> si le package est install mais nest pas ou plus prsent dans les sources) ;
7. un descriptif de quelques mots
A gauche de chaque ligne, on trouve une srie de 4 symboles. Chaque symbole sa signication. Du symbole de gauche au
symbole de droite :
1. Symbole derreur :
Espace : aucune erreur
R : erreur, ncessite une rinstallation
2. Symbole reprsentant ltat dinstallation :
Espace : non-install
* : install
- : non-install, mais chiers de conguration prsents
U : endommag (non encore congur)
C : endommag (partiellement congur)
I : endommag (partiellement install)
3. Symbole reprsentant lancien marquage :
* : marqu pour une installation ou mise jour
- : marqu pour un retrait sans supression des chiers de conguration
_ : marqu pour un retrait avec supression des chiers de conguration
= : g, le packet est install mais ne sera pas mis--jour
n : nouveau packet
4. Symbole reprsentant le marquage actuel : idem que le symbole prcdent.
Par exemple, si on place des barres de sparation entre les symboles (qui ne sont pas prsentes lcran), les combinaisons
les plus courantes sont :
| |*|*|*| : package install et marquage inchang ;
| | |_|_| : package non install et marquage inchang ;
| | |_|*| : package non install mais dsormais marqu pour tre install ;
| |*|*|-| : package install mais dsormais marqu pour tre dsinstall sans supression de ses ventuels chiers de
conguration.
Pour obtenir de laide sur cette tape (symboles, touches, procdure), vous pouvez tout moment appuyer sur ?.
Pour rechercher un package, appuyez sur / et tapez le nom ou une partie du nom dun package. Pour chercher linstance
suivante, appuyez sur \. Pour revenir tout en haut de la liste, appuyez sur t.
Quand vous tes sur un package, appuyez sur d (bas) et u (haut) pour faire dler le descriptif qui se trouve dans la
deuxime moiti de lcran. Vous pouvez galement appuyer sur i pour avoir une description plus dtaille du package.
Si le package vous plais et que vous voulez linstaller, appuyez sur +.
257
Annexe C. Utiliser Dselect
Si le package ne dpend daucun autre package non-install et nentre en conit avec aucun package install, il devient
marqu pour tre install : | | |_|*|. Cela veut dire que le package va tre install ltape suivante.
Si le package dpend dautres packages non encore installs ou non encore marqus pour tre install, ou sil entre en
conit avec un package install ou marqu pour tre install, alors un cran Introduction la rsolution de
conits/dpendances apparat. Appuyez sur Espace. Lcran suivant vous prsente une liste de packages :
en premier, le package que vous voulez installer ; il est marqu pour tre install : | | |_|*|.
les packages dont le package que vous voulez installer dpend et qui ne sont pas encore installs ou marqus pour tre
installs ; ils sont alors par dfaut marqus pour tre installs : | | |_|*|.
les packages que le package que vous voulez installer recommande et qui ne sont pas encore installs ou marqus pour
tre installs ; ils sont alors par dfaut marqus pour tre installs : | | |_|*|. Si vous trouvez que la recommendation
est mauvaise, vous pouvez vous positionner dessus et appuier sur - pour enlever le marquage linstallation.
les packages que le package que vous voulez installer suggre et qui ne sont pas encore installs ou marqus pour tre
installs ; par dfaut, leur marquage ne change pas et reste : | | |_|_|. Si vous trouvez que la suggestion est bonne,
vous pouvez vous positionner dessus et appuyer sur + pour les marquer tre installs.
les packages qui sont installs ou marqus pour tre installs et qui entrent en conit avec le package que vous voulez
installer : ils sont alors marqus pour tre dsinstalls : | |*|*|_|.
Quand vous vous positionnez sur un package, une description des interactions avec les autres packages (dpendance,
conit, recommandation, suggestion) safche dans la deuxime moiti de lcran. Si vous appuyez sur i, cette
description des interactions est remplae par une description du package.
Pour accepter les changements de marquage faits par dselect et par vous, appuyez sur Entre. Par contre, si vous voulez
annuler les changements de marquage faits par dselect et par vous, appuyez sur X. Dans les deux cas, vous revenez alors
la liste des packages, sauf si les changements de marquage ont fait intervenir dautres conits et/ou dpendances.
Pour slectionner un package dsintaller, placez-vous sur celui-ci et appuyez sur :
- (moins) pour retirer un package sans supprimer ses chiers de conguration ;
_ (underscore) pour retirer le package en supprimant ses chiers de conguration.
Vous risquez de retrouver une nouvelle fois lcran de rsolution des problmes de conits et de dpendances.
Une fois que les packages sont marqus pour tre installs ou desinstalls :
si vous voulez conrmer les changements, appuyez sur Entre : une nouvelle vrication des dpendances est effectue
avant de revenir au menu principal ;
si vous voulez annuler ce que vous avez fait dans cette tape n

2, appuyez sur X.
Etape 3 : Installer
Cette tape sert installer et dsinstaller les packages qui ont respectivement t marqus pour tre installs et marqus
pour tre dsinstalls lors de ltape prcdente. Cest pendant cette tape que vous seront poses les questions pour la
conguration des packages installer. A la n de ltape, il vous pose la question : Do you want to erase anu previously
downloaded .deb les ? Rpondez Oui est quivalent excuter la commande apt-get clean.
Etapes 4 : Congurer
La plupart des paquets sont congurs lors de ltape 3, mais tout paquet en suspens peut tre congur cette tape.
258
Annexe C. Utiliser Dselect
Etapes 5 : Retirer
Retire les paquets qui sont installs mais qui ne sont plus ncessaires.
Etape 6 : Quitter
Elle sert simplement quitter dselect !
Pour plus dinformations sur dselect, je vous invite lire le Guide de dselect pour les dbutants
(http://www.debian.org/releases/stable/i386/dselect-beginner.fr.html).
259
Annexe D. Complments sur la gestion des packages
Debian
Tout savoir sur lutilisation dAPT
Pour tout savoir sur lutilisation dAPT, je vous invite lire le APT HOWTO
(http://www.debian.org/doc/manuals/apt-howto/index.fr.html) en franais.
dpkg-deb
Dpkg a un grand frre, dpkg-deb qui sert construire et manipuler des packages Debian, mais pas les installer ou
dsinstaller.
Les commandes qui peuvent vous tre utiles sont les suivantes :
dpkg-deb -I package_0.1_i386.deb : afche les en-ttes du package.
dpkg-deb -c package_0.1_i386.deb : afche les noms des chiers contenus dans le package.
dpkg-deb -X package_0.1_i386.deb rpertoire : extrait les chiers contenus dans le package dans le rpertoire spci.
Je cherche un package qui fasse...
Pour trouver un package qui rponde un certain besoin, utilisez la commande apt-cache search.
Par exemple, si vous recherchez un compilateur Fortran, vous allez taper :
% apt-cache search fortran compiler
Il recherche alors les termes "fortran" et "compiler" dans la description de tous les packages. Dans les rponses, vous
obtenez notamment :
g77 - The GNU Fortran 77 compiler.
Ce package g77 lair de bien correspondre. Ensuite, vous pouvez regarder les dtails du package :
% apt-cache show g77
Apt-le
Apt-le est un programme qui vient complter les commandes dpkg -S et dpkg -L qui se limitent dans leurs rsultats aux
packages installs.
Pour utiliser apt-le, il faut dabord installer le package du mme nom, puis mettre jour sa base de donne propre
contenant les chiers de tous les packages :
# apt-get install apt-file
# apt-file update
Puis on peut avoir la liste des chiers contenus dans un package mme si celui-ci nest pas install (contrairement la
commande dpkg -L) :
260
Annexe D. Complments sur la gestion des packages Debian
% apt-file list nom_du_package
On peut galement savoir quel package appartient un certain chier, mme si le package (et donc le chier) nest pas
install (contrairement la commande dpkg -S) :
% apt-file search nom_du_fichier
Installer un RPM
RPM signie Red Hat Packet Manager : cest un format de paquet concurrent de celui de Debian, et il est utilis par de
nombreuses distributions (RedHat, Mandrake, SuSE, etc...).
Pour certaines applications, on ne trouve que des packages au format RPM. Dans ce cas, il faut utiliser alien pour convertir
un package du format RPM au format Debian.
Commencez par installer alien :
# apt-get install alien
Puis convertissez le package :
# alien -d nom_du_package.rpm
Enn, installez le package Debian gnr :
# dpkg -i nom_du_package.deb
261
Annexe E. La mthode Debian pour compiler un noyau
Comme expliqu au dbut du chapitre Compiler le noyau, il existe deux mthodes pour compiler un noyau Linux. La
mthode expose ci-dessous est la mthode spcique la distribution Debian. Cette mthode savre plus pratique que la
mthode gnrique quand on veut compiler un noyau pour une machine peu puissante qui na pas besoin de modules du
noyau dont les sources ne sont pas intgres dans le noyau ofciel (donc, par exemple, une machine qui na pas besoin
dALSA). En effet, la mthode Debian pour compiler un noyau consiste crer un package Debian contenant le noyau et
ses modules, puis installer ce package avec dpkg ; on peut alors facilement compiler le noyau sur une machine puissante
tourant sous Debian, transfrer le package Debian gnr sur la machine peu puissante et linstaller sur cette dernire.
Lexemple ci-dessous illustre la compilation dun noyau sans modules externes (i.e. sans modules du noyau non intgrs
dans les sources du noyau ofciel) sur une machine puissante, appele machine de compilation, et linstallation du noyau
sur une machine peu puissante, appele machine cible.
Crer le package contenant le noyau sur la machine de compilation
Installer les outils ncessaires
Deux packages supplmentaires sont requis sur la machine de compilation (i.e. celle sur laquelle vous allez compiler le
noyau et produire le package) :
# apt-get install kernel-package fakeroot
Crer le package
Tout dabord, vous devez tlcharger, dcompresser puis congurer le noyau sur la machine de compilation, comme
expliqu au chapitre Conguration du noyau Linux. Je suppose que vous avez ni la conguration du noyau et que vous
tes dans le rpertoire /usr/src/linux-version/.
Vous allez maintenant compiler le noyau et les modules et construire le package Debian contenant le noyau et les modules :
% fakeroot make-kpkg clean
% fakeroot make-kpkg --revision nom_de_la_machine_cible.numro_de_version kernel-image
o nom_de_la_machine_cible est le nom de la machine cible, et o numro_de_version est le nombre de noyaux de cette
version que vous avez dj compil pour cette machine augment de 1. Par exemple, dans le cas dune deuxime
compilation de noyau 2.4.X pour la machine raton, il faut mettre loption --revision raton.2 (en fait, ceci na rien
dobligatoire, mais cest ce que je conseille de faire).
Il faut alors patienter pendant la compilation du noyau et des modules et la gnration du package.
Installer le package sur la machine cible
Le package est cr sur la machine de compilation dans le rpertoire parent du rpertoire o se trouvent les sources du
noyau (i.e. le rpertoire /usr/src/ si vous avez suivi mes consignes), et porte le nom
kernel-image-2.4.X_nom_de_la_machine_cible.numro_de_version_i386.deb. Pour installer le noyau, il
faut donc dabord transfrer le package sur la machine peu puissante (par scp par exemple). Pour installer le noyau sur la
machine cible, il suft alors dinstaller le package que lon vient de transfrer. Dans le rpertoire o vous avez transfr le
package, excutez :
# dpkg -i kernel-image-2.4.X_nom_de_la_machine_cible.numro_de_version_i386.deb
262
Annexe E. La mthode Debian pour compiler un noyau
Il vous pose alors un certain nombre de questions : choisissez les choix par dfaut !
Voil en fait ce quil a fait pendant linstallation du package :
1. install le chier /boot/vmlinuz-2.4.X (cest le noyau),
2. install le chier /boot/System.map-2.4.X (cest la System map),
3. install le chier /boot/config-2.4.X (cest le chier de conguration du noyau),
4. install les modules dans le rpertoire /lib/modules/2.4.X/,
5. modi le lien symbolique /vmlinuz pour quil pointe sur le noyau que vous venez dinstaller,
6. modi le lien symbolique /vmlinuz.old pour quil pointe sur le noyau actuel,
7. excut lilo.
Il ne vous reste plus qu rebooter la machine cible pour quelle utilise le nouveau noyau !
263
Annexe F. Faire marcher une imprimante
Attention
Cette annexe est toute nouvelle, et na t que trs peu teste. Mon exprience avec les
imprimantes sous Linux tant extrmement rduite, je ne garanti pas le rsultat... mais toutes les
remarques sont les bienvenues !
Prliminaires
Mon imprimante est-elle supporte sous Linux ?
Faire marcher une imprimante sous Linux fait partie des choses difciles : cest mon avis plus difcile que de recompiler
un noyau ou de faire marcher un serveur graphique !
Tout dabord, il faut partir aux renseignements pour savoir si votre imprimante est supporte sous Linux ou non. Pour cela,
rendez-vous sur le site LinuxPrinting.org (http://www.linuxprinting.org/) et cliquez sur Printer listings : slectionnez la
marque et le modle de votre imprimante, et vous afche alors une page qui vous informe sur la qualit du support de votre
imprimante sous Linux. Si cette page vous dit que votre imprimante est Paperweight avec un pingouin barr comme logo,
alors ce nest pas la peine daller plus loin ! Dans les autres cas, si vous avez un, deux ou trois pingouins, cest que vous
devez pouvoir faire quelque chose de votre imprimante sous Linux... continuez lire ce chapitre !
Dune manire gnrale, la qualit du support dune imprimante sous Linux dpend surtout du bon vouloir du constructeur
: certains constructeurs comme HP et Epson collaborent avec la communaut du logiciel libre et leurs imprimantes sont
bien supportes, alors que dautres comme Canon ou Lexmark ne veulent pas dvoiler les spcications techniques de
leurs imprimantes, ce qui empche lcritures de pilotes pour Linux. Pour plus de dtails sur le niveau de coopration du
constructeur de votre imprimante avec la communaut du logiciel libre, consultez la page Vendor Info.
Lidal est de vrier ce critre avant dacheter une imprimante. LinuxPrinting.org propose une page Suggested printers
qui vous aide choisir une bonne imprimante qui sera bien supporte sous Linux.
Un peu de thorie
Quelques connaissances thories sont ncessaires pour comprendre les diffrents formats et les diffrentes couches
logicielles implique dans la chane dimpression en fonction des capacits de votre imprimante. La lecture de ce
document (http://www.linuxprinting.org/kpfeie/LinuxKongress2002/Tutorial/III.PostScript-and-PPDs/III.PostScript-and-
PPDs.html) (en anglais) vous permettra de beaucoup mieux comprendre la
suite.
Noter le driver recommand
Maintenant que vous avez les bases thories requises, retournez dans Printer listing sur le site LinuxPrinting.org
(http://www.linuxprinting.org/), slectionnez nouveau votre imprimante et notez le driver recommand pour faire
marcher votre imprimante sous Linux :
si le driver recommand est Postscript, cliquez sur view PPD, puis enregistrez le chier PPD sous le nom conseill dans
les commentaires au dbut du chier ;
si le driver recommand est Gimp-print, faites de mme ;
si ... [TODO : complter]
264
Annexe F. Faire marcher une imprimante
Installer et congurer CUPS
Charger les modules noyau
Avant dinstaller CUPS, il faut charger les modules du noyau qui vont permettre votre ordinateur de communiquer avec
votre imprimante. Si vous avez bien suivi mes consignes au chapitre Conguration du noyau Linux, vous avez du compiler
les modules requis, il ne reste plus qu les charger la main :
si vous avez une imprimante USB :
# modprobe printer
si vous avez une imprimante sur port parallle :
# modprobe lp
Une fois que vous aurez congur votre imprimante dans CUPS, ce dernier se chargera dinsrer les modules requis au
dmarrage du systme.
Installer CUPS
Mthode Woody
Installez les packages de CUPS :
# apt-get install cupsys cupsys-client cupsys-bsd foomatic-bin
Si le driver recommand pour votre imprimante est Gimp-print, installez en plus le package cupsys-driver-gimpprint.
Mthode Sid
Installez les packages de CUPS :
# apt-get install cupsys cupsys-client cupsys-bsd foomatic-filters
Si le driver recommand pour votre imprimante est Gimp-print, installez en plus le package cupsys-driver-gimpprint.
Installer le chier PPD
Si vous avez tlcharg un chier PPD sur LinuxPrinting.org, copiez-le maintenant dans le rpertoire
/usr/share/cups/model/. Par exemple, pour une imprimante HP LaserJet 1300 :
# cp HP-LaserJet_1300-Postscript.ppd /usr/share/cups/model/
puis demandez CUPS de tenir compte de ce changement :
# /etc/init.d/cupsys reload
Reloading CUPSys: cupsd.
265
Annexe F. Faire marcher une imprimante
Congurer CUPS
La conguration de CUPS se fait via une interface Web, qui, par dfaut, nest accessible quen local. Ouvrez donc votre
navigateur web favori (si vous navez pas de serveur graphique, vous pouvez utiliser un navigateur web en console comme
w3m) et tapez lURL http://localhost:631/admin/ (http://localhost:631/admin/).
Il va vous demander de vous authentier : entez root comme login et votre mot de passe root (comme vous accdez
linterface web en local sur la machine, votre mot de passe root ne sera pas transmis en clair lextrieur).
Note : Si vous voulez quun utilisateur qui ne connat pas le mot de passe root puisse administrer CUPS par linterface
web, ajoutez-le au groupe lpadmin ; il pourra alors y accder avec son login et son mot de passe.
Vous arrivez alors dans linterface dadministration de CUPS :
Figure F-1. Interface dadministration de CUPS
Cliquez sur Ajouter une imprimante et suivez lassistant :
1. donnez un nom (sans espace) votre imprimante (et ventuellement un emplacement et une description) ;
2. slectionnez le priphrique daccs limprimante : si cest une imprimante sur port parallle, slectionnez Parallel
port #1, si cest une imprimante sur port USB, slectionnez USB printer #1 ;
3. slectionnez la marque de votre imprimante ;
4. slectionnez le modle de votre imprimante : si le nom exact napparat pas, rappelez-vous du nom du driver qui tait
recommand par LinuxPrinting.org.
Il vous informe alors que limprimante a t ajoute avec succs. Cliquez sur le nom de limprimante pour aller
directement la page de status de celle-ci :
266
Annexe F. Faire marcher une imprimante
Figure F-2. Page de status de limprimante
Si le champ dtat de limprimante indique quelle est larrt, cliquez sur Dmarrer limprimante. Ensuite, cliquez sur
Congurer limprimante pour rgler un certain nombre de paramtres (taille du papier, rsolution, ...). Enn, cliquez sur
Imprimer page de test pour voir si vous tes capable de faire cracher quelque chose votre imprimante sous Linux !
Imprimer !
Les commandes de base
Tout dabord, il faut connatre quelques commandes de base :
lpq afche ltat de limprimante et la queue dimpression ;
lprm 12 supprime le job numro 12 de la queue dimpression ;
lp rapport.ps ajoute le chier PostScript rapport.ps la queue dimpression de limprimante (si plusieurs
imprimante sont congues dans CUPS, il faut ajouter -d nom_de_limprimante dans la commande) ;
lp -n 3 -P 2,12-42,72 -d renoir rapport.ps ajoute la queue dimpression de limprimante renoir limpression en trois
exemplaires des pages 2 et 72 ainsi que de toutes les pages entre 12 et 42 du chier rapport.ps.
Imprimer depuis une application
La plupart des applications graphiques proposent un menu dimpression comme sous Windows... donc vous ne devriez pas
tre trop drout !
267
Annexe F. Faire marcher une imprimante
Figure F-3. Menu dimpression dOpenOfce
268
Annexe G. Optimiser ses priphriques IDE
Cette annexe traite de loptimisation des priphriques IDE. Les priphriques SCSI nont pas ce problme doptimisation
" la main".
Par dfaut, les priphriques IDE ne sont pas toujours optimiss au niveau performance sous Linux. Il faut donc connatre
les caractristiques de ses priphriques IDE et de sa carte mre : si vous voyez que vos priphriques IDE ne sont pas bien
optimiss par dfaut au dmarrage, il faudra crer un script shell avec des commandes hdparm pour optimiser les
priphriques et congurer le systme pour que ce script soit excut chaque dmarrage. Nous prendrons comme
exemple un ordinateur qui na quun seul priphrique IDE : un disque dur branch en Primary Master, donc accessible par
/dev/hda. Cet exemple sapplique galement aux lecteurs de CD, DVD et graveurs IDE.
Installer et utiliser hdparm
Il faut dabord installer le package :
# apt-get install hdparm
Les options les plus intressantes de hdparm sont :
-i et -I pour avoir des informations sur le priphrique,
-c pour connatre et rgler le support I/O 32 bits,
-d pour connatre et rgler le support du DMA,
-X pour rgler le mode du DMA,
-t pour faire un test de performance de lecture du priphrique sans utilisation du cache.
Vous allez commencer par recueillir des informations sur votre priphrique :
# hdparm -I /dev/hda
Note : Si vous utilisez hdparm sur des priphriques IDE qui utilisent lmulation SCSI, il faut quand mme les
dsigner par leur nom de device IDE classique (/dev/hda, /dev/hdb, /dev/hdc et /dev/hdd, comme expliqu au
chapitre Le systme de chiers).
Il faut regarder en particulier dans la section Capabilities ce qui concerne le DMA. Par exemple, pour notre disque-dur,
nous avons :
DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 *udma4 udma5
Ltoile sur udma4 signie que mon disque dur supporte le DMA, et que, si le DMA est activ, il se mettra en mode
UDMA 4.
Maintenant, regardez si le DMA est activ :
% hdparm -d /dev/hda
/dev/hda:
using_dma = 1 (on)
Ici, le DMA est activ, donc le priphrique est congur en UDMA 4. Ceux qui ont mis loption Use PCI DMA by default
when available dans la Conguration du noyau Linux (menu ATA/IDE/MFM/RLL support) et loption correspondant leur
chipset ont normalement le DMA activ par dfaut.
269
Annexe G. Optimiser ses priphriques IDE
Faisons le test de performance pour pouvoir ensuite faire des comparaisons avec les performances que lon aura avec de
meilleurs rglages. Il faut raliser ce test un moment o le systme nest pas entrain dutiliser le priphrique et le refaire
plusieurs fois (le premier test nest gnralement pas signicatif) :
# hdparm -t /dev/hda
Si votre priphrique supporte le DMA et que celui-ci ntait pas activ, alors il faut absolument le faire, vous gagnerez
normment en performance :
# hdparm -d1 /dev/hda
Vous pouvez alors refaire le test de performance : chez moi, le dbit du disque dur est multipli par 7 !
Si votre priphrique nest plus tout jeune et ne supporte par le DMA, alors il faut sintresser lI/O : est-il congur en
16 bits ou en 32 bits ? Par dfaut, il est toujours congur en 16 bits par le noyau. Seuls les priphriques IDE trs trs
vieux ne supportent pas le mode 32 bits. Le fait de le passer de 16 32 bits peut amliorer les performances dun facteur 2
environ.
Pour voir dans quel mode il est :
# hdparm -c /dev/hda
Pour le passer en mode 32 bits :
# hdparm -c1 /dev/hda
Puis refaites le test de performance pour mesurer lamlioration.
Si votre priphrique supporte le DMA et que vous lavez activ, cela ne fera aucune diffrence que lI/O soit en 16 bits ou
en 32 bits.
Vous devez maintenant savoir quelles commandes hdparm taper pour que vos priphriques IDE soient optimiss. Si vos
priphriques IDE se mettent par dfaut en DMA, vous navez rien faire, et vous navez donc pas besoin de lire la suite.
Lancer hdparm chaque dmarrage si ncessaire
Ecrire le script
Si vos priphriques IDE ne se mettent pas par dfaut dans leur conguration optimise, il va falloir que vous crivez un
script shell contenant les commandes ncessaires leur optimisation et faire en sorte que ce script sexcute chaque
dmarrage.
Le script sera appell hdparm.sh et sera pla dans le rpertoire /etc/init.d/ avec les droits dexcution.
Crez le chier /etc/init.d/hdparm.sh partir de mon script modle :
# cp ~/config/hdparm.sh /etc/init.d/
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/hdparm.sh
# mv hdparm.sh /etc/init.d/
Personnalisez mon script modle /etc/init.d/hdparm.sh en y mettant la liste des commandes hdparm ncessaires
loptimisation de tous vos priphriques IDE en ajoutant loption -q (comme quiet) pour que la sortie standard de la
commande ne safche pas lcran (seules les erreurs ventuelles safcheront) :
#! /bin/sh
# /etc/init.d/hdparm.sh
270
Annexe G. Optimiser ses priphriques IDE
# Script doptimisation des priphriques IDE avec hdparm
# Formation Debian GNU/Linux par Alexis de Lattre
# http://www.via.ecp.fr/~alexis/formation-linux/
# Plus dinformations sur hdparm dans "man hdparm".
echo -n "Optimizing IDE periphericals with hdparm:"
# DEBUT de la liste des commandes hdparm
/sbin/hdparm -q -d1 /dev/hda
/sbin/hdparm -q -d1 /dev/hdc
# FIN de la liste des commandes hdparm
echo " done."
Rajoutez les droits dexcution sur le script :
# chmod 755 /etc/init.d/hdparm.sh
Lancer le script chaque dmarrage
Dans notre cas, on veut excuter le script /etc/init.d/hdparm.sh chaque dmarrage. On a donc besoin dun lien
symbolique dans le rpertoire /etc/rcS.d/. Ensuite, nous voulons que le script sexcute vers la n de la srie ; nous lui
donnerons donc le numro dordre 60 par exemple. Enn, le nom du lien doit commencer par la lettre S, mme si le start
qui sera donn en argument ne sert rien car le script ne prend pas darguements.
Pour crer le lien symbolique, il faut passer par le script Debian update-rc.d :
# update-rc.d hdparm.sh start 60 S .
Si vous voulez retirer le lien symbolique, il faut passer par le mme script Debian :
# update-rc.d -f hdparm.sh remove
271
Annexe H. Surveiller son matriel
La plupart des cartes mres ont des capteurs qui mesurent la temprature lintrieur du boitier, la temprature du
processeur, la vitesse du ventilateur, les diffrentes tensions, etc... Le projet Lm_sensors
(http://secure.netroedge.com/~lm78/) a pour but de faire marcher ces capteurs sous Linux.
Compiler les modules noyau et les outils requis
Tlchargez la dernire version des chiers suivants depuis la page de tlchargement
(http://secure.netroedge.com/~lm78/download.html) du projet :
lm_sensors-version.tar.gz (contient les sources des pilotes pour les puces des capteurs et les sources des outils
de lm_sensors)
i2c-version.tar.gz (contient les sources des pilotes pour le System Management Bus, alias SMB, qui est une
implmentation spcique du bus I2C)
Note : A lheure o jcris ces lignes, version = 2.7.0.
Dplacez les chiers dans le rpertoire /usr/src/. Ensuite, procdez la compilation et linstallation des pilotes I2C
puis de lm_sensors :
% cd /usr/src/
% tar xvzf i2c-version.tar.gz
% cd i2c-version
% make
# make install
% cd ..
% tar xvzf lm_sensors-version.tar.gz
% cd lm_sensors-version
% make
# make install
Dites au systme de recalculer les dpendances entre les modules du noyau :
# /etc/init.d/modutils
Crez les devices requis grce au script prvu pour cet usage :
# /usr/src/lm_sensors-version/prog/mkdev/mkdev.sh
Editez le chier /etc/ld.so.conf (crez-le sil nexiste pas dj) et ajoutez la ligne suivante (qui est le nom du
rpertoire contenant les librairies dynamiques installes partir des sources) :
/usr/local/lib
Puis dites au systme de tenir compte de ce changement :
# ldconfig
272
Annexe H. Surveiller son matriel
Congurer les modules
Lm_sensors fournit un script qui doit normalement permettre une dtection automatique des puces des capteurs ainsi que
du bus sur lesquelles elle sont connectes et donner les bons paramtres de conguration. Lanez le script :
# sensors-detect
Lisez bien ce quil afche lcran et, chaque question, adoptez le choix propos par dfaut (cest le choix crit en
majuscule) !
A la n du script, il afche deux "listings" dlimits par des lignes :
#----cut here----
Le premier listing contient des commentaires ainsi que des commandes modprobe pour charger les modules. Sous Debian,
le /etc/modules contient une liste de modules que le systme charge dans lordre au dmarrage. Copiez-collez les noms
des modules la n du chier /etc/modules en respectant lordre.
Par exemple, sur mon ordinateur, le premier listing est le suivant :
#----cut here----
# I2C adapter drivers
modprobe i2c-viapro
modprobe i2c-isa
# I2C chip drivers
modprobe adm1021
modprobe eeprom
modprobe via686a
#----cut here----
Je vais donc ajouter la n du chier /etc/modules les lignes suivantes :
# I2C adapter drivers
i2c-viapro
i2c-isa
# I2C chip drivers
adm1021
eeprom
via686a
Ensuite, crez un chier /etc/modutils/i2c contenant :
alias char-major-89 i2c-dev
Enn, mettez jour le chier de conguration des modules et demandez au systme de charger les modules lists dans le
chier /etc/modules :
# update-modules
# /etc/init.d/modutils
Surveiller le matriel
Afcher les valeurs
Pour lire les valeurs des capteurs, excutez la commande suivante :
% sensors
273
Annexe H. Surveiller son matriel
Sur mon ordinateur, cela afche :
via686a-isa-6000
Adapter: ISA adapter
Algorithm: ISA algorithm
CPU core: +1.66 V (min = +1.98 V, max = +2.49 V) ALARM
+2.5V: +0.28 V (min = +2.24 V, max = +2.74 V) ALARM
I/O: +3.32 V (min = +2.95 V, max = +3.62 V)
+5V: +4.92 V (min = +4.47 V, max = +5.49 V)
+12V: +11.57 V (min = +10.79 V, max = +13.18 V)
CPU Fan: 4821 RPM (min = 3000 RPM, div = 2)
P/S Fan: 0 RPM (min = 3000 RPM, div = 2)
SYS Temp: +30.1

C (limit = +45

C, hysteresis = +40

C)
CPU Temp: +36.9

C (limit = +60

C, hysteresis = +55

C)
SBr Temp: +23.3

C (limit = +65

C, hysteresis = +60

C)
max1617-i2c-1-18
Adapter: SMBus Via Pro adapter at 5000
Algorithm: Non-I2C SMBus adapter
Board: +8

C (min = +4

C, max = +0

C)
CPU: +0

C (min = +8

C, max = +60

C)ALARM (N/A)
eeprom-i2c-1-50
Adapter: SMBus Via Pro adapter at 5000
Algorithm: Non-I2C SMBus adapter
Memory type: SDRAM DIMM SPD
Memory size (MB): 128
eeprom-i2c-1-51
Adapter: SMBus Via Pro adapter at 5000
Algorithm: Non-I2C SMBus adapter
Memory type: SDRAM DIMM SPD
Memory size (MB): 128
Perfectionner la conguration des modules
Dans mon cas, certaines informations ne me sont daucune utilit : seul le premier paragraphe qui contient les tempratures
mintresse. En faisant marcher mon intuition, je devine que :
les donnes du premier paragraphe sont apportes par le module via686a,
les donnes des deux derniers paragraphes sont apportes par eeprom,
et par limination les donnes du deuxime paragraphe sont apportes par le module adm1021.
Je vais donc commenter les lignes du chier /etc/modules correspondant aux modules dont je nai pas besoin pour
quils ne soient pas chargs au prochain redmarrage :
# I2C adapter drivers
i2c-viapro
i2c-isa
# I2C chip drivers
#adm1021
#eeprom
via686a
274
Annexe H. Surveiller son matriel
Puis je dcharge les modules la main :
# modprobe -r adm1021 eeprom
Si je relance la commande sensors, jobtiens alors :
% sensors
via686a-isa-6000
Adapter: ISA adapter
Algorithm: ISA algorithm
CPU core: +1.66 V (min = +1.98 V, max = +2.49 V) ALARM
+2.5V: +0.28 V (min = +2.24 V, max = +2.74 V) ALARM
I/O: +3.32 V (min = +2.95 V, max = +3.62 V)
+5V: +4.92 V (min = +4.47 V, max = +5.49 V)
+12V: +11.57 V (min = +10.79 V, max = +13.18 V)
CPU Fan: 4821 RPM (min = 3000 RPM, div = 2)
P/S Fan: 0 RPM (min = 3000 RPM, div = 2)
SYS Temp: +30.1

C (limit = +45

C, hysteresis = +40

C)
CPU Temp: +36.9

C (limit = +60

C, hysteresis = +55

C)
SBr Temp: +23.3

C (limit = +65

C, hysteresis = +60

C)
Perfectionner la conguration des alarmes
Ensuite, pour ajuster le niveau des alarmes et le nombre dinformations afches, il faut personnaliser le chier de
conguration de lm_sensors /etc/sensors.conf. La premire partie du chier est constitue uniquement de
commentaires qui expliquent la syntaxe du chier ; la deuxime partie est constitue de sections pour chaque type de puce.
Dans mon cas, la section qui mintresse est celle qui commence par :
chip "via686a-*"
Une fois que le chier est personnalis, pour quil tienne compte des changements dans les niveaux limites (les paramtres
set dans le chier de conguration), il faut excuter la commande suivante :
# sensors -s
Puis relancer la commande sensors.
Pour que la commande sensors -s sexcute chaque dmarrage, il faut ajouter un script contenant cette commande dans le
rpertoire /etc/init.d/ :
# cp ~/config/lmsensors.sh /etc/init.d/
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/lmsensors.sh
# mv lmsensors.sh /etc/init.d/
Et dire au systme dexcuter le script chaque dmarrage :
# update-rc.d lmsensors.sh start 90 S .
275
Annexe I. La souris en console
Vous utilisez Linux principalement en console et vous voulez pourvoir utiliser votre souris en console ? Cela est possible
grce au programme GPM (General Purpose Mouse interface). Ce programme permet notamment de faire du copier coller
dans la mme console, ou dune console une autre.
Installer et congurer GPM
Commencez par fermer votre serveur graphique si vous en avez un. Ensuite, installez le package de GPM :
# apt-get install gpm
Ds linstallation, il vous propose de congurer GPM. Je vous conseille de rpondre Non la question Do you want to
change anything ? et de congurer GPM la main par la suite.
Pour modier la conguration de GPM, ditez son chier de conguration /etc/gpm.conf. Les lignes non commentes
sont les suivantes :
device=/dev/psaux
responsiveness=
repeat_type=ms3
type=autops2
append=""
sample_rate=
Le paramtre device doit contenir le device correspondant ta souris :
/dev/psaux pour une souris sur le port PS/2 (les trackpoints et les touchpads des ordinateurs portables sont
gnralement raccords ce port),
/dev/input/mice pour une souris sur port USB,
/dev/ttyS0 pour une souris sur le premier port srie,
/dev/ttyS1 pour une souris sur le second port srie,
Le paramtre type dnit le format des donnes envoyes par la souris et lu par le systme travers le device. Indiquez
comme format :
ps2 si vous avez une souris de base,
imps2 si vous avez une souris un peu plus perfectionne,
... il existe plein dautres formats. Pour avoir la liste complte des protocoles avec le type de souris qui les utilise, lancez
la commande gpm -t help.
Une fois que vous avez personnalis les paramtres device et type, enregistrez le chier et quittez votre diteur de texte. Il
faut alors relancer GPM pour quil tienne compte du changement dans le chier de conguration :
# /etc/init.d/gpm restart
Stopping mouse interface server: gpm.
Starting mouse interface server: gpm.
Si vous obtenez un curseur qui bouge... cest gagn ! Sinon, r-ditez le chier de conguration, modiez le paramtre
type, enregistrez, et relancez GPM... et ainsi de suite jusqu ce que a marche !
276
Annexe I. La souris en console
Utiliser GPM
Avec la souris, vous pouvez maintenant slectionner du texte avec le bouton gauche. Pour slectionner un mot, vous
pouvez aussi vous placer sur ce mot et double-cliquer. Un triple-clic slectionne la ligne entire.
Vous pouvez alors coller le texte que vous avez slectionn lendroit o est votre curseur avec un clic droit.
Avoir la souris en console et sous X
Vous zappez souvent entre la console et le serveur graphique et vous aimeriez utiliser la souris dans ces les deux
environnements ? Le problme est quon ne peut pas avoir deux programmes qui lisent depuis le device de la souris en
mme temps. Voil donc comment procder...
Commenez par fermer votre serveur graphique. Ensuite, ditez le chier /etc/gpm.conf et modiez le paramtre
repeat_type. Ce paramtre dnit le format des donnes rptes par GPM sur le device /dev/gpmdata. Sil est raw,
GPM rpte lidentique sur ce device. Mettez donc :
repeat_type=raw
Relancez GPM pour quil tienne compte de ce changement :
# /etc/init.d/gpm restart
Stopping mouse interface server: gpm.
Starting mouse interface server: gpm.
Ensuite, ditez le chier de conguration du serveur graphique /etc/X11/XF86Config-4 et modiez la section
concernant la souris. Mettez le paramtre Device /dev/gpmdata et le paramtre Protocol :
PS/2 si vous avez mis le paramtre type de GPM ps2 ;
ImPS/2 si vous avez mis le paramtre type de GPM imps2.
La section concernant la souris ressemble alors la section ci-dessous :
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/gpmdata"
Option "Protocol" "ImPS/2"
# Dcommentez la ligne suivante si vous avez une souris 2 boutons
# Option "Emulate3Buttons" "true"
# Dcommentez la ligne suivante si vous avez une roulette
# Option "ZAxisMapping" "4 5"
EndSection
Enn, dmarrez votre serveur graphique. Si tout va bien, votre souris doit maintenant fonctionner en console et sous X.
277
Annexe J. LaTeX
Quest-ce que LaTeX ?
LaTeX (http://www.latex-project.org/) est un traitement de texte libre qui est trs utilis dans la communaut scientique.
Il sutilise un peu comme un langage de programmation : on commence par crire le texte et les commandes LaTeX dans
un chier texte, puis on compile, et enn on visualise. Le chier gnr est au format DVI. Il est facilement convertible
vers les formats PostScript, PDF et HTML.
Installer et utiliser LaTeX
Installer les packages
Vous aurez besoin des packages suivants :
# apt-get install tetex-extra gv latex2html
Apprendre LaTeX
Il faut commencer par apprendre la syntaxe de LaTeX. Nous vous proposons quelques liens utiles :
Le texte dune formation VIA sur LaTeX (http://www.via.ecp.fr/~o/2000/presentation_LaTeX/) et un aide mmoire
(http://www.via.ecp.fr/formations/1999-00/aide-memoire-LaTeX.ps),
Le Joli manuel pour LaTeX (http://www.ctan.org/tex-archive/info/JoliManuelPourLaTeX.ps.gz),
La FAQ LaTeX (http://www.grappa.univ-lille3.fr/FAQ-LaTeX/index.php) en franais.
Ecrire le chier source
Maintenant que vous matrisez la syntaxe, vous pouvez crire les sources dans un chier texte auquel vous donnerez
lextension .tex. Nous vous conseillons dutiliser gVim pour avoir la coloration syntaxique ; a vous aidera beaucoup
reprer les fautes de syntaxe !
Compiler
Une fois que le chier source (par exemple rapport.tex) est crit, il faut le compiler deux fois :
% latex rapport.tex
% latex rapport.tex
Visualiser
Le rsultat de la compilation est un chier rapport.dvi que vous pouvez visualiser avec le programme xdvi :
% xdvi rapport.dvi &
278
Annexe J. LaTeX
Convertir en PostScript et visualiser
Vous pouvez ensuite le convertir au format PostScript (extension .ps) :
% dvips -o rapport.ps rapport.dvi
et le visualiser avec le programme GhostView :
% gv rapport.ps &
Convertir en PDF et visualiser
Vous pouvez galement le convertir du format DVI au format PDF, condition quil ait dans ses enttes (pour avoir une
police lisible et des liens cliquables) les lignes suivantes :
\usepackage{times}
\usepackage{color}
\usepackage[ps2pdf,colorlinks=true,linkcolor=webred]{hyperref}
\definecolor{webred}{rgb}{0.5,0,0}
Vous pouvez alors faire la conversion du format DVI au format PDF :
% dvipdf rapport.dvi rapport.pdf
Visualisez le chier PDF :
% xpdf rapport.pdf &
Convertir en HTML
Vous pouvez compiler les sources LaTeX pour avoir directement du HTML :
% latex2html -local_icons -split=3 rapport.tex
Le document au format HTML est alors disponible dans le sous-rpertoire rapport/, la page contenant le titre et lindex
ayant pour nom rapport.html. Loption -split=3 dit latex2html de changer de page HTML chaque \section{}.
Convertir de Word Latex
Deux petits programmes permettent de convertir un chier Word en Latex (ou en texte brut). Chacun a son originalit :
word2x (qui se trouve dans le package du mme nom) produit un chier LaTeX complet, prt tre compil. La
commande est :
% word2x -f latex fichier.doc fichier.tex
catdoc (qui se trouve dans le package du mme nom) produit le texte avec les balises LaTaX sans les enttes. La
commande est :
% catdoc -f tex fichier.doc > fichier.tex
279
Annexe J. LaTeX
Faire des schmas pour LaTeX
Dia (http://www.lysator.liu.se/~alla/dia/) est un programme qui permet de faire facilement des schmas pour LaTeX ou
pour dautres applications. Pour linstaller :
# apt-get install dia-gnome
Figure J-1. Dia
Pour inclure des images dans un document LaTeX, il faut un chier au format PostScript encapsul (extension .eps).
Cette fonction est disponible avec un clic droit sur la fentre de travail de Dia, puis Exporter ; ou en ligne de commande :
% dia -e figure.eps figure.dia
280
Annexe K. Utiliser GnomeMeeting
GnomeMeeting (http://www.gnomemeeting.org/) est lquivalent pour Linux de NetMeeting de Microsoft. Les deux
logiciels permettent de se tlphoner ou de faire de la vido confrence via Internet deux ou plusieurs condition de
disposer dune bonne connexion Internet de type ADSL. Ils suivent tous les deux la norme H323, ce qui permet dutiliser
GnomeMeeting alors que la personne distante utilise Netmeeting !
Installer et congurer GnomeMeeting
Tout dabord, il faut utiliser les drivers ALSA pour la carte son car ils supportent le full-duplex, alors que les drivers OSS le
supportent rarement. Reportez vous aux chapitres Conguration du noyau Linux et Compiler le noyau pour les instructions
concernant les pilotes de carte son.
Note : Je nai personnellement utilis Gnomeeting quavec un micro, sans Webcam. Si vous voulez faire de la vido
confrence, il faut avoir une Webcam et avoir compil les bons modules Video 4 Linux du noyau.
Installez le package de GnomeMeeting :
# apt-get install gnomemeeting
Lancez GnomeMeeting avec la commande du mme nom.
Figure K-1. GnomeMeeting
Mthode Woody
Cliquez sur le bouton Paramtres pour congurer GnomeMeeting. Vous pouvez entrer vos nom et prnom dans la section
User Settings (ces informations seront prsentes votre interlocuteur avant quil dcroche), et, si vous utilisez une
Webcam, rglez ce quil faut dans la section Device Settings. Une fois que tout est bien rgl, cliquez sur Valider.
Mthode Sid
Un assistant vous permet de congurer les principaux paramres de Gnomemeeting.
281
Annexe K. Utiliser GnomeMeeting
Rgler le mixer
Ensuite, rglez les volumes du mixer avec aumix : vriez que les canaux Vol, Pcm, Mic et IGain sont un niveau normal.
Utiliser GnomeMeeting deux
Cest trs simple :
en Woody, tapez ladresse IP ou le nom DNS de lordinateur de votre interlocuteur dans le champ Host et cliquez sur
Connect ;
en Sid, tapez ladresse IP ou le nom DNS de lordinateur de votre interlocuteur dans la case du haut aprs callto:// et
cliquez sur la prise.
Par contre, si cest votre interlocuteur qui vous appelle, vous aurez un pop-up qui vous prsentera le nom de la personne
qui vous appelle et qui vous proposera de dcrocher.
Figure K-2. Pop-up pour les appels entrants
Ds que votre interlocuteur dcroche, la conversation peut commener. Ajustez les volumes du mixer et de vos
hauts-parleurs pour bien entendre votre interlocuteur. Si vous tes gns par la dtection automatique du silence (qui
permet de nenvoyer aucune donnes quand la personne ne parle pas), cliquez sur le petit bouton reprsentant lcran dun
oscilloscope.
Utiliser GnomeMeeting plusieurs
La norme H323 a galement prvu de pouvoir faire des confrences audio et vido plusieurs. Pour cela, il faut installer un
serveur de confrences H323 et demander vos interlocuteurs de sy connecter et dentrer dans la mme chatroom que
vous.
Installer et laner le serveur de confrences
Installez le package contenant le serveur
# apt-get install openmcu
Lanez le serveur :
% openmcu -n -v
Quand vous voulez arrter le serveur, tapez q puis Entre.
Se connecter au serveur
Une fois que le serveur est lan, les interlocuteurs sy connectent et doivent se retrouver dans la mme chatroom (les
chatrooms se crent automatiquement sur le serveur ds que le premier interlocuteur demande y entrer). Par exemple,
282
Annexe K. Utiliser GnomeMeeting
pour se connecter au serveur dont le nom DNS est serveur.exemple.org et entrer dans la chatroom debian, il faut taper dans
le champ Host de GnomeMeeting :
debian@serveur.exemple.org
Note : Les utilisateurs qui ne prcisent pas de chatroom sont mis dans la chatroom par dfaut room101. Les
utilisateurs de Netmeeting ne peuvent pas prciser de chatroom.
283
Annexe L. Crer des CD Debian
Si nous avons russi faire de vous un utilisateur Debian convaincu, vous aurez srement envie de rpendre la foi autour
de vous en gravant des CDs Debian pour des amis ! Pour avoir limage ISO dun CD Debian prte tre grave, il y a deux
mthodes :
tlcharger limage ISO depuis un miroir qui les propose en tlchargement, mais ils sont peu nombreux et souvent
saturs ;
utiliser le programme jigdo (http://home.in.tum.de/~atterer/jigdo/) pour crer une image ISO depuis nimporte quel
miroir Debian : jigdo tlcharge depuis le miroir tous les chiers ncessaires pour raliser le CD et les assemble pour
crer limage ISO.
Cest la deuxime mthode qui est explique ci-dessous.
Installer jigdo
Mthode Woody
Jigdo est un programme relativement rcent, et la version de la Woody est trop vieille et nest plus supporte. Il faut donc
installer le package jigdo-le de la testing. Pour cela, allez sur la page web du package
(http://packages.debian.org/testing/utils/jigdo-le.html), cliquez sur le bouton Go to download page et rcuprez le
package depuis lun des nombreux miroirs proposs.
Installez le package :
# dpkg -i jigdo-file_version_i386.deb
Mthode Sid
Installez simplement le package de jigdo :
# apt-get install jigdo-file
Choisir le chier jigdo
A chaque CD correspond un chier jigdo qui dcrit son contenu et permet jigdo de tlcharger les bons chiers. Sur la
page consacre jigdo (http://www.fr.debian.org/CD/jigdo-cd/) du site ofciel Debian, vous trouverez les URLs des
chiers jigdo correspondant aux CDs (ou mme aux DVDs) que vous voulez graver (Debian stable, testing ou unstable).
Lancer jigdo
Lancez le programme jigdo-lite avec en paramtre lURL du chier jigdo du CD que vous voulez crer. Par exemple, pour
crer le premier CD de la woody dans sa version non-US en tlchargeant le chier jigdo depuis le miroir amricain :
% jigdo-lite http://us.cdimage.debian.org/jigdo-area/current/jigdo/i386/woody-i386-1_NONUS.jigdo
Il va alors tlcharger le chier jigdo. Ensuite, il vous demande si vous avez une version moins rcente du CD que vous
voulez crer ; en effet, jigdo est capable de travailler par diffrence avec un autre CD et ne tlcharge alors que les chiers
qui ont chang. Si vous avez un tel CD, montez-le et indiquez-lui le point de montage.
284
Annexe L. Crer des CD Debian
Ensuite, il vous demande ladresse du miroir Debian que vous voulez utiliser. Entrez ladresse du miroir Debian le plus
rapide pour vous ; par exemple, sil sagit du miroir Debian ofciel franais, tapez ftp://ftp.fr.debian.org/debian/ .
Il va ensuite tlcharger un chier template (dans notre exemple woody-i386-1.template), puis tous les chiers
ncessaires la cration du CD. Une fois quil a ni de crer limage, il vrie la somme MD5 du CD et vous annonce, si
la somme est bonne, que le CD est OK !
Graver le CD
Il ne vous reste plus qu graver limage ISO sur un CD vierge ou un CD-RW, en suivant les instructions du chapitre
chapitre Graver en console ou du chapitre Graver des CDs audio et des CDs de donnes.
285
Annexe M. Outils Windows pour Linuxiens
De plus en plus de programmes Linux sont ports sous Windows... ce qui permet aux Linuxiens de retrouver leurs logiciels
favoris quand ils sont sous Windows ! Certains programmes ont aussi t dvelopps spcialement pour permettre une
interoprabilit Linux/Windows.
GNUwin
Le projet GNUwin (http://gnuwin.ep.ch/apps/fr/index.html) regroupe un grand nombre de logiciels libres fonctionnant
sous Windows. Dans la liste des logiciels proposs, nous utilisons notamment PuTTY :
PuTTY
PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) est un client Telnet et SSH.
Figure M-1. PuTTY
Cygwin
Cygwin (http://www.cygwin.com) est un environnement Unix complet pour Windows. Il permet de se servir de trs
nombreux programmes Unix tel quun serveur graphique, un certain nombre dapplications graphiques et la plupart des
outils en ligne de commande (comme cvs par exemple).
Son installation est explique au chapitre Faire de lexport display.
286
Annexe M. Outils Windows pour Linuxiens
Figure M-2. Cygwin
WinSCP
WinSCP (http://winscp.sourceforge.net/eng/) est un client SFTP pour Windows sous licence GPL. Il marche exactement
comme un client FTP, mais il utilise le protocole SSH pour scuriser les transferts de mots de passes et de chiers.
Figure M-3. WinSCP
Explore2fs
Explore2fs (http://uranus.it.swin.edu.au/~jn/linux/explore2fs.htm) est un programme GPL qui permet de lire ses partitions
287
Annexe M. Outils Windows pour Linuxiens
Linux de type Ext2 et/ou Ext3 depuis Windows. Attention, pour se servir de ce programme sous Windows NT / 2000 / XP
Pro, il faut avoir les privilges dadministrateur.
Figure M-4. Explore2fs
288
Annexe N. Firewalling et partage de connexion Internet
Important : Cette partie require des connaissances de base en rseau. Lien
(http://www.via.ecp.fr/~bbp/formation-reseau/partie1.html#transmission) vers une formation VIA ce sujet.
Le partage de connexion Internet se fait sous Linux grce aux fonctions de rewalling du noyau... do le regroupement
des explications sur le rewalling et sur le partage de connexion Internet dans ce chapitre !
Note : Pour linstant, ce chapitre nest adapt que pour la Woody, mais pas encore pour la Sid... jespre que a
viendra vite ! [TODO : mettre jour]
Le partage de connexion Internet
Lide est dajouter votre ordinateur sous Linux la fonction de serveur NAT, qui va vous permettre de partager votre
connexion avec dautres machines. Votre ordinateur sous Linux aura deux interfaces rseau :
une interface connecte Internet via une connexion modem par exemple : cette interface aura une adresse IP publique
(interface eth0 sur les schmas) ;
une interface connecte votre rseau local dot dun adressage priv : cette interface servira de passerelle pour les
ordinateurs du rseau local (interface eth1 sur les schmas).
Figure N-1. Schma dun NAT avec 2 machines
289
Annexe N. Firewalling et partage de connexion Internet
Figure N-2. Schma dun NAT avec plusieurs machines
Note : FAI = Fournisseur dAccs Internet.
Avec cette conguration, seul le serveur NAT est directement joignable depuis Internet ; les ordinateurs du rseau local ne
sont a priori pas joignables directement depuis Internet... sauf si on fait du port forwarding. Par exemple, pour que le
serveur Web qui tourne sur le port 80 de la machine dont ladresse IP est 192.168.0.3 soit joignable de lextrieur via le
serveur NAT, il faut forwarder les requtes TCP arrivant sur le port 80 du serveur NAT vers la machine dont lIP est
192.168.0.3... et la rponse la requte sera alors correctement forwarde vers Internet au client qui a initi la requte.
Note : Pour amliorer les temps de rponses des requtes DNS, il pourra tre intressant de mettre en place un
serveur DNS de type indpendant sur le serveur NAT, comme expliqu au chapitre Monter un serveur DNS, et
dindiquer dans la conguration rseau des ordinateurs du rseau local ladresse 192.168.0.1 comme premier serveur
DNS.
Etablir des rgles de rewalling et/ou de partage de connexion
Conguration du noyau
Le noyau doit avoir les fonctions de rewalling actives. Si vous ne les avez pas compiles dans votre noyau actuel, vous
devrez recompiler le noyau en vous rfrant aux chapitres Conguration du noyau Linux et Compiler le noyau.
Apprendre la syntaxe iptables
La sytaxe diptables est trs complte... et je nai malheureusement pas lintention de lexpliquer dans cette annexe. Je lai
personnellement apprise dans le Hors Srie Linux Magazine n

12 ddi aux rewalls. Si vous matrisez langlais, vous


pouvez vous attaquer au Tutoriel iptables (http://iptables-tutorial.frozentux.net/iptables-tutorial.html).
Congurer iptables
Le package iptables, qui contient le programme du mme nom qui permet de congurer les fonctions de rewalling des
noyaux Linux 2.4, est normalement install par dfaut.
290
Annexe N. Firewalling et partage de connexion Internet
Nous allons mettre en place deux scripts laide de mes chiers dexemple :
le script /etc/network/if-pre-up.d/iptables-start.sh qui dmarre les rgles de ltrage :
# cp ~/config/iptables-start.sh /etc/network/if-pre-up.d/
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/iptables-start.sh
# cp iptables-start.sh /etc/network/if-pre-up.d/
le script /etc/network/if-post-down.d/iptables-stop.sh qui arrte le ltrage :
# cp ~/config/iptables-stop.sh /etc/network/if-post-down.d/
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/iptables-stop.sh
# cp iptables-stop.sh /etc/network/if-post-down.d/
Noubliez pas de rendre ces scripts excutables :
# chmod 755 /etc/network/if-pre-up.d/iptables-start.sh
# chmod 755 /etc/network/if-post-down.d/iptables-stop.sh
Ces scripts vous permettront de dmarrer et darrter le ltrage iptables en les excutant " la main" en tant que root. Ils
vous permettront galement dautomatiser le dmarrage du ltrage juste avant de congurer votre interface rseau ; et
larrt du ltrage juste aprs avoir dcongur votre interface rseau.
Pour automatiser le dmarrage et larrt des rgles iptables, modiez le chier /etc/network/interfaces en rajoutant
deux lignes qui appellent les scripts dans la section qui concerne linterface de loopback, comme dans lexemple
ci-dessous :
# /etc/network/interfaces
# Fichier de configuration dexemple des interfaces rseau
# avec rgles de filtrage "iptables"
# Formation Debian GNU/Linux par Alexis de Lattre
# http://www.via.ecp.fr/~alexis/formation-linux/
# Plus dinformations dans "man interfaces"
# Linterface "loopback"
auto lo
iface lo inet loopback
# Dmarrage et arrt automatique des rgles "iptables"
pre-up /etc/network/if-pre-up.d/iptables-start.sh
post-down /etc/network/if-post-down.d/iptables-stop.sh
# Linterface "eth0" connecte Internet (configuration par DHCP)
auto eth0
iface eth0 inet dhcp
291
Annexe N. Firewalling et partage de connexion Internet
Personnaliser les rgles de ltrage
Personnalisez mon script dexemple /etc/network/if-pre-up.d/iptables-start.sh qui contient les rgles de
ltrage :
#!/bin/sh
# /etc/network/if-pre-up.d/iptables-start.sh
# Script qui dmarre les rgles de filtrage "iptables"
# Formation Debian GNU/Linux par Alexis de Lattre
# http://www.via.ecp.fr/~alexis/formation-linux/
# REMISE ZERO des rgles de filtrage
iptables -F
iptables -t nat -F
# DEBUT des rgles de FIREWALLING
# DEBUT des politiques par dfaut
# Je veux que les connexions entrantes soient bloques par dfaut
iptables -P INPUT DROP
# Je veux que les connexions destines tre forwardes
# soient acceptes par dfaut
iptables -P FORWARD ACCEPT
# Je veux que les connexions sortantes soient acceptes par dfaut
iptables -P OUTPUT ACCEPT
# FIN des politiques par dfaut
# Jaccepte les packets entrants relatifs des connexions dj tablies
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# Jautorise les connexions TCP entrantes sur les ports 20 et 21
# (pour que mon serveur FTP soit joignable de lextrieur)
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
# Jautorise les connexions TCP entrantes sur le port 22
# (pour que mon serveur SSH soit joignable de lextrieur)
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# Jautorise les connexions TCP entrantes sur le port 25
# (pour que mon serveur de mail soit joignable de lextrieur)
iptables -A INPUT -p tcp --dport 25 -j ACCEPT
# Jautorise les connexions TCP et UDP entrantes sur le port 53
# (pour que mon serveur DNS soit joignable de lextrieur)
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
# Jautorise les connexions TCP entrantes sur le port 80
# (pour que mon serveur HTTP soit joignable de lextrieur)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
# Jautorise les connexions TCP et UDP entrantes sur le port 139
# mais uniquement sur linterface "eth1"
# (pour que mon serveur Samba soit joignable depuis mon LAN seulement)
292
Annexe N. Firewalling et partage de connexion Internet
iptables -A INPUT -p tcp --dport 139 -i eth1 -j ACCEPT
iptables -A INPUT -p udp --dport 139 -i eth1 -j ACCEPT
# Jautorise les connexions UDP entrantes sur le port 177
# (pour que des clients puissent se connecter mon systme par XDMCP)
iptables -A INPUT -p udp --dport 177 -j ACCEPT
# Jautorise les connexions TCP entrantes sur le port 6001
# (pour que je puisse me connecter par XDMCP une machine distante)
iptables -A INPUT -p tcp --dport 6001 -j ACCEPT
# Jautorise les connexions TCP entrantes sur le port 2401
# (pour permettre laccs au CVS des utilisateurs qui nont
# pas de compte sur le systme via le "pserver")
iptables -A INPUT -p tcp --dport 2401 -j ACCEPT
# Jautorise les flux UDP entrants sur le port 1234
# (pour pourvoir reevoir les flux VideoLAN)
iptables -A INPUT -p udp --dport 1234 -j ACCEPT
# Jautorise les flux UDP envoys sur ladresse multicast 224.2.127.254
# et dont le port destination est 9875 (pour reevoir les annonces SAP)
iptables -A INPUT -p udp -d 224.2.127.254 --dport 9875 -j ACCEPT
# Jautorise les flux TCP et UDP entrants ncessaires au fonctionnement
# de GnomeMeeting
iptables -A INPUT -p tcp --dport 30000:33000 -j ACCEPT
iptables -A INPUT -p tcp --dport 1720 -j ACCEPT
iptables -A INPUT -p udp --dport 5000:5006 -j ACCEPT
# Jaccepte le protocole ICMP (i.e. le "ping")
iptables -A INPUT -p icmp -j ACCEPT
# Jaccepte le protocole IGMP (pour le multicast)
iptables -A INPUT -p igmp -j ACCEPT
# Pas de filtrage sur linterface de "loopback"
iptables -A INPUT -i lo -j ACCEPT
# La rgle par dfaut pour la chaine INPUT devient "REJECT"
# (il nest pas possible de mettre REJECT comme politique par dfaut)
iptables -A INPUT -j REJECT
# FIN des rgles de FIREWALLING
# DEBUT des rgles pour le PARTAGE DE CONNEXION (i.e. le NAT)
# Je veux que mon systme fasse office de "serveur NAT"
# (Remplaez "eth0" par votre interface connecte Internet)
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# FIN des rgles pour le PARTAGE DE CONNEXION (i.e. le NAT)
# DEBUT des rgles de PORT FORWARDING
# Je veux que les requtes TCP reues sur le port 80 soient forwardes
# la machine dont lIP est 192.168.0.3 sur son port 80
293
Annexe N. Firewalling et partage de connexion Internet
# (la rponse la requte sera forwarde au client)
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 192.168.0.3:80
# FIN des rgles de PORT FORWARDING
Congurer le rseau pour le partage de connexion
Si vous dsirez mettre en place un partage de connexion Internet, il faut commencer par bien congurer les interfaces
rseau du serveur NAT et ne pas oublier dactiver la fonction de forwarding IP au niveau du noyau.
Par exemple, pour un serveur NAT dont linterface rseau connecte au rseau extrieur est eth0 avec conguration par
DHCP et dont linterface connecte au rseau local est eth1, le chier /etc/network/interfaces doit ressembler
lexemple suivant :
# /etc/network/interfaces
# Fichier de configuration dexemple des interfaces rseau
# pour faire un serveur NAT
# Formation Debian GNU/Linux par Alexis de Lattre
# http://www.via.ecp.fr/~alexis/formation-linux/
# Plus dinformations dans "man interfaces"
# Linterface "loopback"
auto lo
iface lo inet loopback
# Dmarrage et arrt automatique des rgles "iptables"
pre-up /etc/network/if-pre-up.d/iptables-start.sh
post-down /etc/network/if-post-down.d/iptables-stop.sh
# Linterface "eth0" connecte Internet (configuration par DHCP)
auto eth0
iface eth0 inet dhcp
# Linterface "eth1" connecte au rseau local (IP prive fixe)
auto eth1
iface eth1 inet static
address 192.168.0.1
netmask 255.255.255.0
broadcast 192.168.0.255
# Activation de la fonction de forwarding IP au niveau du noyau
up echo "1" > /proc/sys/net/ipv4/ip_forward
Dmarrer le rewalling et/ou le partage de connexion
Une fois que vous avez bien congur le chier /etc/network/interfaces et personnalis le script
/etc/network/if-pre-up.d/iptables-start.sh selon vos besoins, demandez au systme de recongurer le rseau
:
# /etc/init.d/networking restart
294
Annexe N. Firewalling et partage de connexion Internet
Afcher la conguration iptables
Pour afcher la conguration iptables actuelle, tapez :
pour la table lter :
# iptables -v -L
pour la table nat :
# iptables -v -L -t nat
295
Annexe O. Monter un bridge (rewallant)
Important : Cette partie require des connaissances de base en rseau Ethernet. Lien
(http://www.via.ecp.fr/~bbp/formation-reseau/partie1.html#transmission) vers une formation VIA ce sujet.
Lide
Lide est dajouter votre ordinateur sous Linux la fonction de switch Ethernet aussi appele bridge. Nous verrons
galement comment cette fonction de bridge peut tre perfectionne en bridge rewallant.
Pour ajouter votre ordinateur sous Linux cette fonction de bridge, il lui faut au minimum deux cartes rseau. Chaque
carte rseau devient alors lquivalent dun port du switch. Le bridge fonctionnera comme un switch Ethernet classique : il
apprend tout seul les adresses MAC qui sont derrire ses interfaces rseau et aiguille les paquets Ethernet comme un
switch. Par contre, contrairement un switch classique, il ne croise pas la connexion rseau : il faudra donc relier le bridge
aux autres ordinateurs par des cbles croiss, et aux autres switchs par des cbles droits (les cbles "normaux" sont des
cbles droits).
Figure O-1. Schma dun bridge
Le Montage
Recompilation du noyau
Patcher le noyau pour faire un bridge rewallant
Si vous voulez faire un bridge rewallant, il faut commener par "patcher", cest dire "modier par diffrence" les
sources du noyau. En effet, avec le code actuel du noyau Linux standard, les fonctions de rewalling ne marchent pas
quand le systme fonctionne en bridge. Les patchs que je te propose dappliquer vont modier les sources du noyau pour
pouvoir conserver les fonctions de rewalling quand le systme fonctionne en bridge.
Je suppose que vous avez suivi cette formation depuis le dbut et que vous avez donc les sources du noyau 2.4.22 dans le
rpertoire /usr/src/linux/. Nous allons appliquer le patch ebtables-brnf-version_vs_2.4.22.diff.
296
Annexe O. Monter un bridge (rewallant)
Tlchargez la dernire version du patch sous forme de chier compress depuis la page Ethernet bridge tables: File List
(http://sourceforge.net/project/showles.php?group_id=39571) sur Sourceforge et dplacez-le dans le rpertoire
/usr/src/.
Dcompressez-le et appliquez-le sur les sources du noyau :
% cd /usr/src/
% gunzip ebtables-brnf-version_vs_2.4.22.diff.gz
% cd linux/
% patch -p1 < ../ebtables-brnf-version_vs_2.4.22.diff
Congurer le noyau
Suivez les instructions du chapitre Conguration du noyau Linux et, dans le menu Networking options, mettez en module
loption 802.1d Ethernet Bridging.
Compiler et installer le noyau
Suivez les instructions du chapitre Compiler le noyau avec seulement une petite diffrence au niveau du chier
/etc/modutils/reseau : il faut ajouter un alias pour linterface bridge br0 :
alias eth0 nom_du_module_de_la_carte_rseau_n

1
alias eth1 nom_du_module_de_la_carte_rseau_n

2
alias eth2 nom_du_module_de_la_carte_rseau_n

3
alias br0 bridge
Dtection des multiples cartes rseau
La premire chose faire est de mettre les cartes rseaux dans le futur bridge et de sassurer quil les dtecte bien au
dmarrage et leur donne des IRQs et des ports I/O diffrents. Pour le voir, il suft de regarder les messages au dmarrage.
On les obtient en tapant dmesg.
Par exemple, pour une machine avec deux cartes rseau 3Com identiques, les lignes suivantes apparassent au dmarrage :
00:09.0: 3Com PCI 3c905C Tornado at 0xe000. Vers LK1.1.16
00:0b.0: 3Com PCI 3c905C Tornado at 0xe400. Vers LK1.1.16
Si a ne marche pas du premier coup... dommage. Munissez-vous des drivers des cartes, en particulier des programmes
(souvent sous DOS) permettant de congurer lIRQ et le port I/O des cartes. Dbrouillez-vous comme vous voulez (sil le
faut en mettant une carte puis lautre), mais il faut des IRQ et des port I/O diffrents pour chaque carte. Si vous narrivez
toujours pas voir les deux cartes en mme temps (typiquement un des deux programmes de conguration ne voit pas la
carte), essayez dchanger les deux cartes sur la carte mre.
Conguration du bridge
Installer le programme de gestion des bridges
# apt-get install bridge-utils
297
Annexe O. Monter un bridge (rewallant)
Lancer le bridge au dmarrage
Tout dabord, il faut voir quelle adresse MAC va prendre linterface du bridge, dsigne par br0. Cest trs important pour
pouvoir utiliser le DHCP et aussi pour ne pas perturber les outils de surveillance de certains rseau (comme celui de VIA).
Il faut savoir que le bridge choisi son adresse MAC parmi les adresses MAC des diffrentes interfaces rseau du bridge et
quil prend la plus petite dentre-elles. Pour tre plus prcis, il lit les adresses MAC des interfaces rseau (eth0, eth1,
eth2,...) de gauche droite et note la premire diffrence : il les compare et donne au bridge ladresse MAC o la premire
diffrence est la plus faible. Attention, les adresses MAC sont notes en hexadcimal, donc les chiffres sont plus faibles
que les lettres.
Par exemple, sur un bridge avec deux cartes rseau :
Adresse MAC deth0 : 00:01:02:1E:9B:8B
Adresse MAC deth1 : 00:01:02:AC:CA:D4
On lit de gauche droite, et on note la premire diffrence : elle intervient au niveau du septime caractre o on a 1 pour
eth0 et A pour eth1. Comme les nombres sont plus faibles que les lettres, cest eth0 qui a la MAC la plus faible. Donc le
bridge prendra la MAC deth0.
Maintenant que lon sait quelle MAC prend le bridge, il faut demander son administrateur rseau de modier le DHCP si
ncessaire (cest le cas du rseau VIA...).
Nous allons maintenant modier le chier de conguration des interfaces rseau /etc/network/interfaces en
utilisant mon chier de conguration dexemple et en le personnalisant :
# mv /etc/network/interfaces /etc/network/interfaces.old
# cp ~/config/interfaces-bridge /etc/network/interfaces
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/interfaces-bridge
# mv /etc/network/interfaces /etc/network/interfaces.old
# mv interfaces-bridge /etc/network/interfaces
Personnalisez le nouveau chier /etc/network/interfaces ; les lignes de commentaire doivent vous permettre de
comprendre chaque paramtre :
# /etc/network/interfaces
# Fichier de configuration dexemple des interfaces rseau
# pour faire un bridge
# Formation Debian GNU/Linux par Alexis de Lattre
# http://www.via.ecp.fr/~alexis/formation-linux/
# Plus dinformations dans "man interfaces"
# et dans "/usr/share/doc/bridge-utils/README.Debian.gz"
# Dabord linterface "loopback"
auto lo
iface lo inet loopback
# Ensuite linterface bridge "br0" qui se configure par DHCP
auto br0
iface br0 inet dhcp
# Liste des interfaces qui participent au bridge
# ATTENTION :
# Il faut mettre linterface dont la MAC est la plus petite dabord !
# Sinon, cela peut perturber les outils de surveillance du rseau.
bridge_ports eth0 eth1 eth2
# Je dsactive le Spanning tree
298
Annexe O. Monter un bridge (rewallant)
bridge_stp off
# Temps en secondes entre "learning state" et "forwarding state"
bridge_fd 2
# Temps maximum en secondes o le script de lancement du bridge
# attendra lors du dmarrage que le bridge passe en mode "forwarding
# state" pour passer la main et laisser les autres services dmarrer.
bridge_maxwait 0
Relancez la conguration des interfaces rseau :
# /etc/init.d/networking restart
Reconfiguring network interfaces: done.
Pendant ce redmarrage, regardez votre console de log (si vous avez suivi la formation depuis le dbut, cest la huitime
console) ou faites apparatre la n du syslog en direct avec la commande :
% tail -f /varlog/syslog
Vous verrez alors 3 tapes dans la lancement du bridge :
1. listening : il regarde sur les interfaces rseau physiques les packets qui arrivent,
2. learning : il en dduit la conguration du rseau tout seul, notamment quelles adresses MAC sont derrire quels ports,
3. forwarding : le bridge se met fonctionner, le rseau marche enn !
299
Annexe P. Monter un proxy-ARP
Note : Annexe crite partir dune premire version (http://robert.cheramy.net/documentation/proxyarp/) de Robert
Cheramy.
Important : Cette partie requiert des connaissances de base en rseau Ethernet et IP. Lien
(http://www.via.ecp.fr/~bbp/formation-reseau/partie1.html#transmission) vers une formation VIA ce sujet.
Lide
Le proxy-ARP rejoint le principe du bridge (expliqu dans lannexe prcdente Monter un bridge (rewallant)) dans le
sens o il permet de connecter plusieurs machines au rseau avec une machine centrale sous Linux. Par contre,
contrairement au bridge qui agit au niveau Ethernet (i.e. layer 2), le proxy-ARP agit au niveau IP (i.e. layer 3). Cette
annexe va donc vous apprendre faire des tables de routage sous Linux !
Figure P-1. Schma dun proxy-ARP
Le principe de fonctionnement
La thorie
Le proxy-ARP marche un peu comme un routeur :
points communs : il possde une table de routage et modie les headers du niveau 2 en regardant les headers du niveau 3
;
diffrences : les clients qui sont derrire le proxy-ARP sont congurs normalement, comme si le proxy-ARP nexistait
pas.
300
Annexe P. Monter un proxy-ARP
En pratique
Communication de la machine extrieur1 vers la machine client1 :
1. La machine extrieur1 met une requte ARP :
"Qui est client1 ?" [ARP who-has client1]
2. Le proxy-arp rpond la place de client1 :
"Je suis client1, jattends tes paquets" [ARP client1 is-at MAC_de_proxy-arp].
3. Dsormais, la machine extrieur1 va transmettre tous ses paquets destination de client1 proxy-arp. Proxy-arp se
charge ensuite de les retransmettre client1 en mettant sa MAC comme MAC source.
Communication de client1 vers extrieur1 :
1. La machine client1 met une requte ARP :
"Qui est extrieur1 ?" [ARP who-has extrieur1]
2. Le proxy-arp rpond la place d extrieur1 :
"Je suis extrieur1, jattends tes paquets" [ARP extrieur1 is-at MAC_de_proxy-arp].
3. Dsormais, la machine client1 va transmettre tous ses paquets destination d extrieur1 proxy-arp. Proxy-arp se
charge ensuite de les retransmettre extrieur1 en mettant sa MAC comme MAC source.
Montage
Prliminaires
Tout dabord, la machine qui sert de proxy-ARP doit avoir plusieurs cartes rseau (autant que de machines derrire le
proxy-ARP plus une carte rseau connecter vers le rseau extrieur). Les modules correspondant ces multiples cartes
rseau doivent tre compils et installs. Les alias faisant la correspondance entre les interfaces rseau et les noms des
modules charger doivent tre crits dans un chier du type /etc/modutils/reseau contenant :
alias eth0 nom_du_module_de_la_carte_rseau_n

1
alias eth1 nom_du_module_de_la_carte_rseau_n

2
alias eth2 nom_du_module_de_la_carte_rseau_n

3
Noubliez pas dexcuter la commande update-modules aprs toute modication dun chier dans le rpertoire
/etc/modutils/.
Vriez que toutes vos cartes rseau sont bien reconnues au dmarrage.
Conguration du rseau du proxy-ARP
Pour plus de prcisions concernant ce qui suit, je vous invite consulter man interfaces et man route.
Nous allons maintenant modier le chier de conguration des interfaces rseau /etc/network/interfaces en
utilisant mon chier de conguration dexemple et en le personnalisant :
# mv /etc/network/interfaces /etc/network/interfaces.old
301
Annexe P. Monter un proxy-ARP
# cp ~/config/interfaces-proxy-arp /etc/network/interfaces
ou :
% wget http://www.via.ecp.fr/~alexis/formation-linux/config/interfaces-proxy-arp
# mv /etc/network/interfaces /etc/network/interfaces.old
# mv interfaces-proxy-arp /etc/network/interfaces
Personnalisez le nouveau chier /etc/network/interfaces ; les lignes de commentaire doivent vous permettre de
comprendre chaque paramtre :
# /etc/network/interfaces
# Fichier de configuration dexemple des interfaces rseau
# pour faire un Proxy-ARP
# Formation Debian GNU/Linux par Alexis de Lattre
# http://www.via.ecp.fr/~alexis/formation-linux/
# Plus dinformations dans "man interfaces" et "man route"
# Linterface de loopback
auto lo
iface lo inet loopback
# Configuration de linterface eth0, connecte au rseau extrieur
auto eth0
iface eth0 inet static
# Adresse IP du proxy-arp :
address 138.195.152.12
# Masque de sous-rseau du rseau extrieur :
netmask 255.255.255.128
# Adresse de broadcast du rseau extrieur :
broadcast 138.195.152.127
# Adresse de la passerelle du rseau extrieur :
gateway 138.195.152.1
# Configuration de linterface eth1, connecte client1
auto eth1
iface eth1 inet static
# Adresse IP du proxy-arp :
address 138.195.152.12
# Masque du sous-rseau du rseau extrieur :
netmask 255.255.255.128
# Adresse de broadcast du rseau extrieur :
broadcast 138.195.152.127
# Route qui dit que client1 est derrire eth1 :
up route add 138.195.152.42 dev eth1
# Suppression dune route ajoute tort par la ligne prcdente
# 138.195.144.0 = adresse du rseau extrieur
# 255.255.240.0 = masque de sous-rseau du rseau extrieur
up route del -net 138.195.152.0 netmask 255.255.255.128 dev eth1
# Configuration de linterface eth2, connecte client2
auto eth2
iface eth2 inet static
# Adresse IP du proxy-arp :
address 138.195.152.12
# Masque du sous-rseau du rseau extrieur :
netmask 255.255.255.128
302
Annexe P. Monter un proxy-ARP
# Adresse de broadcast du rseau extrieur :
broadcast 138.195.152.127
# Route qui dit que client2 est derrire eth2 :
up route add 138.195.152.43 dev eth2
# Suppression dune route ajoute tort par la ligne prcdente
# 138.195.144.0 = adresse du rseau extrieur
# 255.255.240.0 = masque de sous-rseau du rseau extrieur
up route del -net 138.195.152.0 netmask 255.255.255.128 dev eth2
# Activation du "forwarding IP" et du "proxy-arp" au niveau du noyau :
up echo "1" > /proc/sys/net/ipv4/ip_forward
up echo "1" > /proc/sys/net/ipv4/conf/all/proxy_arp
Relancez la conguration des interfaces rseau :
# /etc/init.d/networking restart
Vriez que les changements ont bien t pris en compte :
% ifconfig
Vriez que la table de routage est bonne :
% route -n
Dans lexemple de ce chapitre, la table de routage est la suivante :
Table de routage IP du noyau
Destination Passerelle Genmask Indic Metric Ref Use Iface
138.195.152.42 0.0.0.0 255.255.255.255 UH 0 0 0 eth1
138.195.152.43 0.0.0.0 255.255.255.255 UH 0 0 0 eth2
138.195.152.0 0.0.0.0 255.255.255.128 U 0 0 0 eth0
0.0.0.0 138.195.152.1 0.0.0.0 UG 0 0 0 eth0
Conguration du rseau des clients
Congurer un client Linux
La conguration des clients est strictement identique la conguration quils auraient sils ntaient pas derrire le
proxy-ARP. Par contre, il faut dnir leur IP en dur, pas par DHCP, car le broadcast est bloqu par le proxy-ARP.
Si le client est aussi une Debian, ditez le chier /etc/network/interfaces :
# /etc/network/interfaces de client1
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
# Adresse IP de client1 :
address 138.195.152.42
# Masque de sous-rseau du rseau extrieur :
netmask 255.255.255.128
# Adresse de broadcast du rseau extrieur :
broadcast 138.195.152.127
# Adresse de la passerelle du rseau extrieur :
303
Annexe P. Monter un proxy-ARP
gateway 138.195.152.1
Pour que le systme tienne compte des modications :
# /etc/init.d/networking restart
Reconfiguring network interfaces: done.
Congurer un client Windows
La conguration Windows est semblable, si vous avez compris, a devrait aller.
Faire du DHCP relay
Le proxy-ARP bloque le broadcast des clients ; donc si ces derniers font une requte DHCP, elle natteindra pas le rseau
extrieur. Pour pallier ce problme et faire en sorte que les clients puissent tre congurs par DHCP, il faut installer un
relai DHCP sur le proxy-ARP.
Pour cela, installez le package suivant :
# apt-get install dhcp3-relay
Lors de la conguration du package, il vous demande :
1. What DHCP servers should the DHCP relay forward requests to ? Entrez ladresse IP du serveur DHCP du rseau
extrieur.
2. On what network interfaces should the DHCP server listen ? Si toutes les interfaces sont utilises pour faire le
proxy-ARP, comme cest le cas dans cet exemple, laissez le champ vide et validez.
Le chier de conguration /etc/default/dhcp3-relay est alors gnr, et le dmon dhcrelay3 lan. Si vous avez
besoin darrter ou de relancer le dmon, utilisez le script /etc/init.d/dhcp3-relay avec le bon argument.
Vous pouvez maintenant congurer le rseau de client1 et client2 par DHCP.
Astuce
Pensez a rajouter les IP de client1, client2 et proxy-arp dans les /etc/hosts des trois machines ; cest plus pratique pour
travailler quand on est coup du rseau...
304
Annexe Q. Trucs et Astuces
Allumer le verrouillage numrique
Les utilisateurs dun ordinateur xe sont souvent habitus utiliser le pav numrique... mais le NumLock nest jamais
allum par dfaut sous Linux !
en console
Dcommentez les lignes suivantes dans le chier zlogin (ce chier se trouve dans le rpertoire /etc/ sur une Woody et
/etc/zsh/ sur une Sid :
# Pour les ordinateurs avec un pav numrique...
# Active le pav numrique quand on se loggue en console
case "tty" in /dev/tty[1-6]*)-
setleds +num
esac
sous X
Mthode Woody
Tlchargez la version de la Sid du package numlockx sur le site de Debian
(http://packages.debian.org/unstable/x11/numlockx.html) et installez-le avec dpkg :
# dpkg -i numlockx_version_i386.deb
Lors de linstallation du package, il vous demande Enable NumLock automatically ? : rpondez Oui.
Si vous utilisez GDM, il faut ajouter le script de lancement de numlockx au script de lancement de GDM :
# cat /etc/X11/Xsession.d/55numlockx >> /etc/gdm/PreSession/Default
puis redmarrez GDM.
Mthode Sid
Installez simplement le package :
# apt-get install numlockx
Lors de linstallation du package, il vous demande Enable NumLock automatically ? : rpondez Oui.
Si vous utilisez GDM, il faut ajouter le script de lancement de numlockx au script de lancement de GDM. Pour cela, ditez
le chier /etc/gdm/PreSession/Default et importez le contenu du chier /etc/X11/Xsession.d/55numlockx
aprs la premire ligne qui commence par PATH= (commande :r nom_du_chier pour importer un chier sous vim), puis
redmarrez GDM.
305
Annexe Q. Trucs et Astuces
Avoir un beau LILO
Mthode Woody
Pour avoir un beau LILO graphique avec une belle image, comme avec les autres distributions Linux, tlchargez la
dernire version de larchive debian-bootscreen-version.tar.bz2 sur le site debian.newswriter.org
(http://debian.newswriter.org/).
Dcompressez-la :
% tar xvjf debian-bootscreen-version.tar.bz2
Ensuite, copiez le chier contenant limage du LILO graphique dans le rpertoire /boot/ :
# cp debian-bootscreen-version/debian-bootscreen-woody.rle.bmp /boot/
Editez le chier /etc/lilo.conf et remplacez la ligne :
install=/boot/boot-menu.b
par les lignes :
install=/boot/boot-bmp.b
bitmap=/boot/debian-bootscreen-woody.rle.bmp
bmp-colors=10,20
bmp-table=120p,173p,1,15,17
bmp-timer=254p,432p,1,0,0
Mthode Sid
Le package lilo de la Sid inclus les chiers images. Il suft donc de modier le chier de conguration de LILO ; ditez le
chier /etc/lilo.conf et remplacez la ligne :
install=/boot/boot-menu.b
par les lignes :
install=/boot/boot-bmp.b
bitmap=/usr/share/lilo/contrib/sid.bmp
bmp-colors=10,20
bmp-table=120p,173p,1,15,17
bmp-timer=254p,432p,1,0,0
Rcrire sur le MBR
Excutez LILO pour quil crive les changements sur le MBR :
# lilo
Au prochain redmarrage, vous pourrez alors dcouvrir un beau LILO graphique !
306
Annexe Q. Trucs et Astuces
Figure Q-1. LILO graphique (Woody)
Faire du SSH travers un rewall
Cas typique : vous tes dans un entreprise et vous voulez vous connecter par SSH vers un serveur lextrieur du rseau de
lentreprise... mais il y a un rewall entre le rseau interne et Internet !
Avertissement
Lutilisation des techniques dcrites ci-dessous est peut-tre interdite par lentreprise.
Il y a trois possibilits, sachant que seule la dernire est potentiellement ralisable si vous ne pouvez pas modier la
conguration du serveur.
Changer de port
Si le rewall a un port compltement ouvert (le port 80 par exemple), vous pouvez modier la conguration du serveur
pour que son dmon SSH coute sur le port 80 en plus du port 22 (attention, il ne doit pas y avoir de serveur Web qui
coute dj sur le port 80). Pour cela, modiez le chier de conguration /etc/ssh/sshd_config pour quil contienne
les deux lignes suivantes :
Port 22
Port 80
Puis relancez le serveur SSH :
# /etc/init.d/ssh reload
Reloading OpenBSD Secure Shell servers configuration.
Vous pouvez alors lancer votre client SSH en lui prcisant dutiliser le port 80 :
% ssh -p 80 login@nom_DNS_du_serveur
307
Annexe Q. Trucs et Astuces
Monter un tunnel HTTP
Si le rewall surveille le port 80 et vrie que seuls des packets HTTP passent par ce port, alors vous pouvez essayer
dutiliser le programme httptunnel. Ce programme doit tourner sur le client et le serveur. Il encapsule dans une connexion
HTTP nimporte quel type de connexion (pas forcment une connexion SSH). Il permet aussi de faire passer la connexion
par un Proxy. Installez le package sur le client et sur le serveur :
# apt-get install httptunnel
Lancez le serveur httptunnel sur le serveur :
% hts -F localhost:22 8888
Puis lancez le client httptunnel sur le client :
% htc -F 2222 nom_DNS_du_serveur:8888
ou, si vous devez passer par un Proxy proxy.exemple.org qui coute sur le port 8080 :
% htc -F 2222 -P proxy.exemple.org:8080 nom_DNS_du_serveur:8888
Vous pouvez alors lancer votre client SSH :
% ssh -p 2222 login@localhost
Utiliser un proxy HTTPS
Rcuprez le script ssh-https-tunnel :
% wget http://www.snurgle.org/~griffon/ssh-https-tunnel
# mv ssh-https-tunnel /usr/local/bin/
Editez le chier /usr/local/bin/ssh-https-tunnel contenant le programme et rentrez le nom DNS et le port du
proxy du rseau interne dans les variables prvues cet effet :
#### Configuration ####
my $proxy = "proxy.exemple.org";
my $proxy_port = 8080;
Crez (sil nexiste pas dj) un chier ~/.ssh/config contenant :
host nom_DNS_du_serveur
ProxyCommand /usr/local/bin/ssh-https-tunnel %h %p
Port 22
Puis essayez de vous connecter au serveur comme vous le faites normalement :
% ssh login@nom_DNS_du_serveur
Si cela ne marche pas, essayez de faire couter le dmon SSH du serveur sur le port 443 (port des connexions HTTP
scurises), comme expliqu dans la premire possibilit, et modiez le chier ~/.ssh/config en remplaant 22 par
443, puis ressayez de vous connecter.
308
Annexe R. GNU Free Documentation License
Copyright (C) 2000,2001,2002 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.
PREAMBLE
The purpose of this License is to make a manual, textbook, or other functional and useful document "free" in the sense of
freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either
commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for
their work, while not being considered responsible for modications made by others.
This License is a kind of "copyleft", which means that derivative works of the document must themselves be free in the
same sense. It complements the GNU General Public License, which is a copyleft license designed for free software.
We have designed this License in order to use it for manuals for free software, because free software needs free
documentation: a free program should come with manuals providing the same freedoms that the software does. But this
License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is
published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.
APPLICABILITY AND DEFINITIONS
This License applies to any manual or other work, in any medium, that contains a notice placed by the copyright holder
saying it can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license,
unlimited in duration, to use that work under the conditions stated herein. The "Document", below, refers to any such
manual or work. Any member of the public is a licensee, and is addressed as "you". You accept the license if you copy,
modify or distribute the work in a way requiring permission under copyright law.
A "Modied Version" of the Document means any work containing the Document or a portion of it, either copied
verbatim, or with modications and/or translated into another language.
A "Secondary Section" is a named appendix or a front-matter section of the Document that deals exclusively with the
relationship of the publishers or authors of the Document to the Documents overall subject (or to related matters) and
contains nothing that could fall directly within that overall subject. (Thus, if the Document is in part a textbook of
mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical
connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position
regarding them.
The "Invariant Sections" are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in
the notice that says that the Document is released under this License. If a section does not t the above denition of
Secondary then it is not allowed to be designated as Invariant. The Document may contain zero Invariant Sections. If the
Document does not identify any Invariant Sections then there are none.
The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice
that says that the Document is released under this License. A Front-Cover Text may be at most 5 words, and a Back-Cover
Text may be at most 25 words.
A "Transparent" copy of the Document means a machine-readable copy, represented in a format whose specication is
available to the general public, that is suitable for revising the document straightforwardly with generic text editors or (for
images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is
suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters.
A copy made in an otherwise Transparent le format whose markup, or absence of markup, has been arranged to thwart or
309
Annexe R. GNU Free Documentation License
discourage subsequent modication by readers is not Transparent. An image format is not Transparent if used for any
substantial amount of text. A copy that is not "Transparent" is called "Opaque".
Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX
input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML, PostScript or PDF
designed for human modication. Examples of transparent image formats include PNG, XCF and JPG. Opaque formats
include proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the
DTD and/or processing tools are not generally available, and the machine-generated HTML, PostScript or PDF produced
by some word processors for output purposes only.
The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly,
the material this License requires to appear in the title page. For works in formats which do not have any title page as such,
"Title Page" means the text near the most prominent appearance of the works title, preceding the beginning of the body of
the text.
A section "Entitled XYZ" means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in
parentheses following text that translates XYZ in another language. (Here XYZ stands for a specic section name
mentioned below, such as "Acknowledgements", "Dedications", "Endorsements", or "History".) To "Preserve the Title" of
such a section when you modify the Document means that it remains a section "Entitled XYZ" according to this denition.
The Document may include Warranty Disclaimers next to the notice which states that this License applies to the
Document. These Warranty Disclaimers are considered to be included by reference in this License, but only as regards
disclaiming warranties: any other implication that these Warranty Disclaimers may have is void and has no effect on the
meaning of this License.
VERBATIM COPYING
You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this
License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all
copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to
obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept
compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the
conditions in section 3.
You may also lend copies, under the same conditions stated above, and you may publicly display copies.
COPYING IN QUANTITY
If you publish printed copies (or copies in media that commonly have printed covers) of the Document, numbering more
than 100, and the Documents license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly
and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both
covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title
with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying
with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be
treated as verbatim copying in other respects.
If the required texts for either cover are too voluminous to t legibly, you should put the rst ones listed (as many as t
reasonably) on the actual cover, and continue the rest onto adjacent pages.
If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a
machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a
computer-network location from which the general network-using public has access to download using public-standard
network protocols a complete Transparent copy of the Document, free of added material. If you use the latter option, you
must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this
310
Annexe R. GNU Free Documentation License
Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute
an Opaque copy (directly or through your agents or retailers) of that edition to the public.
It is requested, but not required, that you contact the authors of the Document well before redistributing any large number
of copies, to give them a chance to provide you with an updated version of the Document.
MODIFICATIONS
You may copy and distribute a Modied Version of the Document under the conditions of sections 2 and 3 above, provided
that you release the Modied Version under precisely this License, with the Modied Version lling the role of the
Document, thus licensing distribution and modication of the Modied Version to whoever possesses a copy of it. In
addition, you must do these things in the Modied Version:
A. Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous
versions (which should, if there were any, be listed in the History section of the Document). You may use the same
title as a previous version if the original publisher of that version gives permission.
B. List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modications in the
Modied Version, together with at least ve of the principal authors of the Document (all of its principal authors, if it
has fewer than ve), unless they release you from this requirement.
C. State on the Title page the name of the publisher of the Modied Version, as the publisher.
D. Preserve all the copyright notices of the Document.
E. Add an appropriate copyright notice for your modications adjacent to the other copyright notices.
F. Include, immediately after the copyright notices, a license notice giving the public permission to use the Modied
Version under the terms of this License, in the form shown in the Addendum below.
G. Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Documents
license notice.
H. Include an unaltered copy of this License.
I. Preserve the section Entitled "History", Preserve its Title, and add to it an item stating at least the title, year, new
authors, and publisher of the Modied Version as given on the Title Page. If there is no section Entitled "History" in
the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then
add an item describing the Modied Version as stated in the previous sentence.
J. Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document,
and likewise the network locations given in the Document for previous versions it was based on. These may be placed
in the "History" section. You may omit a network location for a work that was published at least four years before the
Document itself, or if the original publisher of the version it refers to gives permission.
K. For any section Entitled "Acknowledgements" or "Dedications", Preserve the Title of the section, and preserve in the
section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein.
L. Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the
equivalent are not considered part of the section titles.
M. Delete any section Entitled "Endorsements". Such a section may not be included in the Modied Version.
N. Do not retitle any existing section to be Entitled "Endorsements" or to conict in title with any Invariant Section.
O. Preserve any Warranty Disclaimers.
If the Modied Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no
material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this,
add their titles to the list of Invariant Sections in the Modied Versions license notice. These titles must be distinct from
any other section titles.
311
Annexe R. GNU Free Documentation License
You may add a section Entitled "Endorsements", provided it contains nothing but endorsements of your Modied Version
by various parties--for example, statements of peer review or that the text has been approved by an organization as the
authoritative denition of a standard.
You may add a passage of up to ve words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to
the end of the list of Cover Texts in the Modied Version. Only one passage of Front-Cover Text and one of Back-Cover
Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for
the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may
not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one.
The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for
or to assert or imply endorsement of any Modied Version.
COMBINING DOCUMENTS
You may combine the Document with other documents released under this License, under the terms dened in section 4
above for modied versions, provided that you include in the combination all of the Invariant Sections of all of the original
documents, unmodied, and list them all as Invariant Sections of your combined work in its license notice, and that you
preserve all their Warranty Disclaimers.
The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced
with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each
such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if
known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the
license notice of the combined work.
In the combination, you must combine any sections Entitled "History" in the various original documents, forming one
section Entitled "History"; likewise combine any sections Entitled "Acknowledgements", and any sections Entitled
"Dedications". You must delete all sections Entitled "Endorsements".
COLLECTIONS OF DOCUMENTS
You may make a collection consisting of the Document and other documents released under this License, and replace the
individual copies of this License in the various documents with a single copy that is included in the collection, provided
that you follow the rules of this License for verbatim copying of each of the documents in all other respects.
You may extract a single document from such a collection, and distribute it individually under this License, provided you
insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim
copying of that document.
AGGREGATION WITH INDEPENDENT WORKS
A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a
volume of a storage or distribution medium, is called an "aggregate" if the copyright resulting from the compilation is not
used to limit the legal rights of the compilations users beyond what the individual works permit. When the Document is
included an aggregate, this License does not apply to the other works in the aggregate which are not themselves derivative
works of the Document.
If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than
one half of the entire aggregate, the Documents Cover Texts may be placed on covers that bracket the Document within
the aggregate, or the electronic equivalent of covers if the Document is in electronic form. Otherwise they must appear on
printed covers that bracket the whole aggregate.
312
Annexe R. GNU Free Documentation License
TRANSLATION
Translation is considered a kind of modication, so you may distribute translations of the Document under the terms of
section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you
may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections.
You may include a translation of this License, and all the license notices in the Document, and any Warrany Disclaimers,
provided that you also include the original English version of this License and the original versions of those notices and
disclaimers. In case of a disagreement between the translation and the original version of this License or a notice or
disclaimer, the original version will prevail.
If a section in the Document is Entitled "Acknowledgements", "Dedications", or "History", the requirement (section 4) to
Preserve its Title (section 1) will typically require changing the actual title.
TERMINATION
You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any
other attempt to copy, modify, sublicense or distribute the Document is void, and will automatically terminate your rights
under this License. However, parties who have received copies, or rights, from you under this License will not have their
licenses terminated so long as such parties remain in full compliance.
FUTURE REVISIONS OF THIS LICENSE
The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to
time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or
concerns. See http://www.gnu.org/copyleft/.
Each version of the License is given a distinguishing version number. If the Document species that a particular numbered
version of this License "or any later version" applies to it, you have the option of following the terms and conditions either
of that specied version or of any later version that has been published (not as a draft) by the Free Software Foundation. If
the Document does not specify a version number of this License, you may choose any version ever published (not as a
draft) by the Free Software Foundation.
ADDENDUM: How to use this License for your documents
To use this License in a document you have written, include a copy of the License in the document and put the following
copyright and license notices just after the title page:
Copyright (c) YEAR YOUR NAME. Permission is granted to copy, distribute and/or modify this document under the terms of the
GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant
Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free
Documentation License".
If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, replace the "with...Texts." line with this:
with the Invariant Sections being LIST THEIR TITLES, with the Front-Cover Texts being LIST, and with the Back-Cover Texts
being LIST.
If you have Invariant Sections without Cover Texts, or some other combination of the three, merge those two alternatives to
suit the situation.
If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under
your choice of free software license, such as the GNU General Public License, to permit their use in free software.
313

Vous aimerez peut-être aussi