You are on page 1of 248

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL

1 / 240

Formation Debian GNU/Linux

Ed. 4.0.3.2

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 2 / 240

Copyright c 2002-2008 Alexis de LattreRmy GarrigueTanguy OrtoloAdrien GrandBrian FravalLoc Alsfasser


Vous avez le droit de copier, distribuer et/ou modier cette documentation selon les termes de la GNU General Public License , version 2 ou nimporte quelle version ultrieure, telle que publie par la Free Software Foundation. Le texte de la licence se trouve dans lannexe GNU General Public License.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 3 / 240

INDEXATION DU DOCUMENT TITRE : Formation Debian GNU/Linux ACTION NOM DATE SIGNATURE REFERENCE :

RDIG PAR

Alexis de Lattre, Rmy Garrigue, Tanguy Ortolo, Adrien Grand, Loc Alsfasser, et Brian Fraval

10 mai 2008

SUIVI DU DOCUMENT INDICE DATE MODIFICATIONS NOM

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 4 / 240

Table des matires

I
1 2 3 4 5 6 7 8 9

Installation de Debian GNU/Linux


Linux, GNU, logiciels libres,... cest quoi ? La distribution Debian Motivation et matriel requis Les prliminaires Cration du CD Prparation du disque dur Dbuter linstallation Conguration du rseau Le systme de chiers

3
4 7 11 13 15 16 18 22 24 28 33 35 37

10 Partitionner 11 Le rglage des comptes et mots de passe 12 Les paquets 13 Premier dmarrage !

II

Utilisation et conguration de base de Debian GNU/Linux

40
41 45 48

14 Dbuter en console 15 Rcuprer les chiers de conguration 16 Vim : un diteur de texte

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 5 / 240

17 Faire marcher la connexion Internet 18 Le systme de gestion des paquets Debian 19 Congurer le shell 20 Utiliser des mdias de stockage 21 Le rseau et la scurit 22 Le Web et le FTP en console 23 Congurer son serveur de mail local

51 55 61 64 68 71 73

III

Debian GNU/Linux en mode graphique

74
75 83 85 88 91 94 96 98 100 102 104

24 Installer le serveur graphique 25 Le bureau Gnome 26 Les bases de Linux en mode graphique 27 Le Web, le mail et les news en mode graphique 28 La musique sous X 29 VLC, un lecteur multimdia 30 Graver des disques 31 La bureautique avec OpenOfce.org 32 La manipulation dimages 33 La messagerie instantane avec Gaim 34 Avant daller plus loin... un point sur la mthode

IV

Debian GNU/Linux en rseau

109
110 117 120 122

35 Laccs distance par SSH 36 Faire de lexport display 37 NFS : le partage de chiers sous Unix 38 Le voisinage rseau Windows sous Linux

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 6 / 240

39 Se synchroniser sur un serveur de temps 40 Le travail en groupe avec Subversion

127 128

Debian GNU/Linux en console

133
134 141 145 149 152 157 161 164

41 Le mail en console 42 Le mail en console (suite) 43 LIRC en console 44 Les news en console 45 La messagerie instantane avec Centericq 46 Outils dadministration systme 47 Graver en console 48 Les screens

VI

Conclusion et annexes

166
167 169 172 177 179 185 188 190 193 196 199 201

A Apprendre et se tenir au courant B En cas de blocage... C Utiliser Dselect D Complments sur la gestion des paquets Debian E Faire marcher une imprimante F Optimiser ses priphriques IDE G La souris en console H Faire marcher son port infrarouge I J LaTeX Utiliser GnomeMeeting

K Crer des CD Debian L Graver en UDF et par paquets

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 7 / 240

M Outils Windows pour Linuxiens N Firewalling et partage de connexion Internet O Monter un bridge (rewallant) P Monter un proxy-ARP Q Faire marcher une connexion sans l R Le travail en groupe avec CVS S Trucs et Astuces T GNU General Public License

203 208 215 219 224 227 232 236

Rsum

Cette formation sadresse aux personnes ayant dja de bonnes connaissances informatiques, mais ne connaissant rien Linux. Elle a pour but de les aider installer un systme Debian GNU/Linux et dcouvrir son utilisation. Si vous souhaitez dcouvrir Linux sans vous poser de questions, je vous conseille de vous tourner vers Ubuntu, une distribution base sur Debian trs simple installer. Si, au contraire, vous tes curieux et que vous souhaitez dcouvrir le fonctionnement, lutilisation et ladministration dun systme Linux, restez parmi nous. Pour nous crire, utilisez ladresse formation-debian chez via.ecp.fr (en remplaant chez par une @), ou rejoignez notre canal IRC #formation-debian sur le rseau OFTC Ce document est disponible aux formats : HTML en ligne ou HTML zipp (4,9 Mo), PDF zipp (4,3 Mo). La version ofcielle est disponible sur http ://formation-debian.via.ecp.fr/ .

AVERTISSEMENT Les parties ne concernant pas linstallation de base (notamment la compilation du noyau), on t migres vers un wiki.

Il existe un ux RSS signalant les dernires modications apportes ce document.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 1 / 240

propos de ce document
Objectif du document
Cette formation est destine aux personnes qui ont dj de bonnes connaissances en informatique 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.

Structuration du document
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 essaierez 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 utilis en tant que serveur au sein dun 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.

Contribuer au document...
Toutes les contributions sont les bienvenues ! Les contributions suivantes sont particulirement apprcies : le signalement des fautes de frappe et dorthographe, le signalement derreurs de syntaxe dans les commandes, le signalement de problmes dinstallation et de conguration survenus alors que toutes les instructions donnes dans ce document ont t scrupuleusement respectes, les informations sur linstallation sous Debian GNU/Linux de priphriques encore non documents dans cette formation (certains modems ADSL USB, scanners, graveurs de DVD, etc...), des informations et des ides pour les points signals par le tag [TODO] dans le corps du document.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 2 / 240

Merci denvoyer vos contributions ladresse formation-debian chez via.ecp.fr. Si vous dsirez rdiger un nouveau chapitre ou une nouvelle annexe, merci de men parler au pralable via ladresse mail ci-dessus pour quon en discute. Je tiens remercier les nombreux lecteurs qui ont contribu ce document, par exemple en signalant des erreurs et/ou en proposant des amliorations.

Format du document
Ce document est crit au format Docbook XML. Les sources sont compiles avec XSLT Proc pour produire le document HTML laide dune feuille de style XSL, et avec DbLaTeX pour produire le document aux formats HTML et PDF aprs application de feuilles de style XSL spciques chaque format. Les sources XML, les feuilles de style XSL et les images sont disponibles par SVN anonyme : % svn co https://svn.via.ecp.fr/formation-debian/trunk formation-debian Pour compiler le document sur un systme Debian, vous aurez besoin des paquets docbook-xml, et dblatex.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 3 / 240

Premire partie

Installation de Debian GNU/Linux

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 4 / 240

Chapitre 1

Linux, GNU, logiciels libres,... cest quoi ?


1.1 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).

1.2 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 qui lui a fait prendre conscience du danger de la logique propritaire. Il fonde alors une association, la Free Software Foundation, et crit le GNU Manifesto, dans lequel il dcrit les quatre liberts fondamentales que doit 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 5 / 240

NOTE Il ne faut pas confondre les logiciels libres et les logiciels OpenSource : les logiciels libres garantissent les quatre 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 est souvent employ la place de libre.

La licence GPL
Pour donner un cadre juridique aux logiciels du projet GNU, il crit une licence, la GNU General Public License alias GPL (il existe une traduction franaise non ofcielle). Cette licence reprend les quatre liberts 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 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.

1.3 Quest-ce que Linux ?


Un noyau
Linux dsigne au sens strict un noyau de systme dexploitation.

F IG . 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 multiples 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, PowerPC, 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 6 / 240

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, 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, Mandriva, SuSE, ou Debian (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 choisit 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 7 / 240

Chapitre 2

La distribution Debian

F IG . 2.1 Logo Debian

2.1 Pourquoi Debian ?


Nous avons 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 faciles), et pour sa rapidit rparer les failles de scurit ; parce que cest la distribution utilise VIA et VideoLAN, deux organisations dont Alexis est membre ou ancien membre ; Debian GNU/Linux est utilis par la plupart des fournisseurs daccs Internet, comme Free ; parce que cest la premire distribution Linux que jai installe et utilise, et elle ma toujours satisfait jusqu prsent ! Debian est reconnu pour son srieux et ses fortes prises de positions dans le monde libre. Debian garantit des logiciels opensource !

2.2 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 8 / 240

F IG . 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 et dans Les principes du logiciel libre selon Debian ; qui sont deux textes relativement courts que je vous invite lire.

Au niveau technique
Quest-ce quun paquet ?

Un paquet 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 paquet, 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 paquets dont il dpend ainsi que des autres paquets avec lesquels il entre en conit.
Le systme de gestion des paquets

Le systme de gestion des paquets 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.
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 (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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 9 / 240

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, 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 transparents 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" !

2.3 Les diffrentes versions de Debian


Il existe trois versions de Debian : une version ofcielle stable, nomme Etch, numrote 4.0 ; une version testing, nomme Lenny qui est en fait la future version stable ; une version unstable, appele Sid, pour Still In Developpement (Encore en Dveloppement), destine tester les nouveaux paquets. Chaque version a son utilit. Les avantages et inconvnients de chaque version sont prsents dans le tableau ci-dessous :

Nom de la version Etch

Type de la version stable

Avantages stabilit ; mises jour de scurit suivies paquets plus nombreux et plus rcents paquets encore plus nombreux et les plus rcents possible ; mises jour de scurit suivies

Inconvnients aucune volution des paquets

Lenny

testing

quelques bogues

Sid

unstable

mises jour incessantes des paquets

Utilisation pour les serveurs et les utilisateurs normaux sert laborer la future version stable de Debian ; non adapt pour une utilisation courante pour les utilisateurs expriments qui veulent bncier des dernires versions des applications pour leur ordinateur personnel

TAB . 2.1 Les trois versions de Debian Je vous propose dans cette formation de commencer par installer une Etch. Il faut savoir que vous pouvez passer facilement dune version infrieure une version suprieure, mais linverse est plus difcile. Donc si vous installez une Etch, vous pourrez passer facilement en Lenny ou en Sid ; mais vous ne pourrez que difcilement revenir en Etch ensuite.

2.4 Lhistoire
La premire version de Debian, la 0.01 est sortie en 1993. Puis les versions senchanent, avec des noms inspirs 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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 10 / 240

alias Potato en 2000 ; v3.0 alias Woody en 2002, v3.1 alias Sarge en 2005) et enn v4.0 Etch en 2007. 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 15490 paquets ! Pour en savoir plus sur lhistoire de Debian, je vous invite lire le document A brief history of Debian.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 11 / 240

Chapitre 3

Motivation et matriel requis


3.1 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 infructueux 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.

3.2 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 64 Mo de RAM et 800 Mo despace libre sur le disque dur est ncessaire. Si vous avez un Pentium II avec 128 Mo de RAM ou plus, les applications graphiques seront plus agrables utiliser car plus rapides.

Choix de la mthode dinstallation


Dans cette formation, jexplique 2 mthodes dinstallation diffrentes : Mthode netinstall, pour ceux qui ont une connexion haut-dbit Internet ; Mthode 21 CDs / 3 DVDs, pour ceux qui ont une connexion RTC Internet, ou pas de connexion du tout !

Matriel requis selon la mthode dinstallation


Mthode netinstall

Vous aurez besoin dun CD-R ou CD-RW et : 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 12 / 240

Mthode 21 CDs / 3 DVDs

Il faut que vous vous procuriez les 21 CDs ou les 3 DVDs (si vous avez un lecteur de DVD) de la Debian version 4.0. Vous trouverez une liste de vendeurs de CD Debian sur le site ofciel de Debian. En France, un des sites de vente en ligne de CD et DVD Debian est Ikarios. 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 13 / 240

Chapitre 4

Les prliminaires
4.1 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 vos partitions Linux depuis Windows en lecture et criture. 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 ; 1 Go pour un petit systme avec un serveur graphique et quelques applications graphiques ; 4 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 quatre 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 14 / 240

4.2 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 (ou une coupure) est toujours possible !

4.3 Informations obtenir avant de commencer


Si vous tes connect un rseau local
Si lordinateur est 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 USB


Si vous avez un modem ADSL ou cble USB, il faut que vous connaissiez prcisement le modle de votre modem.

Si vous avez un modem Ethernet


Dans le cas dun modem Ethernet, vous devez dterminer son type : sil sagit dune *Box ou dun modem routeur, il gre lui-mme la connexion : vous tes en fait dans le cas dun rseau local avec serveur DHCP ; sil sagit dun modem plus ancien, vous devrez probablement rgler votre ordinateur pour vous connecter en PPP over Ethernet (PPPoE).

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 15 / 240

Chapitre 5

Cration du CD
5.1 Cration du mdia de boot
Mthode 21 CDs / 3 DVDs
Le mdia de boot est entre vos mains : le CD n1 (ou le DVD n1) est bootable et va servir pour dmarrer linstallation.

Mthode netinstall
Tlcharger limage du CD

Vous allez tlcharger limage du CD "netinstall" de Debian version 4.0 (cette image pse environ 110 Mo). Cette image est bootable et contient le minimum ncessaire pour mener la procdure dinstallation jusqu son terme. Tlchargez limage depuis le miroir Debian ofciel.
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. Il faut ensuite comparer le rsultat obtenu avec celui indiqu dans le chier MD5SUMS.
Graver le CD

Gravez limage du CD en utilisant votre logiciel de gravure favori. Cette page explique comment on faire, selon le logiciel que vous utilisez.

5.2 Les chiers supplmentaires


Tlchargez larchive contenant nos chiers de conguration. 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. 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 16 / 240

Chapitre 6

Prparation du disque dur


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.

6.1 Dmarche
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, il le fait la suite du dernier chier crit. Mais quand vous supprimez des chiers, Windows ne remplit pas systmatiquement les trous de votre partition. Si bien que rapidement, votre partition ressemble du gruyre...

F IG . 6.1 Disque fragment La premire opration consiste donc faire une dfragmentation, cest--dire dfragmenter vos chiers et mettre de lordre dans la partition, de sorte quil ne reste quun bloc de donnes compact en dbut de disque.

F IG . 6.2 Disque dfragment

6.2 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 partition, et dautre part cest ncessaire alors patience !

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 17 / 240

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.

6.3 Notez lespace disponible


Regardez quelle est la quantit despace disponible sur votre partition Windows, et dcidez en consquence (et en fonction de vos besoins !) la taille de lespace disque que vous allez allouer Linux.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 18 / 240

Chapitre 7

Dbuter linstallation
Vous allez enn commencer la procdure dinstallation de Debian !

7.1 Dmarrer sur le disque dinstallation


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 y intervient avant le disque dur dsign par C, Hard Drive ou HDD-0. Quittez le BIOS en sauvegardant les changements (F10).

Cest parti...
Insrez le CD netinstall ou le CD/DVD n1 et redmarrez votre ordinateur. Quand vous voyez lcran ci-desssous, si vous utilisez un modem PPPoE, tapez : install modules=ppp-udeb puis appuyez sur entre. dans tous les autres cas, validez directement. Le systme devrait alors dmarrer sans problme.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 19 / 240

F IG . 7.1 Le premier cran

Ca marche ?
Si vous avez un ordinateur portable et que ce dernier reboote brutalement pendant la procdure dinstallation, tapez linux noacpi noapic nolapic lcran daccueil au lieu de simplement valider, ce qui dsactivera lACPI (un systme dconomie dnergie qui est bugg sur certaines cartes mres). 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.

7.2 Choix de la langue puis du clavier


Choisissez la langue French / Franais et ensuite votre pays.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 20 / 240

F IG . 7.2 Choix de la langue Ensuite, il faut choisir la conguration de votre 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 propos par dfaut Franais (fr-latin9).

F IG . 7.3 Choix du clavier

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 21 / 240

7.3 Dtection du matriel


Aprs la slection du pays/clavier, nous arrivons la dtection du matriel et au chargement des logiciels ncessaire la suite de linstallation : cette tape est automatique et ne ncessite aucune activit de votre part !

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 22 / 240

Chapitre 8

Conguration du rseau
8.1 Si vous tes connect par Ethernet
Si vous avez la possibilit de congurer le rseau par DHCP
Si vous avez un modem ADSL Ethernet (ou un modem hybride USB/Ethernet et que vous utilisez lEthernet), si vous tes connect un oprateur cble qui utilise DHCP (Noos par exemple ; mais certains oprateurs cble utilisent PPPoE) avec un modem Ethernet, si vous tes connect un rseau local sur lequel se trouve un serveur DHCP, alors slectionnez Conguration automatique du rseau, et le rseau se congurera automatiquement par DHCP.

F IG . 8.1 Conguration du rseau par DHCP


NOTE Si vous ne savez pas si un serveur DHCP est prsent, a ne cote rien dessayer en rpondant Conguration automatique du rseau !

Sil ny a pas de serveur DHCP


Sil ny a pas de serveur DHCP sur votre rseau local ou si la conguration par DHCP na pas march, slectionnez Congurer vous-mme le rseau. Il vous demandera alors successivement : 1. ladresse IP de lordinateur, 2. le masque de sous-rseau ou "netmask", 3. ladresse de la passerelle ou "gateway", 4. les adresses IP des serveurs DNS, 5. le nom de la machine (vous pouvez mettre ce que vous voulez !),

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 23 / 240

6. le nom de domaine.

F IG . 8.2 Saisie de ladresse IP

8.2 Si vous ntes pas connect par Ethernet


Slectionnez Ne pas congurer le rseau maintenant.

8.3 Le choix du nom de machine


Aprs la dtction de votre matriel, une nouvelle boite de dialogue apparait : elle vous demande le nom de la machine, son domaine. Par dfaut, le nom est debian. Libre vous de changer pour un nom un peu plus en adquation avec votre environnement.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 24 / 240

Chapitre 9

Le systme de chiers
Avant daborder ltape de partitionnement, il faut assimiler quelques notions sur la gestion des systmes de chiers sous Unix.

9.1 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. Le tableau suivant explique les fonctions des plus importants (pour plus de dtails, vous pourrez regardez le manuel man hier une fois votre installation effectue).

Rpertoire / /boot /bin /dev /etc /home /lib /media /root /sbin /tmp /usr /var

description Rpertoire "racine", point dentre du systme de chiers Rpertoire contenant le noyau Linux et lamorceur Rpertoire contenant les excutables de base, comme par exemple cp, mv, ls, etc... Rpertoire contenant des chiers spciaux nomms devices qui permettent le lien avec les priphriques de la machine Rpertoire contenant les chiers de conguration du systme Rpertoire contenant les chiers personnels des utilisateurs Rpertoire contenant les librairies et les modules du noyau (/lib/modules) Rpertoire contenant les points de montage des mdias usuels : CD, DVD, disquette, clef USB Rpertoire personnel de ladministrateur Rpertoire contenant les excutables destins ladministration du systme Rpertoire contenant des chiers temporaires utiliss par certains programmes Rpertoire contenant les excutables des programmes (/usr/bin et /usr/sbin), la documentation (/usr/doc), et les programmes pour le serveur graphique (/usr/X11R6). Rpertoire contenant les chiers qui servent la maintenance du systme (les chiers de logs notamment dans /var/log)

TAB . 9.1 Larborescence dun systme Linux

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 25 / 240

9.2 Les priphriques


Laccs aux priphriques
Une des originalits 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 spcial. crire dans un tel chier va envoyer des commandes au priphrique. Lire un tel chier permet den recevoir des donnes. Cest une mthode trs simple qui a fait ses preuves !

Fichier /dev/psaux /dev/fd0 /dev/hda /dev/hdb /dev/hdc /dev/hdd /dev/sda /dev/sdb /dev/ttyS0 /dev/ttyS1

priphrique souris PS/2 lecteur de disquettes lecteur matre de la premire nappe IDE lecteur asservi de la premire nappe IDE lecteur matre de la seconde nappe IDE lecteur asservi de la seconde nappe IDE premier disque dur SATA, SCSI ou USB second disque dur SATA, SCSI ou USB premier port srie second port srie

TAB . 9.2 Exemples de priphriques

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 ou SATA, les partitions sont numrotes de la faon suivante :

Type primaires lecteurs logiques

ordre apparition sur le disque apparition dans la partition tendue

numros de 1 4 de 5 20

TAB . 9.3 La numrotation des partitions Exemples : Si vous avez 4 partitions primaires, elles sont numrotes dans lordre hda1/sda1 (hda1 pour un disque IDE / sda1 pour un disque SATA), hda2/sda2, hda3/sda3 et hda4/sda4. 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/sda1 et hda2/sda2, La partition tendue est hda3/sda3, Les lecteurs logiques de la partition tendue sont, dans lordre, hda5/sda5, hda6/sda6 et hda7/sda7, La dernire partition primaire est hda4/sda4.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 26 / 240

Les priphriques spciaux


Il existe un certain nombre de priphriques spciaux qui ne correspondent aucun matriel, mais qui servent quand mme !

Fichier /dev/null /dev/zero /dev/random

description on peut envoyer une innit de donnes ce priphrique, qui les ignorera... on peut lire une innit de zros depuis ce priphrique on peut lire des nombres alatoires depuis ce priphrique

TAB . 9.4 Exemple de priphriques spciaux

9.3 Intgration dun systme de chiers (montage)


Considrons deux partitions. Sur ces partitions sont crits deux systmes de chiers : ce sont des formats de stockage dune arborescence de chiers et de rpertoires. La premire partition contient une arborescence racine, et la seconde des rpertoires personnels dutilisateurs.

(a)

(b)

F IG . 9.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/hda2, il sufra de taper : # mount /dev/hda2 /home pour obtenir la conguration suivante :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 27 / 240

F IG . 9.2 Aprs intgration

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 28 / 240

Chapitre 10

Partitionner
10.1 Lorganisation des partitions sous Linux
Les types de systmes de chiers
Linux utilise deux types de systmes de chiers : Swap qui sert de mmoire virtuelle, qui est utilise quand la mmoire vive est pleine ; Ext3 qui sert stocker les chiers et les rpertoires (il existe de nombreuses alternatives Ext3, savoir Ext2, ReiserFS, XFS, JFS, etc...).

Dcoupage et dimensionnement
Traditionnellement, on cre une partition avec un systme de chiers de type Swap de taille : double ou triple de la taille de la mmoire vive quand celle-ci est infrieure 256 Mo ; gale la taille de la mmoire vive quand celle-ci est suprieure ou gale 256 Mo. Cette partition est appele partition de swap ou dchange. Pour stocker les chiers et les rpertoires, on cre souvent plusieurs partitions avec un systme de chiers de type Ext3 (ou une de ses alternatives). 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 pannes et aux failles. 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. Ce raisonnement est valable pour plusieurs autres rpertoires. Sur une machine personnelle, de telles prcautions ne sont pas ncessaires et imposent des contraintes inutiles sur la taille des rpertoires. Il est en revanche utile de ddier une partition spare aux chiers personnels /home/, pour pouvoir rinstaller facilement votre systme en conservant vos donnes.

Deux exemples
Les tableaux suivants donnent deux exemples de partitionnement : un pour une machine personnelle et un pour un serveur. Dans la suite de ce chapitre, nous allons mettre en oeuvre la conguration propose dans le premier exemple.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 29 / 240

Partition Swap / /home

taille double de la mmoire vive 7 Go tout le reste de lespace allou Linux

TAB . 10.1 Pour un ordinateur personnel

Partition Swap / /tmp /var /usr /home

Taille Egale ou double de la mmoire vive 200 Mo 150 Mo 300 Mo 2 Go selon les besoins des utilisateurs

TAB . 10.2 Pour un serveur

10.2 Repartitionner le disque dur


tat initial
La procdure dinstallation demande maintenant de choisir une mthode de partitionnement : rpondez manuel. Il vous prsente ensuite la table de partition actuelle de votre disque dur. La premire ligne correspond au disque dur, et les lignes suivantes constituent la liste des partitions. Pour chaque partition, il est indiqu : le numro de la partition ; le type de partition : primaire ou logique ; la taille, le systme de chiers : FAT 32, NTFS, Ext3, Swap, etc...

Rduction de la partition Windows


Si un Windows est install sur votre disque dur et que sa partition occupe tout le disque dur, alors il va falloir rduire la partition Windows pour librer de lespace la n du disque pour installer les partitions Linux. Dplaez-vous vers le bas jusqu slectionner la partition Windows puis appuyez sur Entre. Vous accdez alors un cran qui vous permet de changer les rglages de la partition. Slectionnez Taille ; il vous demande la permission dcrire les changements sur les disques avant de redimensionner les partitions ; rpondez Oui. Ensuite, il vous dit quelle est la taille minimale possible (ce qui correspond la taille occupe par les donnes existantes sur la partition Windows) et vous propose dentrer la nouvelle taille que vous avez dcid dallouer pour la partition Windows. Vous pouvez rentrer la taille en pourcentage de la taille maximale possible, mais je vous conseille plutt de rentrer la vraie taille ; tapez par exemple 20.5 GB si vous avez dcid dallouer 20,5 Go ou 800 MB si vous avez dcid dallouer 800 Mo.

Cration de la partition de Swap


Slectionnez maintenant la ligne correspondant lespace libre et appuyez sur Entre. Choisissez ensuite laction Crer une nouvelle partition. Il va alors vous demander : 1. la taille que vous avez choisi pour la partition de swap ;

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 30 / 240

2. le type de partition : Primaire ou Logique ; 3. lemplacement de la partition : Dbut ou Fin (je vous conseille de choisir Dbut pour ne pas vous embrouiller). Enn, il vous afche un cran qui rcapitule les paramtres de la partition. Par dfaut, il vous a probablement propos de crer un systme de chier journalis ext3 et / comme Point de montage. Slectionnez la ligne Utiliser comme : systme de chier journalis ext3, tapez Entre puis slectionnez espace dchange ("swap"). Vous revenez alors lcran rcapitulatif des paramtres de la partition. Si tout vous semble bon, slectionnez Fin du paramtrage de cette partition ; sinon, modiez les paramtres qui ne correspondent pas vos souhaits.

F IG . 10.1 Ecran rcapitulatif pour la partition de Swap


NOTE La cration dune partition logique entraine automatiquement la creation de la partition tendue sous-jacente.

Cration de la partition / au format Ext3


Slectionnez de nouveau la ligne correspondant lespace libre et appuyez sur Entre. Choisissez ensuite laction Crer une nouvelle partition. Il va alors vous demander les mmes questions que prcdemment : 1. la taille que vous avez choisi pour la partition racine ; 2. le type de partition : Primaire ou Logique ; 3. lemplacement de la partition : Dbut ou Fin. Ensuite, il vous afche lcran qui rcapitule les paramtres de la partition. Vriez : que le paramtre Utiliser comme est sur systme de chier journalis ext3, que le paramtre Point de montage est /, que les autres paramtres ont lair bons. puis slectionnez Fin du paramtrage de cette partition.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 31 / 240

F IG . 10.2 Ecran rcapitulatif pour la partition root

Cration de la partition /home au format Ext3


Slectionnez de nouveau la ligne correspondant lespace libre et appuyez sur Entre. Choisissez ensuite laction Crer une nouvelle partition. Procdez comme pour la partition racine, en donnant la taille souhaite, et en vriant que le point de montage est bien /home, puis slectionnez Fin du paramtrage de cette partition.

F IG . 10.3 Ecran rcapitulatif pour la partition /home

Appliquer la nouvelle table de partition et formater les nouvelles partitions


De retour lcran qui afche la table des partitions, vriez que toutes les partitions sont leur place, de la bonne taille et au bon format, puis slectionnez Terminer le partitionnement et appliquer les changements. Un avertissement vous informera peut-tre quaucun point de montage nest affect la partition Windows, en vous demandant si vous souhaitez revenir au menu de partitionnement : rpondez Non

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 32 / 240

F IG . 10.4 Ecran rcapitulatif de la future table de partition Lcran suivant est important. Cest aprs avoir valid cet cran que les changements vont tre appliqus et que les nouvelles partitions seront formates. Il faut donc bien lire les explications des actions qui vont tre entreprises ; il est encore temps de revenir en arrire, aprs ce sera trop tard ! Si tout a lair bon, rpondez Oui la question Faut-il appliquer les chgts sur le disque ?. Il cre alors la nouvelle organisation des partitions et formate la partition de Swap et la ou les nouvelle(s) partition(s) Ext3.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 33 / 240

Chapitre 11

Le rglage des comptes et mots de passe


11.1 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.

F IG . 11.1 Premire demande du mot de passe root

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 34 / 240

11.2 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, linstallation de paquets 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 le nom complet du compte (entrez votre nom de famille par exemple), le login, puis dentrer deux fois le mot de passe. Comme pour le root, utiliser un mot de passe non trivial est fortement conseill.

F IG . 11.2 Demande du login

11.3 Installation du systme de base


Debian procde ensuite linstallation du systme de base : cest lensemble des logiciels communs toute installation de Debian. Cette tape ne ncessite aucune intervention de votre part et prend quelques minutes.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 35 / 240

Chapitre 12

Les paquets
12.1 La source des paquets
Le systme de gestion des paquets de Debian sappelle APT (Advanced Package Tool). Pour fonctionner, il peut avoir besoin de connatre la source des paquets susceptibles dtre installs. Il peut pour cela utiliser vos disques dinstallation (CDs ou DVDs), mais il vous propose galement dutiliser un miroir rseau , cest dire un dpt de paquets accessible par une connexion rseau.

Si vous navez pas encore de connexion Internet fonctionnelle


la question Faut-il utiliser un miroir sur le rseau ?, rpondez Non.

Si vous avez dj une connexion Internet fonctionnelle


la question Faut-il utiliser un miroir sur le rseau ?, rpondez Oui. Rpondez aux crans suivants avec les consignes ci-dessous : Selection du miroir : 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. Dans ce dernier cas, slectionnez dans la liste : Saisie manuelle. Il vous demande alors le nom DNS du miroir Debian et le rpertoire o se trouve le miroir (il vous propose par dfaut le rpertoire standard /debian). Mandataire ("proxy") HTTP : si vous navez pas de proxy pour accder Internet, laissez le champ vide et validez. si votre proxy ne requiert 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 requiert 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.

12.2 Popularity-contest
Linstalleur vous demande ensuite si vous souhaitez participer aux statistiques dutilisation des paquets. Rpondez comme vous le souhaitez, cela ninue en rien sur la conguration du reste du systme.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 36 / 240

12.3 Installation de logiciels supplmentaires


Pour crer un type de conguration, le Debian installer propose des tches pour des usages particuliers : serveur mail, .... Ne cochez rien, et valider. Nous allons installer nous-mmes tous les paquets dont nous avons besoin, dune part pour apprendre, et dautre part, parce que nous pouvons ainsi faire du sur-mesure !
NOTE Si vous tes vraiment press et que vous souhaitez obtenir un systme fonctionnel sans vous poser de question, vous pouvez slectionner lenvironnement de bureau, le systme standard et ventuellement les outils destins aux ordinateurs portables. Vous pourrez ainsi sauter de nombreux chapitres de cette formation, mais vous perdrez par la mme occasion les connaissances que leur pratique apporte...

F IG . 12.1 Ecran de slection de logiciels Ensuite, il procde linstallation de nombreux paquets de base. Vous navez rien faire pendant le droulement de cette tape, qui prend quelques bonnes minutes.

F IG . 12.2 Installation de paquets de base

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 37 / 240

Chapitre 13

Premier dmarrage !
13.1 Installation du bootloader
Pour prparer le premier dmarrage sous Linux, il faut rendre votre nouveau systme dexploitation bootable directement depuis le disque dur. Pour cela, le programme Grub va tre install dans le Master Boot Record (MBR) de votre disque dur. Cest ce programme qui va vous proposer de choisir un des multiples systmes dexploitation installs sur votre ordinateur (et par la suite il vous permettra aussi de choisir la version du noyau Linux avec laquelle vous allez dmarrer votre systme Debian). La procdure dinstallation vous donne la liste des autres systmes dexploitation qui ont t dtects (si vous avez une partition Windows, vriez que Windows est bien mentionn dans la liste) et vous demande : Installer le programme de dmarrage GRUB sur le secteur damorage ?. Rpondez Oui.

F IG . 13.1 Ecran prcdant linstallation de Grub

13.2 Redmarrage et premier boot !


Le CD ou DVD va alors tre ject automatiquement. Retirez-le du lecteur et faites Continuer.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 38 / 240

F IG . 13.2 Ecran prcdant le redmarrage Lordinateur redmarre... Aprs le lancement du BIOS, Grub se lance et vous afche dans un menu bleu la liste des systmes dexploitation quil peut dmarrer. Si vous avez une partition Windows, cette dernire devrait apparatre dans la liste.

F IG . 13.3 Ecran de Grub

13.3 Tester le multi-boot


Tester le dmarrage de Windows
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 ! Slectionnez Windows avec les ches Haut/Bas et appuyez sur Entre.

En cas de problme...
Grub ne marche pas et vous voulez au plus vite pouvoir booter de nouveau sous Windows ? Suivez la procdure 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 CDROM puis Dmarrer lordinateur sans prise en charge du lecteur de CD-ROM.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 39 / 240

2. Au prompt, tapez : C:\> fdisk /mbr 3. Rebootez.


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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 40 / 240

Deuxime partie

Utilisation et conguration de base de Debian GNU/Linux

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 41 / 240

Chapitre 14

Dbuter en console
14.1 Notions de base
Se logguer
Une fois que la procdure dinstallation est termine, vous arrivez au prompt de login :

F IG . 14.1 Prompt de login 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 :

F IG . 14.2 Prompt du root 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 :

F IG . 14.3 Prompt de lutilisateur tanguy sur la machine debian 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 paquets 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 !

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 42 / 240

Convention
Dans toute la suite de cette formation, nous adopterons la convention suivante : 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 (teletypewriter). 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 (ou les touches fentre) pour passer dune console voisine lautre. Par dfaut, il y a 6 consoles.

14.2 Les commandes Unix


Liste des commandes de base connatre
Voici une liste de commandes Unix de base connatre : ls, cd, mv, cp, rm, 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.

Commandes incontournables
Si vous ne deviez retenir que deux commandes : apropos et man.
apropos

Cette commande permet... de chercher une commande, partir dun mot-clef ! Ainsi, si vous cherchez comment naviguer sur le Web : % apropos web w3m (1)
man

- a text based Web browser and pager

Cette commande permet dafcher le manuel de nimporte quel commande, chier de conguration, fonction C... install sur votre systme. Pour afcher le manuel de w3m que nous avons dcouvert grce la commande apropos : % man w3m

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 43 / 240

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 (montage) de la premire partie de cette formation. Elle sert intgrer un systme de chier dans le systme de chier de la racine. Elle doit tre excute en tant que root. Sa syntaxe habituelle est : # mount -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 /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 lutilisateur 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 ne 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.
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 peut 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 44 / 240

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 une 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. halt : teint lordinateur. 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 donnes 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 priphriques. 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 2005 afche un calendrier de lanne 2005. 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).

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 45 / 240

Chapitre 15

Rcuprer les chiers de conguration


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.

15.1 Copie depuis un mdia amovible


Disquette
Insrez la disquette et montez-la : # mount /media/floppy0 Copiez larchive contenant les chiers de conguration : # cp /media/floppy0/fichiers-config.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 /media/floppy0 Mettez-vous dans le home du root, puis dcompressez larchive : # cd # tar xvzf fichiers-config.tar.gz Vous pouvez dsormais si vous le souhaitez supprimer larchive contenant les chiers de conguration : # rm fichiers-config.tar.gz

CD
Idem que pour une disquette, en remplaant oppy0 par cdrom0.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 46 / 240

Clef USB
Branchez votre clef USB. Attendez quelques secondes. Des messages vont apparatre lcran, en particulier : sda: sda1 Notez le nom de la partition trouve sur votre clef (ici, sda1), et montez votre clef : # mkdir /media/clef0 # mount /dev/sda1 /media/clef0 Procdez ensuite comme pour une disquette, en remplaant oppy0 par clef0.

15.2 Copie partir dune partition Windows


Crez un rpertoire destin accueillir la partition Windows : # mkdir /media/win Montez la partition Windows dans ce rpertoire : # mount /dev/partition /media/win o /dev/partition 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 /media/win/chemin_vers_le_rpertoire_o_vous_aviez_plac_les/fichiers-config.tar.gz ~ Mettez-vous dans le home du root, puis dcompressez larchive : # cd # tar xvzf fichiers-config.tar.gz Vous pouvez dsormais si vous le souhaitez supprimer larchive contenant les chiers de conguration : # rm fichiers-config.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.

15.3 Copie partir dInternet


Si vous avez dj une connexion Internet fonctionnelle, vous pouvez rcuprer larchive contenant les chiers de conguration directement par HTTP. Tlchargez le chier fichiers-config.tar.gz dans le home du root : 1. Si vous devez passer par un proxy pour accder Internet : si votre proxy ne requiert pas dauthentication par login et mot de passe : # export http_proxy="http://proxy.exemple.org:8080"

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 47 / 240

o proxy.exemple.org est le nom DNS de votre proxy et 8080 son port. si votre proxy requiert une authentication par login et mot de passe : # export http_proxy="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. 2. Tlchargez le chier et dplacez-le dans le home du root : % wget http://formation-debian.via.ecp.fr/fichiers-config.tar.gz # mv fichiers-config.tar.gz ~ 3. Mettez-vous dans le home du root, puis dcompressez larchive : # cd # tar xvzf fichiers-config.tar.gz 4. Vous pouvez dsormais si vous le souhaitez supprimer larchive contenant les chiers de conguration : # rm fichiers-config.tar.gz

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 48 / 240

Chapitre 16

Vim : un diteur de texte


16.1 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 et 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 !

16.2 Installer et congurer Vim


Il va falloir installer les paquets permettant de faire marcher vim. Pour linstant, vous ne savez pas encore installer des paquets ; je vous propose donc de suivre les instructions suivantes sans trop comprendre.

Mthode 21 CDs / 3 DVDs


Comme je ne vous ai pas encore appris installer des paquets, je vous propose de taper sans comprendre la commande suivante, qui va installer le paquet vim : # apt-get install vim

Mthode netinstall
Si vous avez dja une connexion Internet fonctionnelle, procdez comme pour la mthode des CDs : # apt-get install vim Sinon, le paquet vim ntant pas sur le CD netinstall de debian, on va pour linstant se borner utiliser vim-tiny, une version minimaliste de vim, qui est prinstalle. Par contre, vim-tiny ne reconnat pas toutes les options du chier de conguration de vim. Vous pouvez donc sauter la section suivante et passer directement la section Se servir de vim. On procdera linstallation de vim la n du chapitre Le systme de gestion des paquets Debian.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 49 / 240

Installation du chier de conguration


Remplacez le chier de conguration install par dfaut par mon chier de conguration : # cp ~/fichiers-config/vimrc /etc/vim/ ou, si vous ne suivez pas ma formation depuis le dbut : % wget http://formation-debian.via.ecp.fr/fichiers-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).

16.3 Se servir de vim


Pour diter un chier texte existant ou crer un nouveau chier texte, il suft de taper : # vim nom_du_fichier

F IG . 16.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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 50 / 240

F IG . 16.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 : :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.

16.4 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 rouge sous vim.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 51 / 240

Chapitre 17

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 avez une connexion ADSL avec un modem Ethernet ou USB o la conguration se fait par DHCP (cest le cas si vous tes branch une FreeBox en Ethernet par exemple), votre connexion Internet est dj congure... vous pouvez passer directement au chapitre suivant.

17.1 Connexion par modem ADSL Ethernet ou modem cble Ethernet en PPPoE
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 (login@fournisseuradsl, en fait). 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 :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 52 / 240

# 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

17.2 Connexion par modem classique


[TODO : Vrier et mettre jour cette procdure. Je nai pas de modem classique, donc bon...] 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... et nest pas explique dans ce document.

Si cest un modem PCMCIA...


Installer le paquet pcmciautils : # apt-get install pcmciautils

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.

Vrier que le port srie marche


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 port srie : # setserial /dev/ttyS0 /dev/ttyS0, UART: 16550A, Port: 0x03e8, IRQ: 0 Si la ligne qui safche contient UART : 16550A, alors cela signie que le port srie est bien reconnu. Si, par contre, la ligne qui safche contient UART : unknown, alors cela signie que le port srie 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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 53 / 240

F IG . 17.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 ; 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 ;

F IG . 17.2 pppcong : proprits de la connexion

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 54 / 240

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 botes 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 55 / 240

Chapitre 18

Le systme de gestion des paquets Debian


18.1 Gnralits
Quest-ce quun paquet ?
Ceci avait t abord dans la premire partie de cette formation la section Quest-ce quun paquet ?.

Les trois acteurs de la gestion des paquets


Trois programmes soccupent de la gestion des paquets Debian : dpkg, apt-get et dselect :

Couche suprieure infrieure

Programme apt-get ou dselect dpkg

Fonction Gestion intelligente des paquets : sources, versions, dpendances et conits Installation et retrait de paquets

TAB . 18.1 Les 3 acteurs de la gestion des paquets

18.2 Dpkg
Utilit
Il faut viter de lutiliser en temps normal pour installer et dsinstaller des paquets, puisquil ne gre pas les dpendances entre paquets. Par contre, cest souvent le seul moyen dinstaller des paquets qui ne sont pas prsents dans la distribution. Il faut alors tlcharger les chiers correspondant aux paquets et les installer avec la commande dpkg.

Utilisation
Les commandes savoir sont les suivantes :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 56 / 240

Installe les paquets paquet1 et paquet2 (comme dpkg ne gre pas les dpendances, il faut installer en mme temps les paquets qui dpendent lun de lautre ; si une ancienne version du paquet est dj installe, elle sera remplace) : # dpkg -i paquet1_0.1_i386.deb paquet2_0.2_i386.deb Dsinstalle le paquet paquet1 mais ne supprime pas ses chiers de conguration : # dpkg -r paquet1 Dsinstalle le paquet paquet1 et supprime ses chiers de conguration : # dpkg -r --purge paquet1 Recongure le paquet paquet1 qui est dj install : # dpkg-reconfigure paquet1 Donne le nom du paquet qui a install le chier /usr/bin/vim (la rponse est facile, cest le paquet vim !) : % dpkg -S /usr/bin/vim Afche la liste des chiers installs par le paquet vim : % dpkg -L vim Afche la liste des paquets installs : % dpkg -l Pour plus dinformations ou pour avoir la liste complte des options disponibles, consultez le manuel de dpkg : % man dpkg

18.3 Apt-get
Utilit
Apt-get est la couche qui apporte une certaine intelligence et une grande facilit dutilisation au systme de gestion des paquets Debian. Avec apt-get, on dnit les sources des paquets dans un chier de conguration et il gre linstallation et le retrait des paquets en tenant compte des dpendances ainsi que le tlchargement des paquets sils sont sur une source rseau. Apt-get est donc utilis pour installer et retirer les paquets inclus dans la distribution ainsi que des paquets qui peuvent tre inclus dans les sources.

Dnir les sources des paquets


La thorie

Les sources des paquets 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 paquets binaires ; deb-src pour dnir une source de paquets sources (cela nintressera que les dveloppeurs qui veulent examiner le code source des programmes).

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 57 / 240

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 : # 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.
Ajouter les sources de contribution

Les sources de paquets ont dja t dnies lors de linstallation. Mais il ne sagit que des sources ofcielles de Debian. Le projet Debian maintient galement des dpots pour les paquets qui ne respecte pas strictement les principes du logiciel libre selon Debian. Il sagit des dpts contrib et non-free. Si vous souhaitez bncier de ces paquets moiti libres ou non libres, ditez votre chier /etc/apt/sources.list pour rajouter la n de chaque dpt rseau les mots contrib non-free. Il doit ressembler ceci (les dpts utiliss peuvent tre diffrents) : deb http://ftp.fr.debian.org/debian/ etch main contrib non-free deb http://security.debian.org/ etch/updates main contrib non-free ...

Utilisation
Les commandes savoir sont les suivantes : Met jour la liste des paquets 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 Met jour tous les paquets 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 paquets paquet1 et paquet2 et tous les paquets dont ils dpendent : # apt-get install paquet1 paquet2 Dsinstalle le paquet paquet1 sans effacer ses chiers de conguration : # apt-get remove paquet1 Idem que la commande prcdente mais ses chiers de conguration sont supprims : # apt-get remove --purge paquet1

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 58 / 240

Efface du disque dur les paquets tlchargs pour tre installs (inutile quand la source est un CD ou un chier du systme de chiers local) : # apt-get clean Pour plus dinformations ou pour avoir la liste complte des options disponibles, lisez le trs complet APT HOWTO ou consultez le manuel dapt-get : % man apt-get

Rechercher un paquet et afcher sa description


Pour chercher un paquet dans la base des paquets disponibles, utilisez la commande suivante : % apt-cache search liste_de_mots_cls
NOTE Par exemple, pour chercher un compilateur Fortran, tapez :

% apt-cache search fortran compiler


Il recherche alors les termes "fortran" et "compiler " dans la description de tous les paquets disponibles. Dans les rponses, vous obtenez notamment :

g77 - The GNU Fortran 77 compiler.

Pour afcher les caractristiques et la description du paquet paquet1, utilisez la commande suivante : % apt-cache show paquet1

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 59 / 240

NOTE Par exemple :

% apt-cache show g77 Package: g77 Priority: optional Section: devel Installed-Size: 40 Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org> Architecture: i386 Source: gcc-defaults (0.21) Version: 2:2.95.4-14 Provides: fortran-compiler Depends: cpp (>= 2:2.95.4-14), g77-2.95, gcc-2.95 Suggests: g77-2.95-doc Filename: pool/main/g/gcc-defaults/g77_2.95.4-14_i386.deb Size: 1390 MD5Sum: cffe224f712694d8ef91eefdb983aec3 Description: The GNU Fortran 77 compiler. This is the GNU g77 Fortran compiler, which compiles Fortran 77 on platforms supported by the gcc compiler. It uses the gcc backend to generate optimized code. . This is a dependency paquet providing the default GNU Fortran 77 compiler for Debian GNU/Linux systems (version 2.95.4 for architecture i386). Task: fortran-dev

18.4 Dselect
Dselect est une alternative apt-get pour la gestion intelligente des paquets. 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.

18.5 Avant daller plus loin...


Congurer... loutil de conguration Debian !
DebConf est loutil de conguration des paquets Debian. Quand vous installerez de nouveaux logiciels qui ncessitent une conguration, il vous posera quelques questions. Par dfaut, DebConf est rgl pour un dbutant qui ne souhaite pas se poser trop de questions. Nous allons donc le rgler de faon un peu plus curieuse : # dpkg-reconfigure debconf Il vous demande alors quelle interface vous souhaitez utiliser : conservez linterface Dialogue. Quant la priorit des questions, choisissez leve.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 60 / 240

Complter linstallation de vim


NOTE Les utilisateurs de la mthode netinstall peuvent maintenant installer vim. Il suft pour cela de taper la commande :

# apt-get install vim


Vous pouvez maintenant procder la conguration de vim, en retournant au chapitre Installation du chier de conguration.

Maintenant que, quelle que soit la mthode que vous avez utilise, vous avez accs lintgralit des paquets, vous allez pouvoir complter linstallation de vim, en installant le programme par, qui permet de reformater du texte dans vim : # apt-get install par 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.

Installer un nouveau pager : most


Le pager est un programme qui sert afcher du texte. Vous avez le choix entre plusieurs programmes, grce un mcanisme dalternatives. Je vous propose dinstaller et dutiliser most, un pager qui permet entre autres de colorer les pages de manuel. # apt-get install most # update-alternatives --config pager La seconde commande vous demande de choisir le pager utiliser. Rpondez en donnant le numro qui correspond most. Maintenant, cest ce programme qui sera utilis pour afcher les manuels.

Installer quelques utilitaires


Nous allons installer quelques utilitaires qui nous serviront par la suite : # apt-get install pciutils usbutils w3m

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 61 / 240

Chapitre 19

Congurer le shell
19.1 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, de tlcharger des chiers de conguration et ensuite de passer de bash zsh.

19.2 Installer et congurer zsh


Installer le paquet et les chiers de conguration
Installez le paquet zsh, qui contient le shell du mme nom : # apt-get install zsh Remplacez les chiers de conguration par dfaut par mes chiers de conguration : # cd ~/fichiers-config # cp zshrc zshenv zlogin zlogout /etc/zsh/ # cp dir_colors /etc/ ou, si vous ne suivez pas ma formation depuis le dbut : % % % % % # # wget http://formation-debian.via.ecp.fr/fichiers-config/zshrc wget http://formation-debian.via.ecp.fr/fichiers-config/zshenv wget http://formation-debian.via.ecp.fr/fichiers-config/zlogin wget http://formation-debian.via.ecp.fr/fichiers-config/zlogout wget http://formation-debian.via.ecp.fr/fichiers-config/dir_colors mv zshrc zshenv zlogin zlogout /etc/zsh/ mv dir_colors /etc/

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 62 / 240

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/zsh/zshenv puis dcommenter et personnaliser les lignes adquates : si votre proxy ne requiert 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 requirt une authentication par login et mot de passe : # 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 excuter 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 ! Les informations sur les comptes utilisateur sont en fait stockes dans le chier /etc/passwd. Ce chier se prsente ainsi :

<login>:<hash du mot de passe (optionnel)>:<uid>:<gid>:<nom complet>:<rpertoire personnel> soit par exemple pour moi : jpountz:x:1000:1000:Adrien Grand,,,:/home/jpountz:/bin/zsh Vous trouverez plus de dtails sur le chier /etc/passwd grce sa page de manuel : % man 5 passwd Lors dun changement de shell, la commande chsh se charge donc de modier linformation correspondant au shell utilisateur.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 63 / 240

TUYAU Zsh propose une autocompltion trs efcace. Il sagit dun outil qui permet dacclrer la saisie des commandes, en les compltant automatiquement ds quil ny a plus dambigit. Pour lutiliser, il faut appuyer sur la touche Tab pendant la frappe, mais essayez plutt :

% apt-gTab insTab vimTab

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/gam /sbin:/home/alexis/bin 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/zsh/zshenv et ajoutez ou supprimez un rpertoire la ligne qui commence par export PATH=.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 64 / 240

Chapitre 20

Utiliser des mdias de stockage


Comme expliqu au chapitre Le systme de chiers, vos chiers sont crits dans des systmes de chiers, eux-mmes stocks sur des priphriques de stockage : disquette, clef USB, CD, partition de disque dur... Pour utiliser un support de stockage, on le monte dans larborescence.

20.1 /etc/fstab
Le chier de conguration /etc/fstab contient les informations statiques sur le montage des systmes de chiers que vous utilisez rgulirement.

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 du systme de chiers : /dev/partition pour une partition physique, 2. le point de montage (le rpertoire doit dj exister, sinon il faut le crer au pralable avec la commande mkdir), 3. le (ou les) type de systme de chier (par exemple swap, ext3, vfat, ntfs, nfs, iso9660 et udf pour les CD-ROM et DVDROM), auto pour autodtecter le type ; 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 (pour les systmes dcients comme FAT ou NTFS), defaults pour les options par dfaut (notamment rw, exec, auto et nouser), et enn sw pour les systmes 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 :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 65 / 240

/dev/hda1 /dev/hda2 /dev/hda5 proc /dev/fd0 /dev/sda1 /dev/cdrom

/ none /home /proc /media/floppy0 /media/clef0 /media/cdrom0

ext3 swap ext3 proc auto vfat udf,iso9660

defaults sw defaults defaults user,noauto user,noauto ro,user,noauto

0 0 0 0 0 0 0

1 0 2 0 0 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 priphrique ou du rpertoire de montage. Ainsi, les deux commandes suivantes sont quivalentes, et permettent de monter la disquette : # mount /media/floppy0 # 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 /media/floppy0 # umount /dev/fd0
IMPORTANT Pour dmonter un systme de chier, il faut quaucun des utilisateurs du systme et aucun processus ne soit en train 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 :

umount : /media/floppy0 : priphrique occup


Pour voir qui est responsable de cette occupation, utilise la commande lsof qui liste les chiers ouverts :

# apt-get install lsof % lsof | grep floppy

20.2 Monter ses partitions Windows


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 IDE Primary Master). Nous allons la monter dans le rpertoire /media/win1 quil faut crer au pralable : # mkdir /media/win1 Ensuite, ditez en root le chier /etc/fstab et rajoutez la ligne suivante : /dev/hda1 /media/win1 vfat defaults,user 0 0

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 66 / 240

Prparer le montage dune partition NTFS


Le systme de chier de type NTFS est souvent utilis par Windows 2000 et XP. Pour pouvoir lire et crire sur ces systmes, il faut dabord installer un pilote particulier, NTFS-3g. Celui-ci nest pas disponible dans les sources de Debian Etch, en revanche, il est possible de linstaller depuis les dpts des rtroportages. Pour cela, en tant que root, ajoutez ces deux lignes au chier /etc/apt/sources.list : deb http://www.backports.org/debian etch-backports main contrib non-free deb http://www.backports.org/debian sarge-backports main contrib non-free Ensuite, vous pouvez mettre jours la liste des paquets, puis installer NTFS-3g : # apt-get update # apt-get install ntfs-3g Supposons que votre partition Windows de type NTFS soit /dev/sda5 (premier lecteur logique sur le premier disque dur SATA). Nous allons la monter dans le rpertoire /media/win2 quil faut crer au pralable : # mkdir /media/win2 Ensuite, ditez en root le chier /etc/fstab et rajoutez la ligne suivante : /dev/sda5 /media/win2 ntfs-3g defaults,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.

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 root, dont lID est 0, appartiennent un groupe win, que vous avez cr avec la commande addgroup, et dont lID est 1003, aient des droits rw-rw-r-- pour les chiers rguliers, et rwxrwxr-x pour les rpertoires, alors la ligne correspondant la partition dans fstab devient la suivante : /dev/hda1 /media/win1 vfat defaults,user,uid=0,gid=1003,umask=113,dmask=002 0

Pour que les changements soient pris en compte, la commande mount -a ne suft pas. Il faut dmonter et remonter la partition : % umount /media/win1 % mount /media/win1

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 67 / 240

20.3 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 /media/clef0 Identiez le nom de priphrique correspondant votre clef USB : listez le contenu de /dev/sd*, puis introduisez votre clef, et, aprs quelques secondes, listez nouveau /dev/sd*, dans lequel votre clef du apparatre (chez moi, elle sappelle /dev/sda1, mais si vous avez des disques SATA, ce nom peut tre dcal de quelques lettres). Enn, si votre cl USB est formate en FAT et que vous voulez que les chiers une fois monts appartiennent root et au groupe win (cf. plus haut), rajoutez la ligne suivante la n du chier /etc/fstab : /dev/sda1 /media/clef0 vfat defaults,user,uid=0,gid=1003,umask=113,dmask=002 0

Vous pouvez alors monter votre cl USB : % mount /media/clef0


ATTENTION Noubliez pas de dmonter votre cl USB avant de la dbrancher, sous peine de corrompre les donnes qui y sont stockes :

% umount /media/clef0

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 68 / 240

Chapitre 21

Le rseau et la scurit
21.1 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.6.2 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 69 / 240

21.2 Protger son systme


Les failles de scurit dans les paquets Debian
Avec Debian, quand un paquet a une faille de scurit, une quipe spciale, le security team, se charge de mettre rapidement disposition des utilisateurs une version corrige du paquet contenant le programme vulnrable sur un site ddi. Pour tre mis au courant de la disponibilit dune mise jour de scurit, il faut sabonner la mailing-list debian-securityannounce. Pour sinscrire, il suft de se rendre ladresse http ://www.debian.org/MailingLists/subscribe. Par la mme occasion, vous pouvez vous abonner la mailing-list debian-announce pour recevoir les annonces des sorties de nouvelles versions de la distribution Debian. Je vous conseille de vous abonner 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, linstalleur de Debian a du placer dans la liste des sources de paquets /etc/apt/sources.list une ligne comme cell-ci : deb http://security.debian.org/ etch/updates main contrib non-free Ensuite, il suft de mettre jour la liste des paquets puis les paquets 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, qui relayent ce genre dinformations. La solution pour corriger une faille du noyau consiste gnralement recompiler la version la plus rcente du noyau. La procdure de compilation du noyau Linux 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...

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 70 / 240

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;\ /dev/tty8 *.=notice;*.=warn Pour que le systme tienne compte de cette modication, tapez : # /etc/init.d/sysklogd restart En allant sur la console n8, 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 Manuel de scurisation de Debian.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 71 / 240

Chapitre 22

Le Web et le FTP en console


22.1 Surfer sur le web en console ?
Cest possible... mais pas trs joli ! Il existe (au moins) trois navigateurs en mode texte : lynx, w3m et links2 qui se trouvent dans les paquets du mme nom. Si, par exemple, vous voulez suivre ma formation dans une console, vous pouvez lancer w3m, que vous avez normalement install prcdemment : % w3m http://formation-debian.via.ecp.fr/

F IG . 22.1 w3m Vivement linstallation du serveur graphique pour pouvoir surfer avec Iceweasel (Firefox sous Debian) !

22.2 Le FTP en console


Le client FTP le plus facile utiliser en console est, mon got, lftp.

Installation et conguration
Commencez par installer le paquet :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 72 / 240

# apt-get install lftp Ensuite, installez mon chier de conguration pour lftp : # cp ~/fichiers-config/lftp.conf /etc/ ou : % wget http://formation-debian.via.ecp.fr/fichiers-config/lftp.conf # mv lftp.conf /etc/

Utiliser lftp
Lutilisation de lftp est trs simple : 1. Pour se connecter : en utilisateur toto sur le serveur ftp.exemple.org : % lftp ftp://toto@ftp.exemple.org en anonyme sur le serveur FTP archive.debian.org : % lftp ftp://archive.debian.org 2. Une fois connect, un nouveau prompt apparat : lftp 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, help commande : afche laide de la commande, 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, mirror rpertoire : tlcharge le rpertoire, put chier : dpose le chier, put test* : dpose tous les chiers dont le nom commence par test, exit : met n la connexion.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 73 / 240

Chapitre 23

Congurer son serveur de mail local


Les ordinateurs sous Linux ont besoin dun serveur de mail pour fonctionner correctement. Certains logiciels communiquent notamment avec ladministrateur en lui crivant. 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 une 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.

23.1 Installation de Postx


Je vous propose dinstaller Postx, qui est rput able et facile congurer : # apt-get install postfix

23.2 Conguration de Postx


Lors de linstallation du paquet, il vous pose des questions de conguration. la premire question Type de conguration ?, rpondez Site internet utilisant un smarthost . Il vous pose ensuite plusieurs questions : Nom de courrier : rpondez comme vous le souhaitez. Serveur relai SMTP : donnez le nom du serveur SMTP de votre fournisseur daccs (en gnral, il est de la forme smtp.fournisseur. Postx est un logiciel trs puissant et sa conguration sort du cadre de ce document. En revanche, Traduc.org propose une traduction trs jour de la documentation ofcielle de Postx.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 74 / 240

Troisime partie

Debian GNU/Linux en mode graphique

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 75 / 240

Chapitre 24

Installer le serveur graphique


24.1 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.

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 ! Vous avez une carte graphique possdant une puce de marque 3Dfx, Intel, 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). Vous avez une carte ATI ou nVidia. Vous avez alors le choix entre deux pilotes : un pilote libre inclus dans X.org, et un pilote propritaire. Les pilotes propritaire fonctionnent parfaitement, en 2D comme en 3D. Pour les cartes nVidia, le pilote libre marche trs bien, mais ne tire pas parti de lacclration matrielle 3D de la carte. Pour les cartes ATI, le pilote libre sait utiliser les capacits 3D des cartes ATI qui ne sont pas trop rcentes.

24.2 Installer et congurer un serveur X


Installer les paquets
Installation et dbut de conguration des paquets

Installez les paquets ncessaires :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 76 / 240

# apt-get install xorg Il vous demande alors les modes vido utiliss par le serveur X : cochez les modes de rsolution que vous pouvez et souhaitez utiliser.
Installer un pilote propritaire

Si vous souhaitez utiliser le pilote propritaire nVidia, installez le paquet nvidia-glx. Vous devez pour cela avoir activ les dpts de paquets non libres (Le systme de gestion des paquets Debian) : # apt-get install nvidia-glx De mme, pour les cartes ATI, il faut installer le paquet fglrx-driver.

Congurer le serveur X avec debconf


Vous allez maintenant congurer le serveur X plus nement, avec debconf : il va vous poser une srie de questions puis gnrer le chier de conguration de X.org /etc/X11/xorg.conf : # dpkg-reconfigure xserver-xorg
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 pilote 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 pilote libre, slectionnez nv, si vous avez une carte nVidia et que vous voulez utiliser le pilote propritaire, slectionnez nvidia, si vous avez une carte ATI et que vous voulez utiliser le pilote libre, slectionnez ati, si vous avez une carte ATI et que vous voulez utiliser le pilote propritaire, slectionnez fglrx,
NOTE Si vous avez une carte graphique non supporte par X.org ou que vous ne trouvez pas le driver qui correspond votre carte graphique, slectionnez le driver vesa : il marche avec quasiment toutes les cartes graphiques.

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 tel quel. 4. Entrez la quantit de mmoire que va utiliser votre carte vido : elle est normalement dtecte automatiquement, vous pouvez laisser le champ vide. 5. Utiliser linterface framebuffer du noyau ? : rpondez Non.
Le clavier

1. 2. 3. 4. 5. 6.

Dtecter automatiquement la disposition du clavier ? : rpondez Non. Disposition du clavier : laissez fr. Jeu de dnitions XKB utiliser : laissez xorg. Modle de clavier : laissez pc105. Variant du clavier : laissez latin9. Options du clavier : : laissez le champ vide.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 77 / 240

La souris

1. Port de branchement de votre souris : laissez /dev/input/mice. 2. Protocole de gestion de votre souris : ImPS/2 convient pour la plupart des souris. 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.
Les modules

1. Modules du serveur X.org charger par dfaut : ne modiez pas la liste.. 2. Mettre une section "Files" de rfrence dans la conguration ? : rpondez Oui.
Lcran

1. Dtecter automatiquement lcran ? rpondez Oui 2. Choisissez ensuite un identiant pour votre moniteur (on met en gnral le nom de modle). 3. Modes vido utiliss par 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). 4. 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). 5. Inscrire les plages de frquence dans la conguration ? : rpondez Oui 6. Profondeur de couleur par dfaut : sauf si vous avez une vieille carte graphique avec une mmoire vido limite, slectionnez 24 bits.
Fin...

Une fois que debconf a ni sa srie de questions, il gnre le chier de conguration du serveur graphique /etc/X11/xorg. conf.

Recommencer ?
Si vous vous tes tromp dans la conguration, vous pouvez recommencer en recongurant le paquet xserver-xorg : # dpkg-reconfigure xserver-xorg

24.3 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


Le bureau Gnome contient normment de programmes, parmi lesquels gurent des jeux ou des outils qui ne vous serviront pas ncessairement. Plutt que dinstaller un bureau Gnome complet, nous allons installer les programmes les plus importants, qui sufsent obtenir un environnement agrable : # apt-get install gdm-themes gnome-themes-extras xscreensaver gdm evince \ gnome-media gnome-themes gnome-volume-manager libgnomevfs2-extra \ sound-juicer totem totem-gstreamer gnome-core gnome-system-tools \ gnome-utils

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 78 / 240

Lancer 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.

Le chier de log
chaque lancement ou tentative de lancement du serveur X, celui-ci produit un chier de log /var/log/Xorg.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. Afchez /var/log/Xorg.0.log (avec most). 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 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-xorg
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...

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 79 / 240

24.4 Peauner la conguration du serveur X


La conguration du serveur X est contenue dans le chier /etc/X11/xorg.conf. 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 :

F IG . 24.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 : 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 paquets 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 FontPath FontPath FontPath FontPath FontPath FontPath FontPath FontPath FontPath FontPath FontPath ... EndSection

"/usr/share/fonts/X11/misc" "/usr/X11R6/lib/X11/fonts/misc" "/usr/share/fonts/X11/75dpi/:unscaled" "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled" "/usr/share/fonts/X11/100dpi/:unscaled" "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled" "/usr/share/fonts/X11/Type1" "/usr/X11R6/lib/X11/fonts/Type1" "/usr/share/fonts/X11/75dpi" "/usr/X11R6/lib/X11/fonts/75dpi" "/usr/share/fonts/X11/100dpi" "/usr/X11R6/lib/X11/fonts/100dpi"

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 80 / 240

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" "xorg" Option "XkbModel" "pc105" Option "XkbLayout" "fr" Option "XkbVariant" "latin9" EndSection

La souris
Une seule section suft pour faire fonctionner plusieurs souris. Ainsi, si vous utilisez une souris dappoint sur un portable, il vous suft de la brancher pour pouvoir lutiliser. 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). Cela donne par exemple : Section "InputDevice" Driver "mouse" Option "CorePointer" Option "Device" "/dev/input/mice" Option "Protocol" "ExplorerPS/2" # Dcommentez la ligne suivante si vous avez une souris 2 boutons Option "Emulate3Buttons" "true" 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-xorg. Section "Device" Identifier Driver EndSection

"Generic Video Card" "nvidia"

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 81 / 240

Lcran
Le paramtre facultatif HorizSync prcise la plage des frquences de synchronisation horizontale en kHz. Le paramtre facultatif 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 HorizSync VertRefresh Option EndSection

"Generic Monitor" 28-50 43-75 "DPMS"

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 8 Modes "1024x768" "800x600" "640x480" EndSubSection SubSection "Display" Depth 16 Modes "1024x768" "800x600" "640x480" EndSubSection SubSection "Display" Depth 24 Modes "1024x768" "800x600" "640x480" EndSubSection EndSection

La section ServerLayout
Elle dnit lagencement de votre bureau. Cela peut tre utile si vous utilisez plusieurs crans, claviers et souris... : Le paramtre Screen assure le lien avec la section concernant la rsolution : il doit tre exactement identique au paramtres Identier de la section Screen.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 82 / 240

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 : Section "ServerLayout" Identifier Screen InputDevice InputDevice Option EndSection

"Default Layout" "Default Screen" "Generic Keyboard" "Configured Mouse" "OffTime"

"20"

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 EndSection

0666

Fin...
Une fois que le chier de conguration est au point, vous navez plus qu enregistrer les changements et relancer le serveur X.

24.5 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 83 / 240

Chapitre 25

Le bureau Gnome
Gnome est un grand projet ayant pour but de construire un environnement graphique libre et simple dutilisation. Il est bas sur une bibliothque graphique libre appele GTK+.

25.1 Dcouverte de Gnome


Linterface de Gnome est assez classique et trs simple comprendre. Elle se compose de trois parties : Une barre suprieure, qui contient notamment les trois parties du menu Gnome. Dans Applications, vous trouverez tous les programmes installs sur votre systme, rangs par catgories. Le menu Raccourcis vous donne accs aux rpertoires couramment utiliss, et le menu Bureau vous permet de rgler votre bureau et dadministrer votre systme. Un bureau, avec des icnes correspondant aux rpertoires les plus utiliss. Une barre infrieure, qui contient essentiellement la liste des fentres, et un slecteur despaces de travail (nous verrons tout lheure ce que cel signie). Si lapparence de votre bureau Gnome ne vous satisfait pas (le thme propos par Debian est assez laid, en fait), vous pouvez dja modier son aspect dans le menu Bureau > Prfrence > Thme

25.2 Utiliser Gnome


L encore, je ne vais pas faire de grands discours : promenez votre souris un peu partout et vous dcouvrirez par vous-mme.

F IG . 25.1 Le logo Gnome

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 84 / 240

Utiliser le gestionnaire de chiers Nautilus


Le gestionnaire de chier de Gnome sappelle Nautilus. Pour le lancer, ouvrez votre rpertoire personnel. Vous avez alors un gestionnaire de chiers tout simple comme ci-dessous.

F IG . 25.2 Nautilus
TUYAU Par dfaut, Nautilus afche les rpertoires dans des fentres trs simples, et ouvre une nouvelle fentre quand vous cliquez sur un sous-rpertoire. Vous pouvez changer ce comportement en allant dans dition > Prfrence > Comportement > Toujours ouvrir dans des fentres de navigation

Fermer le serveur graphique


Pour fermer Gnome et le serveur graphique, cliquez sur Bureau, puis sur Clore la session.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 85 / 240

Chapitre 26

Les bases de Linux en mode graphique


Dans ce chapitre, vous allez apprendre taper des commandes en mode graphique, lancer des applications graphiques, utiliser des bureaux virtuels, faire du copier-coller sous X et diter des textes.

26.1 Un terminal sous X


Gnome propose un mulateur de terminal, qui simule un vritable terminal. Vous le trouverez dans Applications > Accessoires > Terminal.

F IG . 26.1 Le terminal Gnome A noter quil existe un nombre important de terminaux. Citons : XTerm, ATerm, ETerm, Konsole, etc... Ils diffrent sur leurs fonctionalits, comme par exemple la gestion des onglets ou de la transparence. A vous dessayer !
TUYAU Vous aurez probablement souvent besoin dutiliser le terminal. En faisant glisser son icne du menu des Applications vers la barre suprieure, vous pouvez ajouter un petit raccourcis ! Dans les prfrences du bureau, vous pouvez galement dnir un raccourci clavier pour lancer un terminal dune simple combinaison de touches !

26.2 Faire du copier-coller sous X


Pour copier du texte, comme sous Windows, vous pouvez utiliser les commandes Copier et Coller ou leurs quivalents au clavier. Le serveur graphique X.org offre une possibilit bien plus efcace, le copier-coller la X-Window :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 86 / 240

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 bouton du milieu 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).

26.3 Lancer et tuer une application graphique


Lancer une application graphique
Utiliser le menu Applications

Vous pouvez chercher lapplication graphique dans les catgories du menu Applications (toutes les applications graphiques y sont ajoutes et ranges automatiquement lors de leur installation).
Lancer depuis un terminal

Vous pouvez galement lancer une application graphique depuis un terminal : tapez-y la commande correspondante avec ses options suivie du caractre &, qui demande au programme de vous rendre la main sur le Shell. Par exemple, pour lancer le programme xlogo :

F IG . 26.2 Lancer depuis un terminal Cette mthode permet de lancer facilement une application graphique en root : il suft de devenir root dans le terminal 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 !

Tuer une application graphique


Lancez le programme xkill depuis un terminal. Vous avez alors un curseur de souris spcial avec lequel vous allez cliquer sur lapplication graphique que vous voulez tuer. Bien sr, cette technique ne doit tre utilise que pour une application qui ne veut pas se fermer normalement.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 87 / 240

26.4 Utiliser les bureaux virtuels


Les quatre rectangles gris situs en bas droite de votre cran reprsentent vos espaces de travail ou bureaux virtuels. Vous vous trouvez actuellement dans le premier bureau, qui apparat color en bleu. Ces bureaux se comportent comme autant dcrans distincts, ce qui vous permet dorganiser vos fentres. Quand vous lancez un logiciel, celui-ci afche une fentre dans le bureau courant. Essayez maintenant de cliquer sur le rectangle du second bureau : cette fentre est reste sur le premier bureau ; elle nest donc plus afche ni liste dans la liste des fentres. Vous pouvez ainsi utiliser un bureau pour vos tches administratives (dplacer, renommer des documents), un autre pour votre travail (bureautique), un pour naviguer sur le Web et lire votre courrier, et un troisime pour couter de la musique, sans risquer de vous perdre dans des dizaines de fentres.
TUYAU Si quatre espaces de travail ne vous sufsent pas, dun clic droit sur la liste des bureaux virtuels, vous pouvez rgler leur nombre. Pour passer dun bureau un autre, vous pouvez cliquer sur les rectangles qui les reprsentent, ou utiliser les combinaisons Ctrl-Alt-gauche et Ctrl-Alt-droite. Ces combinaisons peuvent bien sr tre modies dans les prfrences du bureau Gnome.

26.5 Vim sous X


Vous pouvez bien sr utiliser Vim dans un terminal... mais vous pouvez aussi utiliser la version graphique de Vim : # apt-get install vim-gnome Il se lance avec la commande gvim.

F IG . 26.3 Gvim

26.6 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 terminal : 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 88 / 240

Chapitre 27

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 dinstaller deux logiciels que vous connaissez probablement dj sous Windows : Firefox pour la navigation Web et Thunderbird pour le mail et les news. Mozilla est un grand projet libre issu de la dcision douvrir le code source de Netscape, et il propose aujourdhui ces deux logiciels non seulement pour Linux, mais aussi pour Windows et Mac OS X.

27.1 Installer Iceweasel


Debian na pas laccord de la fondation Mozilla pour utiliser le nom Firefox . Sous Debian, ce navigateur porte donc le nom Iceweasel , mais il est pour le reste parfaitement identique au produit dorigine.

Installer les paquets


# apt-get install iceweasel iceweasel-l10n-fr

F IG . 27.1 Iceweasel

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 89 / 240

Surfer avec Iceweasel


Lancez Iceweasel partir du menu des applications ou dans un terminal. Si vous devez passer par un proxy pour aller sur le Web, allez dans le menu Edition > Prfrences et entrez ses paramtres.
TUYAU 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 la capture prcdente. Pour ouvrir un nouvel onglet, vous pouvez aller dans le menu Fichier ou cliquer du bouton du milieu sur un lien. Pour fermer longlet courant, il faut cliquer sur la croix rouge en haut droite. En haut droite, vous disposez dune zone qui permet dutiliser diffrents moteurs de recherche.

27.2 Le mail et les news avec IceDove


Comme pour Firefox, Debian na pas laccord de la fondation Mozilla pour utiliser le nom Thunderbird . Sous Debian, ce logiciel sappelle donc IceDove . Ce logiciel est capable de relever des messages par POP et IMAP, de lire des forums de news et de trier votre courrier automatiquement.

Installer les paquets


# apt-get install icedove icedove-locale-fr

Utiliser IceDove
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 > Paramtres des comptes . La conguration du ltrage des messages se fait dans le menu Outils > Filtres de messages. IceDove est facile congurer et linterface de la version Linux est identique celle de la version Windows (de Thunderbird) : je vous laisse donc dcouvrir tout seul toutes ses capacits !

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 90 / 240

F IG . 27.2 IceDove

27.3 Un client FTP graphique


Gnome permet de se connecter un serveur FTP directement dans Nautilus. Une fois connect un serveur, vous pourrez mme accder aux chiers qui sont dessus dans vos applications ! Pour cela, il faut aller dans le menu Raccourcis > Se connecter un serveur, choisir FTP public ou FTP (avec authentication), et rgler les paramtres de connexion.

F IG . 27.3 Connexion un serveur FTP


TUYAU Vous pouvez galement vous connecter dautres types de serveurs : SSH, SMB...

Si vous prfrez utiliser un client FTP ddi cel, vous pouvez installer gFTP, qui correspond au paquet gftp-gtk

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 91 / 240

Chapitre 28

La musique sous X
Nous vous proposons dinstaller un lecteur de musique de Gnome nomm Rhythmbox. Vous apprendrez galement encoder un CD audio en Ogg/Vorbis avec Sound Juicer.

28.1 Jouer de la musique avec Rhythmbox


Rhythmbox permet de lire les formats courants de musique, les CDs audio, ainsi que de grer une collection de musique et une liste de lecture.

Installation
Installez le paquet rhythmbox, ainsi quun dcodeur MP3 : # apt-get install rhythmbox gstreamer0.10-fluendo-mp3

Utilisation
Au premier lancement, vous arrivez dans linterface de Rhythmbox :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 92 / 240

F IG . 28.1 Rhythmbox Rhythmbox est capable de grer une discothque. Celle-ci est pour linstant vide. Vous pouvez la remplir en utilisant le menu Musique > Importer un dossier et en slectionnant un rpertoire contenant de la musique Dans la partie gauche, vous pouvez afcher votre bibliothque que musique ou la liste de lecture. Pour lire un morceau, doublecliquez dessus. Pour ajouter un morceau la liste de lecture, faites-ly simplement glisser, depuis la bibliothque ou depuis un explorateur de chiers Nautilus

28.2 Encoder un CD en Ogg/Vorbis avec Sound Juicer


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 Xiph.org 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.

Encoder un CD en Ogg Vorbis


Mettez un CD audio dans le lecteur : Sound Juicer se lance automatiquement. Si vous avez une connexion Internet, il va automatiquement consulter une CD database et tlcharger le nom de lauteur, de lalbum et des chansons.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 93 / 240

F IG . 28.2 Sound Juicer Nous allons maintenant jeter un oeil la conguration. Allez dans dition > Prfrences. Vous pouvez alors rgler le rpertoire dans lequel vous souhaitez stocker votre musique, larborescence qui doit tre cre en fonction des albums que vous encodez, ainsi que le format de sortie. Vriez que vous encoderez bien en Ogg multimdia. Fermez ensuite la fentre de rglages. Toutes les pistes du disque sont normalement coches, il suft de cliquer sur le bouton Extraire pour commencer lencodage.

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, vous pouvez ajouter vos sources de paquets un dpt Debian-multimdia, puis installer le paquet gstreamer0.10-lame, et enn suivre les explications de GnunuX.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 94 / 240

Chapitre 29

VLC, un lecteur multimdia


29.1 VideoLAN, cest quoi ?
VideoLAN est un projet libre dvelopp par des lves de lcole Centrale Paris 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 media player, 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 et en particulier la page "features" du VLC.

29.2 Installer VLC


AVERTISSEMENT La plupart des DVDs sont crypts pour rendre leur lecture impossible sans acheter un dcodeur au DVD, an de limiter les possibilits de copie. Heureusement, la bibliothque libre libdvdcss a t crite pour briser cette protection. Il est donc techniquement possible de lire des DVDs sous Linux sans acheter de lecteur commercial. La loi DADVSI rend toutefois illgal le contournement de mesures de protection. Il ny a pas encore de jurisprudence ce sujet, mais la lecture dun DVD avec un lecteur non commercial et la libdvdcss pourra peut-tre savrer passible de lourdes amendes.

La libdvdcss est dja hors la loi aux tat-Unis. Debian ne propose donc pas de paquet pour cette bibliothque. Si vous souhaitez pouvoir lire des DVDs crypts, vous allez donc devoir utiliser un dpt non ofciel, en ajoutant la ligne suivante au chier /etc/apt/sources.list : deb http://ftp.debian-unofficial.org/debian/ etch main Installez ensuite VLC avec son interface wxWindows (qui est linterface la plus jour) et la libdvdcss : # apt-get update # apt-get install libdvdcss2 wxvlc

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 95 / 240

29.3 Lancer VLC


Pour lancer VLC, il suft dutiliser la commande vlc. Ensuite, linterface est intuitive et tout se fait au clic !

F IG . 29.1 Interface wxWindows de VLC

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 96 / 240

Chapitre 30

Graver des disques


30.1 Installer les logiciels de gravure
Les bureau Gnome propose plusieurs logiciels permettant de graver des CDs. Nous vous proposons de dutiliser pour cela Nautilus, lexplorateur de chiers, et Brasero. # apt-get install nautilus-cd-burner brasero

30.2 Effacer un disque rinscriptible


Ne vous souciez pas deffacer vos disques. Tentez simplement de graver sur un disque dja utilis en suivant les explications suivantes, et, au moment de lancer lcriture, il vous sera propos deffacer votre disque.

30.3 Graver un disque de donnes


Introduisez un disque dans votre lecteur. Si ce disque est vierge, Gnome vous propose directement de crer un disque de donnes. Sil est dja utilis et que vous souhaitez remplacer son contenu, utilisez le menu Raccourcis > Crateur de CD/DVD.

F IG . 30.1 Insertion dun disque vierge Vous pouvez maintenant placer les documents que vous souhaitez dans la fentre de cration du disque. Pour cel, vous pouvez glisser, copier, couper ou coller des chiers et des rpertoires depuis un explorateur de chiers.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 97 / 240

F IG . 30.2 Cration dun disque de donnes

30.4 Graver une image de disque


Si vous avez rcupr une image de disque, pour la graver, depuis un explorateur de chiers Nautilus, il suft de cliquer-droit dessus, et dutiliser lentre Graver un disque.

30.5 Graver un CD de musiques


Lancez Brasero depuis le menu Applications > Son et vido > Gravure de CD/DVD. Choisissez ensuite de commencer un Projet audio. Brasero vous explique alors comment ajouter des pistes musicales : vous pouvez faire glisser des chiers depuis un explorateur, faire des copier-coller ou encore utiliser lexplorateur intgr la fentre de Brasero
NOTE Vous pouvez demander Gnome de lancer Brasero lorsque vous introduisez un disque vierge et choisisser de graver un disque audio. Pour cel, allez dans Bureau > Prfrences > Priphriques et mdias amovibles, et tapez brasero -a comme commande pour les CDs audio.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 98 / 240

Chapitre 31

La bureautique avec OpenOfce.org


OpenOfce.org (souvent abrg en OOo ) est une suite bureautique libre 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.org 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.org, mais Sun continue de sortir de nouvelles versions de StarOfce (StarOfce 6...) dsormais payantes et packages avec des fonctions supplmentaires.

31.1 Installer OpenOfce.org


OpenOfce.org tant prsent dans Debian, il suft dinstaller les paquets :

# apt-get install openoffice.org openoffice.org-gnome openoffice.org-l10n-fr openoffice.org

31.2 Lancer OpenOfce.org


Les diffrents composans dOpenOfce.org sont accessibles par le menu Applications > Bureautique : Fonction Traitement de texte Tableur Prsentation Dessins, schmas Bases de donnes composant dOOo Writer Calc Impress Draw Base quivalent Microsoft Ofce Word Excel PowerPoint inexistant Access

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 99 / 240

F IG . 31.1 Writer, le traitement de texte dOpenOfce.org 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 la partie francophone du site ofciel dOpenOfce. OpenOfce est capable dexporter ses documents au format PDF. Cest trs pratique pour diffuser les documents cres avec OpenOfce.org des gens qui ne se sont pas encore convertis !

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 100 / 240

Chapitre 32

La manipulation dimages
32.1 Afcher des images
Pour afcher une image, double-cliquez simplement dessus : elle souvre alors avec Eye of Gnome, l&#339 ;il de Gnome. Pour afcher une srie dimages sous forme de diaporama, ouvrez la premire image du rpertoire, puis utilisez le menu Afchage > Diaporama

32.2 Traiter des images en ligne de commande avec ImageMagick


# apt-get install imagemagick ImageMagick 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 ou de transformer une image. Par exemple, pour passer une image du format JPEG au format EPS : % convert image1.jpg image1.eps On peut aussi redimensionner une image (ici, on la redimentionne sans modication de rapport, de faon ce quelle rentre dans un carr de 100100) : % convert -geometry 100x100 image_originale.jpg image_redimensionne.jpg La commande mogrify permet deffectuer des transformations, tout comme convert, mais en traitant les images sur place, sans crer de nouveau chier. Cela savre trs utile pour redimentionner toute une srie de phots.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 101 / 240

32.3 La retouche dimages avec Gimp


Gimp est un logiciel libre de retouche dimage, souvent compar Photoshop. # apt-get install gimp Linterface de Gimp se dcompose en trois fentre. La premire donne accs la bote outils de base. Une seconde fentre contient limage en cours de traitement, ainsi quune barre qui donne accs aux manipulations sous forme de menus. Enn, une troisime fentre contient les listes des calques, canaux et chemins de limage. Gimp est assez simple utiliser si vous avez dja lhabitude dutiliser ce genre de logiciel. Si vous dcouvrez le traitement dimages, je vous conseille de suivre quelques tutoriels de Gimp-fr.

F IG . 32.1 Gimp, fentres doutils et dimage


NOTE The Gimp permet aussi de faire facilement des captures dcran sous X : menu Fichier, Acquisition, Capture dcran.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 102 / 240

Chapitre 33

La messagerie instantane avec Gaim


Gaim, qui sappelle maintenant Pidgin, est un client de messagerie instantane capable de se connecter bon nombre de protocoles de messagerie : Jabber, AIM, ICQ, IRC, MSN...
NOTE Jabber est un protocole de messagerie instantane. Contrairement la plupart des autres protocoles, Jabber est ouvert et normalis. Il permet en outre une interconnexion avec les autres protocoles.

33.1 Installation de Gaim


Installez simplement le paquet gaim # apt-get install gaim

33.2 Utilisation de Gaim


Vous pouvez lancer Gaim depuis le menu Applications > Internet Linterface de Gaim comporte deux fentres : une liste des comptes, et une liste de contacts. Pour linstant, les deux sont vides.

F IG . 33.1 Gaim, liste des contacts et liste des comptes

Congurer un compte
Vous pouvez ouvrir un compe Jabber depuis Gaim. En revanche, pour utiliser un les protocoles propritaires comme MSN ou AIM, vous devez dja possder un compte sur ces rseaux.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 103 / 240

Cliquez sur le bouton Ajouter de la liste des comptes. Rglez les paramtres du compte : lalias local est le nom qui dsignera votre compte dans la liste des comptes. Si vous souhaitez crer un compte Jabber, cliquez sur Senregistrer. Validez en cliquant sur Enregistrer.

F IG . 33.2 Ajout dun compte

Discuter
Vous pouvez maintenant ajouter des contacts depuis le menu de la liste des contacts. Pour parler quelquun, cliquez sur son icne dans cette liste. Les possibilits de Gaim sont nombreuses : vous pouvez galement grer des groupes ou des salons de discussion...

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 104 / 240

Chapitre 34

Avant daller plus loin... un point sur la mthode


Vous arrivez la n des trois premires parties de cette formation. Lobjectif de ces trois premires parties tait de passer en douceur de Windows Linux... jespre que vous tes maintenant capable de faire sous Linux la plupart des choses que vous faisiez avant sous Windows ! Avant daller plus loin et daborder des sujets plus avans, il est bon de faire le point sur certaines mthodes utiles dans lutilisation de Debian au quotidien. Vous connaissez normalement la plupart des commandes utilises dans ce chapitre... mais pas forcment les mthodes exposes ci-dessous !

34.1 Mthode pour installer un logiciel


Le syndrome
Mon ami ma parl dun super navigateur pour Linux diffus en logiciel libre... mieux que Mozilla... il sappelle Galeon ! Votre rexe dancien utilisateur de Windows sera peut-tre de faire une recherche sur Google pour trouver le site Web du logiciel, de le tlcharger et dessayer de linstaller... Mais comme cest un logiciel libre pour Linux, alors il est probablement disponible (on dit aussi "packag") dans la Debian !

Faire une recherche dans la base des paquets Debian


Votre premier rexe de nouvel utilisateur de Debian doit donc tre de faire une recherche dans la base des paquets : % apt-cache search galeon galeon - GNOME web browser for advanced users galeon-common - GNOME web browser for advanced users

Les rsultats ci-dessus ont lair de correspondre ce que lon cherche ! Le rexe suivant est dafcher les caractristiques et la description de ce paquet : % apt-cache show galeon % apt-cache show galeon Package: galeon Priority: optional Section: gnome

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 105 / 240

Installed-Size: 1604 Maintainer: Loic Minier <lool@dooz.org> Architecture: i386 Version: 2.0.2-4 Replaces: galeon-beta, galeon-snapshot, galeon-nautilus, galeon-common Provides: www-browser, gnome-www-browser Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.12.2), libbonobo2-0 (>= 2.13.0), libbonoboui2-0 (>= 2.5.4), libc6 (>= 2.3.6-6), libcairo2 (>= 1.2.4), libfontconfig1 (>= 2.4.0), libgconf2-4 (>= 2.13.5), libglade2-0 (>= 1:2.5.1), libglib2.0-0 (>= 2.12.0), libgnome-desktop-2 (>= 2.11.1), libgnome-keyring0 (>= 0.6.0), libgnome2-0 (>= 2.14.1), libgnomecanvas2-0 (>= 2.11.1), libgnomeui-0 (>= 2.13.0), libgnomevfs2-0 (>= 2.13.92), libgtk2.0-0 (>= 2.8.0), libice6 (>= 1:1.0.0), libmozjs0d (>= 1.8.0.5), libnspr4-0d, liborbit2 (>= 1:2.14.1), libpango1.0-0 (>= 1.14.8), libpopt0 (>= 1.10), libsm6, libstartup-notification0 (>= 0.8-1), libx11-6, libxcursor1 (>> 1.1.2), libxext6, libxfixes3 (>= 1:4.0.1), libxi6, libxinerama1, libxml2 (>= 2.6.27), libxrandr2, libxrender1, libxul0d, procps, galeon-common Recommends: gnome-icon-theme (>= 1.1.3-1), yelp, scrollkeeper, iso-codes, gnome-control-center Suggests: mozplugger Filename: pool/main/g/galeon/galeon_2.0.2-4_i386.deb Size: 729864 MD5sum: 94b9c5768d7a05d149197877f18cfd0b SHA1: 1bb8ef10676ebb9c121ef7a61ad67dd4cbe7a992 SHA256: 10a1bd96150a2928e703d75e10f16db8120c7aed1d3e3fc384a0401aedf864d1 Description: GNOME web browser for advanced users A standards compliant web browser, which integrates well with the GNOME desktop environment. It does not include an email client, irc bot, website designer etc., therefore has a moderate resource usage. Internally the program uses Mozillas Gecko rendering engine to display the web pages so is fully feature complete and standards compliant, as well as rendering pages quickly. . Homepage: <http://galeon.sourceforge.net/> Tag: filetransfer::ftp, filetransfer::http, implemented-in::c, interface::x11, network::client, protocol::{ftp,http,ipv6}, role::program, suite::gnome, uitoolkit::gtk, use::browsing, use::viewing, web::browser, works-with::text, works-with-format::html, x11::application

La description conrme que cest bien le paquet quil nous faut. Le champ Recommends conseille dinstaller galement le paquet yelp. La description de ce dernier paquet nous apprend quil sagit dun navigateur daide pour Gnome (qui peut utiliser Galeon).

Installer le paquet
Pour installez Galeon, il suft donc de laner la commande suivante : # apt-get install galeon

34.2 Mthode pour apprendre se servir dun logiciel


Pour les applications graphiques, il ny a gnralement pas de mystre : il suft de laner lapplication avec la commande ayant le mme nom que lapplication, et les fonctions devraient tre toutes accessibles par linterface.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 106 / 240

Il en va tout autrement pour les applications en console et les serveurs. La mthode expose ci-dessous va vous apprendre quelques rexes avoir pour apprendre se servir dun logiciel non graphique dont vous venez dinstaller le paquet.

Ausculter le paquet
Tout dabord, commencez par regarder la liste des chiers qui taient contenus dans le paquet : % dpkg -L nom_du_paquet Si les chiers installs sont nombreux, vous pouvez nafcher que ceux qui vous intressent : la liste des excutables : % dpkg -L nom_du_paquet | grep bin la liste des chiers de conguration : % dpkg -L nom_du_paquet | grep etc la liste des chiers contenant de la documentation : % dpkg -L nom_du_paquet | grep doc la liste des manuels : % dpkg -L nom_du_paquet | grep man

Lire la documentation et les manuels


Maintenant que vous cernez mieux le contenu du paquet, il est fortement conseill dexplorer le rpertoire /usr/share/doc/ nom_du_paquet/. Ce rpertoire doit normalement contenir : un chier README.Debian, qui contient des infos sur la faon dont a t fait le paquet (sa lecture est fortement conseille, car il contient des explications sur les diffrences ventuelles entre le logiciel tel quil est disponible sur Internet et le logiciel tel quil est packag dans la Debian) ; un chier README, qui est le README du logiciel ; un chier changelog.Debian, qui contient lhistorique du paquet Debian ; un chier changelog, qui contient lhistorique du logiciel ; un chier copyright, qui contient le texte de la licence du logiciel ; ventuellement dautres chiers contenant de la documentation sur le logiciel au format texte ou HTML.
NOTE Certains chiers sont compresss (extension .gz) ; pour les lire, utilisez zless, most ou vim, qui sont capables de faire la dcompression la vole.

ATTENTION Pour les logiciels qui ont une documentation volumineuse, ce qui est souvent le cas des logiciels serveurs, la documentation est parfois contenue dans un paquet part. Par exemple, la documentation du serveur Web Apache est contenue dans le paquet apache-doc.

Enn, lisez les manuels des commandes :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 107 / 240

% man nom_de_la_commande
NOTE Souvent, un mini-manuel de la commande est disponible en tapant :

% nom_de_la_commande --help

34.3 Mthode de rsolution des problmes


Quand vous rencontrez un problme avec un logiciel packag dans la Debian, les rexes suivants doivent devenir naturels !

Relire la documentation
Votre premier rexe doit tre de lire - ou plutt de relire - la documentation du logiciel.

Utiliser le Bug Tracking System de Debian


Si votre problme est en fait un bug du logiciel ou un problme spcique au paquet Debian, alors il a trs probablement dj t constat par dautres utilisateurs de Debian, et il est donc probablement rfrenc dans le Bug Tracking System (ou BTS) de Debian. Pour le savoir, allez sur linterface Web du BTS, accessible ladresse bugs.debian.org, et faites une recherche en prcisant le nom du paquet et la version de Debian que vous utilisez (stable, testing ou unstable). Le rsultat de votre recherche consistera en une liste de bugs classs par gravit (de critical wishlist en passant par grave, serious, important, normal et minor). Chaque bug est numrot et dcrit succintement. Si vous cliquez sur un bug particulier, vous aurez alors une description plus dtaille du problme sous forme de-mail (les rapports de bugs et tous les commentaires sont en fait des e-mails), et vous pourrez lire les posts des autres utilisateurs ou dveloppeurs Debian au sujet de ce bug... la solution votre problme se trouve peut-tre sous vos yeux !
NOTE Si vous tes certain que le problme que vous rencontrez est un bug, et que ce bug nest pas encore rfrenc dans le BTS, vous pouvez faire un rapport de bug ! Si vous tes connect Internet, tapez simplement la commande suivante :

% reportbug nom_du_paquet
et suivez les instructions qui safchent dans la console. La lecture de la page How to report a bug in Debian vous donnera plus de conseils et de dtails sur la procdure suivre.

Chercher dans Google


Google 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 108 / 240

Poster dans les mailing-lists ou les forums


Si, aprs avoir cherch dans la documentation, dans les FAQs, dans le BTS et dans Google, vous ne trouvez toujours pas de rponse votre problme, vous pouvez faire appel laide la communaut Linux. Trois possibilit soffrent vous : poster dans les mailing-lists Debian. Il existe des mailing-lists sur des sujets techniques particuliers, comme par exemple la mailing-list debian-laptop qui traite des aspects techniques spciques aux ordinateurs portables, et des mailing-lists par langue, comme par exemple la mailing-list debian-user-french, o les utilisateurs franais de Debian sentraident. Pour vous abonner aux mailing-lists Debian, rendez-vous ladresse www.debian.org/MailingLists/subscribe. poster dans 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. poster dans les mailing-lists des projets OpenSource. Pour connatre leur adresse, rendez-vous sur leur site Web.

ATTENTION Avant de poster, vriez que la rponse votre question ne se trouve pas dans une FAQ ou dans les archives de la mailing-list ou du forum.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 109 / 240

Quatrime partie

Debian GNU/Linux en rseau

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 110 / 240

Chapitre 35

Laccs distance par SSH


35.1 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, 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 L,mjycr2r !
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 et le lancer sur le chier /etc/shadow :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 111 / 240

# apt-get install john # john /etc/shadow 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.

35.2 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 une 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 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). 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 112 / 240

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.

35.3 Installation et conguration de SSH


Installation du client et du serveur SSH
Le client SSH est disponible dans le paquet openssh-client, qui est prinstall. Pour pouvoir vous connecter distance, vous pouvez maintenant installer le serveur SSH : # apt-get install openssh-server Linstallation comporte une tape de gnration des clefs de cryptage. Finalement, le serveur SSH se lance.

Conguration du serveur SSH


Le chier de conguration du serveur SSH est /etc/ssh/sshd_config. 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. 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. Sans cel, un pirate naurait qu trouver le mot de passe du compte root, alors que l, il doit trouver votre login et votre mot de passe. X11Forwarding yes Signie que vous allez pouvoir travailler en export display par SSH. Ce sera expliqu plus tard, dans le chapitre 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.

35.4 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 113 / 240

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 dauthentication. 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.

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 authentication par mot de passe.

35.5 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 lftp, 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 dauthentication par mot de passe ou par cls, lutilisation est la mme.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 114 / 240

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
Utiliser lftp

Je vous avais dj parl dutilisation de lftp comme client FTP dans la section Le FTP en console. Mais ce que je ne vous avais pas dit, cest que lftp sait aussi transfrer des chiers par SSH ! Pour linstallation et la conguration de lftp, reportez-vous la section Le FTP en console. Pour se connecter par SSH en utilisateur toto sur le serveur ordi1.exemple.org : % lftp sftp://toto@ordi1.exemple.org Ensuite, les commandes sont exactement les mmes que lors de lutilisation de lftp comme client FTP !

En graphique
Gnome permet de se connecter un serveur SSH directement dans Nautilus. Comme pour FTP, cela permet daccder aux chiers distants depuis toutes les applications Gnome. Pour cela, allez dans le menu Raccourcis > Se connecter un serveur, puis choisissez SSH, et rglez les paramtres de connexion.

F IG . 35.1 Connexion un serveur SSH

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 115 / 240

35.6 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 sauthentier. 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

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.

35.7 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 : % 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, et le pare-feu ne doit pas bloquer ce port). Ensuite, il suft de laner un navigateur Web en lui demandant de se connecter en local sur ce port : % w3m http://localhost:2012

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 116 / 240

F IG . 35.2 Exemple de tunnel SSH

35.8 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 transfrs 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 paquet telnet. Ce paquet est install par dfaut. Le serveur Telnet se trouve dans le paquet 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 117 / 240

Chapitre 36

Faire de lexport display


36.1 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...

F IG . 36.1 Le principe de lexport display

36.2 Se connecter un Unix/Linux distance...


depuis une machine Unix/Linux
Il y a plusieurs possibilites de connexion, sachant que seule la premire est entirement crypte.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 118 / 240

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 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, GDM doit tre install sur le serveur. 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. Depuis le GDM du client, allez dans le menu : Actions > Excuter le slecteur XDMCP, puis rentrez le nom ou lIP de votre serveur XDMCP. vous devriez alors arriver sur la fentre GDM du serveur.

depuis une machine Windows


Il suft dinstaller sur la machine Windows un serveur X, comme XMing, ainsi quun client SSH comme PuTTY. Son installation et son utilisation, notamment pour faire de lexport display de Linux vers Windows, sont expliques dans lannexe Outils Windows pour Linuxiens.

36.3 Se connecter un Windows distance depuis un Linux


Il y a plusieurs possibilits ([TODO : quels sont les niveaux de scurit de chaque possibilit ?] : par VNC vers un Windows sur lequel tourne un serveur VNC : installez le paquet xvncviewer qui contient un client VNC puis lancez la commande suivante pour vous connecter au serveur VNC : % xvncviewer serveur.exemple.org

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 119 / 240

par Terminal Serveur vers un Windows 2000 Server ou Remote Desktop vers un Windows XP Pro (le protocole est le mme) : installez le paquet 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

F IG . 36.2 rdesktop

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 120 / 240

Chapitre 37

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.

37.1 NFS ct client


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 /media/test Une fois que vous navez plus besoin de ce partage, vous pouvez le dmonter : # umount /media/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 /media/test nfs soft,timeo=5,intr,rsize=8192,wsize=8192

Pour comprendre les options, regardez leur description dans man mount.

37.2 NFS ct serveur


Conguration ncessaire
Il faut installer le paquet 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)

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 121 / 240

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 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 122 / 240

Chapitre 38

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.

38.1 Samba ct serveur


Installation des paquets
Il suft dinstaller le paquet samba, qui va installer par dpendance le paquet 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 ~/fichiers-config/smb.conf /etc/samba/ ou : % wget http://formation-debian.via.ecp.fr/fichiers-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 lauthentication, et nmbd qui soccupe de la rsolution des noms NetBIOS.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 123 / 240

38.2 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
Monter un partage du voisinage rseau

Tout dabord, il faut avoir compil le module smbfs du noyau (cf [ ?]). Ensuite, il faut installer le paquet smbfs : # apt-get install smbfs

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 124 / 240

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 paquet 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 :

F IG . 38.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, Workgroup : entrez le nom du domaine ou du groupe de travail Windows.

Ensuite, cliquez sur Advanced Options :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 125 / 240

F IG . 38.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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 126 / 240

F IG . 38.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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 127 / 240

Chapitre 39

Se synchroniser sur un serveur de temps


39.1 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 sont les plus prcis et les plus rares ; ils ne sont accessibles qu des serveurs de Strates 2 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 qui est un serveur NTP Strate 2. Ce serveur est en accs libre et son nom est ntp.via.ecp.fr.

39.2 Se synchroniser sur le serveur de VIA


Installation dun client NTP
Installez le programme ntpdate : # apt-get install ntpdate

Conguration
Ladresse du serveur NTP sur lequel le client NTP va se synchroniser est crite dans le chier /etc/default/ntpdate, champ NTPSERVERS. Si vous voulez vous synchroniser sur le serveur NTP de VIA, entrez ladresse ntp.ipv4.via.ecp.fr. 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 128 / 240

Chapitre 40

Le travail en groupe avec Subversion


40.1 Quest-ce que Subversion ?
Subversion (alias SVN) 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, Subversion 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. Il a pour but de remplaer le logiciel CVS, qui assurait la mme tche, mais souffrait de certaines limitations dues la conception trop ancienne de son architecture (ces limitations sont expliques sur la page principale du site Web de Subversion). Les paragraphes suivants vous donnent un aperu des possibilits de Subversion et de sa mise en place. Pour plus dinformations, il existe une documentation trs complte (mais en anglais) disponible ladresse suivante : http ://svnbook.red-bean.com/ .

40.2 Installer et utiliser un client Subversion


Installer le paquet
Le client et le serveur Subversion sont contenus dans le paquet subversion : # apt-get install subversion

Utiliser le client Subversion


Rcuprer les chiers sur le serveur

Tout dabord, il faut rcuprer les chiers du dpt Subversion. Imaginons que vous ayez cr un dpt SVN appel projet1 sur la machine server.exemple.org, accessible lutilisateur toto (comme expliqu dans la section suivante Monter un serveur Subversion). Pour ce faire, on utilise la commande svn co (co tant un raccourci pour checkout) comme ceci : % svn co svn://toto@server.exemple.org/svn/projet1 Cela va crer un rpertoire appel projet1 dans le rpertoire courant, qui contiendra la version la plus rcente des chiers du dpt projet1. Il est galement possible de tlcharger des versions particulires ou uniquement certains chiers dun dpt. Par exemple, les commandes :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 129 / 240

% svn co svn://toto@server.exemple.org/svn/projet1 -r35 % svn co svn://toto@server.exemple.org/svn/projet1 --revision {2006-12-25 00:00} % svn co svn://toto@server.exemple.org/svn/projet1/trunk tlchargeront respectivement : la rvision 35 de projet1, la rvision en cours le 25 dcembre 2006 minuit de projet1, uniquement le rpertoire trunk de projet1.
Se synchroniser avec le serveur

Si vous tes plusieurs travailler sur un mme projet, il est fort possible que certains chiers soient modis par dautres contributeurs. La version disponible sur le serveur a donc chang, mais pas celle qui est prsente sur votre ordinateur. Pour synchroniser vos chiers avec ceux du serveur, il faut utiliser la commande svn up (avec up pour update). Par exemple, pour mettre jour le rpertoire trunk, il faut taper la commande : % svn up trunk De faon similaire la commande svn co, on peut demander SVN de se synchroniser avec la version 35, etc... On peut galement demander revenir la version prcdant la version en cours grce loption --revision PREV.
Manipuler les chiers

Subversion a ceci dextrmement pratique quil permet de garder un historique des modications apportes aux chiers du dpt. Imaginons que votre dpt contienne un chier truc.txt. Un jour, ce chier devient inutile et vous dcidez de le supprimer, mais paralllement, vous avez besoin de crer un chier truc.txt nayant rien voir dans un autre rpertoire. Comment SVN peut-il savoir si vous avez juste dplac et modi le chier truc.txt ou si vous lavez supprim puis vous avez cr un chier du mme nom ailleurs (auquel cas, le diff des deux chiers na aucun sens...). ? Cest pour cela que SVN a ses propres commandes pour dplacer, renommer... des chiers la place des commandes habituelles. Voyons les principales : svn list : liste les chiers prsents dans le rpertoire courant, svn add mon_fichier : ajoute le chier mon_chier au dpt, svn remove mon_fichier : supprime le chier mon_chier du dpt, svn move mon_fichier1 dossier/mon_fichier2 : dplace le chier mon_chier1 dans le rpertoire dossier et le renomme en mon_chier2, svn copy mon_fichier1 dossier/mon_fichier2 : copie le chier mon_chier1 dans le rpertoire dossier et le renomme en mon_chier2. Pour connatre lensemble des commandes disponibles, tapez : % svn help dans une console. Et pour obtenir la liste des options disponibles pour la commande ma_commande, tapez : % svn help ma_commande
Voir les modications apportes et commiter

Avant de commiter (envoyer les modications que lon a apportes sur le serveur), il peut tre utile de vrier les chiers que lon a modis ainsi que les modication que lon y a apportes. Pour cela, SVN fournit galement de nombreuses commandes : svn status : liste les chiers qui ont t modis depuis le dernier svn up. On peut connatre la nature des modications apportes grce au ag se trouvant juste avant le nom du chier. Par exemple, M sigie modi, A ajout, D supprim, ? chier cr mais non ajout... svn diff mon_fichier : afche le diff entre le chier mon_chier et sa version courante (celle du dpt), svn log mon_fichier : afche lhistorique des modications du chier mon_chier,

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 130 / 240

svn cleanup : annule toutes vos modications de faon retourner au mme tat que lors de votre dernier svn up. Une fois que lon est bien sr des modications que lon a apportes, on peut commiter grce la commande : % svn commit SVN vous demandera alors de dcrire les modications que vous avez apportes. Ce sont ces mmes lignes que vous verrez ultrieurement en faisant un svn log.

AVERTISSEMENT ATTENTION : Faites bien attention mettre jour les chiers que vous avez modis avant de commiter (commande svn up), sinon vous risquez dannuler les modications quun autre utilisateur a effectues !

NOTE Ceci nest quun rapide aperu de lutilisation de Subversion. SVN est bien plus puissant, et vous pourrez trouver la documentation de rfrence (en anglais) ici .

40.3 Monter un serveur Subversion


Crer un repository SVN pour un premier projet
Je vais vous guider pas--pas pour la cration dun rpository SVN pour un projet dexemple appel projet1. Commenez par crer un groupe svn-projet1 associ au rpository, qui permettra une bonne gestion des droits daccs au rpository : # addgroup --system svn-projet1 Ensuite, crez le rpository SVN (situ dans le rpertoire /usr/local/svn/projet1 dans notre exemple, mais nous crerons aussi un lien symbolique /svn/ qui servira de raccourci) et donnez-lui les bonnes permissions : # # # # # mkdir /usr/local/svn ln -s /usr/local/svn /svn svnadmin create --fs-type fsfs /usr/local/svn/projet1 chgrp -R svn-projet1 /usr/local/svn/projet1 chmod -R g+w /usr/local/svn/projet1

Donner laccs aux utilisateurs du systme via SSH


NOTE Cette section requiert quun serveur SSH soit install sur le systme. Pour plus dinformations sur ce sujet, cf Laccs distance par SSH.

Pour donner un accs au SVN lutilisateur toto qui a un compte sur le systme, il suft alors de le rajouter dans le groupe svn-projet1 : # adduser toto svn-projet1 Lutilisateur toto peut alors se connecter au SVN par SSH : % svn co svn+ssh://toto@server.exemple.org/svn/projet1 o serveur.exemple.org est le nom DNS du serveur. lexcution de la commande, 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).

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 131 / 240

Donner laccs des utilisateurs extrieurs


Pour donner accs au SVN des utilisateurs qui nont pas de compte sur le systme, il faut passer par inetd : toute connexion sur le port SVN (port 3690, cf. /etc/services) dclenchera le lancement de svnserve en tant quutilisateur svnowner. Crez lutilisateur svnowner et donnez-lui les droits sur le rpository SVN : # adduser --system --home /usr/local/svn svnowner # chown -R svnowner /usr/local/svn/ Ajoutez la ligne suivante au chier /etc/inetd.conf : svn stream tcp nowait svnowner /usr/bin/svnserve svnserve -i Dites inetd de tenir compte de ce changement : # /etc/init.d/inetd reload Ensuite, ditez le chier /usr/local/svn/projet1/conf/svnserve.conf. Vous allez dcommenter certaines lignes pour congurer les droits daccs votre rpository SVN ; les lignes qui commencent par trois # sont des commentaires ( lire !) ; les lignes qui commencent par un seul # sont destines tre dcommentes et personnalises pour rpondre vos besoins. Pour les projets OpenSource, il est courant de donner un accs en lecture seule aux utilisateurs non authentis. Si telle est votre motivation, mettez le paramtre anon-access read ; sinon, pour empcher tout accs non authenti, mettez-le none. Quant au paramre auth-access, il contrle le niveau dautorisation des utilisateurs authentis ; pour donner un accs en lecture et en criture aux utilisateurs authentis, ce qui est probablement votre souhait, mettez-le write. Le paramtre password-db dnit lemplacement du chier contenant les noms dutilisateurs et leurs mots de passe. Enn, le paramtre realm vous permet de donner un nom long votre rpository, qui sera communiqu la personne qui se connecte au serveur SVN. Par exemple, pour un rpository sans accs anonyme en lecture seule, le chier svnserve.conf contiendra par exemple les lignes suivantes : [general] anon-access = none auth-access = write password-db = passwd realm = Le projet numro 1 Enn, crez le chier contenant les noms dutilisateur et les mots de passe, que vous avez dni dans le chier svnserve. conf. Dans notre exemple, nous avons mis la ligne password-db = passwd ; nous allons donc crer un chier passwd dans le mme rpertoire que le chier svnserve.conf, et qui ressemblera au chier suivant si on veut avoir deux utilisateurs toto et tonton : [users] toto = mot_de_passe_de_toto_en_clair tonton = mot_de_passe_de_tonton_en_clair Enn, assurez-vous que le chier appartient lutilisateur svnowner et restreignez les droits sur ce chier pour que tous les utilisateurs du systme ne puissent pas voir les mots de passe quil contient : # chown svnowner /usr/local/svn/projet1/conf/passwd # chmod 600 /usr/local/svn/projet1/conf/passwd Lutilisateur toto peut maintenant se connecter au serveur grce au client SVN quil aura pralablement install sur sa machine. Il lui sufra dexcuter la commande suivante sur sa machine pour checkouter le rpository :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 132 / 240

% svn co svn://toto@server.exemple.org/svn/projet1 o serveur.exemple.org est le nom DNS du serveur.


NOTE Lauthentication se fait par la technique du "challenge" ; le mot de passe nest donc pas transmis sur le rseau.

La notication de commit par mail


Nous allons congurer le rpository SVN 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, le message de commit et les modications effectues. Installez le paquet subversion-tools qui contient notamment un script de notication des commits par mail : # apt-get install subversion-tools Activez lutilisation de ce script pour votre rpository SVN : # cd /usr/local/svn/projet1/hooks/ # mv post-commit.tmpl post-commit # chmod 755 post-commit Dans le chier post-commit, vous verrez la n une ligne de commande qui fait appel un script /usr/lib/subversion/ hook-scripts/commit-email.pl, qui est le script de notication par mail du paquet subversion-tools. Vous pouvez amliorer lutilisation du script en modiant le chier post-commit pour quil ressemble par exemple a : REPOS="$1" REV="$2" AUTHOR=$(svnlook author --revision $REV $REPOS)

/usr/lib/subversion/hook-scripts/commit-email.pl "$REPOS" "$REV" --from "provenance@exemple -s "[projet1] $AUTHOR |" destination@exemple.org o provenance@exemple.org et destination@exemple.org sont les adresses de provenance et de destination des mails de commit. Par exemple, vous pouvez mettre en adresse de provenance et de destination une mailing-liste laquelle tous les participants du projet sont abonns. Vous pouvez galement personnaliser le ag dans le sujet du mail, qui est [projet1] dans cet exemple. Dsormais, les commits ne passeront plus inaperus !

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 133 / 240

Cinquime partie

Debian GNU/Linux en console

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 134 / 240

Chapitre 41

Le mail en console
Je vous propose la solution suivante si vous voulez lire votre mail en console : utiliser 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 pour le trier et spamassassin pour ltrer le spam ; utiliser mutt comme lecteur de mail.

41.1 Rapatrier son mail


Commencez par installer fetchmail : # apt-get install fetchmail Ds linstallation du paquet, 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://formation-debian.via.ecp.fr/fichiers-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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 135 / 240

41.2 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 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://formation-debian.via.ecp.fr/fichiers-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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 136 / 240

41.3 Lire son mail avec mutt


Installer et congurer mutt
Le paquet 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 ou : % wget http://formation-debian.via.ecp.fr/fichiers-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. 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 :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 137 / 240

F IG . 41.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).

F IG . 41.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 :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 138 / 240

F IG . 41.3 Mutt : criture dun mail Une fois que vous avez ni, enregistrez et quittez... Vous arriver alors dans lcran denvoi des mails :

F IG . 41.4 Mutt : cran denvoi des mails Dans cet cran, vous pouvez appuyer 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,

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 139 / 240

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), 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.

41.4 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 :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 140 / 240

% mailq 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 141 / 240

Chapitre 42

Le mail en console (suite)


42.1 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 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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 142 / 240

42.2 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 rponds sur mon portable et ceux auquels je rponds sur le serveur soient marqus comme rpondus sur mon portable et sur le serveur aprs synchronisation. Cest le programme isync qui va soccuper de la synchronisation. La mise en place de ma solution avec isync requiert 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 paquet 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

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://formation-debian.via.ecp.fr/fichiers-config/muttrc % mv muttrc ~/.muttrc

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 143 / 240

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 : # apt-get install isync Rcuprez mon chier de conguration type pour isync : % wget http://formation-debian.via.ecp.fr/fichiers-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 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.

42.3 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, son utilisation et son intgration mutt.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 144 / 240

42.4 Adapter le champ From : en fonction du destinataire


Il est souvent ncessaire de devoir adapter ladresse mail que lon utilise en fonction de ladresse laquelle on crit. Par exemple, je peux avoir envie dutiliser mon adresse @via.ecp.fr chaque fois que jcris quelquun qui a une adresse @via.ecp.fr. send-hook ~t ^.*@via\.ecp\.fr$ my_hdr From: Robert Dupont <robert.dupont@via.ecp.fr> Dans le mme orde dide, je peux vouloir utiliser mon adresse professionnelle chaque fois que jcris un collgue. Il suft alors dajouter des entres de ce type pour chaque collgue (remplacer toto@free.fr par ladresse de vos collgues) : send-hook ~t ^toto@free\.fr$ my_hdr From: Robert Dupont <robert.dupont@my.company.fr> Ces deux exemples sont comments la n de la section 3 du chier de conguration de Mutt que nous vous avons fourni.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 145 / 240

Chapitre 43

LIRC en console
43.1 Installer un client IRC
Je vous propose dinstaller le client IRC irssi : # apt-get install irssi-text

43.2 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 :

F IG . 43.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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 146 / 240

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 :

18:27 18:27 18:27 18:27 18:27 18:27 18:27 18:27

Ircnets: IRCNet: querychans: 5, max_kicks: 4, max_msgs: 5, max_modes: 3, max_whois: 4 EFNet: max_kicks: 4, max_msgs: 3, max_modes: 4 Undernet: max_kicks: 4, max_msgs: 3, max_modes: 3 DALNet: max_kicks: 4, max_msgs: 3, max_modes: 6 OPN: max_kicks: 4, max_msgs: 1, max_modes: 4 GIMPNet: max_kicks: 4, max_msgs: 3, max_modes: 4 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 147 / 240

F IG . 43.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 n2. 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, /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,

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 148 / 240

/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 :

F IG . 43.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)] [(status)] [(status)] [(status)] [(status)] /set beep_when_window_active on /set beep_when_away on /set bell_beeps on /set beep_msg_level HILIGHT MSGS DCC DCCMSGS /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 : % cat /root/config/irssi-touches-fonction >> ~/.irssi/config ou : % wget http://formation-debian.via.ecp.fr/fichiers-config/irssi-touches-fonction % cat irssi-touches-fonction >> ~/.irssi/config Puis demande irssi de relire son chier de conguration : [(status)] /reload

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 149 / 240

Chapitre 44

Les news en console


44.1 Installer et congurer slrn
Installer le paquet
Je vous propose dinstaller le client news en mode texte slrn : # 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://formation-debian.via.ecp.fr/fichiers-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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 150 / 240

44.2 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 : % 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.

F IG . 44.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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 151 / 240

F IG . 44.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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 152 / 240

Chapitre 45

La messagerie instantane avec Centericq

NOTE Chapitre crit par Brian Fraval.

Il existe plusieurs clients ICQ en mode console, mais nous avons choisis centericq parce quil est simple dutilisation et supporte beaucoup de protocoles de communication (ICQ, Yahoo Messenger, AIM, MSN, IRC) et surtout Jabber.

45.1 Installation et conguration de centericq


Installer le paquet
# 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 :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 153 / 240

F IG . 45.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.

F IG . 45.2 Compte existant Cest dans ce formulaire que vous pouvez ajouter vos comptes de Yahoo messenger, AOL, et autres...

45.2 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 154 / 240

F IG . 45.3 Cration dun compte ICQ

45.3 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.

F IG . 45.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 :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 155 / 240

F IG . 45.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.

F IG . 45.6 Ajouter un contact la liste

45.4 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 !

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 156 / 240

F IG . 45.7 Discuter avec une personne

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 157 / 240

Chapitre 46

Outils dadministration systme


46.1 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 * * * music123 ~/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, music123 /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 * * * music123 ~/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 :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 158 / 240

*/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.

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.

46.2 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 vimun_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 paquet : # 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 :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 159 / 240

# 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 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.

46.3 Les outils de compression


Installer les paquets
Le paquet gzip qui supporte le .gz est install par dfaut, mais ce nest pas le cas des paquets 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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 160 / 240

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 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

46.4 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 paquet 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 paquet 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 paquet netdiag, qui permettent de diagnostiquer un problme de connexion.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 161 / 240

Chapitre 47

Graver en console
47.1 Installation des paquets
Installez les paquets requis : # apt-get install genisoimage wodim

47.2 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 genisoimage. 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 : % genisoimage -R -r -J --hide-rr-moved -V "SauvHome" -o backup.iso /home/toto/ Explication des options utilises dans genisoimage : -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 : % genisoimage -R -r -J --hide-rr-moved -V "SauvHome" -o backup.iso -graft-points /home/toto/ /etc/X11/XF86Config-4 win-toto/=/mnt/win/toto/

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 162 / 240

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 wodim

Maintenant que lISO est cre, vous allez utiliser la commande wodim pour graver le CD. Les options connatre et utiliser sont : dev=/dev/cdrw o /dev/cdrw est un lien symbolique pointant vers le priphrique correspondant votre graveur IDE ; -data image_ISO.iso pour prciser que lon grave partir de limage ISO dun CD ; blank=all pour effacer compltement le contenu dun disque rinscriptible ; blank=fast pour effacer la table des matires dun disque rinscriptible ;
Lancer la gravure

Pour lancer la gravure, tapez la commande suivante : # wodim -v dev=/dev/cdrw -data backup.iso

Copie directe de Lecteur CD Graveur


Pour raliser une copie directe de lecteur CD graveur, il faut lancer wodim avec loption -isosize : # wodim -v dev=/dev/cdrw -isosize /dev/cdrom

47.3 Les CDs audio


Quel programme utiliser ?
NOTE Lutilisation de wodim 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).

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 163 / 240

Graver avec wodim


Pour graver un CD audio avec wodim, 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 paquet du mme nom) : % cdparanoia -B -p
Graver le CD audio

Il suft alors de taper : # wodim -v -dev=/dev/cdrw -dao -audio track1.cdr track2.cdr track3.cdr [etc...] ou # wodim -v -dev=/dev/cdrw -dao -audio track1.wav track2.wav track3.wav [etc...] ou # wodim -v -dev=/dev/cdrw -dao -audio track1.au track2.au track3.au [etc...]

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 164 / 240

Chapitre 48

Les screens
48.1 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).

48.2 Installer et utiliser


Installer le paquet
# 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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 165 / 240

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] 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 166 / 240

Sixime partie

Conclusion et annexes

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 167 / 240

Annexe A

Apprendre et se tenir au courant


A.1 Apprendre
Internet
La (Linux entre amis)est un site daide aux dbutants sur les systmes Linux. Le site debian-fr.org rassemble des documentations en franais sur des sujets divers et varis : trs utile ! La section documentation du site ofciel Debian franais rassemble tous les manuels ofciels. Le wiki ofciel de Debian contient une bonne documentation sur Debian et son utilisation. Les forums et les articles du site Andesi pourront tre dun grand secours aux dbutants. Le guide de rfrence pour Debian, comme son nom lindique, un guide en franais trs complet sur Debian. Lencyclopdie libre Wikipdia est une trs bonne source de documentation en tout genre.

Magazines
Plante Linux est un bimensuel trs vulgaris, destin aux utilisateurs de Linux. Linux pratique est un magazine bimestriel destin aux utilisateurs des Linux. Chaque numro est accompagn dun CD, qui contient le plus souvent une distribution live ou installable. GNU/Linux Magazine France est un mensuel trs technique sur ladministration Linux, les logiciels libres et la programmation avec des outils libres. MISC est un magazine bimestriel assez technique sur la scurit informatique.

Livres
Framabook est une collection de livres libres slectionns par Framasoft. Les livres des ditions OReilly et Eyrolles sont trs connus et rputs srieux dans la communaut du logiciel libre. Notons en particulier : Le livre Cahiers de ladmin - Debian GNU/Linux de Raphal Hertzog, Christophe Le Bars et Roland Mas aux ditions Eyrolles. Debian 200%, aux ditions OReilly, est un recueil dastuces pratiques pour lutilisateur et ladministrateur Debian.

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 recense les LUGs classs par pays ; une liste des LUGs franais est disponible sur la Wikipdia, et une carte sur LinuxFrench.Net. De nombreux LUGs organisent des rencontres rgulires, qui sont rfrencs sur le site FirstJeudi.org.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 168 / 240

A.2 Se tenir au courant


Voil une liste de sites Webs traitant de lactualit Linux et des logiciels libres : LinuxFr est le site de lactualit Linux et des logiciels libres en franais, Slashdot (ou /.) est son quivalent anglais, beaucoup plus forte audience, Linux Today un site anglais dactualit gnraliste sur Linux, FreshMeat 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 chercher les logiciels libres existant dans un certain domaine. DebianTimes traite de lactualit Debian en anglais, Les actualits Debian sont un rsum en anglais de lactualit Debian de la semaine coule (vous pouvez aussi le recevoir par mail chaque semaine),

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 169 / 240

Annexe B

En cas de blocage...
B.1 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.

B.2 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.

B.3 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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 170 / 240

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.

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 [ ?]. 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)

B.4 Blocage au boot ou problme avec le boot loader


Vous avez mal congur votre boot loader et vous narrivez mme plus dmarrer ? Vous avez rinstall Windows et il a cras LILO ou Grub ? 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 : si elle est sur un disque IDE : # mkdir /mnt/root # mount /dev/ide/host0/bus0/targetX/lun0/partY /mnt/root o /dev/ide/host0/bus0/targetX/lun0/partY reprsente le disque dur o se trouve votre partition racine en "notation" devfs. Voil quelques exemples de correspondance entre la notation traditionnelle et la notation devfs qui vous permettront de comprendre comment a marche :

Notation traditionnelle /dev/hda1 /dev/hda2 /dev/hdb2 /dev/hdc5

Notation devfs /dev/ide/host0/bus0/target0/lun0/part1 /dev/ide/host0/bus0/target0/lun0/part2 /dev/ide/host0/bus0/target1/lun0/part2 /dev/ide/host0/bus0/target2/lun0/part5

TAB . B.1 si elle est sur un disque SATA ou SCSI : # mkdir /mnt/root # mount /dev/scsi/host0/bus0/targetX/lun0/partY /mnt/root o X dsigne le numro de votre disque SATA ou SCSI et Y dsigne le numro de votre partition Linux racine.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 171 / 240

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 /boot/grub/menu. lst avec vim. 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 172 / 240

Annexe C

Utiliser Dselect
C.1 Dselect ou apt-get ?
Comme nous lavons expliqu au chapitre Le systme de gestion des paquets Debian, dselect est une alternative apt-get pour la gestion intelligente des paquets. Dselect apporte un certain nombre de fonctions supplmentaires par rapport apt-get : il afche la liste des paquets disponibles avec leur tat et leur marquage ; il permet de marquer un paquet ; il prend en compte les paquets recommands ou suggrs et pas seulement les paquets 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 paquets recommands). Chaque utilisateur de Debian a le choix dutiliser apt-get ou dselect pour grer les paquets. A vous de trouver celui que vous prfrez...

C.2 Utiliser dselect


Dselect se lance simplement avec la commande du mme nom : # dselect Linterface apparat :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 173 / 240

F IG . C.1 Interface de dselect 7 tapes numrotes de 0 6 vous sont proposes. Nous allons vous les dtailler ci-dessous.

Etape 0 : Accder
Elle permet de congurer la liste des sources de paquets. 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 paquets Debian : le rsultat est le mme !

Etape 1 : Mise jour


Met jour la liste des paquets 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 paquets installer ou dsinstaller. Cest galement cette tape que sont grs le marquage, les dpendances, les conits... Quand vous entrez dans ltape n2, une page dexplication apparat : appuyez sur Espace pour voir apparatre lcran suivant :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 174 / 240

F IG . C.2 Etape n2 de dselect Cet cran est divis en deux parties : en haut, la liste de tous les paquets (installs ou non) ; en bas, un espace pour une description. Dans la liste des paquets (moiti haute de lcran), chaque ligne correspond un paquet. 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 paquet ; 5. la version installe (<none> si non install) ; 6. la version disponible (<none> si le paquet 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 175 / 240

Par exemple, si on place des barres de sparation entre les symboles (qui ne sont pas prsentes lcran), les combinaisons les plus courantes sont : | |*|*|*| : paquet install et marquage inchang ; | | |_|_| : paquet non install et marquage inchang ; | | |_|*| : paquet non install mais dsormais marqu pour tre install ; | |*|*|-| : paquet 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 paquet, appuyez sur / et tapez le nom ou une partie du nom dun paquet. Pour chercher linstance suivante, appuyez sur \. Pour revenir tout en haut de la liste, appuyez sur t. Quand vous tes sur un paquet, 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 paquet. Si le paquet vous plais et que vous voulez linstaller, appuyez sur +. Si le paquet ne dpend daucun autre paquet non-install et nentre en conit avec aucun paquet install, il devient marqu pour tre install : | | |_|*|. Cela veut dire que le paquet va tre install ltape suivante. Si le paquet dpend dautres paquets non encore installs ou non encore marqus pour tre install, ou sil entre en conit avec un paquet 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 paquets : en premier, le paquet que vous voulez installer ; il est marqu pour tre install : | | |_|*|. les paquets dont le paquet 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 paquets que le paquet 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 appuyer sur - pour enlever le marquage linstallation. les paquets que le paquet 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 paquets qui sont installs ou marqus pour tre installs et qui entrent en conit avec le paquet que vous voulez installer : ils sont alors marqus pour tre dsinstalls : | |*|*|_|. Quand vous vous positionnez sur un paquet, une description des interactions avec les autres paquets (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 paquet. 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 paquets, sauf si les changements de marquage ont fait intervenir dautres conits et/ou dpendances. Pour slectionner un paquet dsintaller, placez-vous sur celui-ci et appuyez sur : - (moins) pour retirer un paquet sans supprimer ses chiers de conguration ; _ (underscore) pour retirer le paquet 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 paquets 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 n2, appuyez sur X.

Etape 3 : Installer
Cette tape sert installer et dsinstaller les paquets 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 paquets 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 176 / 240

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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 177 / 240

Annexe D

Complments sur la gestion des paquets Debian


D.1 Tout savoir sur lutilisation dAPT
Pour tout savoir sur lutilisation dAPT, je vous invite lire le APT HOWTO en franais.

D.2 dpkg-deb
Dpkg a un grand frre, dpkg-deb qui sert construire et manipuler des paquets 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 paquet. dpkg-deb -c package_0.1_i386.deb : afche les noms des chiers contenus dans le paquet. dpkg-deb -X package_0.1_i386.deb rpertoire : extrait les chiers contenus dans le paquet dans le rpertoire spci.

D.3 Apt-le
Apt-le est un programme qui vient complter les commandes dpkg -S et dpkg -L qui se limitent dans leurs rsultats aux paquets installs. Pour utiliser apt-le, il faut dabord installer le paquet du mme nom, puis mettre jour sa base de donne propre contenant les chiers de tous les paquets : # apt-get install apt-file # apt-file update Puis on peut avoir la liste des chiers contenus dans un paquet mme si celui-ci nest pas install (contrairement la commande dpkg -L) : % apt-file list nom_du_paquet On peut galement savoir quel paquet appartient un certain chier, mme si le paquet (et donc le chier) nest pas install (contrairement la commande dpkg -S) : % apt-file search nom_du_fichier

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 178 / 240

D.4 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 paquets au format RPM. Dans ce cas, il faut utiliser alien pour convertir un paquet du format RPM au format Debian. Commencez par installer alien : # apt-get install alien Puis convertissez le paquet : # alien -d nom_du_paquet.rpm Enn, installez le paquet Debian gnr : # dpkg -i nom_du_paquet.deb

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 179 / 240

Annexe E

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 garantis pas le rsultat... mais toutes les remarques sont les bienvenues !

E.1 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, rendezvous sur le site 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 thoriques 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 (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, slectionnez nouveau votre imprimante et notez le driver recommand pour faire marcher votre imprimante sous Linux :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 180 / 240

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]

E.2 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 [ ?], vous avez du compiler les modules requis, il ne reste plus qu les charger la main : si vous avez une imprimante USB : # modprobe usblp 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
Installez les paquets de CUPS : # apt-get install cupsys cupsys-client cupsys-bsd foomatic-filters gs-esp Si le driver recommand pour votre imprimante est Gimp-print, installez en plus le paquet cupsys-driver-gimpprint. Si le driver recommand est hpijs, installez en plus le paquet du mme nom, hpijs.

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.

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/ . 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).

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 181 / 240

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 :

F IG . E.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 :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 182 / 240

F IG . E.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 !

E.3 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 !

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 183 / 240

F IG . E.3 Menu dimpression dOpenOfce

E.4 Transformer lordinateur en serveur dimpression


Maintenant que limpression en local marche, il est facile de transformer lordinateur en serveur dimpression ; les autres ordinateurs du rseau pourront alors se servir de limprimante distance !

Conguration du serveur dimpression


Sur lordinateur auquel est connect limprimante (dsormais appel serveur dimpression), ditez en root le chier /etc/ cups/cupsd.conf et positionnez-vous au niveau des lignes suivantes : <Location /> Order Deny,Allow Deny From All Allow From 127.0.0.1 </Location> Modiez le contenu de ce paragraphe pour autoriser dautres ordinateurs du rseau utiliser le serveur Cups de lordinateur. Par exemple, pour que tous les ordinateurs ayant des IPs comprises entre 192.168.0.1 et 192.168.0.255 puissent utiliser le serveur dimpression, modiez le paragraphe pour quil contienne : <Location /> Order Deny,Allow Deny From All Allow From 192.168.0.0/255.255.255.0 </Location> Ensuite, dites Cups de relire son chier de conguration : # /etc/init.d/cupsys reload Reloading CUPSys: cupsd.

Conguration des clients sous Debian GNU/Linux


Sur chaque ordinateur du rseau sous Debian susceptible dutiliser le serveur dimpression, excutez les instructions ci-dessous. Tout dabord, installez le programme client de Cups :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 184 / 240

# apt-get install cupsys-client Ensuite, ditez le chier /etc/cups/client.conf et dcommentez la ligne commenant par ServerName. Sur cette ligne, vous devez alors prciser ladresse IP ou le nom DNS du serveur dimpression. Par exemple, si votre serveur dimpression a ladresse IP 192.168.0.42, le chier /etc/cups/client.conf devra contenir : ServerName 192.168.0.42 Vous pouvez dsormais imprimer depuis le poste client comme si limprimante tait connecte directement lordinateur : la commande est la mme !

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 185 / 240

Annexe F

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.

F.1 Installer et utiliser hdparm


Il faut dabord installer le paquet : # 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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 186 / 240

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 [ ?] (menu ATA/IDE/MFM/RLL support) et loption correspondant leur chipset ont normalement le DMA activ par dfaut. 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.

F.2 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 :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 187 / 240

# cp ~/fichiers-config/hdparm.sh /etc/init.d/ ou : % wget http://formation-debian.via.ecp.fr/fichiers-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 # Script doptimisation des priphriques IDE avec hdparm # Formation Debian GNU/Linux par Alexis de Lattre # http://formation-debian.via.ecp.fr/ # 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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 188 / 240

Annexe G

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.

G.1 Installer et congurer GPM


Commencez par fermer votre serveur graphique si vous en avez un. Ensuite, installez le paquet 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 :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 189 / 240

# /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 !

G.2 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.

G.3 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 190 / 240

Annexe H

Faire marcher son port infrarouge


Il faut bien reconnatre que depuis lapparition des cartes bluetooth et wireless, le port IrDA est moins utilis, mais il reste nanmoins un moyen de communication entre laptops trs pratique quand on a rien sous la main ou encore pour une liaison avec un PDA.

H.1 Comment on installe ?


Compiler les modules du noyau
An de faire marcher le port infrarouge, il faut compiler les drivers du noyau. Ces derniers sont regroups dans le sous-menu : Networking support --> IrDA (infrared) subsystem support Activez les options suivantes : <M> IrDA subsystem support --IrDA protocols <M> IrLAN protocol <M> IrNET protocol <M> IrCOMM protocol --IrDA options [*] Cache last LSAP [*] Fast RRs (low latency) Si vous avez des priphriques connecter par IR, ceux-ci sont nomms "dongle" dans le kernel. Choissisez alors le driver qui convient (cette partie ne sera pas traite ici pour le moment). Allez dans le sous-menu Infrared-port device drivers et choissisez : --<M> --[*] SIR device drivers IrTTY (uses Linux serial driver) Dongle support Serial dongle support

Nous allons utiliser les drivers SIR, bien que ceux-ci soient plus lents que les FIR. En effet, ils sont supports par presque tous les matriels. En cas de soucis (avec les portables Toshiba en particulier) ou si vous voulez utiliser le FIR, il existe un howto, pas trs jour mais sufsant, ladresse http ://tuxmobil.org/Infrared-HOWTO/Infrared-HOWTO.html

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 191 / 240

ATTENTION Une petite remarque en passant : sur mon portable, le port infrarouge (maintenant que nous sommes intimes appelons le IR), tait dsactiv dans le BIOS par dfaut. Vriez bien que ce nest pas le cas chez vous ! Quand vous lactivez, vriez quil est bien en mode SIR (Slow mode) et notez le port COM

Vriez que vous avez le support pour le ppp dans le noyau et vous pouvez alors compiler et installer votre nouveau noyau, comme indiqu au chapitre [ ?].

Installer les programmes


Nous pouvons installer la partie userland qui gre le port IR : # apt-get install irda-utils Il faut rpondre une srie de questions poses via debconf : If you want to enable IrDA, say "Yes" : Oui, bien sr :) Select IrDA device type : serial Specify a serial device le for IrDA : Il faut saisir le numro du port srie que vous avez notez dans le BIOS, avec la rgle suivante : COM1 -> /dev/ttyS0 ; COM2 -> /dev/ttyS1 ... Specify the dongle type : si vous connaissez le driver de votre "dongle" prcisez le ce moment. Specify discovery behavior : Oui Toutes ces valeurs sont stockes dans le chier /etc/irda.conf, que vous pouvez diter ou modier si vous voulez changer quelque chose. Une autre mthode est de passer par debconf en utilisant : # dpkg-reconfigure irda-utils Linstallation de irda-utils a cr un chier nomm /etc/modutils/irda. Comme nous utilisons le noyau 2.6.X, nous allons le copier dans /etc/modprobe.d/ : # cp /etc/modutils/irda /etc/modprobe.d/ Il faut maintenant lditer et le changer ainsi : alias alias alias alias # for alias alias alias alias alias alias alias alias tty-ldisc-11 irtty-sir char-major-161 ircomm-tty char-major-60 ircomm_tty char-major-10-187 irnet dongle irda-dongle-0 irda-dongle-1 irda-dongle-2 irda-dongle-3 irda-dongle-4 irda-dongle-5 irda-dongle-6 irda-dongle-7

tekram-sir esi-sir actisys-sir actisys-sir girbil-sir litelink-sir airport-sir old_belkin-sir

Noubliez dexcuter update-modules ensuite an de tenir compte de ces changements. # update-modules Si ce nest pas fait, vous pouvez redmarrer an dutiliser votre nouveau noyau.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 192 / 240

H.2 Comment a marche ?


TODO : Connexion avec un PDA, IrLAN Une fois que tout est install, il est possible dutiliser le port IR de plusieurs manires. Jai choisi ici de ne prsenter que la mthode IrNET, qui me semble la plus pratique. Cette mthode utilise PPP pour crer une connexion entre 2 ordinateurs utilisant IrNET. Avant de commencer, il faut crer un chier /etc/ppp/options.irnet contenant : local noauth nolock connect-delay 0 idle 10 lcp-echo-failure 2 lcp-echo-interval 5 nobsdcomp deflate 11 11 Vous pouvez maintenant lancer des connexions sur les 2 ordinateurs connecter : # pppd /dev/irnet 9600 local noauth Le paramtre de vitesse est indispensable pour pppd, mais IrNet ne lutilise pas. Si vous voulez quun ordinateur se comporte comme un serveur : # pppd /dev/irnet 9600 local noauth passive pppd devrait attribuer automatiquement les IP aux ordinateurs se connectant, mais dans le cas contraire (si noipdefault est activ par exemple), il est possible de les spcier : # pppd /dev/irnet 9600 local noauth 10.0.0.1:10.0.0.2 Vous pouvez maintenant utiliser la connexion comme nimporte quelle connexion PPP. Pour plus de nesse dans lutilisation, un petit man pppd vous en apprendra beaucoup.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 193 / 240

Annexe I

LaTeX
I.1 Quest-ce que LaTeX ?
LaTeX 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.

I.2 Installer et utiliser LaTeX


Installer les paquets
Vous aurez besoin des paquets 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 et un aide mmoire, Le Joli manuel pour LaTeX, La FAQ LaTeX 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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 194 / 240

Visualiser
Le rsultat de la compilation est un chier rapport.dvi que vous pouvez visualiser avec le programme xdvi : % xdvi rapport.dvi &

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 paquet 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 paquet du mme nom) produit le texte avec les balises LaTaX sans les enttes. La commande est : % catdoc -f tex fichier.doc > fichier.tex

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 195 / 240

I.3 Faire des schmas pour LaTeX


Dia est un programme qui permet de faire facilement des schmas pour LaTeX ou pour dautres applications. Pour linstaller : # apt-get install dia-gnome

F IG . I.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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 196 / 240

Annexe J

Utiliser GnomeMeeting
GnomeMeeting 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 !

J.1 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 [ ?] et [ ?] 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 paquet de GnomeMeeting : # apt-get install gnomemeeting Lancez GnomeMeeting avec la commande du mme nom.

F IG . J.1 GnomeMeeting

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 197 / 240

Un assistant vous permet de congurer les principaux paramres de 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.

J.2 Utiliser GnomeMeeting deux


Cest trs simple : 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.

F IG . J.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.

J.3 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 paquet 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, 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 :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 198 / 240

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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 199 / 240

Annexe K

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 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.

K.1 Installer jigdo


Installez le paquet : # apt-get install jigdo-file

K.2 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 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).

K.3 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 Sarge en tlchargeant le chier jigdo depuis le serveur principal de Debian_on_CD :

% jigdo-lite http://cdimage.debian.org/debian-cd/3.1_r0a/i386/jigdo-cd/debian-31r0a-i386-bi 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. 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 debian-31r0a-i386-binary-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 !

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 200 / 240

K.4 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 Graver en console.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 201 / 240

Annexe L

Graver en UDF et par paquets


Les CD utilisent traditionnellement un systme de chiers ISO9660. Avec larrive des DVD, un autre systme de chiers a t cr pour le remplacer : UDF. Ce systme permet de de stocker des donnes aussi bien sur CD que sur DVD, et il est plus facile utiliser. La gravure par paquets, quant elle, permet dutiliser un CD ou un DVD rinscriptible comme une grosse disquette.

L.1 Installation des paquets


Installez les paquets requis : # apt-get install cdrecord udftools

L.2 Graver en UDF


Crer limage UDF du CD
Pour crer une image de CD, on cre simplement un systme de chiers UDF sur un chier du disque dur : % mkudffs image.udf $((700 * 1024 / 2)) Ici, on cre une image UDF dans le chier images.udf. La taille est prcise par un nombre de blocs de 2048 octets. Ici, on laisse le Shell calculer un nombre de blocs correspondant 700 Mo.

Remplir limage
Nous allons monter limage UDF en loopback, puis la remplir comme sil sagissait dune disquette : # mkdir image # mount -o loop -t udf image.udf image # chmod a+rwx image Vous pouvez maintenant copier des chiers dans limage : % cp /fichier//sauvegarder image/ Enn, quand vous avez copi tous les chiers dans limage, dmontez celle-ci : # umount image # rmdir image

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 202 / 240

Graver limage
Votre image est prte, il ne reste plus qu la graver sur le disque : si votre graveur supporte le burnproof : # cdrecord -v dev=ATAPI:/dev/graveur driveropts=burnproof -data image.udf si votre graveur ne supporte pas le burnproof : # cdrecord -v dev=ATAPI:/dev/graveur -data image.udf

L.3 Graver par paquets


Prparer les pilotes noyau
Pour gaver par paquets, vous devez disposer du pilote idoine. Pour cela, dans la conguration du noyau, dans la section Device Drivers --> Block devices Choisissez le pilote Packet writing on CD/DVD media.

Prparer ou un DVD un CD RW
Avec un disque rinscriptible dans votre lecteur, lancez la commande : # cdrwtool -d /dev/pktcdvd/0 -q Cela efface le contenu ventuel du disque, le formate avec une seule grande piste, et cre dedans un systme de chiers UDF prt lemploi.

crire sur le disque


Vous pouvez maintenant monter votre disque dans un rpertoire : # mkdir /media/cdrw # mount -o rw -t udf /dev/pktcdvd/0 /media/cdrw # chmod a+rwx /media/cdrw Copiez simplement les chiers que vous voulez sauvegarder dans votre disque : % cp /fichier//sauvegarder /media/cdrw/ Les critures se font immdiatement sur le disque, et peuvent donc tre un peu lentes.

Finaliser la gravure
Enn, dmontez le disque : # umount /media/cdrw Cela peut prendre pas mal de temps... Si vous voulez ensuite modier le contenu de votre disque, vous pouvez encore le monter de la mme faon.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 203 / 240

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.

M.1 GNUwin
Le projet GNUwin regroupe un grand nombre de logiciels libres fonctionnant sous Windows. Dans la liste des logiciels proposs, nous utilisons notamment PuTTY :

PuTTY
PuTTY est un client Telnet et SSH.

F IG . M.1 PuTTY

Cygwin
Cygwin 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).

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 204 / 240

Installer Cygwin

Allez sur 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. 6. Ensuite vient ltape de slection des paquets. Slectionnez deux paquets supplmentaires par rapport la conguration par dfaut : openssh dans la section Net, XFree86-base dans la section XFree86. 7. Il va ensuite tlcharger les paquets 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 :

F IG . M.2 La console Cygwin Vous pouvez alors vous servir de tous les outils Unix disponibles avec Cygwin... comme si vous tiez sous Linux ! Si vous voulez lancer un serveur X, commencez par ditez le chier /usr/X11R6/bin/startxwin.bat et rajoutez la n du chier la ligne suivante : run setxkbmap -layout fr ce qui vous permettra davoir un clavier franais sous X. Vous pouvez maintenant lancer le serveur graphique : Administrateur@CLIENT $ startxwin.bat

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 205 / 240

F IG . M.3 Serveur X de Cygwin Depuis la console Cygwin, vous pouvez galement lancer un serveur graphique vers une autre machine, comme si vous tiez sur une console Linux : Administrateur@CLIENT $ X -query serveur.exemple.org Cela permet de faire de lexport display de Linux vers Windows, comme expliqu au chapitre Faire de lexport display.

M.2 WinSCP
WinSCP 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 206 / 240

F IG . M.4 WinSCP

M.3 Accder ses partitions Ext2 ou Ext3 depuis Windows


Deux logiciels permettent de faire cela :

Explore2fs
Explore2fs est un programme GPL qui permet de lire ses partitions Linux de type Ext2 et Ext3 depuis Windows.

ATTENTION Pour se servir de ce programme sous Windows NT / 2000 / XP Pro, il faut avoir les privilges dadministrateur.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 207 / 240

F IG . M.5 Explore2fs

Ext2 Installable File System


Ext2 Installable File System for Windows est un driver pour le noyau de Windows qui permet daccder ses partitions Linux de type Ext2 et Ext3 comme si ctait des partitions Windows. Les partitions sont alors accessible en lecture et en criture depuis lexplorateur Windows et depuis nimporte quelle application Windows.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 208 / 240

Annexe N

Firewalling et partage de connexion Internet

IMPORTANT Cette partie requiert des connaissances de base en rseau. Lien 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 !

N.1 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).

F IG . N.1 Schma dun NAT avec 2 machines

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 209 / 240

F IG . 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 [ ?], et dindiquer dans la conguration rseau des ordinateurs du rseau local ladresse 192.168.0.1 comme premier serveur DNS.

N.2 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 [ ?] et [ ?].

Apprendre la syntaxe iptables


La syntaxe 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 n12 ddi aux rewalls. Si vous matrisez langlais, vous pouvez vous attaquer au Tutoriel iptables.

Congurer iptables
Le paquet iptables, qui contient le programme du mme nom qui permet de congurer les fonctions de rewalling des noyaux Linux 2.4 et 2.6, est normalement install par dfaut. Nous allons mettre en place deux scripts laide de mes chiers dexemple :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 210 / 240

le script /etc/network/if-pre-up.d/iptables-start qui dmarre les rgles de ltrage : # cp ~/fichiers-config/iptables-start /etc/network/if-pre-up.d/ ou : % wget http://formation-debian.via.ecp.fr/fichiers-config/iptables-start # cp iptables-start /etc/network/if-pre-up.d/ le script /etc/network/if-post-down.d/iptables-stop qui arrte le ltrage : # cp ~/fichiers-config/iptables-stop /etc/network/if-post-down.d/ ou : % wget http://formation-debian.via.ecp.fr/fichiers-config/iptables-stop # cp iptables-stop /etc/network/if-post-down.d/ Noubliez pas de rendre ces scripts excutables : # chmod 755 /etc/network/if-pre-up.d/iptables-start # chmod 755 /etc/network/if-post-down.d/iptables-stop Avec le conguration que nous venons de mettre en place, le script iptables-start sexcutera automatiquement juste avant de congurer les interfaces rseau, et le script iptables-stop sexcutera automatiquement juste aprs la dconguration des interfaces rseau. Vous pouvez galement dmarrer et darrter le ltrage iptables en excutant ces scripts " la main" en tant que root.

Personnaliser les rgles de ltrage


Personnalisez mon script dexemple /etc/network/if-pre-up.d/iptables-start qui contient les rgles de ltrage : #!/bin/sh # /etc/network/if-pre-up.d/iptables-start # Script qui dmarre les rgles de filtrage "iptables" # Formation Debian GNU/Linux par Alexis de Lattre # http://formation-debian.via.ecp.fr/ # REMISE ZERO des rgles de filtrage iptables -F iptables -t nat -F

# 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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 211 / 240

iptables -P OUTPUT ACCEPT # FIN des "politiques par dfaut"

# DEBUT des rgles de filtrage # Pas de filtrage sur linterface de "loopback" iptables -A INPUT -i lo -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 # Jaccepte les packets entrants relatifs des connexions dj tablies iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT # Dcommentez les deux lignes suivantes pour que le serveur FTP ventuel # soit joignable de lextrieur #iptables -A INPUT -p tcp --dport 20 -j ACCEPT #iptables -A INPUT -p tcp --dport 21 -j ACCEPT # Dcommentez la ligne suivante pour que le serveur SSH ventuel # soit joignable de lextrieur #iptables -A INPUT -p tcp --dport 22 -j ACCEPT # Dcommentez la ligne suivante pour que le serveur de mail ventuel # soit joignable de lextrieur #iptables -A INPUT -p tcp --dport 25 -j ACCEPT # Dcommentez les deux lignes suivantes pour que le serveur de DNS ventuel # soit joignable de lextrieur #iptables -A INPUT -p tcp --dport 53 -j ACCEPT #iptables -A INPUT -p udp --dport 53 -j ACCEPT # Dcommentez la ligne suivante pour que le serveur Web ventuel # soit joignable de lextrieur #iptables -A INPUT -p tcp --dport 80 -j ACCEPT # Dcommentez les deux lignes suivantes pour que le serveur CUPS ventuel # soit joignable de lextrieur #iptables -A INPUT -p tcp --dport 631 -j ACCEPT #iptables -A INPUT -p udp --dport 631 -j ACCEPT # Dcommentez les deux lignes suivantes pour que le serveur Samba ventuel # soit joignable de lextrieur #iptables -A INPUT -p tcp --dport 139 -j ACCEPT #iptables -A INPUT -p udp --dport 139 -j ACCEPT # Dcommentez la ligne suivante pour que des clients puissent se connecter # lordinateur par XDMCP) #iptables -A INPUT -p udp --dport 177 -j ACCEPT # Dcommentez la ligne suivante pour que lodinateur puisse se connecter # par XDMCP une machine distante)

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 212 / 240

#iptables -A INPUT -p tcp --dport 6001 -j ACCEPT # Dcommentez la ligne suivante pour que le serveur CVS ventuel # soit joignable de lextrieur via le mcanisme de "pserver" # (si les utilisateurs accdent au serveur CVS exclusivement via SSH, # seule la ligne concernant le serveur SSH doit tre dcommente) #iptables -A INPUT -p tcp --dport 2401 -j ACCEPT # Dcommentez la ligne suivante pour pouvoir reevoir des flux VideoLAN # (ce sont des flux UDP entrants sur le port 1234) #iptables -A INPUT -p udp --dport 1234 -j ACCEPT # Dcommentez la ligne suivante pour pouvoir reevoir des annonces SAP # (ce sont des annonces de session multicast) #iptables -A INPUT -p udp -d 224.2.127.254 --dport 9875 -j ACCEPT # Dcommentez les 3 lignes suivantes pour pouvoir utiliser 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 # 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 filtrage

# DEBUT des rgles pour le partage de connexion (i.e. le NAT) # Dcommentez la ligne suivante pour que le systme fasse office de # "serveur NAT" et remplaez "eth0" par le nom de linterface connecte # Internet #iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE # Si la connexion que vous partagez est une connexion ADSL, vous # serez probablement confront au fameux problme du MTU. En rsum, # le problme vient du fait que le MTU de la liaison entre votre # fournisseur daccs et le serveur NAT est un petit peu infrieur au # MTU de la liaison Ethernet qui relie le serveur NAT aux machines qui # sont derrire le NAT. Pour rsoudre ce problme, dcommentez la ligne # suivante et remplaez "eth0" par le nom de linterface connecte # Internet. #iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS -o eth0 --clamp-mss-to-pmtu # FIN des rgles pour le partage de connexion (i.e. le NAT)

# DEBUT des rgles de "port forwarding"

# Dcommentez la ligne suivante pour que les requtes TCP reues sur # le port 80 de linterface eth0 soient forwardes la machine dont # lIP est 192.168.0.3 sur son port 80 (la rponse la requte sera # forwarde au client) #iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 192.168.0 # FIN des rgles de "port forwarding"

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 213 / 240

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. 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://formation-debian.via.ecp.fr/

# Plus dinformations dans "man interfaces"

# Linterface "loopback" auto lo iface lo inet loopback # 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

Enn, il faut activer la fonction de forwarding IP du noyau, en modiant ainsi le chier /etc/sysctl.conf : # Uncomment the next line to enable packet forwarding for IPv4 net.ipv4.conf.default.forwarding=1 # Uncomment the next line to enable packet forwarding for IPv6 net.ipv6.conf.default.forwarding=1

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 selon vos besoins, demandez au systme de recongurer le rseau : # /etc/init.d/networking restart

Afcher la conguration iptables


Pour afcher la conguration iptables actuelle, tapez : pour la table lter : # iptables -v -L

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 214 / 240

pour la table nat : # iptables -v -L -t nat

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 215 / 240

Annexe O

Monter un bridge (rewallant)

IMPORTANT Cette partie requiert des connaissances de base en rseau Ethernet. Lien vers une formation VIA ce sujet.

O.1 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).

F IG . O.1 Schma dun bridge

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 216 / 240

O.2 Le Montage
La conguration dun noyau 2.6
Si vous voulez faire un bridge rewallant avec un noyau 2.6, il nest plus ncessaire de patcher les sources du noyau, comme avec les noyaux 2.4. Au niveau de la conguration du noyau, il faut activer dans le menu Device Drivers > Networking support > Networking options : la fonction de bridging : <M> 802.1d Ethernet Bridging

les fonctions de rewalling : [*] Network packet filtering (replaces ipchains)

et les fonctions prcises dont vous comptez vous servir pour le ltrage dans le sous-menu Network packet ltering (replaces ipchains) > IP : Netlter Conguration. Si vous avez suivi mes instructions au chapitre [ ?], alors votre noyau actuel est dj bien congur. Si ce nest pas le cas, alors il vous faudra recongurer et recompiler votre noyau. Ensuite, ditez le chier /etc/modprobe.d/reseau et ajoutez un alias pour linterface bridge br0 : alias alias alias alias eth0 nom_du_module_de_la_carte_rseau_n1 eth1 nom_du_module_de_la_carte_rseau_n2 eth2 nom_du_module_de_la_carte_rseau_n3 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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 217 / 240

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 ~/fichiers-config/interfaces-bridge /etc/network/interfaces ou : % wget http://formation-debian.via.ecp.fr/fichiers-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://formation-debian.via.ecp.fr/

# 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 bridge_stp off

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 218 / 240

# 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 /var/log/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 !

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 219 / 240

Annexe P

Monter un proxy-ARP

NOTE Annexe crite partir dune premire version de Robert Cheramy.

IMPORTANT Cette partie requiert des connaissances de base en rseau Ethernet et IP. Lien vers une formation VIA ce sujet.

P.1 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 !

F IG . P.1 Schma dun proxy-ARP

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 220 / 240

P.2 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.

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.

P.3 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/modprobe.d/reseau contenant : alias eth0 nom_du_module_de_la_carte_rseau_n1 alias eth1 nom_du_module_de_la_carte_rseau_n2 alias eth2 nom_du_module_de_la_carte_rseau_n3 Noubliez pas dexcuter la commande update-modules aprs toute modication dun chier dans le rpertoire /etc/modprobe. d/. Vriez que toutes vos cartes rseau sont bien reconnues au dmarrage.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 221 / 240

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 # cp ~/fichiers-config/interfaces-proxy-arp /etc/network/interfaces ou : % wget http://formation-debian.via.ecp.fr/fichiers-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://formation-debian.via.ecp.fr/

# Plus dinformations dans "man interfaces" et "man route"

# Linterface de loopback auto lo iface lo inet loopback # 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 # 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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 222 / 240

# 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 # 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

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 138.195.152.42 0.0.0.0 138.195.152.43 0.0.0.0 138.195.152.0 0.0.0.0 0.0.0.0 138.195.152.1

Genmask 255.255.255.255 255.255.255.255 255.255.255.128 0.0.0.0

Indic UH UH U UG

Metric 0 0 0 0

Ref 0 0 0 0

Use 0 0 0 0

Iface eth1 eth2 eth0 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 :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 223 / 240

# /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 : 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 paquet suivant : # apt-get install dhcp3-relay Lors de la conguration du paquet, 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...

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 224 / 240

Annexe Q

Faire marcher une connexion sans l


Q.1 Se renseigner sur sa carte wi
Il va falloir compiler les pilotes de votre carte wi. Pour cela, il faut dabord voir de quel type de carte il sagit. Pour cela, lancez la commande : $ lspci Si vous avec un portable avec un processeur Centrino, par exemple, il sagit srement dune Intel pro wireless 2200.

Q.2 Compiler le pilote noyau


Dans tous les cas, il faut activer le support du protocole IEEE 802.11 (wi, quoi) : Networking --> Generic IEEE 802.11 Networking Stack

Votre pilote est disponible dans les sources du noyau


Plusieurs pilotes wi sont disponibles dans le noyau, dans la section : Device Driver --> Network device support --> Wireless LAN (non-hamradio) Choisissez le pilote adapt votre carte. Si vous comptez utiliser une rseau scuris WEP ou WPA, dans la section : Cryptographic options choisissez galement : <M> <M> <M> ARC4 cipher algorithm Michael MIC keyed digest algorithm AES cipher algorithms

Compilez ensuite votre nouveau noyau, et dmarrez dessus.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 225 / 240

Votre pilote nest pas dans les sources du noyau


Si votre pilote nest pas dans les sources du noyau, il existe sans doute un pilote libre, compiler en externe, indpendamment du noyau. Les carte Athereos disposent ainsi dun pilote MADWi. Cherchez le pilote adapt votre carte sur Internet, dcompressezle, et suivez les instructions donnes dans les README et INSTALL... Chargez ensuite votre nouveau pilote. Pour une carte Athereos, utilisez la commande : # modprobe madwifi

Q.3 Installer les outils de connexion


Installez les outils de connexion sans l : # apt-get install wireless-tools Si vous comptez utiliser une connexion scurise par WPA, installez galement les outils correspondants : # apt-get install wpasupplicant

Q.4 Congurer sa connexion


Vous disposez maintenant dune interface rseau supplmentaire, ce que vous pouvez vrier avec : $ ifconfig -a Les outils de connexion sans l fournissent une commande semblable, pour les rglages spciques aux connexions sans l : $ iwconfig Vous pouvez galement lister les rseaux sans l qui vous entourent : $ iwlist [interface] scan

Connexion non scurise


Pour vous connecter, il suft de sassocier un rseau. Ainsi, pour vous connecter au rseau maison , en supposant que votre carte rseau correspond linterface eth1 : # iwconfig eth1 essid maison

Connexion crypte WEP


Pour vous connecter un rseau crypt avec WEP, il suft de prciser en plus la clef WEP : # iwconfig eth1 essid VIA key XXXXXXXX

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 226 / 240

Conguration IP
Vous tes maintenant connect un rseau sans l, ce que vous pouvez vrier par la commande : $ iwconfig Cependant, vous tes simplement branch sur un rseau, comme vous le seriez par un cble. Il faut donc maintenant rgler les paramtres IP de la connexion. Si vous avec un serveur DHCP : # dhclient eth1 Comme pour une interface laire, vous pouvez aussi prciser ces paramtres manuellement, connaissant les rglages du rseau. Ici, pour un rseau priv typique : # ifconfig eth1 192.168.0.42 netmask 255.255.255.0 # route add default gw 192.168.0.1 eth1

Congurer dnitivement sa connexion


Vous pouvez rajouter une section dans le chier /etc/network/interfaces pour votre connexion sans l. Par exemple : iface eth1 inet static address 192.168.0.42 netmask 255.255.255.0 broadcast 192.168.0.255 wireless-essid maison wireless-key XXXXXXXX

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 227 / 240

Annexe R

Le travail en groupe avec CVS


R.1 Quest-ce que CVS ?
CVS (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. Malheureusement, cest un programme trs ancien qui souffre de certaines limitations gnantes. Pour saffranchir de ces limitations, le logiciel libre Subversion (alias SVN) a vu le jour, et nous vous conseillons de le prfrer CVS. Linstallation dun serveur SVN est explique au chapitre Le travail en groupe avec Subversion. Si toutefois, pour une raison qui vous est propre, vous avez besoin dinstaller un rpository CVS, ce chapitre est l pour vous guider !

R.2 Installer et utiliser un client CVS


Installer le paquet
Le client et le serveur CVS sont contenus dans le paquet 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]

R.3 Monter un serveur CVS


Installation et conguration de base
Installation de base

A cause dun bug dans le paquet, nous ne pouvons pas nous contenter de recongurer le paquet, il faut le rinstaller compltement :

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 228 / 240

# 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 : # 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 requiert 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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 229 / 240

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, 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 avance
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 ~/fichiers-config/cvs-loginfo.sh ~/fichiers-config/cvs-commitinfo.sh /usr/local/bin/ ou : % wget http://formation-debian.via.ecp.fr/fichiers-config/cvs-loginfo.sh % wget http://formation-debian.via.ecp.fr/fichiers-config/cvs-commitinfo.sh # mv cvs-loginfo.sh cvs-commitinfo.sh /usr/local/bin/

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 230 / 240

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_mail 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, 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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 231 / 240

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 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 232 / 240

Annexe S

Trucs et Astuces
S.1 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 /etc/zsh/zlogin : # 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
Installez le paquet requis : # apt-get install numlockx Lors de linstallation du paquet, 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.

S.2 Brancher un priphrique IDE chaud


Si vous avez un portable muni dune media-bay et de priphriques IDE amovibles, un utilitaire trs pratique permet lajout et le retrait chaud de ces priphriques.

ATTENTION Les lecteurs de disquettes ne sont pas grs par cet utilitaire.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 233 / 240

Installez le paquet hotswap-text : # apt-get install hotswap-text Lutilisation est trs simple ; il suft de taper le nom du programme en root : # hotswap et de se laisser guider par le programme comme illustr ci-dessous. Insertion dun lecteur DVD : 0:43 root@alpy ~# hotswap I/O warning : failed to load external entity "/etc/hotswaprc" hotswap 0.4.0 Copyright 2001 Tim Stadelmann This is free software, licensed under the conditions of the GNU General Public License version 2, or (at your option), any later version. Il ny a actuellement aucun priphrique IDE configured. (Lecteurs de disquettes, batteries, et modules de voyage ne sont pas grs par cet utilitaire. Si vous voulez changer un tel module, vous devriez le faire maintenant.) Voulez-vous insrer un priphrique IDE dans la baie ?y Insrez le nouveau priphrique dans la baie et pressez la touche Entre.

Le priphrique IDE suivent a t correctement configur: HL-DT-STDVD-ROM GDR8081N Retrait dun lecteur DVD : 0:44 root@alpy ~# hotswap I/O warning : failed to load external entity "/etc/hotswaprc" hotswap 0.4.0 Copyright 2001 Tim Stadelmann This is free software, licensed under the conditions of the GNU General Public License version 2, or (at your option), any later version.

Le priphrique IDE suivant est actuellement configur: HL-DT-STDVD-ROM GDR8081N Voulez-vous retirer ce priphrique ?y Vous pouvez maintenant retirer le priphrique de la baie. Voulez-vous insrer un priphrique IDE dans la baie ?n Annulation zsh: exit 1 hotswap

S.3 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 !

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 234 / 240

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

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 paquet 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

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 235 / 240

Utiliser un proxy HTTPS


Rcuprez le script ssh-https-tunnel : % wget http://zwitterion.org/software/ssh-https-tunnel/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 : # Proxy details 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.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 236 / 240

Annexe T

GNU General Public License


Copyright (C) 1989-1991 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.

T.1 Preamble
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software - to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundations software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs ; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps : 1. copyright the software, and 2. offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each authors protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modied by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reect on the original authors reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyones free use or not licensed at all. The precise terms and conditions for copying, distribution and modication follow.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 237 / 240

T.2 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION


Section 0
This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a work based on the Program means either the Program or any derivative work under copyright law : that is to say, a work containing the Program or a portion of it, either verbatim or with modications and/or translated into another language. (Hereinafter, translation is included without limitation in the term modication .) Each licensee is addressed as you. Activities other than copying, distribution and modication are not covered by this License ; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.

Section 1
You may copy and distribute verbatim copies of the Programs source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty ; keep intact all the notices that refer to this License and to the absence of any warranty ; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.

Section 2
You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modications or work under the terms of Section 1 above, provided that you also meet all of these conditions : 1. You must cause the modied les to carry prominent notices stating that you changed the les and the date of any change. 2. You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. 3. If the modied program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License.
Exception : If the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)

These requirements apply to the modied work as a whole. If identiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you ; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 238 / 240

Section 3
You may copy and distribute the Program (or a work based on it, under Section 2 in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following : 1. Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange ; or, 2. Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange ; or, 3. Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface denition les, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.

Section 4
You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program 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.

Section 5
You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.

Section 6
Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.

Section 7
If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 239 / 240

If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims ; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system ; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.

Section 8
If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.

Section 9
The Free Software Foundation may publish revised and/or new versions of the General Public 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. Each version is given a distinguishing version number. If the Program species a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.

Section 10
If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation ; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.

NO WARRANTY Section 11
BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

Section 12
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS

Ed. 4.0.3.2

Formation Debian GNU/Linux

D OCUMENT DE T RAVAIL 240 / 240

T.3 How to Apply These Terms to Your New Programs


If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source le to most effectively convey the exclusion of warranty ; and each le should have at least the "copyright" line and a pointer to where the full notice is found. <one line to give the programs name and a brief idea of what it does.> Copyright (C) <year> <name of author> This program is free software ; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation ; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY ; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program ; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode : Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY ; for details type show w. This is free software, and you are welcome to redistribute it under certain conditions ; type show c for details. The hypothetical commands show w and show c should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than show w and show c ; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample ; alter the names : Yoyodyne, Inc., hereby disclaims all copyright interest in the program Gnomovision (which makes passes at compilers) written by James Hacker. <signature of Ty Coon>, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License.

You might also like