Documente Academic
Documente Profesional
Documente Cultură
Alexis de Lattre
alexis@via.ecp.fr
Formation Debian GNU/Linux par Alexis de Lattre Copyright 2002-2004 par Alexis de Lattre Ce document a reu des contributions importantes de Brian Fraval et Loc Alsfasser. Pour nous crire, utilisez ladresse formation-linux@via.ecp.fr (mailto:formation-linux@via.ecp.fr). Ce document est disponible aux formats :
HTML en ligne (http://people.via.ecp.fr/~alexis/formation-linux/) ou HTML zipp (http://people.via.ecp.fr/~alexis/formation-linux/formation-linux-html.zip) (4 Mo), PDF zipp (http://people.via.ecp.fr/~alexis/formation-linux/formation-linux-pdf.zip) (4 Mo), RTF zipp (http://people.via.ecp.fr/~alexis/formation-linux/formation-linux-rtf.zip) (3,8 Mo), Texte zipp (http://people.via.ecp.fr/~alexis/formation-linux/formation-linux-txt.zip) (225 Ko).
Vous avez le droit de copier, distribuer et/ou modier ce document 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.
10. La manipulation dimages.....................................................................................................................................160 11. La messagerie instantane avec Gabber................................................................................................................163 12. Lconomiseur dcran..........................................................................................................................................175 13. Se logguer en graphique........................................................................................................................................177 14. Avant daller plus loin... un point sur la mthode .................................................................................................180 IV. Debian GNU/Linux en rseau .....................................................................................................................................184 1. Laccs distance par SSH .....................................................................................................................................185 2. Faire de lexport display..........................................................................................................................................193 3. NFS : le partage de chiers sous Unix ....................................................................................................................197 4. Le voisinage rseau Windows sous Linux ..............................................................................................................199 5. Se synchroniser sur un serveur de temps ................................................................................................................204 6. Monter un serveur Web ...........................................................................................................................................205 7. Monter un serveur FTP ...........................................................................................................................................207 8. Monter un serveur DHCP........................................................................................................................................209 9. Monter un serveur DNS ..........................................................................................................................................210 10. Monter un serveur de mail ....................................................................................................................................214 11. Monter un serveur de mailing-listes......................................................................................................................217 12. Le travail en groupe avec CVS..............................................................................................................................223 V. Debian GNU/Linux en console......................................................................................................................................228 1. Le mail en console ..................................................................................................................................................229 2. Le mail en console (suite) .......................................................................................................................................236 3. LIRC en console.....................................................................................................................................................240 4. Les news en console................................................................................................................................................245 5. La messagerie instantane avec Centericq ..............................................................................................................248 6. Graver en console....................................................................................................................................................252 7. Les screens ..............................................................................................................................................................256 VI. Conclusion et annexes ..................................................................................................................................................258 A. Apprendre et se tenir au courant ............................................................................................................................259 B. En cas de blocage... ................................................................................................................................................261 C. Utiliser Dselect .......................................................................................................................................................263 D. Complments sur la gestion des packages Debian.................................................................................................268 E. La mthode Debian pour compiler un noyau .........................................................................................................270 F. Faire marcher une imprimante ................................................................................................................................272 G. Optimiser ses priphriques IDE ...........................................................................................................................278 H. La souris en console ...............................................................................................................................................281 I. Faire marcher son port infrarouge ...........................................................................................................................283 J. LaTeX ......................................................................................................................................................................286 K. Utiliser GnomeMeeting..........................................................................................................................................289 L. Crer des CD Debian ..............................................................................................................................................292 M. Outils Windows pour Linuxiens ............................................................................................................................294 N. Firewalling et partage de connexion Internet .........................................................................................................298 O. Monter un bridge (rewallant) ...............................................................................................................................304 P. Monter un proxy-ARP ............................................................................................................................................308 Q. Trucs et Astuces .....................................................................................................................................................313 R. GNU General Public License .................................................................................................................................320
iv
A propos de ce document
1. 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.
2. 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.
3. 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.
Merci denvoyer vos contributions ladresse formation-linux@via.ecp.fr (mailto:formation-linux@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. i
A propos de ce document
Je tiens remercier les nombreux lecteurs qui ont contribu ce document, par exemple en signalant des erreurs et/ou en proposant des amliorations.
Tout dabord, ouvrir le projet de plus nombreux contributeurs extrieurs ! Je (= Alexis) ne suis plus tudiant et par consquent mon temps libre sest malheureusement rduit. Toute aide est donc la bienvenue. Une des priorits est de trouver des "mainteneurs" pour les paragraphes qui concernent les modems ADSL USB. En effet, il est trs difcile dcrire ces paragraphes sont possder soi-mme le modle de modem ADSL USB en question. Je rechercher donc une personne par modle de modem ADSL USB pour prendre en charge la rdaction et la mise--jour des paragraphes qui concernant ces modems. Passer Sarge et au nouvel installeur Debian. La release avance vite, et la Sarge devrait sortir dici au mois dOctobre 2004. Ce sera loccasion de documenter le nouvel installeur Debian et de mettre jour tous les autres chapitres ! Comme toujours : amliorer, simplier, mettre--jour, etc...
5. Format du document
Ce document est crit au format Docbook XML. Les sources sont compiles avec jade (http://www.jclark.com/jade/) pour produire le document aux formats HTML, PDF et RTF aprs application de feuilles de style DSSSL spciques chaque format. Les sources XML, les feuilles de style DSSSL et les images sont disponibles par CVS anonyme :
% cvs -d :pserver:anonymous@cvs.via.ecp.fr:/cvs/formation-linux login CVS password: [Le mot de passe est vide] % cvs -d :pserver:anonymous@cvs.via.ecp.fr:/cvs/formation-linux checkout .
Vous pouvez galement consulter les sources via linterface CVSWeb (http://www.via.ecp.fr/cgi-bin/viewcvs.cgi/?cvsroot=Formation+Linux). Pour compiler le document sur un systme Debian, vous aurez besoin des packages docbook-xml, docbook-dsssl, jade et jadetex.
6. Historique du document
Tableau 1. Historique du document Date 19 Oct 2002 25 Oct 2002 28 Oct 2002 29 Oct 2002 30 Oct 2002 04 Nov 2002 05 Nov 2002 06 Nov 2002 Ajout / Modication Premire release publique ! Version PDF avec liens et correction derreurs Problme avec les images de la version PDF rpar Ajout dALSA et dplacement de dselect en annexe Ajout dune section sur les PDFs et dune section sur glxinfo/glxgears Ajout dune annexe Monter un proxy-ARP Ajout dune explication sur comment rcuprer un MBR Windows Corrections diverses (notamment la diffrence libre / OpenSource) ii
A propos de ce document
Date 13 Nov 2002 16 Nov 2002 20 Nov 2002 25 Nov 2002 28 Nov 2002 30 Nov 2002 1er Dc 2002
Ajout / Modication Dplacement de la mthode Debian de compilation des noyaux en Annexe Les noms des pages HTML ne changent plus chaque recompilation (enn !) Ajouts et corrections diverses dans la partie II Fichier ZIP tlchargeable et amlioration du chier muttrc Explications pour faire marcher DRI/DRM et Xfree 4.2 (test avec une Radeon). Nouveau chier vimrc. Conguration dun noyau 2.4.20 et nouvelle source de packages Xfree 4.2 avec cong en franais. Explications sur DHCP relay (annexe sur le proxy-ARP) + installation de Cygwin et XDMCP (chapitre sur lexport display) + adaptation de lannexe sur hdparm tous les priphriques IDE + disparition du message derreur de hotplug WinSCP rempla par Filezilla (client SSH & SFTP GPL pour Win32) Correction des sections "leuro en console" et "leuro sous X" et nouveau vimrc avec le support de leuro sous Gvim Prcisions concernant lAPM et modication de lannexe sur les modems ADSL. Nouveaux drivers nVidia. Rajout de WinSCP ct de Filezilla. Format RTF disponible. Nouveau paragraphe "en cas de blocage" dans le chapitre 39. Sortie de la 3.0r1. Retrait temporaire de cdrdao. Rorganisation complte avec une nouvelle partie "Linux Debian en rseau", dbut dadaptation pour les possesseurs dune connexion ADSL ou cble, explications sur la conguration dune connexion par modem externe ou PCMCIA, de nombreux ajouts/corrections/modications (support du bus PCMCIA, explications sur sudo, correction concernant Alsa, passage du format des mailboxes en "maildir", modifs dans les chiers de conguration de zsh, vim, mutt, procmail et slrn) et deux nouvelles annexes (En cas de blocage... et Le mail en console (suite)) Problme du nombre de lignes dans mutt corrig par une modication de procmailrc. Finalement, la premire excution de dselect se fera pendant la procdure dinstallation pour plusieurs raisons (cest plus simple et a permet de compiler des drivers ADSL avant lexplication sur la gestion des packages. Rorganisation de la deuxime partie : lexplication de la mise en place de la connexion Internet est maintenant prcde du shell et suivie des clients Web et FTP en console. Ajout de GNUwin lannexe sur les programmes Windows. Modication de muttrc et slrnrc pour avoir le wrappage automatique des paragraphes lors de la saisie. Ajout de gFTP comme client FTP graphique. Nouvelle annexe Crer des CD Debian qui documente lutilisation de jigdo. Nombreuses corrections orthographiques (merci Kevin Rowanet). Ajout dun paragraphe sur les LUGs dans la premire annexe. Mise--jour avec la sortie des CDs 3.0r1. Modications pour la mise des sources SGML dans un CVS. Toutes les pages ont chang de nom (pour la dernire fois jespre !). Ajouts et modications dans la partie "conguration du noyau". Explications sur la conguration de LILO dans la partie "compilation du noyau". Ajout du format "text". Ajout du support pour les modems cble USB et les modems ADSL PCI Conexant. Les sources de la formation sont maintenant gres par un CVS hberg gracieusement par VIA ; tout se met jour automatiquement chaque commit. Si vous constatez un problme, merci de me le signaler par mail ! Correction pour les modems cble (je ne savais pas que Noos tait le seul ou presque ne pas faire de PPPoE), retrait temporaire de linstallation des modems ADSL PCI Conexant (problme de compilation des drivers), modications dans la conguration de procmail et mutt, explications plus dtailles sur le LILO graphique. iii
28 Janv 2003
01 Fv 2003
A propos de ce document
Date 10 Fv 2003
Ajout / Modication Ajout des proxy avec authentication par login / mot de passe. Je vais bientt commener travailler sur le redimensionnement des partitions NTFS avec ntfsresize, un outil libre susceptible de remplaer Partition Magic ! On encode les CDs en Ogg Vorbis, pas en MP3, cest mieux et a vite de violer des brevets ! Modications pour ceux qui doivent passer par un proxy pour accder Internet : adaptation dans la procdure dinstallation et passage de FTP HTTP pour les sources de packages. Tests pas encore compltement concluants de ntfsresize : a marche, mais cest compliqu utiliser, et mme si la partition est dfragmente, on ne peut pas rcuprer tout lespace libre. Possibilit daccder aux chiers de cong via le tarball ou directement par wget, pour ceux qui ne suivent pas lintgralit de la formation. Sortie dune nouvelle version dAlsa qui corrige un bug de compilation. Erreur dans lilo.conf corrige. Le bug de "lezilla" ntant toujours pas corrig, je suis revenu WinSCP. Opration "rduction de la TODO list" avec plein de petites amliorations diverses la cl ! Changement de "Linux Debian" en "Debian GNU/Linux". On vrie dsormais la signature des noyaux Linux que lon tlcharge ! Prcisions supplmentaires sur ladresse des serveurs de news dans le chapitre sur slrn. Fix pour le problme des noms de modules non indiqus dans laide de la conguration du noyau. Release de VLC 0.5.2 ! Nouveau chapitre sur Centericq par Brian Fraval. Nouveau driver Speedtouch. Alsa 0.9.1 est sorti. GMC rempla par Nautilus. Alsa 0.9.2. Dbut de la migration du tutoiement au vouvoiement. Premire version de lannexe sur le partage de connexion Internet. Premire version de lannexe Firewalling et partage de connexion Internet et modication de lannexe sur le bridge pour intgrer les patchs de rewalling. Attention, les parties sur la conguration du noyau et des modules ont t modies en consquence. Mise--jour de la partie sur numlockx. Mise--jour avec la sortie de nouveaux drivers nVidia et intgration de plusieurs corrections reues par mail. Plusieurs petites amliorations (ltrage, mkisofs,...). Simplications avec lutilisation de music123 et au niveau de lactivation de lUSB. Grande rorganisation dont le but tait que les utilisateurs dbutants accdent plus rapidement aux applications graphiques : cration dune 5me partie sur les applications en console (mutt, slrn, irssi,...), fusion de la partie sur le son en console et la souris en console dans "Utilisation du nouveau noyau - 2", utilisation de Mozilla comme navigateur, lecteur de mail et de news en graphique et dplacement du chapitre sur LaTeX en annexe. Ce quil reste faire : documenter un logiciel de gravure graphique et un client jabber/ICQ graphique (je sais pas encore lesquels documenter... si vous avez des suggestions, elles sont les bienvenues !) Fin de la migration vers le vouvoiement. Si vous trouvez des erreurs relatives cette modication, nhsitez-pas les signaler ! Ajout de liens vers les sites web des projets. Ajout dun chapitre sur la gravure en mode graphique avec Eroaster. Ajout dun paragraphe sur le "port forwarding" dans lannexe sur le NAT. Support du modem ADSL USB ECI Hi-Focus (crit partir de la doc de Cdric Lignier). Fusion de lannexe sur le rewalling et sur le partage de connexion Internet. Support du modem ADSL SAGEM USB de Free. Ajout dun chapitre Monter un serveur DHCP. Ajout de linstallation de PHP dans le chapitre sur Apache. Ajout dune annexe Utiliser GnomeMeeting et dune annexe "Surveiller son matriel". iv
11 Fv 2003
7 Mars 2003
11 Mars 2003 17 Mars 2003 18 Mars 2003 19 Mars 2003 22 Mars 2003 23 Mars 2003
A propos de ce document
Date 1 Mai 2003 2 Mai 2003 5 Mai 2003 6 Mai 2003 7 Mai 2003 8 Mai 2003 14 Mai 2003 15 Mai 2003 18 Mai 2003
Ajout / Modication Premire version du nouveau chapitre Monter un serveur DNS. Explications sur les patch noyau. Explications sur lACPI (encore incomplet). Fix dans la partie sur le modem SAGEM. Release ALSA 0.9.3a et encore un x pour le modem SAGEM. Ajout dun chapitre Monter un serveur de mail et complments dans le chapitre sur le serveur DNS. Ajout dune section sur les tunnels SSH. Ajout dun chapitre Le travail en groupe avec CVS qui nexplique pour linstant que la mise en place dun serveur CVS, et pas lutilisation de CVS. Nouvelle release disync. Grosses modications sur la conguration du serveur CVS : simplications et accs par SSH aux utilisateurs du systme. Ajout dun chapitre Monter un serveur de mailing-listes. Modication des descriptions des diffrentes versions de Debian. Prcisions sur le passage en sid dans lannexe Complments sur la gestion des packages Debian. Gnome 2 sur Woody ! Tous les screenshots ont t refaits. Utilisation dune cl USB. Amlioration de lannexe Firewalling et partage de connexion Internet. Explication de quelques touches en plus dans Mutt. Fix pour la dernire version des drivers ALSA. Sur une suggestion de Nicolas Relange, jai rempla lftp et sftp par yafc... cest vraiment un programme gnial ! Comment faire marcher 2 souris en mme temps sous X (utile quand on a une souris externe sur un ordinateur portable par exemple) Sortie du noyau 2.4.21. Suppression du passage de 6 10 consoles, pour plus de simplicit. Dplacement de GPM en annexe. Intgration de lannexe ssh-agent dans le chapitre sur SSH. Sortie du patch pour faire un bridge rewallant avec le noyau 2.4.21. Retrait de la ligne de sources.list pour les packages XFree 4.2, qui ntaient plus disponibles. Ils sont dsormais intgrs dans le backport Gnome 2 (malheureusement, la cong du package xserver-xfree86 nest plus en franais). Ajout dune annexe Faire marcher une imprimante. Attention, je nai test cette annexe que sur une seule imprimante, et cela requiert de passer en sid ! Fix pour les modems USB avec la mthode 1 CD. Ajout dun lien vers Andesi.org. Ajout de la FreeBox en Ethernet. Prcision pour lutilisation dapt-get upgrade vs apt-get dist-upgrade. Jai eu un mail dun utilisateur qui avait fait marcher CUPS sans problme sur une woody... jattends dautres mails de ce genre pour enlever le paragraphe o je conseille de passer en sid pour faire marcher CUPS. Ajout de "set alternates" dans muttrc. Passage de SGML XML ! Pourquoi ? Parce que cest mieux ! A court terme, aucun changement notoire... mais a sera peut-tre utile plus tard. Jen ai prot pour avoir un "code" plus harmonis. Quelques petites amliorations par-ci par-l... mais je ne me souviens pas de la liste exacte ! Correction de nombreuses fautes dorthographe signales par Herv Dlze. Format PS temporairement retir... je narrive pas le faire marcher avec XML pour linstant. Suppression du chapitre sur Wine. Suppression de la mthode Gnome 2 et remplacement par la mthode Sid (il faut que je fasse encore dautres tests... ce nest pas compltement ni). Deuxime vague de correction de fautes dorthographe signales par Herv Dlze. Pas besoin dtre en Sid pour faire marcher CUPS. WinSCP est pass en GPL. Ajout des questions de pppoeconf (merci Philippe Leconte). Rorganisation pour les connexions ADSL/cble Ethernet qui utilisent DHCP. Jai eu le temps de tester plus en profondeur la mthode Sid et apport de nombreuses corrections ( suivre). v
24 Mai 2003 25 Mai 2003 28 Mai 2003 1er Juin 2003 7 Juin 2003 15 Juin 2003 30 Juin 2003 2 Juillet 2003
5 Aot 2003
19 Aot 2003
A propos de ce document
Ajout / Modication Correction au sujet du changement du nom du systme. Ajout dun chapitre trs important depuis le changement du 18 Aot que javais oubli de commiter ! Cela mtonne que personne ne me lait signal... je vais mettre en place un check des builds du CVS pour que cela ne se reproduise pas. Noyau 2.4.22 (le patch pour le bridge rewallant est pt... je nai donc pas modi lannexe bridge pour linstant). Jai galement comment la section qui explique lapplication dun patch sur les sources du noyau car le patch ACPI nest plus justi sur un 2.4.22 et le patch bridge FW est pt... Le patch pour le bridge rewallant a t rpar... jai donc mis jour lannexe et dcomment la section qui explique lapplication dun patch sur les sources du noyau. Modication de lannexe sur iptables : on nutilise plus le script /etc/init.d/iptables (car il a t abandonn dans la sid), mais des scripts maison lans depuis /etc/network/interfaces. Dsactivation des services inetd inutiles dans le chapitre sur la scurit dans la partie 2. Intgration des corrections (principalement orthographiques) envoyes par Ronan Plantec. Mise jour de la procdure pour le modem ADSL Sagem F@st 800. Ajout de apt-listbugs pour des mises--jour de la sid plus sres. Fix dans lannexe des imprimantes : il faut en plus installer le package foomatic. Intgration de petites corrections signales par Michal Latour. Petit "bug x" dans les scripts de notication par mail des commits CVS crits par Boris Dors. Rcriture de lannexe sur la mthode Debian pour compiler un noyau. Fix suggr par Vincent B. pour linstallation des drivers propritaires nVidia pour ceux qui suivent la mthode Sid. Tentative pour supporter les utilisateurs de modem Sagem Fast 800 connects Free et dgroups. Petite correction dans la conguration du noyau pour ceux qui ont un modem Speedtouch. Sortie de Debian 3.0r2. Sortie du noyau 2.4.23. Fix pour les modems F@st 800 dgroups (merci Thomas !) Introduction du noyau 2.6.0 ! Plus de prcisions sur lACPI et ajout du frequency scaling pour les portables. Explications pour la conguration des interfaces WiFi. Explications sur le montage dun serveur dimpression. Retrait temporaire de lannexe sur lm_sensors et du chapitre sur e-roaster, le logiciel graphique de gravure. Nouveau chapitre La messagerie instantane avec Gabber crit par Brian. Nouveau chapitre la n de la 3me partie intitul Avant daller plus loin... un point sur la mthode. Mise--jour de la procdure dinstallation de VLC. Lien vers la page qui explique linstallation des dictionnaires orthographiques dOpenOfce. Modication des feuilles de styles pour une meilleure numrotation des chapitres et la numrotation des sections. Plein dautres modications mineures... Sortie du noyau 2.6.1. Mise jour pour le driver du modem Sagem Fast 800 qui ne supportait pas le noyau 2.6. Fix pour vim qui a malheureusement t retir du CD 3.0r2 n 1. Nouvelle mise--jour pour le driver du modem Sagem Fast 800. Cration dun package speedtouch et dun package eciadsl CVS pour la Woody (le package eciadsl 0.8 ne supportait pas le noyau 2.6). Corrections diverses. Fix pour le modem Sagem Fast 800. Les nouveaux drivers nVidia supportent dsormais le noyau 2.6. Fix (bien crade) pour les packages module-init-tools et modutils de backports.org qui refusent de sinstaller avec dpkg ! Retrait de loption speed pour cdrecord car la vitesse maximale est autodtecte. Mise en place du driver Eagle 1.9.3 sur ma page perso en attendant que le serveur de Tuxfamily soit rpar. Sortie du noyau 2.6.2. vi
10 Sept 2003
21 Sept 2003
30 Sept 2003 8 Oct 2003 9 Oct 2003 24 Oct 2003 6 Nov 2003 9 Nov 2003 25 Nov 2003 30 Nov 2003 3 Dc 2003 Vacances de Nol 2003
10 Janv 2004 15 Janv 2004 17 Janv 2004 22 Janv 2004 31 Janv 2004 1 Fv 2004
5 Fv 2004
A propos de ce document
Date 15 Fv 2004
Ajout / Modication Rgle iptables supplmentaire pour le problme du MTU quand on partage une connexion ADSL. Attention, cette rgle requiert davoir activ loption TCPMSS target support lors de la conguration du noyau, sachant que mon chier de conguration du noyau navait pas cette option jusqu prsent. Sortie du noyau 2.6.3 (la mise jour est conseille car le noyau 2.6.2 contient un "local root exploit"). Arrive de Xfree 4.3.0 dans la Sid. Nouveau site pour tlcharger le driver pour le modem ADSL Sagem. Il ne faut pas utiliser la version 1.9.6 du driver pour le modem ADSL Sagem, mais plutt la version 1.9.5 ! Sortie du noyau 2.6.4. Sortie du noyau 2.6.5. Fix pour le chier dexemple "iptables-start.sh" dans la section sur le port forwarding. Passage de la licence GNU FDL la licence GNU GPL, avec laccord de Loc et Brian. Simplication de lannexe sur le rewalling, selon un conseil de Jihem. Sortie du noyau 2.6.6. Sortie du noyau 2.6.7.
18 Fvrier 2004 26 Fvrier 2004 7 Mars 2004 12 Mars 2004 5 Avril 2004 26 Avril 2004 8 Mai 2004 12 Mai 2004 19 Juin 2004
1er Septembre 2004 Sortie du noyau 2.6.8.1. Attention, avec ce noyau, on ne peut graver des CDs quen root. Cest un bug connu qui devrait tre corrig dans le noyau 2.6.9.
vii
2. Le projet GNU
2.1. Les logiciels libres
Le projet GNU dmarre en 1983 sous limpulsion de Richard Stallman. Scandalis par les restrictions de liberts imposes par les logiciels propritaires, il lance ce projet pour acclrer le dveloppement des logiciels libres, qui taient trs peu nombreux lpoque. Lhistoire raconte que cest une histoire de driver dimprimante (http://www.april.org/articles/divers/intro_ll.html#ToC3) qui lui a fait prendre conscience du danger de la logique propritaire. Il fonde alors une association, la Free Software Fundation (http://www.fsf.org/home.fr.html), et crit le GNU Manifesto (http://www.gnu.org/gnu/manifesto.fr.html), dans lequel il dcrit les 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.
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.
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, Apple, Sparc, etc...). Il est conforme la norme POSIX et est distribu sous Licence GPL. Il a la rputation dtre able, stable et scuris. Son appartenance au monde du libre garantit une correction rapide des erreurs qui pourraient tre dcouvertes.
un noyau Linux, 2
des programmes, en majorit libres (un navigateur Web, un lecteur de Mail, un serveur FTP, etc...), une mthode pour installer et dsinstaller facilement ces programmes, un programme dinstallation du systme dexploitation.
Le noyau Linux ne se suft donc pas lui mme, mais on fait souvent un abus de langage en dsignant par le terme Linux ce qui est en fait une distribution Linux. Il existe de nombreuses distributions Linux, comme par exemple RedHat (http://www.redhat.com), Mandrake (http://www.linux-mandrake.com/fr), SuSE (http://www.suse.de/fr), ou Debian (http://www.debian.org) (celle que je vous propose dinstaller). La plupart des distributions sont gratuites, car constitues exclusivement de logiciels libres ou de programmes propritaires gratuits. On peut donc tlcharger les CDs librement sur Internet. On peut galement acheter des botes contenant les CDs dans le commerce. Les prix vont dune dizaine deuros pour couvrir les frais de presse des CDs plusieurs dizaines deuros quand il y a une documentation abondante et un support technique pendant une certaine dure.
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 (http://www.via.ecp.fr) et VideoLAN (http://www.videolan.org), deux organisations dont je suis membre ou ancien membre ; parce que cest la premire distribution Linux que jai installe et utilise, et elle ma toujours satisfait jusqu prsent !
Les autres distributions Linux sont des socits commerciales, ce qui ne les empche pas de produire des logiciels libres ! Debian se distingue aussi par son attachement trs fort la philosophie du logiciel libre. Cet attachement est forg dans son Contrat Social (http://www.fr.debian.org/social_contract) et dans Les principes du logiciel libre selon Debian (http://www.fr.debian.org/social_contract#guidelines) ; qui sont deux textes relativement courts que je vous invite lire.
le nom du package, son numro de version, larchitecture pour laquelle il a t compil, et la catgorie laquelle il appartient ; le nom du dveloppeur Debian qui sen occupe et son adresse e-mail ; une description du logiciel quil contient ; le nom et la version des autres packages dont il dpend ainsi que des autres packages avec lesquels il entre en conit.
2.2.2. Le systme de gestion des packages Le systme de gestion des packages de Debian est trs performant et trs facile utiliser. Grce lui, les logiciels sinstallent, se retirent et peuvent tre mis--jour trs facilement. Vous le dcouvrirez dans la deuxime partie de cette formation.
2.2.3. La stabilit Debian GNU/Linux est rput pour tre un systme dexploitation trs stable. Avant chaque nouvelle version, le systme est longuement test et il ne sort quune fois que tous les bugs connus ont t corrigs. Debian sest dot dun Bug Tracking System (http://www.debian.org/Bugs/) (BTS) trs performant et trs pratique qui permet aux dveloppeurs davoir un retour dexprience instructif des utilisateurs, ce qui les aide corriger les bugs rapidement.
2.2.4. 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.
2.2.5. Les architectures Debian GNU/Linux est disponible sous 11 architectures (http://www.debian.org/releases/stable/releasenotes), dont Intel, PowerPC (les Macintosh) et Sparc (les Sun).
une version ofcielle aussi appele version stable, numrote 3.0 (elle a pour linstant t rvise deux fois, la dernire version est donc la 3.0r2) ; une version testing qui deviendra la future version stable ; une version unstable destine tester les nouveaux packages.
Chaque version a son utilit. Les avantages et inconvnients de chaque version sont prsents dans le tableau ci-dessous : Tableau 2-1. Les trois versions de Debian Nom de la version Woody Type de la version Stable Avantages Inconvnients Utilisation
Stabilit ; mises jour Packages un peu vieux Pour les serveurs et les de scurit suivies pour les applications utilisateurs "normaux" graphiques Packages plus nombreux et un peu plus rcents Pas de suivi des mises Sert laborer la future jour de scurit version stable de Debian ; non adapt pour une utilisation courante
Sarge
Testing
Avantages
Inconvnients
Utilisation
Packages encore plus Mises jour incessantes Pour les utilisateurs nombreux et le plus des packages expriments qui rcent possible ; mises veulent bncier des jour de scurit suivies dernires versions des applications pour leur ordinateur personnel
Je vous propose dans cette formation de commencer par installer une Woody, et de passer ventuellement en Sid plus tard, au dbut de la partie Debian GNU/Linux en mode graphique. Il faut savoir que vous pouvez passer facilement dune version infrieure une version suprieure (par exemple de Woody Sid), mais linverse est plus difcile. Donc si vous installez une Woody, vous pourrez passer facilement en Sarge ou en Sid ; mais vous ne pourrez que difcilement revenir en Woody ensuite.
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 alias Potato en 2000... enn v3.0 alias Woody en 2002). Alors que Debian ntait compos que de quelques programmeurs ses dbuts, lorganisation compte aujourdhui un millier de dveloppeurs rpartis sur toute la plante et qui soccupent de quelques 9000 packages ! Pour en savoir plus sur lhistoire de Debian, je vous invite lire le document A brief history of Debian (http://www.debian.org/doc/manuals/project-history/).
2. Le matriel requis
2.1. La conguration requise
Cette formation ne couvre que linstallation de Debian GNU/Linux sur un PC avec une architecture Intel (processeurs Intel, AMD ou Cyrix). Linux est un systme dexploitation peu gourmand en ressources. Pour une utilisation normale, un Pentium avec 32 Mo de RAM et 800 Mo despace libre sur le disque dur est ncessaire. Vous pouvez aussi linstaller sur un 486 avec 12 Mo de RAM... mais il faudra se passer de certains composants (pas de mode graphique par exemple). Si vous avez un Pentium II avec 64 Mo de RAM ou plus, les applications graphiques seront plus agrables utiliser car plus rapides.
Pour savoir quelle mthode dinstallation vous devez suivre, utilisez le diagramme ci-dessous :
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. 9
2.3.4. Mthode 7 CDs / 1 DVD Il faut que vous vous procuriez les 7 CDs ou le DVD (si vous avez un lecteur de DVD) de la Debian version 3.0r0, 3.0r1 ou 3.0r2 alias Woody. Vous trouverez une liste de vendeurs de CD Debian sur le site ofciel de Debian (http://www.debian.org/CD/vendors/). En France, un des sites de vente en ligne de CD et DVD Debian pas cher et rput srieux est Ikarios (http://ikarios.com). Si vous comptez faire cohabiter Windows et Linux sur le mme ordinateur, vous aurez galement besoin dun tout petit peu de place sur votre partition Windows ; si vous comptez installer un Linux seul, vous aurez besoin dune disquette.
2.3.5. Le manuel ofciel dinstallation Les instructions de cette formation sont normalement sufsantes, mais ceux qui ont une conguration ou des besoins particuliers trouveront toutes les informations sur linstallation dans le manuel dinstallation ofciel (http://www.debian.org/releases/stable/i386/install.fr.html).
10
en lecture et criture pour des partitions FAT, en lecture seulement pour des partitions NTFS,
Il vous faudra de toute faon plusieurs partitions Linux. Mais au total, il vous faut :
300 Mo environ pour un petit systme sans serveur graphique ; 700 Mo pour un petit systme avec un serveur graphique et quelques applications graphiques ; 3 Go pour un systme complet avec un serveur graphique et de nombreuses applications graphiques et des outils de dveloppement avans.
Noubliez pas de compter en plus les chiers personnels que vous voudrez stocker sur vos partitions Linux !
1.2.2. Conseils pour faire cohabiter Windows et Linux Je vais donner quelques conseils pour une cohabitation Windows / Linux, qui sont les deux seuls systmes dexploitation que je connais bien. Tout dabord, il faut savoir que :
DOS, Windows 3.x, 95 et 98 ne sinstallent que sur la premire partition primaire ; Windows ME peut sinstaller sur nimporte quelle partition primaire (l, je ne suis pas sr...) ; Windows 2000 et XP peuvent sinstaller sur une partition primaire ou un lecteur logique ; Linux peut sinstaller sur des partitions primaires, des lecteurs logiques, ou un mix des deux !
Pour faire cohabiter Linux et Windows, vous pouvez adopter lorganisation suivante pour votre disque dur : 1. dabord une partition primaire pour Windows ; 2. ensuite une grande partition tendue dcoupe en deux lecteurs logiques (ou plus) pour Linux. 11
Ensuite, cherchez le nom du pilote Linux correspondant, en commenant par regarder dans la partie ddie aux drivers du Linux Ethernet HOWTO (http://www.ibiblio.org/mdw/HOWTO/Ethernet-HOWTO-4.html). Si vous ne trouvez pas votre bonheur dans cette page, faites des recherches dans Google (http://www.google.fr) en tapant comme mots cls : Marque_de_la_carte Nom_du_modle_de_la_carte Linux module. 12
Si vous avez un ordinateur portable, commencez votre recherche en allant sur le site Linux on Laptops (http://www.linux-on-laptops.com/). Ce site indexe par marque et par modle les pages web ralises par les possesseurs dordinateurs portables o ils expliquent les drivers utiliser pour faire marcher les diffrents composants intgrs dans lordinateur portable, dont la carte Ethernet. Une fois que vous avez trouv le nom du module correspondant votre carte rseau, notez-le, vous en aurez besoin pendant la procdure dinstallation.
Note : Pour les cartes rseau 3Com PCI de la famille 905 (cartes rseau prtes par VIA), le module sappelle 3c59x.
si 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.
13
Mthode 1 mini-CD : vous allez tlcharger une image de 10 Mo environ qui comprend la saveur bf24 ainsi que les pilotes de priphriques ; le systme de base et les packages seront tlchargs par Internet pendant la procdure dinstallation. Cette image a t faite par un dveloppeur Debian, mais nest pas ofcielle. Tlchargez limage (http://people.debian.org/~dwhedon/boot-oppies/bf2.4-3.0.23-netinst.iso) depuis le site du dveloppeur Debian (http://people.debian.org/~dwhedon/boot-oppies/). Mthode 1 CD : vous allez tlcharger limage ofcielle du CD n 1 de Debian version 3.0r0, 3.0r1 ou 3.0r2. Ce CD est disponible en deux versions : la version normale, et la version non-US, qui contient des logiciels incluant des fonctions cryptographiques interdits dexportation aux Etats-Unis. Vous allez donc tlcharger la version non-US du CD n 1 ; cette image pse un peu moins de 650 Mo et contient les 4 saveurs, les pilotes de priphriques, le systme de base ainsi quune partie des 9000 packages. Tlchargez limage depuis le miroir Debian de Nerim (ftp://ftp.nerim.net/debian-cd/3.0r2/i386/debian-30r2-i386-binary-1_NONUS.iso) ou, pour les personnes connectes VIA, depuis le miroir priv de VIA (ftp://debian.via.ecp.fr/pub/debian-cd/3.0_r1/debian-30r1-i386-binary-1_NONUS.iso).
1.3.2. Vrier lintgrit de limage du CD Pour vrier quun chier est bien le vrai chier original, on calcule la somme MD5 du chier, et on la compare la somme MD5 ofcielle. Deux chiers ayant la mme somme MD5 sont normalement identiques. Pour calculer la somme MD5 dun chier sous Windows, utilisez le petit programme GPL MD5Summer (http://www.md5summer.org). Il faut ensuite comparer le rsultat obtenu avec celui indiqu sur la page de tlchargement :
14
1.3.3. Graver le CD Gravez limage du CD en utilisant votre logiciel de gravure favori. Cette page (http://www.linux-mandrake.com/howtos/iso/howtoisofr.html) explique comment on fait sous Windows avec WinOnCD et Easy CD Creator (cest pour une ISO Linux Mandrake, mais cest videmment pareil pour les ISOs Debian).
Avertissement
Il ne faut pas graver le chier machin.iso sur le CD, mais trouver dans votre logiciel de gravure le menu qui vous permet de graver un CD partir de son image ISO !
rescue.bin : Miroir Debian franais (ftp://ftp.fr.debian.org/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/rescue.bin) ou Miroir VIA (ftp://ftp.via.ecp.fr/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/rescue.bin). root.bin : Miroir Debian franais (ftp://ftp.fr.debian.org/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/root.bin) ou Miroir VIA (ftp://ftp.via.ecp.fr/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/root.bin). driver-1.bin : Miroir Debian franais (ftp://ftp.fr.debian.org/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/driver-1.bin) ou Miroir VIA (ftp://ftp.via.ecp.fr/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/driver-1.bin). driver-2.bin : Miroir Debian franais (ftp://ftp.fr.debian.org/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/driver-2.bin) ou Miroir VIA (ftp://ftp.via.ecp.fr/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/driver-2.bin). driver-3.bin : Miroir Debian franais (ftp://ftp.fr.debian.org/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/driver-3.bin) ou Miroir VIA (ftp://ftp.via.ecp.fr/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/driver-3.bin). driver-4.bin : Miroir Debian franais (ftp://ftp.fr.debian.org/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/driver-4.bin) ou Miroir VIA (ftp://ftp.via.ecp.fr/debian/dists/woody/main/disks-i386/current/images-1.44/bf2.4/driver-4.bin).
1.4.2. Crer les disquettes Tlchargez et installez la dernire version de RawWrite for Windows (http://uranus.it.swin.edu.au/~jn/linux/rawwrite.htm). Dans longlet Write, slectionnez le chier image rescue.bin puis cliquez sur Write. Faites de mme pour les 5 autres chiers images. 15
Larchive chiers-cong-linux.tar.gz (http://people.via.ecp.fr/~alexis/formation-linux/chiers-cong-linux.tar.gz) (41 Ko) contenant les chiers de conguration. Si vous avez un modem ADSL USB de type Alcatel SpeedTouch, tlchargez le package Debian (http://people.via.ecp.fr/~alexis/formation-linux/chiers/speedtouch_1.2-0beta3_i386.deb) que jai cr pour la Woody ainsi que le microcode (http://download.ethomson.com/download/speedmgmt.tar.gz) du modem. Si vous avez un modem ADSL USB de type Hi-Focus, tlchargez le package Debian (http://people.via.ecp.fr/~alexis/formation-linux/chiers/eciadsl-usermode_0.9+cvs20040110_i386.deb) que jai cr pour la Woody. Si vous avez un modem ADSL USB de type SAGEM F@st 800, tlchargez :
la version 1.9.5 (et non la 1.9.6) du driver sur le site de tlchargement du driver (http://download.gna.org/eagleusb/) (il sagit du chier eagle-usb-version.tar.bz2), une version modie du package disponible ladresse http://www.backports.org/debian/dists/stable/hotplug/binary-i386/, si vous suivez la mthode 1 CD, tlchargez le package kernel-headers-2.4.18-bf2.4 (http://ftp.fr.debian.org/debian/pool/main/k/kernel-image-2.4.18-i386bf/kernel-headers-2.4.18-bf2.4_2.4.185_i386.deb).
16
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.
17
Si vous avez dj de lespace disque non partitionn de taille sufsante pour accueillir Linux, alors vous pouvez tout de suite passer au chapitre suivant Dbuter linstallation. Sinon, il va falloir librer de la place et crer une partition vierge destine accueillir Linux. Cest lobjet de ce chapitre.
La premire opration consiste donc faire une dfragmentation, cest--dire dfragmenter vos chiers et mettre de lordre dans le disque dur, de sorte quil ne reste quun bloc de donnes compact en dbut de disque. Figure 6-2. Disque dfragment
Ensuite, vous allez utiliser un utilitaire tel que ps ou Partition Magic pour rduire la taille de la partition initiale et crer une deuxime partition sur lespace libre la n de la grande partition initiale. Figure 6-3. Disque avec 2 partitions
18
2.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 disque dur, et dautre part cest ncessaire alors patience !
Avertissement
Avant daller plus loin, jespre que vous avez bien fait une sauvegarde des donnes importantes de votre disque dur comme je vous lai conseill.
sous Windows 95 - 98 - ME, slectionnez Complet, cochez Copier les chiers systme et cliquez sur Dmarrer. sous Windows 2000 - XP, cochez Crer une disquette de dmarrage MS-DOS et cliquez sur Dmarrer.
Copiez le chier fips.exe sur la disquette. Bootez alors sur la disquette. Pour cela, mettez-la dans le lecteur de disquette et redmarrez votre ordinateur. Vriez la squence de boot dans le BIOS de votre ordinateur, et assurez-vous que le lecteur de disquette dsign par A ou Floppy y intervient avant le disque dur dsign par C ou HDD-0. Lancez le programme fips.exe qui est sur la disquette. Aprs deux Press any Key, il vous demande si vous voulez faire une copie de vos secteurs root et boot : faites ce quil vous plait ! Ensuite, utilisez les ches gauche et droite pour xer la limite entre votre partition Windows et vos futures partitions Linux. Cest l quil faut xer la taille totale que vous allouerez Linux. Il vous marque alors le futur rsultat. Si a vous plait, tapez c, sinon tapez r. Ensuite vient la validation nale : tapez y. Voil, cest fait ! Ne vous inquitez pas sil vous marque la n Erreur dallocation mmoire, Impossible de charger COMMAND, systme suspendu : a a quand mme march ! Enlevez la disquette et faites Ctrl-Alt-Suppr pour redmarrer sous Windows. Il est conseill de faire un scandisk sur la partition qui a t rduite.
2.3.2. formate en NTFS Deux utilitaires payants sont capables de rduire une partition NTFS pour laisser de la place la n du disque pour installer Linux :
Un outil libre est en dveloppement : ntfsresize (http://mlf.linux.rulez.org/mlf/ezaz/ntfsresize.html). Il marche, mais il reste pour linstant compliqu utiliser et ne permet pas de rcuprer tout lespace disque libre sur la partition NTFS mme si le disque a t dfragment. Je vous dconseille de lutiliser.
19
2.4. Rsultat
Votre disque dur contient maintenant deux partitions : une premire pour Windows, et une deuxime qui servira pour installer Linux.
20
1. Booter
1.1. Rgler la squence de boot
Redmarrez votre ordinateur et entrez dans le BIOS en appuyant sur une touche au dmarrage (gnralement Suppr ou F1). Naviguez dans les menus du BIOS jusqu la page qui permet de changer la squence de boot. Assurez-vous que le lecteur de CD ou DVD dsign par CD-ROM ou le lecteur de disquette dsign par A ou Floppy y intervient avant le disque dur dsign par C, Hard Drive ou HDD-0. Quittez le BIOS en sauvegardant les changements.
1.2.1. Mthode 1 mini-CD Insrez le CD et redmarrez votre ordinateur. Quand vous voyez lcran ci-desssus, appuyez sur Entre et le systme devrait booter sans problme.
1.2.2. Mthode 1 CD ou 7 CDs / 1 DVD Insrez le CD n 1 ou le DVD et redmarrez votre ordinateur. Quand vous voyez lcran ci-desssus, tapez bf24 :
boot: bf24
21
1.2.3. Mthode 6 disquettes Insrez la disquette rescue et redmarrez votre ordinateur. Quand vous voyez lcran ci-desssus, appuyez sur Entre et le systme devrait booter sans problme. Aprs quelques secondes, il sarrte et vous dit :
VFS: Insert root floppy to be loaded into RAM disk and press ENTER
1.3. Ca marche ?
Certains ordinateurs (surtout des portables) sont incompatibles avec la saveur bf24 et se bloquent lors du boot. Il vous faut alors essayer les autres saveurs :
si vous utilisez la mthode 6 disquettes, vous allez devoir tlcharger les images des disquette dune autre saveur et les refaire ; si vous utilisez la mthode 1 mini-CD, vous allez devoir tlcharger une ISO correspondant une autre saveur depuis la page du dveloppeur Debian (http://people.debian.org/~dwhedon/boot-oppies/) pour les mini-CDs et re-graver un CD ; si vous utilisez la mthode 1 CD ou 7 CDs / 1 DVD, il vous suft de booter de nouveau sur le CD et de taper le nom dune autre saveur au prompt boot:.
Par contre, la suite de cette formation nest pour linstant pas adapte aux autres saveurs. Si vous utilisez un modem ADSL USB, ladaptation risque dtre un peu difcile ; sinon, le seul changement est que vous ne pourrez pas choisir le type de systme de chiers pour vos partitions Linux (ce sera forcment Ext2 au lieu de Ext3). Dans tous les cas, si vous rencontrez ce problme, merci de me le signaler ladresse formation-linux@via.ecp.fr (mailto:formation-linux@via.ecp.fr) pour que je puisse estimer la frquence de ce problme et savoir plus exactement sur quel type dordinateur il intervient. Mais dans limmense majorit des cas, le boot se passe sans problme et vous arrivez alors dans linterface Bleu-Blanc-Rouge qui va vous accompagner tout au long de cette installation.
22
Ltape suivante est donc la conguration du clavier. Une bonne conguration du clavier est indispensable dans la mesure o vous aurez saisir vos mots de passe qui napparatront jamais en clair lcran. Si vous avez un clavier franais, choisissez le clavier azerty/fr-latin0.
23
2. Les priphriques
2.1. Laccs aux priphriques
Une des originialits des systmes Unix est leur manire daccder aux priphriques. Chaque priphrique du systme (souris, disque dur, lecteur CD, carte son, etc...) est reprsent par un chier, quelques exceptions prs (clavier, carte rseau et carte graphique). Le fait dcrire dans un tel chier va envoyer des commandes au priphrique. Le fait de lire dans un tel chier permet de recevoir des donnes du priphrique. Cest une mthode trs simple qui a fait ses preuves !
24
Exemples :
Si vous avez 4 partitions primaires, elles sont numrotes dans lordre hda1, hda2, hda3 et hda4. Si vous avez dans lordre : 2 partitions primaires, 1 partition tendue avec 3 lecteurs logiques dedans, et 1 dernire partition primaire la n, a donne :
Les deux premires partitions primaires sont hda1 et hda2, La partition tendue est hda3, Les lecteurs logiques de la partition tendue sont, dans lordre, hda5, hda6 et hda7, La dernire partition primaire est hda4.
Tableau 8-4. Exemple de priphriques spciaux Fichier /dev/null /dev/zero /dev/random Priphrique Tout ce qui est envoy ce priphrique est dtruit On peut lire une innit de zros depuis ce priphrique On peut lire des nombres alatoires depuis ce priphrique
Nous allons pouvoir intgrer le second systme de chier dans le rpertoire /home du premier laide de la commande mount. Par exemple, si le deuxime systme de chiers est /dev/hdb1, il sufra de taper :
# mount /dev/hdb1 /home
26
27
Chapitre 9. Partitionner
1. Lorganisation des partitions sous Linux
1.1. Les types de systmes de chiers
Linux utilise deux types de systmes de chiers :
Linux Swap qui sert stocker la mmoire virtuelle, qui est utilise quand la mmoire vive est pleine ; Linux Native qui sert stocker les chiers et les rpertoires.
double ou triple de la taille de la mmoire vive quand celle-ci est infrieure 128 Mo ; gale la taille de la mmoire vive quand celle-ci est suprieure ou gale 128 Mo.
Cette partition est appele partition de Swap ou partition dchange. Pour stocker les chiers et les rpertoires, on cre souvent plusieurs partitions avec un systme de chiers de type Linux Native. Pour les serveurs, les administrateurs Linux ont souvent pour habitude de sectionner le systme de chiers en de nombreuses partitions pour assurer une meilleure rsistance du systme aux crash disk, aux failles de scurit et aux attaques de tout type. Par exemple, il ne faudrait pas quun simple utilisateur puisse saturer la partition sur laquelle se trouve la racine du systme de chiers juste en remplissant son rpertoire personnel (/home/son_login), car ceci pourrait rendre le systme instable. Il ne faudrait pas non plus que les journaux systme (ou logs) qui se trouvent dans le rpertoire /var/log remplissent la partition sur laquelle se trouve la racine suite une attaque rseau ce qui aurait la mme consquence. Il est galement bon de mettre sur une partition part le rpertoire /tmp car il est accessible en criture tous les utilisateurs et tous les programmes. Sur une machine personnelle, de telles prcautions ne sont pas forcment ncessaires et imposent des contraintes inutiles sur la taille des rpertoires.
Tableau 9-2. Pour un serveur Partition Swap Taille Egale ou double de la mmoire vive 28
Chapitre 9. Partitionner
La liste des partitions apparat dans leur ordre dapparition sur le disque dur. Chaque ligne correspond une partition, et cfdisk indique dans lordre :
le device correspondant (hdaX) ; les ags ventuels (en fait, seules les partitions de Windows 95-98 ont besoin dun ag Boot pour tre bootables) ; le type de partition : primary ou logical ; le type de systme de chiers : FAT 16, FAT 32, NTFS, Linux (alias Linux Native) ou Linux Swap ; la taille en Mgaoctet.
29
Chapitre 9. Partitionner
Les ches haut / bas vous permettent de slectionner une partition. Les ches droite / gauche vous permettent de vous dplacer dans le menu en bas. Si vous avez utilis ps, commencez par supprimer la dernire partition (a doit tre une partition primaire de type FAT). Ensuite, crez vos partitions en slectionnant lespace libre (Free Space) et en slectionnant dans le menu New, puis le type de partition (Primary ou Logical) puis la taille en Mo, et enn la position lintrieur de lespace libre (beginning ou end). Le type de systme de chier mis par dfaut est Linux, ce qui correspond en fait Linux Native. Pour changer de type et passer par exemple Linux Swap, il suft de slctionner Type dans le menu puis de taper le numro du systme de chiers (82 pour Linux Swap).
Note : Contrairement au fdisk de DOS, la cration dune partition logique (en slectionnant New puis Logical...) entraine automatiquement la creation de la partition tendue sous-jacente.
Une fois que vous avez une conguration qui vous satisfait, il faut lcrire sur le disque dur. Pour cela, slectionnez Write dans le menu. Puis Quit pour revenir au menu principal dinstallation.
Une fois que vous avez ralis lopration pour la partition racine, il faut recommencer ltape Initialiser une partition Linux (qui est alors propose comme Autre Choix) pour chaque partition Linux. Toutes vos partitions Linux sont formates et montes ? Cest bien, vous pouvez passer ltape suivante...
30
pour les partitions FAT, le support est inclus dans le noyau ; pour les partitions NTFS, vous avez besoin de charger un module spcique : allez dans la catgorie kernel/fs/ntfs et slectionnez le module ntfs. Tapez Entre : il vous demande alors si vous voulez insrer le module que vous avez slectionn dans le noyau ; rpondez Oui. Il vous propose ensuite dentrer des arguments en ligne de commande qui seront passs en option lors de linsertion du module : laissez la ligne vide et rpondez OK.
alors cela signie que votre carte rseau a dj t reconnue. Vous pouvez alors revenir la console de la procdure dinstallation par la combinaison de touches Alt-F1 et demander sortir de ltape.
31
Si aucune ligne napparat, cela signie que votre carte rseau na pas t reconnue automatiquement. Revenez la console de la procdure dinstallation par la combinaison de touches Alt-F1. Allez dans la catgorie kernel/drivers/net et slectionnez le driver (alias module) correspondant votre carte rseau (vous avez d noter son nom la section Si vous avez une carte rseau Ethernet...). Tapez Entre : il vous demande alors si vous voulez insrer le module que vous avez slectionn dans le noyau ; rpond Oui. Il vous propose ensuite dentrer des arguments en ligne de commande qui seront passs en option lors de linsertion du module : normalement, vous nen avez pas besoin ; laissez la ligne vide et rpondez OK. Il va alors essayer dinsrer le module :
si a marche : victoire ! Vous pouvez sortir de ltape et aller directement au chapitre suivant Conguration du rseau. sil vous dit Echec de linstallation, vous avez deux possibilits :
si vous tes sr du nom du module, vous pouvez essayer de le r-insrer en prcisant cette fois des paramtres dans la ligne de commande, si vous ntes pas sr du nom du module, essayez-en dautres dans la liste... jusqu que vous en trouviez un qui sinsre !
Une fois que vous avez insr le module correspondant votre carte rseau, demandez sortir de ltape.
Si votre portable a une carte rseau PCMCIA, elle doit maintenant fonctionner... ce que vous allez pouvoir vrier au chapitre suivant !
32
si vous utilisez la mthode 1 mini-CD ou 6 disquettes, cest ltape Congurer le rseau ; si vous utilisez la mthode 1 CD ou 7 CDs / 1 DVD, cest ltape Congurer le nom de la machine.
vous utilisez la FreeBox en Ethernet, vous tes connect Noos (ou un autre fournisseur daccs cble qui utilise encore DHCP et pas PPPoE) avec un modem Ethernet, vous tes connect un rseau local sur lequel se trouve un serveur DHCP (cest le cas le plus courant... et cest le cas du rseau VIA).
Note : Si vous ne savez pas si un serveur DHCP est prsent, a ne cote rien dessayer en rpondant Oui...
33
Soit il commence linstallation du systme de base sans vous poser aucune question ; Soit il vous afche une bote de dialogue et vous propose dinstaller le systme de base depuis le CD-ROM : appuyez sur Entre pour conrmer, puis une deuxime fois pour conrmer que cest bien le premier CD Debian qui est insr, et encore une troisime fois pour approuver le rpertoire propos par dfaut depuis lequel se fera linstallation du systme de base.
Si vous devez passer par un Proxy pour accder au miroir Debian, entrez son adresse dans la champ Mandataire et son port dans le champ Port du mandataire.
34
Si ce quil vous afche correspond effectivement votre Windows dj install, slectionnez Continuer puis Inclure.
si vous faites cohabiter Linux et Windows sur le mme ordinateur, LILO vous afche un menu rouge qui vous donne le choix entre vos deux O.S. : tapez Entre pour conrmer le lancement de Linux qui est slectionn par dfaut ; si vous navez que Linux dinstall sur lordinateur, LILO lance Linux directement sans vous afcher de menu rouge.
Une fois que Linux a ni de booter, vous tes accueilli par le message ci-dessous et il vous reste encore quelques tapes pour nir linstallation.
35
36
1. Le rglage de lhorloge
Ltape suivante est Time Zone Conguration. A la question Will the hardware clock be set to GMT ?, rpondez :
Non, si cest un ordinateur personnel sur lequel Windows et Linux cohabitent, car sinon votre horloge aura une ou deux heures de dcalage sous Windows, parce que Windows ne sait pas faire la diffrence entre horloge matrielle et horloge systme. Oui, si la machine est destine faire ofce de serveur.
Ensuite, slectionnez votre fuseau horaire (Europe puis Paris pour la France).
2.2.2. 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.
37
linstallation de packages et aux rares tches qui ncessitent les droits de root ; pour toutes les autres tches, il faut utiliser un compte utilisateur. Pourquoi ? Parce que lutilisation du compte root est dangereuse : une fausse manipulation peut dtruire le systme... ce qui est impossible en tant que simple utilisateur !
2.3.2. Cration du compte Il vous demande dabord un login, puis un nom complet (facultatif), puis dentrer deux fois le mot de passe. Comme pour le root, un mot de passe non trivial est fortement conseill.
38
3. 4.
5.
si votre proxy ne require pas dauthentication par login et mot de passe, tapez :
http://proxy.exemple.org:8080
si votre proxy require une authentication par login et mot de passe, tapez :
http://login:password@proxy.exemple.org:8080
o proxy.exemple.org est le nom DNS de votre proxy, 8080 son port, login et password votre login et mot de passe pour le proxy.
6. 7.
Add another apt source ? : rpondez Non. Use security updates from security.debian.org ? : rpondez Oui pour bncier automatiquement des mises jour de scurit sorties depuis la dernire release de la version stable. 39
Cette tape va vous permettre dinstaller certains packages de base qui nont pas encore t installs. Passez lcran de bienvenue en tapant Espace. Vous arrivez alors dans la liste des packages ; appuyez sur Entre pour approuver les packages quil a slectionn par dfaut. Il vous afche alors la liste des packages quil veut installer (80 environ) (et vous annonce quil va retirer le package pcmcia-cs si vous laviez demand lors dune tape prcdente) et vous demande Do you want to continue ? [Y/n]. Acceptez en tapant simplement Entre ; en effet, quand il y a comme ici deux choix dont lun en majuscule [Y/n], cest le choix en majuscule qui est choisi quand vous tapez simplement Entre. Si vous utilisez la mthode 1 CD ou 7 CDs / 1 DVD, assurez-vous que cest bien le CD n 1 qui est insr et appuyez sur Entre. Il va alors procder aux installations et aux ventuels retraits de packages. Pendant linstallation de certains packages, il va vous afcher certaines informations et vous poser des questions de conguration. Rpondez-y en suivant les consignes ci-dessous :
Le premier cran concerne la conguration du package binutils et commence par Kernel link failure info. Cest juste un message pour effrayer les dbutants, ne vous inquitez pas... comme moi, vous ne comprenez probablement rien ce quil dit, slectionnez OK et ne vous inquitez pas ! Conguration du package less : Add a mime handler for "application/*" ? Rpondez Non. Conguration du package locales :
40
1.
2.
Which locale should be the default in the system environment ? : rpondez fr_FR.
Conguration du package nfs-common : rpondez OK lcran dinformation quil vous afche ; Conguration du package ssh : 1. 2. 3. Allow SSH protocol 2 only ? Rpondez Oui. Aprs un cran dinformation, il vous demande : Do you want /usr/bin/ssh-keysign to be installed SUID root ? Rpondez Oui. Do you want to run the sshd server ? Rpondez Non (nous modierons ce paramtre plus tard lors de la conguration du serveur SSH au chapitre Laccs distance par SSH).
Conguration du package ispell : Select the number of the default dictionary ; choisissez parmi les deux dictionnaires proposs (vous pourrez en installer dautres plus tard).
Si vous avez d tlcharger des packages cette tape, il vous demande : Do you want to erase any previously downloaded .deb les ? [Y/n]. Tapez Entre pour accepter, et encore une deuxime fois pour continuer. Enn, il vous pose une question sur la conguration du serveur de mail Exim : tapez Entre, puis choisissez loption n 5 No conguration. Nous peaunerons la conguration du serveur de mail plus tard, au chapitre Le mail en console !
3. Have fun !
Quand il vous afche lcran Have fun !, cest que vous avez ni linstallation ! Vous avez enn Linux !
41
42
Linux = la Debian que vous venez dinstaller, LinuxOLD = la Debian que vous venez dinstaller, mais avec un noyau plus vieux ( utiliser si vous narrivez pas booter avec le choix Linux), Windows.
2. En cas de problme...
LILO ne marche pas et vous voulez au plus vite pouvoir booter de nouveau sous Windows ? Suivez la procdure suivante :
3.
Rebootez.
43
44
vous logguer en tant que root : tapez root, appuyez sur Entre, ensuite tapez le mot de passe root que vous avez dni pendant la procdure dinstallation et appuyez sur Entre. Vous voyez alors apparatre un certain nombre de messages et enn le prompt du root : Figure 1-2. Prompt du root sur la machine alpy
Quand vous tes ainsi loggu en tant que root, vous avez tous les droits sur le systme.
vous logguer en tant que simple utilisateur : tapez le nom dutilisateur que vous avez dni pendant la procdure dinstallation, appuyez sur Entre, ensuite tapez le mot de passe associ cet utilisateur et appuyez sur Entre. Vous voyez alors apparatre un certain nombre de messages et enn le prompt de lutilisateur : Figure 1-3. Prompt de lutilisateur alexis sur la machine alpy
Quand vous tes ainsi loggu en tant que simple utilisateur, vous navez que des droits limits sur le systme.
Attention
Rappel : lutilisation du compte root est rserve la modication de la conguration du systme, linstallation de packages et aux rares tches qui ncessitent les droits de root ; pour toutes les autres tches, il faut utiliser un compte utilisateur. En effet, lutilisation du compte root est dangereuse : une fausse manipulation peut dtruire le systme... ce qui est impossible en tant que simple utilisateur !
1.2. Convention
Dans toute la suite de cette formation, nous adopterons la convention suivante :
46
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
Si vous ne les connaissez pas, il existe des cours sur Internet qui vous permettront de les apprendre. Par exemple ce cours de lEcole Polytechnique de Montral (http://www.grbb.polymtl.ca/syst_info/cours_unix.html).
47
condition que le type de systme de chier soit support par le noyau et que le rpertoire /mnt/rpertoire_de_montage existe dj. Pour dmonter ce systme de chier, il suft de taper en root :
# umount /dev/priphrique
ou :
# umount /mnt/rpertoire_de_montage
Par contre, nimporte quel utilisateur peut taper la commande mount tout court pour savoir quels sont les systmes de chiers monts linstant dexcution de la commande.
2.2.2. su Cette commande sert changer dutilisateur, aprs avoir rentr le bon mot de passe, bien sr !
2.2.3. 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 sont rattachs aucun terminal. Cette commande liste donc lintgralit des processus du systme. Elle est quivalente la commande ps -A ps -faux : liste tous les processus du systme en les regroupant par enchanement dexcution.
48
2.2.4. 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.
2.2.5. nice et renice Les commandes nice et renice servent grer la priorit des processus. La priorit dun processus est un nombre entier relatif compris entre -20 (priorit haute) et 19 (priorit basse). Par dfaut, les programmes lans par les utilisateurs du systme ont la priorit 0 (priorit moyenne). Certains services sont lans par le systme avec une priorit diffrente de 0. Pour voir la priorit des processus lans, utilisez le programme top : il vous afche la liste des processus classs par utilisation du processeur et actualise toutes les 5 secondes. La quatrime colonne intitule NI indique la priorit. Pour quitter top, appuyez sur q. Seul le root a le droit de lancer des processus avec une priorit comprise entre -20 et -1 inclus. Pour lancer un programme avec un priorit X (X compris entre -20 et 19) :
# nice -n X nom_du_programme
Pour changer la priorit dun processus dj lanc, il faut tre soit root soit le propritaire du processus et connatre son PID :
# renice X PID_du_processus
id : permet de savoir quel numro dutilisateur (uid, comme user id) et quel numro de groupe (gid, comme group id) sont associs un utilisateur. passwd : change le mot de passe (il commence par demander lancien mot de passe quand il sagit dun simple utilisateur). groups : pour savoir quels groupes appartient lutilisateur. adduser toto : ajoute lutilisateur toto au systme. deluser toto : supprime lutilisateur toto du systme. adduser toto disk : ajoute lutilisateur toto au groupe disk (modication effective aprs que lutilisateur toto se soit dloggu puis reloggu). deluser toto audio : enlve lutilisateur toto du groupe audio. printenv : afche les variables denvironnement de lutilisateur. df -h : fait le point sur lespace libre de chaque partition. du -sh : mesure la taille du rpertoire depuis lequel il est excut. 49
halt : teint lordi. Equivaut la commande shutdown -h now. reboot : reboote lordi. Equivaut la commande shutdown -r now. uptime : dit depuis combien de temps le systme na pas reboot. Certains samusent ainsi faire des concours duptime pour prouver la stabilit de leur machine sous Linux ! w : permet de savoir quels utilisateurs sont loggs sur le systme et ce quils font. lspci : donne des informations sur les bus PCI du systme et les priphriques PCI qui y sont rattachs (AGP est considr comme un bus PCI) : trs pratique pour avoir des renseignements sur le hardware du systme ! Attention, quand la commande afche Unknown device, cela veut juste dire que lID PCI du priphrique na pas de nom correspondant dans la base de 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.
date : donne lheure systme. cal : afche un calendrier du mois courant. cal 2003 afche un calendrier de lanne 2003. bc : une calculatrice en mode texte. la combinaison de touches Ctrl-l permet de rafrachir lafchage dune application en console quand lafchage est perturb (par un message derreur par exemple).
50
Il va vous poser les mmes questions qu ltape dselect lors de la procdure dinstallation (chapitre Les packages), et vous allez y apporter les mmes rponses : 1. Select locales to be generated : cochez :
2.
Which locale should be the default in the system environment ? : rpondez fr_FR.
51
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.
3.
Copiez galement les autres chiers si vous avez un modem ADSL USB. Une fois que vous avez copi tout ce quil fallait, dmontez la disquette :
# umount /floppy
52
o /dev/hdXY dsigne votre partition Windows (la dsignation des partitions tait explique dans la section Les partitions dans la premire partie). Copiez larchive contenant les chiers de conguration :
# cp /mnt/windows/chemin_vers_le_rpertoire_que_tu_avais_cre/fichiers-config-linux.tar.gz ~
Si vous avez un modem ADSL USB ou PCI, copiez galement dans le home du root les autres chiers que je vous avais demand de tlcharger.
53
2.2. Mthode 1 CD
Tapez les commandes suivantes :
# apt-get install libgpmg1 # dpkg -i ~/vim*.deb
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).
3. Se servir de vim
Pour diter un chier texte existant ou crer un nouveau chier texte, il suft de taper :
54
# vim nom_du_fichier
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.
55
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.
Presque tous les programmes et systmes Unix sont conus avec une rgle qui dit quil ne tient pas compte des lignes du chier de conguration qui commencent par un certain caractre (souvent #). Lutilisateur peut alors mettre des lignes de commentaires dans le chier de conguration en commenant ces lignes par le caractre particulier. Il peut aussi facilement activer ou dsactiver une ligne du chier de conguration en enlevant ou en ajoutant le caractre particulier au dbut de la ligne. Le fait de dsactiver ainsi une ligne de conguration se dit "commenter une ligne" et le fait dactiver ainsi une ligne de conguration se dit "dcommenter une ligne". Ces expressions seront rgulirement utilises dans la suite de cette formation.
Note : Quand vous ditez un chier de conguration existant, il est gnralement trs facile de savoir quel est le caractre particulier : les lignes de commentaires sont nombreuses, contiennent souvent des phrases rdiges et apparaissent normalement en bleu sous vim.
57
Remplacez les chiers de conguration par dfaut par mes chiers de conguration :
# cd ~/config # cp zshrc zshenv zlogin zlogout dir_colors /etc/
wget http://people.via.ecp.fr/~alexis/formation-linux/config/zshrc wget http://people.via.ecp.fr/~alexis/formation-linux/config/zshenv wget http://people.via.ecp.fr/~alexis/formation-linux/config/zlogin wget http://people.via.ecp.fr/~alexis/formation-linux/config/zlogout wget http://people.via.ecp.fr/~alexis/formation-linux/config/dir_colors mv zshrc zshenv zlogin zlogout dir_colors /etc/
# 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.
Pour que le changement soit effectif, il faut se dlogger (Ctrl-d) et se relogguer. Vous pouvez alors admirer la diffrence !
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
59
La variable PATH contient la liste de tous les rpertoires dans lesquels le systme va chercher les excutables des commandes que vous tapez au prompt, spars par des "deux points". Par exemple, le rpertoire /bin/ contient les commandes Unix de base, et vous pouvez vrier quil est bien dans le PATH. Pour modier le PATH, ditez le chier de conguration /etc/zshenv et ajoutez ou supprimez un rpertoire la ligne qui commence par export PATH=.
60
1.2. Mthode 1 CD
Editez le chier /etc/fstab et rajoutez la n du chier la ligne suivante :
usbdevfs /proc/bus/usb usbdevfs defaults 0 0
Dcompressez larchive contenant le microcode et copiez-le dans le rpertoire /usr/share/speedtouch que vous crerez pour loccasion :
# tar xvzf ~/speedmgmt.tar.gz # mkdir /usr/share/speedtouch # cp ~/mgmt/mgmt.o /usr/share/speedtouch
61
Rpondez aux questions en suivant mes instructions : 1. 2. 3. 4. 5. 6. 7. 8. Login : tapez le login qui vous a t attribu par votre fournisseur daccs ; Password : tapez le mot de passe qui va avec ; Your Vpi : tapez 8 pour la France, la Belgique ou la Suisse ; Your Vci : tapez 35 pour la France, la Belgique ou la Suisse ; Do you want pppd to reconnect automatically ? : rpondez y pour quil se reconnecte automatiquement en cas de dconnexion imprvue ; Do you want pppd to use peer DNS ? : rpondez y pour utiliser les serveurs DNS de votre fournisseur daccs ; Do you want to set the adsl connection as your default route ? : rpondez y pour que votre connexion ADSL soit utilise par dfaut par les programmes qui ont besoin du rseau ; Do you want pppd to be in debug mode ? : rpondez n pour ne pas avoir les messages de dbuggage.
Il va alors crire les chiers de conguration votre place. Si vous vous tes tromp une question, relancez le script.
2.3. Se connecter
Cest trs simple :
# modem_run -m -f /usr/share/speedtouch/mgmt.o # pon adsl
cela signie que la connexion est tablie. Vous pouvez alors arrter lafchage des messages (encore appels logs) par la combinaison de touches Ctrl-c. Pour se dconnecter :
# poff adsl
62
La commande suivante va permettre au script de se lancer au dmarrage (pour initier la connexion ADSL) et larrt du systme (pour fermer proprement la connexion) :
# update-rc.d speedtouch.sh start 90 2 3 4 5 . stop 10 0 1 6 .
Rpondez aux questions en suivant mes instructions : 1. 2. 3. 4. 5. 6. 7. 8. 9. Enter your choice : tapez 1 pour Congure all settings ; Type in your user name : tapez le login qui vous a t attribu par votre fournisseur daccs ; Type in your password : tapez le mot de passe qui va avec ; Select your provider : consultez le liste de fournisseurs daccs qui safche et tapez le numro du vtre ; Type in an IP for DNS1 : si ladresse IP du serveur DNS primaire correspond bien celui fourni par votre fournisseurs daccs (ce qui devrait tre le cas si vous avez bien rpondu la question prcdente), tapez simplement Entre ; Type in an IP for DNS2 : idem que la question prcdente pour le serveur DNS secondaire ; Type in your VPI : tapez 8 pour la France, la Belgique ou la Suisse ; Type in your VCI : tapez 35 pour la France, la Belgique ou la Suisse ; Select your modem : slectionnez votre modem dans la liste propose ;
10. Type in a VID1 : appuyez simplement sur Entre ; 11. Type in a PID1 : idem que prcdemment ; 12. Type in a VID2 : idem que prcdemment ; 13. Type in a PID2 : idem que prcdemment ; 14. Select your .bin le for synch : pour la slection du binaire de synchronisation, vous navez pas vraiment le choix... un seul est propos ; 63
15. Select your PPP mode : laissez le choix par dfaut et tapez simplement Entre ; 16. Is DHCP used by your provider ? : tapez n ; 17. Did you get a static IP from your provider ? : si votre fournisseur daccs ne vous a pas donn dIP xe, tapez n ; 18. Press ENTER to create cong les or Ctrl+C to exit now without saving : tapez Entre !
3.3. Se connecter
Lanez le script charg dtablir la connexion :
# startmodem
Le package hotplug de la Woody ntant pas assez rcent pour supporter ce modem, je vous propose dinstaller la place le package que je vous avais fait tlcharger avant de dmarrer la procdure dinstallation et que je vous avais demand de rapatrier dans le home du root :
# dpkg -i ~/hotplug*.deb
Le driver pour le modem tait sous forme de code source et non sous forme binaire comme les drivers livrs en packages Debian, il est ncessaire dinstaller les en-ttes des sources du noyau Linux pour pouvoir compiler le driver. Installez les en-ttes des sources du noyau :
si vous suivez la mthode 1 CD, installez le package que je vous avais demand de tlcharger :
# dpkg -i ~/kernel-headers-2.4.18-bf2.4*.deb
64
Puis faites un lien symbolique /usr/src/linux pointant vers les en-ttes des sources du noyau en tapant les commandes suivantes dans une console frachement ouverte en tant que simple utilisateur (pour que le systme tienne compte de votre nouvelle appartenance au groupe src) :
% cd /usr/src/ % ln -s kernel-headers-2.4.18-bf2.4 linux
Si vous ntes pas dgroup : branchez votre modem et lancez le script de connexion :
# startadsl
Si vous tes dgroup : branchez votre modem et regardez quelle interface rseau il correspond (eth0 ou eth1 ou eth2, etc...). Ensuite, lanez la connexion en faisant une requte DHCP sur linterface rseau correspondant au modem :
# dhclient ethX
65
CDCEther
Si vous avez dj une carte rseau Ethernet fonctionnelle sous Linux, remplacez encore une fois eth0 par eth1. Demandez au systme de tenir compte de ce changement :
# /etc/init.d/networking restart
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. 2. 3. 4. 5. 6. 7. 8. 9. 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. 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. 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 ! Sensuit une question au sujet des options noauth et defaultroute : rpondez Oui. Entrez le nom dutilisateur : tapez le login qui vous a t attribu par votre fournisseur daccs. Entrez le mot de passe : tapez le mot de passe associ. Utilisation du serveur de nom associ ? Suivez le choix recommand : rpondez Oui. 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. Voulez-vous que la connexion soit tablie au dmarrage de la machine ? Rpondez selon votre utilisation habituelle de la connexion Internet.
10. Voulez-vous dmarrer la connexion tout de suite ? Cest loccasion de tester : rpondez Oui ! Si vous avez mal rpondu une des questions, relanez lassistant :
# pppoeconf
66
Comme expliqu au dernier cran, pour tablir la connexion (si elle nest pas lane au dmarrage), lanez :
# pon dsl-provider
sil est connect sur le port srie COM1, le device correspondant sera /dev/ttyS0 ; sil est connect sur le port srie COM2, le device correspondant sera /dev/ttyS1.
Crez un lien symbolique /dev/modem pointant vers le bon priphrique ; par exemple, sil est branch sur le port COM1, tapez :
# cd /dev # ln -s ttyS0 modem
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...).
67
Slectionnez Create - Create a connection et rpondez aux questions successives : 1. 2. 3. 4. 5. 6. 7. 8. 9. Provider Name : rentrez un nom pour cette connexion (par exemple le nom de votre fournisseur daccs Internet) ; Congure Nameservers (DNS) : slectionnez Use dynamic DNS pour obtenir automatiquement les adresses des serveurs DNS de votre fournisseur daccs chaque connexion ; Authentication Method : slectionnez PAP Peer Authentication Protocol [TODO : je ne sais pas dans quel cas il faut slectionner "Chat"...] ; 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) ; 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) ; Speed : laissez la valeur 115200 qui est prsente par dfaut ; 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 ; Phone Number : rentrez le numro de tlphone de votre fournisseur daccs ; 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 ;
68
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).
7.5. 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
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.
69
infrieure
dpkg
2. Dpkg
2.1. Utilit
Il faut viter de lutiliser en temps normal pour installer et dsinstaller des packages, puisque quil ne gre pas les dpendances entre packages. Par contre, cest souvent le seul moyen dinstaller des packages qui ne sont pas prsents dans la distribution. Il faut alors tlcharger les chiers correspondant aux packages et les installer avec la commande dpkg.
2.2. Utilisation
Les commandes savoir sont les suivantes :
Installe les packages package1 et package2 (comme dpkg ne gre pas les dpendances, il faut installer en mme temps les packages qui dpendent lun de lautre ; si une ancienne version du package est dj installe, elle sera remplace) :
# dpkg -i package1_0.1_i386.deb package2_0.2_i386.deb
Donne le nom du package qui a install le chier /usr/bin/vim (la rponse est facile, cest le package vim !) :
% dpkg -S /usr/bin/vim
Pour plus dinformations ou pour avoir la liste complte des options disponibles, consultez le manuel de dpkg :
% man dpkg
3. Apt-get
3.1. Utilit
Apt-get est la couche qui apporte une certaine intelligence et une grande facilit dutilisation au systme de gestion des packages Debian. Avec apt-get, on dnit les sources des packages dans un chier de conguration et il gre linstallation et le retrait des packages en tenant compte des dpendances ainsi que le tlchargement des packages sils sont sur une source rseau. Apt-get est donc utilis pour installer et retirer les packages inclus dans la distribution ainsi que des packages qui peuvent tre inclus dans les sources.
deb pour dnir une source de packages binaires ; deb-src pour dnir une source de packages sources (cela nintressera que les dveloppeurs qui veulent examiner le code source des programmes).
Pour ajouter ou retirer une source rseau ou chier, il faut diter le chier " la main". Pour ajouter comme source un CD ou DVD Debian, il faut excuter la commande suivante :
71
# 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.
Si vous aviez suivi la mthode 6 disquettes ou la mthode 1 mini-CD, vous navez normalement rien changer. Par contre, si vous aviez suivi la mthode 1 CD, vous devez supprimer la ligne qui correspond au CD et taper les trois lignes ci-dessus.
Note : Vous pouvez remplacer ftp.fr.debian.org par le nom DNS dun autre miroir Debian, notamment si vous avez accs un miroir plus rapide. Par exemple, pour avoir le miroir Debian de VIA (http://www.via.ecp.fr), il faut mettre debian.via.ecp.fr la place de ftp.fr.debian.org.
3.2.3. Mthode 7 CDs / 1 DVD Pour linstant, le chier /etc/apt/sources.list doit normalement contenir 7 lignes correspondant aux 7 CDs, ou une seule ligne si vous utilisiez un DVD. Selon les cas, vous devrez ajouter ou non des lignes au chier :
si lordinateur na pas de connexion Internet, alors vous navez pas besoin de modier le chier ; si lordinateur a une connexion Internet par modem classique que vous avez russi la faire marcher au chapitre Faire marcher la connexion Internet, alors rajoutez la ligne suivante pour bncier des mises jour de scurit :
deb http://security.debian.org/ woody/updates main contrib non-free
si lordinateur a une connexion Internet de type ADSL ou cble que vous avez russi la faire marcher au chapitre Faire marcher la connexion Internet, alors rajoutez les lignes suivantes pour bncier des nouvelles releases de Debian et des mises jour de scurit :
deb http://ftp.fr.debian.org/debian woody main contrib non-free deb http://ftp.fr.debian.org/debian-non-US woody/non-US main contrib non-free deb http://security.debian.org/ woody/updates main contrib non-free
3.3. Utilisation
Les commandes savoir sont les suivantes :
Met jour la liste des packages disponibles (pour les sources rseau ou chier, il doit aller voir si elles ont t mises jour ; pour les sources CD, il ne fait rien de particulier) :
# apt-get update
72
Met jour tous les packages dj installs la dernire version disponibles dans les sources :
# apt-get upgrade
Idem que la commande prcdente, mais cette commande est optimise pour les migrations vers une version suprieure de Debian (par exemple passer de la version stable la version instable) :
# apt-get dist-upgrade
Installe les packages package1 et package2 et tous les packages dont ils dpendent :
# apt-get install package1 package2
Idem que la commande prcdente mais ses chiers de conguration sont supprims :
# apt-get remove --purge package1
Efface du disque dur les packages tlchargs pour tre installs (inutile quand la source est un CD ou un chier du systme de chiers local) :
# apt-get clean
Pour plus informations ou pour avoir la liste complte des options disponibles, lisez le trs complet APT HOWTO (http://www.debian.org/doc/manuals/apt-howto/index.fr.html) ou consultez le manuel dapt-get :
% man apt-get
Il recherche alors les termes "fortran" et "compiler " dans la description de tous les packages disponibles. Dans les rponses, vous obtenez notamment :
g77 - The GNU Fortran 77 compiler.
Pour afcher les caractristiques et la description du package package1, utilisez la commande suivante :
% apt-cache show package1
73
% 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 package providing the default GNU Fortran 77 compiler for Debian GNU/Linux systems (version 2.95.4 for architecture i386). Task: fortran-dev
4. Dselect
Dselect est une alternative apt-get pour la gestion intelligente des packages. Vous vous en tes dj servi une fois pendant la procdure dinstallation, au chapitre Les packages. Il a un certain nombre davantages par rapport apt-get, mais il a aussi de nombreux inconvnients, notamment la complexit dutilisation pour un dbutant ainsi que la difcult de rsoudre les problmes de dpendance. Jai donc dcid de ne pas expliquer dans ce chapitre lutilisation de dselect ; vous trouverez une explication dtaille de son utilisation dans lannexe Utiliser Dselect.
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.
74
Vous pouvez maintenant retirer la ligne que vous aviez ajout la n du chier /etc/fstab et qui commenait par usbdevfs.
75
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 !
1.3. 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.
Pour tre mis au courant de la disponibilit dune mise jour de scurit, il faut sabonner la mailing-list debian-security-announce. Pour sinscrire, il suft de se rendre ladresse www.debian.org/MailingLists/subscribe (http://www.debian.org/MailingLists/subscribe). Par la mme occasion, vous pouvez vous 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, vous avez d rajouter au chapitre prcdent le site de Debian ddi aux mises jour de scurit dans la liste des sources de packages en ajoutant au chier /etc/apt/sources.list la ligne suivante :
deb http://security.debian.org/ woody/updates main contrib non-free
Ensuite, il suft de mettre jour la liste des packages puis les packages eux-mmes :
# apt-get update # apt-get upgrade
: 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... : il vous raconte tout ce qui concerne les authentications.
auth.log
Lire rgulirement les logs de sa machine permet de voir si quelquun essaye de vous attaquer. Cela permet aussi de voir si tout se passe bien au niveau du systme, du noyau, etc...
77
Rpondez y.
En allant sur la console n 8, vous devez dj voir une premire ligne de texte qui vous informe que syslog a redmarr !
78
2. Le FTP en console
Le client FTP le plus facile utiliser en console est, mon got, yafc (http://yafc.sourceforge.net/).
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/yafcrc
79
# mv yafcrc /etc/
Les commandes de base disponibles ce prompt sont les suivantes (la compltion automatique des noms de chiers marche) :
help : afche la liste des commandes disponibles, ls : liste le contenu du rpertoire distant, ls -la : liste le contenu du rpertoire distant avec les chiers cachs et les permissions, cd rpertoire : change de rpertoire distant, lcd rpertoire : change de rpertoire local, get chier : tlcharge le chier, get *.img : tlcharge tous les chiers avec lextension img, get -r rpertoire : tlcharge le rpertoire, get --help : afche laide de la commande get, put chier : dpose le chier, put test* : dpose tous les chiers dont le nom commence par test, exit : met n la connexion.
80
les branches stables dont le dernier numro est pair (exemple : 2.2, 2.4, 2.6) ; les branches instables ou beta qui servent au dveloppement et dont le dernier numro est impair. Elles servent au dveloppement de la branche de numro pair suprieur (exemple : la branche 2.3 a servi au dveloppement de lancienne branche stable 2.4, et la branche 2.5 a servi au dveloppement de la nouvelle branche stable 2.6).
81
Pour connatre le modle du chipset de votre machine, le plus simple est dutiliser la commande lspci. Cette commande scanne le bus PCI, recupre les IDs des composants connects au bus PCI, les compare une base de donne dIDs PCI et afche le rsultat. Si vous avez une connexion Internet, commenez par mettre jour la base de donne dIDs PCI :
# ~/config/update-pciids
Les lignes suivantes vous donneront plein dautres informations intressantes sur le hardware de la machine, et certaines de ces informations vous seront utiles pour la suite de la qute dinformation sur la conguration matrielle de la machine.
les cartes sur fond blanc sont supportes par ALSA, Les cartes sur fond rouge ne sont pas supportes.
Une fois que vous avez trouv votre carte dans la liste, relevez le nom du module ALSA correspondant. Pour cela, cliquez sur Details ; le nom du module est crit dans la premire phrase (il commence toujours par le prxe snd-).
Note : Pour les possesseurs dun ordinateur portable, le site Linux on Laptops (http://www.linux-on-laptops.com/) est aussi une trs bonne source dinformation pour savoir quel driver ALSA utiliser pour sa carte son, ainsi que pour tous les autres priphriques intgrs dans lordinateur portable.
lAPM (Advanced Power Management), ou lACPI (Advanced Conguration and Power Interface).
Note : Si votre systme supporte les deux, lAPM et lACPI, je vous conseille, pour la suite de la conguration de votre systme, de choisir lAPM, car plus simple et mieux support sous Linux.
3. Les prparatifs
3.1. Prparer le systme
La plus grande partie de la procdure ne ncessite pas dtre root. Cependant, il va falloir dabord ajouter lutilisateur que vous tes au groupe src. En root, tapez :
# adduser toto src
o toto est votre nom dutilisateur. Pour que le changement soit effectif, il faut que lutilisateur se dloggue puis se reloggue. Pour la dcompression et la conguration du noyau, installez les deux packages suivants :
# apt-get install bzip2 libncurses5-dev
Par dfaut, la version 3.0 alias Woody de Debian ne supporte pas les noyaux Linux de la branche 2.6. Les instructions ci-dessous vont permettre dajouter le support des noyaux 2.6. Tout dabord, ajoutez la ligne suivante la n du chier /etc/fstab pour que le systme de chiers virtuel du noyau 2.6 sysfs soit mont au dmarrage :
sysfs /sys sysfs defaults 0 0
Une fois que linstallation des packages est nie, vous pouvez retirer la ligne que vous avez ajout au chier /etc/apt/sources.list.
Mthode 7 CDs / 1 DVD : commenez par dcompresser le chier packages-2.6.tar.gz dans le home du root :
# cd
83
Une fois que linstallation des packages est nie, vous pouvez retirer la ligne que vous avez ajout au chier /etc/apt/sources.list.
en remplaant ventuellement ftp.fr.kernel.org par un autre miroir plus proche, et en adaptant le numro de version. Tlchargez galement la signature cryptographique des sources, qui vous permettra par la suite de vrier leur authenticit et leur intgrit :
% wget -P /usr/src ftp://ftp.fr.kernel.org/pub/linux/kernel/v2.6/linux-2.6.8.1.tar.bz2.sign
Pour vrier lauthenticit et lintgrit des sources du noyau (par exemple pour vrier que les sources nont pas t modies par un pirate qui se serait introduit sur le site miroir), on va utiliser le programme GnuPG (alias GPG), qui est un quivalent libre de PGP, et qui est install par dfaut (package gnupg). Commencez par tlcharger la cl publique de Linux Kernel Archives :
% gpg --keyserver wwwkeys.pgp.net --recv-keys 0x517D0F0E
Comme cest la premire fois que vous utilisez GPG, il cre le rpertoire ~/.gnupg avec un chier options, et vous demande de rexcuter la commande. Excutez donc la mme commande une deuxime fois. Ensuite, vriez lauthenticit de la cl publique en comparant le ngerprint de la cl que vous avez tlcharg avec le ngerprint de la vraie cl de Linux Kernel Archives : ils doivent tre strictement identiques !
84
Pour connatre le vrai ngerprint de la cl, regardez sur le site principal du noyau Linux ladresse http://www.kernel.org/signature.html.
Si les deux ngerprints sont identiques, alors cest bien la vraie cl publique de Linux Kernel Archives que vous avez tlcharg dans votre trousseau de cls. Vous pouvez alors passer la vrication des sources :
% cd /usr/src/ % gpg --verify linux-2.6.8.1.tar.bz2.sign linux-2.6.8.1.tar.bz2
Il doit normalement vous rpondre que la signature est bonne (ce qui prouve lauthenticit et lintgrit), mais que la cl nest pas certie avec une signature de conance :
gpg: Signature faite mer 04 fv 2004 05:25:43 CET avec une cl DSA ID 517D0F0E gpg: Bonne signature de "Linux Kernel Archives Verification Key <ftpadmin@kernel.org>" gpg: ATTENTION: Cette cl nest pas certifie avec une signature de confiance ! gpg: Rien ne dit que la signature appartient son propritaire. Empreinte de cl principale: C75D C40A 11D7 AF88 9981 ED5B C86B A06A 517D 0F0E
3.2.2. Si vous navez pas de connexion Internet rapide Si vous navez pas de connexion rapide Internet, demandez un ami qui a une connexion Internet rapide de tlcharger les sources du noyau et de vous les graver sur un CD, ou achetez un magazine Linux accompagn dun CD (le CD contiendra surement les sources du noyau).
4. Congurer le noyau
4.1. Rcuprer le chier de conguration modle
La conguration du noyau est stocke dans un chier .config la racine des sources du noyau. Ce chier est lu et modi par lutilitaire de conguration du noyau, et il est ensuite lu lors de la compilation du noyau. Pour vous faciliter la 85
tche, jai fait un chier de conguration type que vous naurez plus qu personnaliser :
% cp /root/config/config-2.6.x .config
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/config-2.6.x % mv config-2.6.x .config
Vous arrivez alors dans linterface de conguration du noyau : Figure 9-1. Menu de conguration du noyau
Vous naviguez dans le menu avec les ches et vous entrez dans les menus en appuyant sur Entre. Pour sortir dun menu, slectionnez Exit laide de la touche Tab et appuyez sur Entre. Dans tous les cas, nhsitez pas lire laide qui est attache chaque option. Vous y trouverez gnralement des informations pertinentes vous permettant de juger si vous devez activer loption ou pas. Pour cela, placez-vous sur une option et appuyez sur Tab jusqu tre positionn sur Help et appuyez sur Entre.
Les options entre crochets droits [ ] ; vous avez alors le choix entre mettre cette option :
en dur dans le noyau : vous devez faire apparatre une toile : [*], ou ne pas la mettre : la case doit rester vide : [ ].
Les options entre crochets chs < > ; vous avez le choix entre mettre cette option :
en dur dans le noyau : vous devez faire apparatre une toile : <*>, en module : vous devez faire apparatre un M : <M>, ou ne pas la mettre : la case doit rester vide : < >.
De plus, si vous avez un systme multi-processeur ou un Pentium 4 avec le support de lHyperThreading, activez :
[*] Symmetric multi-processing support
4.4.2. Le systme dconomie dnergie Menu : Power management options (ACPI, APM) Si vous voulez utiliser un systme dconomie dnergie, suivez les instructions ci-dessous :
si vous comptez utiliser lAPM, allez dans le sous-menu APM (Advanced Power Management) BIOS Support et activez :
<M> APM (Advanced Power Management) BIOS support
si vous comptez utiliser lACPI, allez dans le sous-menu ACPI (Advanced Conguration and Power Interface) Support et activez :
[*] ACPI Support [*] Sleep States (EXPERIMENTAL) (NEW) <M> AC Adapter (NEW) <M> Battery (NEW) <M> Button (NEW) <M> Fan (NEW) <M> Processor (NEW) <M> Thermal Zone (NEW)
87
De plus, si vous avez un ordinateur portable dot de la capacit de faire varier la frquence du processeur selon le contexte pour conomiser de lnergie, allez dans le sous-menu CPU Frequency scaling et activez :
[*] CPU Frequency scaling Default CPUFreq governor (performance) ---> --performance governor <*> powersave governor <*> userspace governor for userspace frequency scaling <*> CPU frequency table helpers (NEW)
Puis, dans la section CPUFreq processor drivers, activez le pilote spcique votre processeur (nhsitez pas utiliser laide pour faire le bon choix !).
Note : Exemple : si vous avez un portable dot dun Pentium 4 M et dun southbridge ICH, activez :
<*> Intel Speedstep on ICH-M chipsets (ioport interface)
4.4.3. Le chipset Menu : Device Drivers > ATA/ATAPI/MFM/RLL support Dans la section IDE chipset support/bugxes de ce menu, mettez en dur loption correspondant votre chipset.
Note : Exemples :
Si vous avez un chipset Intel (quel que soit son modle), activez :
<*>
Si vous avez un chipset VIA (quel que soit son modle), activez :
<*>
Si vous avez un chipset Nvidia ou AMD (quel que soit le modle), activez :
<*>
4.4.4. Carte SCSI Menu : Device Drivers > SCSI device support > SCSI low-level drivers Si vous avez une carte SCSI, activez le pilote de votre carte SCSI en module.
Note : Exemple : si vous avez une carte SCSI Adaptec Ultra 320 PCI, activez :
<M> Adaptec AIC79xx U320 support
88
Avertissement
Si votre partition racine est sur un disque dur SCSI, alors il faut obligatoirement mettre le support des disques SCSI et de la carte SCSI en dur dans le noyau et non en module. En effet, au dmarrage, le systme devra tre capable de lire la partition du disque SCSI pour pouvoir charger les modules qui se trouvent sur la partition racine ! Si vous tes dans cette situation, il faudra donc activer en dur les options suivantes dans le menu Device Drivers > SCSI device support :
<*> <*> SCSI device support SCSI disk support
et dans le sous-menu SCSI low-level drivers, il faudra galement mettre en dur le pilote de votre carte SCSI ; par exemple, dans le cas dune carte SCSI Adaptec Ultra 320 PCI :
<*> Adaptec AIC79xx U320 support
Cette remarque vaut galement pour le systme de chiers Ext3 ainsi que pour les disques dur IDE si votre partition racine se trouve sur un disque IDE. Comme cest le cas le plus courant, jai activ le support des disques IDE et de lExt3 en dur dans mon chier de conguration type.
4.4.5. Carte son Menu : Device Drivers > Sound > Advanced Linux Sound Architecture Activez en module le pilote correspondant votre carte son. Les pilotes sont rpartis en deux catgories :
les cartes ISA : menu ISA devices ; les cartes PCI : menu PCI devices (les cartes son intgres sur les cartes mres ou dans les portables sont gnralement connectes sur le bus PCI) ;
Note : Exemples :
Si vous avez une carte Sound Blaster 128 PCI, allez dans le sous-menu PCI devices et activez :
Si vous avez une carte son intgre sur une carte mre base sur un chipset Nvidia Nforce, allez dans le
4.4.6. Port AGP Menu : Device Drivers > Character devices Activez en dur le support du bus AGP ainsi que loption correspondant votre chipset.
Note : Exemples :
Si vous avez un chipset Intel (quel que soit son modle), activez :
89
<*> <*>
/dev/agpgart (AGP Support) Intel 440LX/BX/GX, I8xx and E7x05 chipset support
Si vous avez un chipset VIA (quel que soit son modle), activez :
<*> <*>
Si vous avez un chipset nVvidia nForce (quel que soit son modle), activez :
<*> <*>
4.4.7. Acclration 3D de la carte graphique Menu : Device Drivers > Character devices Activez le support du DRM (Direct Rendering Manager) et le module correspondant votre chip graphique.
Note : Exemples :
Si vous avez une carte ATI Radeon (quel que soit son modle), activez :
[*] <M>
Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) ATI Radeon
Si vous avez une carte 3Dfx (quel que soit son modle), activez :
[*] <M>
Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) 3dfx Banshee/Voodoo3+
Si vous avez une carte nVidia, vous pouvez galement tirer parti de ses acclrations 3D mais par un autre moyen,
4.4.8. Carte(s) rseau Ethernet Menu : Device Drivers > Networking support Activez en module le ou les pilote(s) correspondant votre/vos carte(s) rseau Ethernet. Les pilotes sont rpartis en plusieurs catgories :
les cartes Ethernet 10/100 Mbit/s ISA ou PCI : menu Ethernet (10 or 100Mbit) ; les cartes Ethernet 1 Gbit/s PCI : menu Ethernet (1000 Mbit) ; les cartes Ethernet 10 Gbit/s PCI : menu Ethernet (10000 Mbit) ; les cartes WiFi PCI ou PCMCIA : menu Wireless LAN (non-hamradio) ; les cartes Ethernet PCMCIA : menu PCMCIA network device support.
Note : Exemples :
90
Si vous avez une carte PCI 3Com 3C905, allez dans le sous-menu Ethernet (10 or 100Mbit) et activez :
Si vous avez une carte rseau Intel 100 Mbit/s intgre sur votre carte mre ou dans votre ordinateur portable, allez
Si vous avez une carte PCMCIA WiFi de marque Cisco ou Aironet, allez dans le sous-menu Wireless LAN
(non-hamradio) et activez :
[*] Wireless LAN drivers (non-hamradio) & Wireless Extensions <M> Cisco/Aironet 34X/35X/4500/4800 PCMCIA cards
Si vous avez une carte Ethernet PCMCIA 10/100 Mbit/s compatible NE2000, allez dans le sous-menu PCMCIA
4.4.9. Priphriques USB Menu : Device Drivers > USB support Si vous avez un priphrique USB que vous aimeriez faire marcher sous Linux, essayez de trouver un pilote pour ce priphrique dans la liste des pilotes proposs.
Attention
Dans la conguration type, jai dj mis le support des souris, claviers, imprimantes et cls USB. Nenlevez pas les options dj actives si vous ne savez pas parfaitement ce que vous faites !
4.4.10. Webcams, Bluetooth et autre gadgets Linux possde encore plein dautres pilotes qui permettent de faire marcher des Webcams, des cartes satellites, des composants Bluetooth ou Infrarouge et plein dautres gadgets. Je nen parlerais pas ici car ils ne sont pas vitaux pour avoir un systme Linux qui fonctionne correctement, et cela me parat trop ambitieux pour une premire compilation de noyau !
91
92
la mthode gnrique, qui peut tre utilise pour toutes les distributions, y compris Debian ; la mthode spcique Debian, qui consiste crer un package contenant le noyau puis linstaller. Cette mthode a lavantage de pouvoir facilement compiler le noyau sur une machine pour linstaller sur une autre, mais elle a linconvnient dtre trs peu pratique ( mon got...) quand on veut compiler des modules du noyau dont les sources ne sont pas intgres dans le noyau ofciel (cest le cas des modules ALSA pour les cartes son par exemple).
La mthode gnrique est explique ci-dessous, et je vous conseille de lutiliser dans un premier temps. La mthode Debian est explique en annexe La mthode Debian pour compiler un noyau.
1. La mthode gnrique
1.1. La compilation du noyau
Assurez-vous que vous tes toujours dans le rpertoire /usr/src/linux-version/. Lancez la compilation du noyau et des modules :
% make
Il faut alors sarmer de patience, surtout si vous avez un ordinateur peu puissant ! Sur un ordinateur rcent, cela prend plusieurs minutes.
Puis copiez le noyau dans le rpertoire /boot/ avec la commande suivante, en remplaant X par le numro de version du noyau :
# cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.X
Copiez galement dans le mme rpertoire la System Map et faites une sauvegarde du chier de conguration du noyau :
# cp System.map /boot/System.map-2.6.X # cp .config /boot/config-2.6.X
Mettez jour les liens symboliques qui se trouvent la racine du systme de chiers : le nouveau noyau devient votre noyau par dfaut, et le noyau actuel devient le noyau de secours :
# cd / # mv vmlinuz vmlinuz.old # ln -sf boot/vmlinuz-2.6.X vmlinuz
93
o nom_du_module est le nom du module de votre carte rseau, sans lextension ".ko". Si le nom ntait pas indiqu dans laide associe loption de votre carte rseau lors de la conguration du noyau, allez dans le rpertoire /lib/modules/numero_de_version_du_noyau/kernel/drivers/net/et regardez les chiers qui se trouvent dans ce rpertoire et dans ses sous-rpertoires. Essayez de deviner le module contenant le driver de votre carte rseau (Indice : ce ne sont ni les chiers mii.ko, slhc.ko et bsd_comp.ko, ni les chiers dont le nom commence par ppp). Une fois que vous pensez avoir trouv le module, utilisez la commande modinfo pour avoir des informations sur le module et lisez le champ description.
Note : Exemple :
% modinfo e100.ko
Le champ description conrme que cest bien le module que lon cherche :
description: Intel(R) PRO/100 Network Driver
Cette ligne signie tout simplement que quand le systme veut accder au device eth0 (qui correspond la premire carte rseau Ethernet), il doit charger le module e100.
Attention
Si vous avez plusieurs cartes rseau, il faut rpter cette ligne plusieurs fois :
alias eth0 nom_du_module_de_la_carte_rseau_n 1 alias eth1 nom_du_module_de_la_carte_rseau_n 2 alias eth2 nom_du_module_de_la_carte_rseau_n 3
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/alsa # mv alsa /etc/modprobe.d/
Editez le chier /etc/modprobe.d/alsa que vous venez dinstaller et, la quatrime ligne non commente, remplacez nom_du_module_ALSA par le nom du module ALSA avec le prxe snd-. Si vous ntes pas sr du nom, listez les chiers du rpertoire /lib/modules/numero_de_version_du_noyau/kernel/sound/pci/ (dans le cas dune carte PCI ou intgre) et vous trouverez le module ALSA de votre carte son. Ensuite, ditez le chier de conguration dALSA /etc/alsa/alsa-base.conf et modiez le premier paramtre de conguration pour que la compatibilit avec OSS soit effective ds le dmarrage dALSA :
startosslayer=true
2.4. update-modules
Maintenant que les chiers de conguration ncessaires ont t cres dans le rpertoire /etc/modprobe.d/, il faut excuter un script pour quil concatne tous ces chiers et gnre le chier de conguration des modules /etc/modprobe.conf :
# update-modules
95
CARDMGR_OPTS=
Normalement, vous avez d modier la ligne qui commence par PCIC=. Cette ligne prcise le type de connexion entre le bus PCMCIA et le reste du systme ; sur tous les portables pas trop vieux quips dun bus CardBus, il faut mettre yenta_socket. Si vous tes dans ce cas et que vous ne voulez pas que le contrleur PCMCIA mette des bips, vous pouvez modier la ligne CARDMGR_OPTS ainsi :
CARDMGR_OPTS=-q
3. Prparer le redmarrage
3.1. Le chier de conguration de LILO
Dans cette section, nous allons nous intresser la conguration de LILO. Editez le chier de conguration de LILO
/etc/lilo.conf et modiez-le en regardant le chier de conguration dexemple ci-dessous et en ladaptant votre
conguration personnelle. Normalement, vous navez pas grand chose modier, et seulement quelques options ou dnitions dO.S. ajouter ou retirer.
# # # # /etc/lilo.conf Fichier de configuration de LILO Formation Debian GNU/Linux par Alexis de Lattre http://www.via.ecp.fr/~alexis/formation-linux/
# Plus dinformation dans "man lilo.conf" # DEBUT de la partie GLOBALE # Support des disques de grande capacit lba32 # Disque sur lequel LILO va crire le MBR boot=/dev/hda # La partition racine de Linux root=/dev/hdXY # Boot loader utiliser install=/boot/boot-menu.b # Emplacement de la "map" map=/boot/map # Je veux que LILO affiche un menu pour choisir entre les O.S. prompt # Temps en diximes de secondes au bout duquel LILO # lance lO.S. dfinit par dfaut timeout=150 # Choix du mode VGA pour la console vga=normal # FIN de la partie GLOBALE # DEBUT de la partie de dfinition des O.S.
96
# "Label" de lO.S. boot par dfaut default=Linux # Dfinition de Linux avec son noyau principal image=/vmlinuz label=Linux read-only # Dfinition de Linux avec son noyau de secours image=/vmlinuz.old label=LinuxOLD read-only # Dfinition dun ventuel Windows 95, 98, ME, 2000 ou XP # Partition sur laquelle est install Windows other=/dev/hdXY label=Windows # FIN de la partie de dfinition des O.S.
Il vous afche alors la liste des O.S. que vous avez dnis :
Ltoile correspond au systme dexploitation boot par dfaut. Sil vous afche des messages derreur, cest probablement quil y a un problme dans le chier de conguration ou dans les liens symboliques qui se trouvent la racine du systme de chiers : faites les modications ncessaires puis rexcutez LILO.
Avertissement
Il faut excuter lilo si vous avez modi les liens symboliques qui se trouvent la racine du systme de chiers et / ou si vous avez chang les chiers vers lesquels ils pointent, mme si vous navez pas modi le chier /etc/lilo.conf, sous peine de ne plus pouvoir dmarrer Linux !
4. Redmarrer
Redmarrez sur le nouveau noyau :
# reboot
97
Si le redmarrage sur le nouveau noyau se passe mal et que votre Linux se bloque au dmarrage, il va falloir redmarrer sur votre ancien noyau. Pour cela, faites Ctrl-Alt-Suppr, puis quand le menu de LILO safche, slectionnez LinuxOLD. Vous navez plus qu recompiler un nouveau noyau... en vous aidant des dernires lignes quil vous a afch avant de se bloquer au dmarrage pour essayer de trouver lorigine du problme et changer la conguration du noyau en consquence. Bonne chance ! Si le redmarrage sest bien pass... flicitation, vous avez russi lune des tapes les plus difciles !
Ensuite, vous pouvez rebrancher le modem et laner la commande servant tablir la connexion.
98
montre que le module vfat a besoin du module fat pour fonctionner. Cela signie galement que le module fat doit imprativement tre insr avant le module vfat... et que lon ne peut retirer le module fat sans avoir retir pralablement le module vfat. La commande modprobe permet dinsrer et de retirer des modules en tenant compte de ces dpendances. Par exemple, pour insrer le module vfat, tapez :
# modprobe vfat
Il va dabord insrer les modules requis par vfat puis insrer le module vfat. Pour retirer un module, il faut dabord retirer les modules qui en dpendent. Par exemple, si on demande de retirer le module fat on aura un message derreur :
# modprobe -r fat FATAL: Module fat is in use.
Le message derreur peut aussi venir du fait quun programme est entrain dutiliser le module : le numro de la colonne Used by dans la sortie de la commande lsmod est alors non nul. Dans ce cas, il faut dabord arrter les programmes qui utilisent le module avant de pouvoir le retirer. Il faut donc dabord retirer le module vfat et ensuite le module fat :
# modprobe -r vfat # modprobe -r fat
Si, aprs linsertion dun module, le priphrique correspondant ne marche pas ou marche bizarrement, retirez le module et rinserez-le en prcisant des paramtres lors de linsertion. Pour connatre les paramtres dun module, utilisez la commande modinfo :
% modinfo nom_du_module
Les paramtres sont indiqus sur les lignes qui commencent par parm:. Par exemple, si vous voyez un paramtre irq et un paramtre dma, vous pouvez essayer de jouer sur ceux-ci pour faire marcher le priphrique :
# modprobe -r nom_du_module
99
2. La conguration du rseau
2.1. Les interfaces rseau
2.1.1. Linterface de loopback Linterface de loopback est une interface rseau qui relie la machine elle-mme. Cette interface est dsigne par lo, ladresse IP associe est 127.0.0.1 et le nom DNS associe est localhost. Ainsi, un utilisateur du systme peut consulter un serveur Web hberg sur la machine en demandant la page http://localhost/ et sa requte passera par linterface de loopback.
2.1.2. Linterface associe la carte rseau Si votre ordinateur est quip dune carte rseau Ethernet, vous allez pouvoir y associer une interface eth0. Les paramtres rseau de cette interface pourront tre obtenus automatiquement par DHCP si ce service est disponible sur le rseau, o tre entrs la main dans un chier de conguration.
100
2.2.1. /etc/network/interfaces Avec Debian, la conguration des interfaces rseaux se fait dans le chier /etc/network/interfaces.
Pour congurer automatiquement la carte rseau par DHCP (sous rserve quun serveur DHCP soit disponible sur le rseau), le chier doit contenir :
auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp
Pour congurer la carte rseau la main, vous devez prciser une adresse IP (address), un masque de sous-rseau (netmask) et une adresse de passerelle (gateway). Le chier ressemblera alors lexemple ci-dessous :
auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 192.168.0.12 netmask 255.255.255.0 gateway 192.168.0.1
Dans le cas dune interface WiFi, il faut tout dabord installer le package qui gre les extensions wireless des interfaces WiFi :
# apt-get install wireless-tools
Ensuite, il suft dajouter les paramtres spciques au WiFi aux paramtres normaux de linterface. Par exemple :
auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 192.168.0.12 netmask 255.255.255.0 gateway 192.168.0.1 wireless_essid mynetwork wireless_mode managed wireless_channel 7 wireless_key 67:F4:3A:C3:DD:32
wireless_essid : xe le SSID ; wireless_mode : xe le mode (ad-hoc ou managed) ; wireless_channel : xe le numro du canal (de 1 15) ; wireless_key : donne la cl WEP.
101
2.2.2. /etc/resolv.conf Le chier de conguration /etc/resolv.conf contient les informations sur les requtes DNS.
Pour ceux qui utilisent la conguration par DHCP, ce chier est gnr automatiquement chaque requte DHCP. Pour ceux qui congurent le rseau la main, il faut prciser un ordre de recherche pour les noms DNS dont le domaine nest pas prcis (search) et ladresse IP dun ou plusieurs serveurs DNS (nameserver). Le chier ressemblera alors lexemple ci-dessous :
search labo.exemple.org exemple.org nameserver 192.168.100.1 nameserver 192.168.100.2
2.2.3. Relancer le rseau Pour que le systme tienne compte des changements effectus dans le chier de conguration, cest--dire dcongure les interfaces rseau et les recongure selon les instructions du chier /etc/network/interfaces, lancez la commande suivante :
# /etc/init.d/networking restart Reconfiguring network interfaces: done.
3. Lecteur de CD/DVD
3.1. Droit daccs
Pour avoir accs au lecteur de CD ou DVD, il faut appartenir au groupe disk. Rajoutez votre compte utilisateur ce groupe :
# adduser toto disk
102
Vous pouvez galement crer un lien symbolique /dev/dvd pointant vers le priphrique correspondant votre lecteur de DVD :
# ln -sf hdX dvd
Si vous avez un graveur, crez un lien symbolique /dev/graveur pointant vers le priphrique correspondant votre graveur :
# ln -sf hdX graveur
ro pour monter le systme de chiers en lecture seule, rw pour monter le systme de chiers en lecture-criture, noauto pour que le systme de chiers ne soit pas mont au dmarrage (option contraire : auto), user pour quun simple utilisateur puisse monter et dmonter le systme de chiers et pas seulement le root (option contraire : nouser), exec pour permettre lexcution de binaires (option contraire : noexec), uid, gid et umask pour dnir des permissions pour lensemble du systme de chiers, defaults pour les options par dfaut (notamment rw, exec, auto et nouser), et enn sw pour la partition de swap.
5. la valeur 1 si le systme de chier doit tre sauvegard ou la valeur 0 sinon (mettez 0 si vous navez pas de systme de sauvegarde),
103
6. la priorit pour la vrication des systmes de chiers par fsck au dmarrage quand cela est ncessaire : la partition racine doit avoir la plus grande priorit (valeur 1), les autres doivent avoir une priorit infrieure (valeur 2). Les systmes de chiers qui ne doivent pas tre vris auront la valeur 0. Donc pour un systme classique, le chier contient par exemple :
/dev/hda1 / ext3 defaults,errors=remount-ro 0 1 /dev/hda2 none swap sw 0 0 /dev/hda5 /tmp ext3 defaults 0 2 /dev/hda6 /home ext3 defaults 0 2 proc /proc proc defaults 0 0 /dev/fd0 /floppy auto defaults,user,noauto 0 0 /dev/cdrom /cdrom iso9660 defaults,ro,user,noauto,exec 0 0 sysfs /sys sysfs defaults 0 0
4.1.2. Monter et dmonter une partition cite dans fstab Un des avantages dutiliser le chier /etc/fstab est que le montage et le dmontage des systmes de chiers cits dans ce chier de conguration sont trs simples. Il suft dutiliser la commande mount pour monter et umount pour dmonter, suivie du device ou du rpertoire de montage. Ainsi, les deux commandes suivantes sont quivalentes, et permettent de monter la disquette :
# mount /floppy # mount /dev/fd0
Comme nous avons prcis loption user pour le lecteur de disquette dans fstab, les deux commandes prcdentes peuvent tre excutes en tant que simple utilisateur. Dans ce cas, seul lutilisateur en question et le root pourront dmonter le systme de chier avec lune des deux commandes suivantes :
# umount /floppy # umount /dev/fd0
Important : Pour dmonter un systme de chier, il faut quaucun des utilisateurs du systme et aucun processus ne soit entrain douvrir un des chiers du systme de chier dmonter et quaucun utilisateur ne se trouve dans un des rpertoires du systme de chiers dmonter. Sinon, la commande umount renverra le message derreur suivant :
umount : /floppy : priphrique occup
Pour voir qui est responsable de cette occupation, utilise la commande lsof qui liste les chiers ouverts :
% lsof | grep floppy
104
4.2.1. Prparer le montage dune partition FAT Le systme de chier de type FAT (FAT 16 ou FAT 32) est utilis par Windows 95/98/ME et parfois par Windows 2000/XP. Le driver Linux pour ce type de systme de chiers permet dy avoir accs en lecture et en criture. Supposons que votre partition Windows de type FAT soit /dev/hda1 (premire partition primaire sur le disque dur Primary Master). Nous allons la monter dans le rpertoire /mnt/win1 quil faut crer au pralable :
# mkdir /mnt/win1
4.2.2. Prparer le montage dune partition NTFS Le systme de chier de type NTFS est souvent utilis par Windows 2000 et XP. Malheureusement, le driver Linux pour ce type de systme de chier nest pas encore complet : il ne permet que dy accder en lecture, et pas en criture. Supposons que votre partition Windows de type NTFS soit /dev/hda5 (premier lecteur logique sur le disque dur Primary Master). Nous allons la monter dans le rpertoire /mnt/win2 quil faut crer au pralable :
# mkdir /mnt/win2
4.2.3. 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.
4.2.4. Modier les droits sur les partitions Windows Par dfaut, les partitions Windows montes appartiennent root, et dans le cas des partitions NTFS, elles ne sont pas lisibles par les autres utilisateurs. Pour modier les droits daccs appliques aux partitions Windows, vous pouvez rajouter des options dans la ligne qui leur correspond dans le chier /etc/fstab. Par exemple, si vous voulez que sur la partition Windows /dev/hda1 formate en FAT, les chiers et les rpertoires :
appartiennent lutilisateur dont lID est 1000, appartiennent au groupe dont lID est 1000, aient des droits rwxr-xr-x,
105
Avec le mme exemple, mais pour une partition de type NTFS (donc monte en read-only) o les chiers et les rpertoires auront des droits r-xr-xr-x, la ligne devient :
/dev/hda1 /mnt/win ntfs defaults,ro,user,uid=1000,gid=1000,umask=022 0 0
Pour que les changements soient pris en compte, la commande mount -a ne suft pas. Il faut dmonter et remonter la partition :
% umount /mnt/win % mount /mnt/win
Puis, si votre cl USB est formate en FAT et que vous voulez que les chiers une fois monts appartiennent lutilisateur dont lID est 1000, rajoutez la ligne suivante la n du chier /etc/fstab :
/dev/sda1 /mnt/cleusb vfat defaults,noauto,user,sync,uid=1000,gid=1000,umask=022 0 0
Attention
Noubliez pas de dmonter votre cl USB avant de la dbrancher, sous peine de corrompre les donnes qui y sont stockes :
% umount /mnt/cleusb
106
pour une souris sur le port PS/2 (les trackpoints et les touchpads des ordinateurs portables sont gnralement raccords ce port), pour une souris sur port USB,
pour une souris sur le premier port srie, pour une souris sur le second port srie,
ou device est le device correspondant votre type de souris. Vous devez alors voir safcher plein de caractres bizarres quand vous bougez la souris. Faites Ctrl-c pour arrter.
2. Le son
2.1. Rglages prliminaires
2.1.1. Les droits daccs Pour avoir accs la carte son, il faut appartenir au groupe audio. Rajoutez-vous dans ce groupe :
# adduser toto audio
2.1.2. Le rglage du son Pour rgler le volume sonore, il faut utiliser le programme aumix :
# apt-get install aumix
107
2.2.2. Jouer un CD audio Vous pouvez par exemple utiliser le package cdtool :
# apt-get install cdtool
108
Vous pouvez alors vous servir des fonctions apportes par lAPM :
Si vous avez un ordinateur portable (qui supporte lAPM) et que vous voulez avoir des informations sur ltat de la batterie :
# apm
3.2. LACPI
Pour faire marcher lACPI (Advanced Conguration and Power Interface), il faut en plus installer le package acpid :
# apt-get install acpid
Avec cette modication, le dmon acpid se chargera lui-mme de charger les modules noyau qui concernent lACPI. Redmarrez le dmon acpid :
# /etc/init.d/acpid restart Starting Advanced Configuration and Power Interface daemon: acpid.
Pour avoir facilement des informations sur le systme, il faut en plus installer le package acpi, qui nest pas fourni dans la Woody. Vous allez donc installer le package que jai fait spcialement pour la Woody :
% wget http://people.via.ecp.fr/~alexis/formation-linux/fichiers/acpi_0.07-1_i386.deb # dpkg -i acpi*.deb
109
Ensuite, pour avoir des informations sur ltat de la batterie et diverses autres informations, tapez :
% acpi -V
La conguration par dfaut devrait convenir au plus grand nombre. Si vous voulez modier la conguration, diter le chier /etc/cpudyn.conf et personnalisez-le. Ensuite, redmarrez le dmon cpudynd :
# /etc/init.d/cpudyn restart Restarting cpudyn: cpudyn.
Vous pouvez alors constater les changements de frquence en regardant le paramtre cpu MHz de la sortie de la commande cat /proc/cpuinfo. [TODO : essayer de trouver un workaround pour le pb de la dformation du son quand la frquence change]
110
1. Installation de Postx
Le serveur de mail install par dfaut sur une Debian est Exim. Je vous propose de le remplacer par Postx (http://www.postx.org/), qui est rput able et facile congurer :
# apt-get install --purge postfix
2. Conguration de Postx
Lors de linstallation du package, il vous pose des questions de conguration. A la premire question General type of conguration ?, rpondez No conguration. Une fois quil a ni linstallation du package, lancez la commande suivante pour relancer la procdure de conguration (cette astuce permet davoir un assistant de conguration plus dtaill) :
# dpkg-reconfigure postfix
Au deuxime cran, quand il vous redemande General type of conguration ?, rpondez cette fois Internet Site. Ensuite, acceptez tous les paramtres quil vous propose par dfaut !
111
Jenregistre et je quitte ; les changements sont alors automatiquement pris en compte par le systme. Explications : 1. Les 5 premiers ensembles de caractres spars par des espaces (ici, 12 7 * * *) dnissent la frquence. Dans lordre, on trouve :
les minutes, les heures, le jour du mois, le mois, le jour de la semaine (sachant que Lundi vaut 1, Mardi vaut 2, etc...).
Pour excuter une commande chaque jour 7h12, on xe donc le champ minute 12, le champ heure 7, puis on met des toiles dans les autres champs pour dire quil faut que ce soit excut tous les jours dans le mois, tous les mois et tous les jours de la semaine.
2. Enn, on trouve la commande excuter : (ici, mpg321 ~/music/chier.mp3). Quand la cron lance un programme, elle envoie par mail lutilisateur le texte que ce programme crirait sur la console sil tait lan la main ; sauf si le programme na rien crit. Pour viter de recevoir un mail tous les matins qui me dit quil a bien jou mon chier mp3, je modie lentre dans la cron en renvoyant la sortie texte du programme vers /dev/null :
12 7 * * * mpg321 ~/music/fichier.mp3 1>/dev/null 2>&1
Autre exemple : jai une connexion permanente Internet et je veux aussi que fetchmail aille chercher mes mails tous les quarts dheure. Jdite ma cron et je rajoute la ligne suivante :
*/15 * * * * fetchmail --silent
Explications : 1. Les 5 premiers ensembles de caractres */15 * * * * dnissent la frquence "tous les quarts dheure". 2. Jexcute fetchmail avec loption --silent qui ncrit dans sa sortie que les messages derreur ; comme a, je ne recevrais un mail que quand le rappatriement des mails se passe mal. 112
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.
Attention
La conguration du programme sudo doit se faire avec attention, pour ne pas compromettre la scurit du systme. Par exemple, si vous donnez un utilisateur le droit dexcuter le programme /bin/sh en tant que root, alors cela revient lui donner les droits root tout entiers, car il pourra obtenir un shell avec les droits de root. Plus subtil : si vous donnez un utilisateur le droit dexcuter vim un_certain_fichier en tant que root, cela revient galement lui donner les droits de root tout entiers, car il peut alors ouvrir dautres chiers en tant que root en tapant en mode commande :split autre_chier ou encore excuter des commandes shell en tant que root en tapant en mode commande :! commande_shell ; il vaut donc mieux dans ce cas changer les permissions sur le chier en question.
La conguration se fait dans le chier /etc/sudoers. Mais attention, il ne faut pas diter ce chier directement avec un diteur de texte, mais utiliser le programme visudo :
# visudo
Vous vous retrouvez alors dans un vim normal entrain dditer le chier /etc/sudoers. Pour donner lutilisateur toto le droit dexcuter les commandes halt, reboot et apm, rajoutez la ligne suivante :
toto ALL = NOPASSWD: /sbin/halt, /sbin/reboot, /usr/bin/apm
Enregistrez et quittez, comme avec un vim normal. Lutilisateur toto peut alors teindre le systme en tapant :
% sudo halt
113
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.
tar xvf archive.tar tar xvzf archive.tar.gz tar xvjf archive.tar.bz2 gunzip archive.gz bunzip2 archive.bz2 unzip archive.zip
114
traceroute, qui se trouve dans le package du mme nom, et qui permet de dessiner la route que prennent les packets pour aboutir une machine distance ; tcpdump, qui se trouve dans le package du mme nom, et qui permet dafcher tout le trafc qui passe par linterface rseau ; iptraf, un moniteur de trafc et de dbit ; les outils du package netdiag, qui permettent de diagnostiquer un problme de connexion.
115
Le serveur graphique est le programme qui permet de passer en "mode graphique" en utilisant les fonctions avanes de la carte graphique. Il gre notamment le clavier, la souris, les polices de caractres, lcran (rsolution, nombre de couleurs, etc...) et la carte graphique. Il nexiste quun seul programme qui rempli cette tche sous Linux : XFree86 (http://www.xfree86.org), galement appel serveur X. Le gestionnaire de fentre est le programme qui, comme son nom lindique, gre les diffrentes fentres, et il ne fait normalement que a ! Il existe de trs nombreux gestionnaires de fentre sous Linux : Sawsh (http://sawmill.sourceforge.net/), Enlightenment, AfterStep, Window Maker, fvwm, etc... Le bureau est le programme qui soccupe dafcher un menu, une barre de lanement, une barre des tches, des icnes sur le bureau, etc... Il existe galement de nombreux bureaux sous Linux, mais les deux plus connus sont Gnome (http://www.gnome.org) et KDE (http://www.kde.org).
Avoir un serveur graphique et un gestionnaire de fentre est obligatoire pour travailler "en mode graphique" ; mais on nest pas oblig davoir un bureau ! Certains gestionnaires de fentre font aussi ofce de bureau minimaliste (par exemple Windows Maker afche un menu de lancement rapide). Normalement, lutilisateur peut choisir nimporte quelle combinaison de gestionnaire de fentres et de bureau, mais certains bureaux recommandent un gestionnaire de fentre particulier (par exemple, Gnome recommande Sawsh pour tirer parti de certaines fonctions avanes et pour pouvoir intgrer loutil de conguration du bureau et loutil de conguration du gestionnaire de fentre dans une seule interface). Dans cette formation, nous documentons le couple Gnome / Sawsh (bureau et gestionnaire de fentre). Pour les dbutants en Linux qui suivent cette formation, nous leurs conseillons de suivre ces choix, et, quand ils auront plus dexprience avec Linux en gnral et Debian en particulier, ils pourront essayer dautres bureaux et dautres gestionnaires de fentres et choisir celui qui leur convient le mieux !
Les caractristiques de chaque version sont dtailles dans le tableau Les trois versions de Debian. Ceux qui ont suivi cette formation depuis le dbut ont install une Woody. Il va falloir maintenant choisir entre rester en Woody ou passer en Sid. La Sid a un fonctionnement trs diffrent de la Woody. Les packages de la Woody ne sont mis--jour quexceptionnellement :
lors de la dcouverte dune faille de scurit : une package corrig est alors mis disposition sur le serveur security.debian.org par lquipe scurit de Debian ; loccasion dune rvision de la version stable (par exemple passage de la version 3.0 release 1 la version 3.0 release 2) pour corriger des problmes de dpendances ou des problmes trs particuliers (mais pas pour corriger des bugs logiciels qui naffectent pas la scurit).
Au contraire, la Sid est en volution permanente ! Les dveloppeurs Debian mettent jour les packages de la Sid trs rgulirement loccasion de la sortie dune nouvelle version dun programme ou pour corriger des bugs. Ils mettent galement jour les packages quand une faille de scurit est dcouverte. Le tableau ci-dessous est conu pour vous aider faire le bon choix : Tableau 1-1. Choix Woody ou Sid Woody Avantages Sid
Mises jour des packages rares et trs Packages plus nombreux et trs rcents. encadres (donc pas de ncessit davoir Serveur graphique rcent qui supporte une connexion Internet rapide). les cartes graphiques rcentes. Packages vieux, ce qui est criant pour les Mises jour incessantes (donc ncessit applications graphiques, mais pas trs davoir une connexion rapide Internet gnant pour les serveurs et les type ADSL ou cble). Packages parfois applications en console. Serveur dfectueux (mais rapidement rpars). graphique vieux qui ne supporte pas les cartes graphiques trop rcentes. Les machines serveur qui nont pas Pour les utilisateurs qui ont dj un peu besoin dapplications graphiques ; les dexprience de Linux et qui ont une ordinateurs personnels qui nont pas de connexion rapide Internet et/ou qui ont carte graphique trop rcente et/ou pas de une carte graphique rcente. connexion rapide Internet ; les utilisateurs qui dbutent sous Linux.
Inconvnients
Prol dutilisation
118
Attention
Vous pouvez facilement passer de Woody Sid ; mais vous ne pourrez que difcilement revenir en Woody ensuite.
Si vous choisissez de rester en Woody, passez directement au chapitre suivant Installer le serveur graphique et suivez la Mthode Woody dans la suite de cette formation. Vous pourrez toujours passer en Sid ultrieurement en suivant la section ci-dessous. Si vous choisissez de passer en Sid, continuez ce chapitre jusqu la n et suivez la Mthode Sid dans la suite de cette formation.
2. La Sid
2.1. Passer de Woody Sid
2.1.1. Changer la source des packages Editez le chier /etc/apt/sources.list. Je suppose dans ce paragraphe que votre systme est congur pour aller chercher les packages sur un miroir Debian et non sur des CDs. Si vous utilisez le miroir Debian franais, votre chier doit donc ressembler ceci :
deb http://ftp.fr.debian.org/debian woody main contrib non-free deb http://ftp.fr.debian.org/debian-non-US woody/non-US main contrib non-free deb http://security.debian.org/ woody/updates main contrib non-free
Pour passer en Sid, modiez le chier pour quil ressemble lexemple ci-dessous :
deb http://ftp.fr.debian.org/debian sid main contrib non-free deb http://ftp.fr.debian.org/debian-non-US sid/non-US main contrib non-free
2.1.2. Mettre jour les packages Et cest parti pour la grande mise jour : pratiquement tous les packages vont tre upgrads ! Pour passer de Woody Sid, il est prfrable dutiliser la commande apt-get dist-upgrade au lieu de la commande apt-get upgrade qui est utilise habituellement :
# apt-get update # apt-get dist-upgrade
Pendant la mise jour, vous aurez beaucoup de questions sur la conguration des packages. Sauf si vous avez de bonnes raisons de faire autrement, rpondez en suivant le choix propos par dfaut en appuyant simplement sur Entre. Jattire cependant votre attention sur un certain nombre de questions de la mme forme qui concernent la mise jour de chiers de conguration, comme par exemple ci-dessous pour le chier /etc/pam/other :
Configuration file /etc/pam.d/other ==> File on system created by you or by a script. ==> File also in package provided by package maintainer. What would you like to do about it ? Your options are: Y or I : install the package maintainers version N or O : keep your currently-installed version D : show the differences between the versions 3 or T : show a thre way difference between current, older,
119
and new versions of the file : Do a 3 way merge between current, older, and new versions of the file [Very Experimental] Z : start a new shell to examine the situation The default action is to keep your current version. *** /etc/pam.d/other (Y/I/N/O/D/Z) [default=N] ? M
N : garder votre chier de conguration actuel, qui nest pas forcmment le mieux adapt la nouvelle version (cest le choix par dfaut) ; Y : installer le chier de conguration livr dans le nouveau package, ce qui crasera les personnalisations que vous avez pu faire sur le chier de conguration actuel.
Je vous conseille de rpondre Y quand il sagit dun chier de conguration que vous navez jamais modi (ce qui est le cas dans lexemple ci-dessus) et de rpondre N quand il sagit dun chier de conguration que vous avez personnalis (par exemple le chier /etc/vim/vimrc). Dans ce genre de grosses mises jour, il arrive que la procdure apt-get dist-upgrade sinterrompe en cours de route sur une erreur. Contentez-vous de la relaner lidentique :
# apt-get dist-upgrade
2.1.3. Dplacer les chiers de conguration de zsh Comme indiqu par un message lors de la mise jour des packages, lemplacement des chiers de conguration de la nouvelle version de zsh nest plus /etc/ mais /etc/zsh/ ; vous devez donc dplaer vos chiers de conguration :
# cd /etc/ # mv zshrc zshenv zlogin zlogout zsh/
en temps normal, une fois par semaine, pour rester en phase avec les volutions ; quand une faille de scurit est corrige dans la Sid, tel quannone dans la mailing-list debian-security-announce.
2.2.2. Regarder les bugs connus avant de mettre jour Pour viter dinstaller des packages dfectueux sur votre Sid, vous pouvez regarder dans le systme de gestion des bugs de Debian (alias BTS, Bug Tracking System) si les packages que vous vous apprtez installer nont pas de bugs critiques dj refrencs. Plutt que de faire cela la main, installez un outil qui liste automatiquement les bugs critiques avant 120
dinstaller les nouveaux packages, et, si des bugs critiques sont rfrencs, qui vous demande de conrmer ou non la mise jour. Cet outil est contenu dans le package apt-listbugs :
# apt-get install apt-listbugs
2.2.3. Mettre jour Pour mettre jour une Sid, suivez la procdure classique :
# apt-get update # apt-get upgrade
Lors de lexcution de la commande apt-get upgrade, si vous avez install loutil apt-listbugs, il vous afchera la liste des bugs critiques rfrencs pour les packages que vous vous apprtez mettre jour, et, si des bugs critiques sont rfrencs, il vous proposera alors de continuer ou dabandonner la mise jour.
121
votre clavier, votre souris, votre carte graphique (cest le plus difcile), votre cran.
Mthode Sid pour ceux qui ont une connexion Internet haut-dbit type ADSL ou cble (si vous navez quun simple modem, les temps de tlchargement risquent dtre beaucoup trop longs). Cela vous permettra de bncier des avantages dune version plus rcentre dXFree, davoir un bureau plus joli et un certain nombre dapplications qui seront plus rcentes (Mozilla notamment) ; Mthode Woody pour ceux qui nont pas de connexion Internet rapide. Vous devrez vous contenter des programmes packags dans la Woody ; ils ne sont pas toujours trs rcents, mais ils conviennent trs bien une utilisation normale.
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.
votre carte graphique ne possde pas dacclration 3D matrielle : vous ntes pas concern par ce paragraphe !
122
vous avez une carte graphique possdant une puce de marque 3Dfx, ATI, Intel i810, Matrox ou SiS : pour tirer parti de leur acclration 3D matrielle, vous devez utiliser le DRM (Direct Rendering Manager) et le DRI (Direct Rendering Infrastructure). DRM est un module du noyau que vous avez d activer avec en plus une option spcique votre type de carte (cf Acclration 3D de la carte graphique). DRI est un module dXFree quil faudra activer lors de la conguration du serveur X. vous avez une carte nVidia TNT / TNT 2 / GeForce 1 2 3 ou 4 / nForce. Vous avez alors le choix entre deux drivers : le driver OpenSource inclus dans XFree, et le driver propritaire de nVidia. Le driver OpenSource marche trs bien mais ne tire pas parti de lacclration matrielle 3D de la carte, alors que le driver propritaire sait en tirer parti. Le driver OpenSource ne supporte gnralement pas les tous derniers modles de cartes nVidia.
Il vous pose alors des questions de conguration : 1. 2. Grer les droits de lancement du serveur X avec debconf ? ; rpondez Oui. Grer la conguration du serveur XFree86 4.x avec debconf ? ; rpondez Non.
2.1.2. Installer le driver propritaire nVidia Si vous souhaitez installer le driver propritaire nVidia, allez sur le site web de nVidia (http://www.nvidia.com/) et cliquez sur Download Drivers, puis sur Linux and FreeBSD Drivers, et enn sur la dernire version des drivers de la section Linux IA32. Vous arriverez alors sur la page des drivers Linux : tlchargez le chier NVIDIA-Linux-x86-version.run (tout cela peut mme se faire avec w3m en console). Ensuite, dplacez le chier que vous venez de tlcharger dans le rpertoire /usr/local/src/ puis lanez linstallation :
Si vous suivez la mthode Sid, alors le compilateur par dfaut est plus rcent que celui que vous avez utilis pour compiler votre noyau. Il faut donc dire linstalleur du driver nVidia de ne pas saffoler :
# export IGNORE_CC_MISMATCH=yes # sh /usr/local/src/NVIDIA-Linux-x86-version.run
Une interface en mode texte safche alors. Aprs avoir accept la licence propritaire des drivers, il dit quil ne trouve pas de driver prcompil et propose den tlcharger un depuis le serveur FTP de nVidia : rpondez Non (ils ne font pas de packages Debian pour le driver). Il vous informe ensuite que linstalleur va compiler une nouvelle interface noyau : faites OK... et si tout se passe bien, il dit ensuite : Installation of the NVIDIA Accelerated Graphics Driver for Linux-x86 is now complete ! Faites OK pour quitter linstalleur. 123
Pour que le module se charge automatiquement au lancement du serveur graphique, crez un chier /etc/modprobe.d/nvidia contenant :
alias /dev/nvidia* nvidia alias char-major-195 nvidia
puis excutez :
# update-modules
A la question Grer la conguration du serveur XFree86 4.x avec debconf ? rpondez Oui cette fois. 2.2.1. La carte graphique 1. Il commence par vous demander de slectionner le pilote de votre carte graphique. Cest l o il ne faut pas se tromper ! Choisissez le driver supportant votre carte graphique dans la liste quil vous propose. Ce nest pas toujours vident... En fait, chaque driver supporte plusieurs modles de cartes graphiques, et le nom du driver est gnralement le nom du constructeur de la puce graphique, ou un mix entre le nom du constructeur de la puce et le nom du modle de la carte. Par exemple :
si vous avez une carte nVidia et que vous voulez utiliser le driver OpenSource, slectionnez nv, si vous avez une carte nVidia et que vous voulez utiliser le driver propritaire, slectionnez nvidia, si vous avez une carte ATI et que vous avez install la dernire version dXFree, slectionnez ati, si vous avez une carte ATI et que vous avez install la version dXFree de la Woody, il y a plusieurs drivers possibles selon votre modle (r128 pour les Rage 128, radeon pour les Radeons, ati ou atimisc pour les autres).
Note : Si vous avez une carte graphique non supporte par XFree ou que vous ne trouvez pas le driver qui correspond votre carte graphique, slectionnez le driver vesa : il marche avec quasiment toutes les cartes vido.
2. 3. 4.
Ensuite, il vous demande un identiant : on crit gnralement le nom de sa carte graphique. Entrez lidentiant du bus de la carte vido : si vous navez quune seule carte vido, vous pouvez laisser le champ vide. Entrez la quantit de mmoire que va utiliser votre carte vido : elle est normalement dtecte automatiquement, vous pouvez laisser le champ vide. 124
5.
2.2.2. Le clavier 1. 2. 3. 4. 5. Choisir lensemble XKB utiliser : rentrez xfree86. Veuillez choisir votre type de clavier : en fonction du nombre de touches que vous avez, choisissez pc102 (clavier standard) ou pc105 (clavier standard avec les trois touches Windows en plus). Choisir la disposition de votre clavier : rentrez fr si vous avez un clavier franais. Slectionner la variante de votre clavier : laissez le champ vide. Slectionner les options de votre clavier : laissez le champ vide galement.
pour une souris sur le port PS/2 (les trackpoints et les touchpads des ordinateurs portables sont gnralement raccords ce port), pour une souris sur port USB,
pour une souris sur le premier port srie, pour une souris sur le second port srie,
2.
si vous avez une souris de base, si vous avez une souris un peu plus perfectionne.
ImPS/2
3. 4.
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. Activer le dlement avec la roulette ? Si vous avez une souris avec roulette, rpondez Oui.
2.2.4. Lcran 1. 2. 3. Commencez par entrer un identiant pour votre moniteur. Votre moniteur est-il de type LCD ? Rpondez Oui si vous avez un cran plat ou un ordinateur portable, et Non si vous avez un cran classique. 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). Choisissez les modes vido que vous dsirez utiliser pour le serveur X : cochez toutes les rsolutions supportes par votre cran ; il choisira la meilleur rsolution possible parmi les rsolutions slectionnes (donc a priori la plus leves de celles que vous avez slectionnes). Choisissez la profondeur de couleur par dfaut : sauf si vous avez une vieille carte graphique avec une mmoire vido limite, slectionnez 24 bits.
4.
5.
125
2.2.5. Les modules 1. Slectionnez les modules du serveur XFree86 chargs par dfaut : ne modiez pas la liste, sauf pour trois modules importants qui doivent tre chargs ou pas selon les cas (ils concernent tous lacclration 3D) : Tableau 2-1. Les modules XFree pour la 3D Type de module \ Nom du module Driver nVidia propritaire Driver nVidia OpenSource Cartes 3D avec DRI/DRM Autres cartes 2. 3. dri non non oui non glx oui oui oui non GLcore non non oui non
Mettre une section "Files" de rfrence dans la conguration ? : rpondez Oui. Mettre une section "DRI" de rfrence dans la conguration ? : rpondez Oui si vous comptez utiliser le DRI.
2.2.6. Fin... Une fois que debconf a ni sa srie de questions, il gnre le chier de conguration du serveur graphique /etc/X11/XF86Config-4.
2.3. Recommencer ?
Si vous vous tes tromp dans la conguration, vous pouvez recommencer en recongurant le package xserver-xfree86 :
# dpkg-reconfigure xserver-xfree86
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.
Mthode Woody :
# apt-get install gnome-session nautilus gnome-control-center gnome-applets sawfish-gnome
Mthode Sid :
# apt-get install gnome-session nautilus gnome-control-center gnome-applets gnome-icon-theme
sawfish-gnome
126
Il y a beaucoup de dpendances : il va installer une soixantaine de packages supplmentaires. Il faut ensuite spcier que vous voulez utiliser Gnome comme environnement graphique. Pour cela, en tant que simple utilisateur, crez dans votre home un chier .xsession contenant la commande gnome-session :
% echo "gnome-session" > ~/.xsession
3.2. start X !
Maintenant que tout est prt, vous allez pouvoir lancer le serveur X en tant que simple utilisateur (on ne lance jamais un server graphique en root) avec la commande suivante :
% startx
3.3. Rsultat...
Il y a trois scnarios possibles :
votre serveur X plante. le serveur X se lance, et vous arrivez dans un beau bureau Gnome... mais la souris devient folle ds que vous la bougez. Pour fermer le serveur graphique, utilisez la combinaison de touches Ctrl-Alt-Backspace. le serveur X se lance, et vous arrivez dans un beau bureau Gnome avec une souris qui bouge normalement... VICTOIRE ! Vous pouvez passer directement au chapitre suivant Le bureau Gnome si vous tes press.
Note : Si vous suivez la mthode Sid, il vous afche un message Il y a eu une erreur au dmarrage de lcran de veille : cochez Ne plus afcher ce message et validez. [TODO : vrier]
(**) 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 127
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 !
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.
Si vous ne parvenez pas faire marcher votre serveur graphique aprs plusieurs tentatives infructueuses de lancement et reconguration, lisez attentivement la section suivante...
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 : 128
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 :
4.4. 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,...).
"Generic Keyboard" "keyboard" "CoreKeyboard" "XkbRules" "xfree86" "XkbModel" "pc105" "XkbLayout" "fr"
4.5. La souris
Debconf gnre deux sections pour la souris :
une premire section dont lidentiant est Congured Mouse et qui a une option CorePointer qui dsigne la souris principale ; 129
une deuxime section dont lidentiant est Generic Mouse et qui a une option SendCoreEvents qui dsigne une souris dappoint (par exemple une souris externe sur un ordinateur portable).
Note : Dans le cas o les deux souris sont utilises en mme temps, les mouvements sadditionnent.
Si vous navez quune seule souris, supprimez la section dont lidentiant est Generic Mouse et supprimez galement la ligne correspondante dans la section ServerLayout.
Loption Device dnit le priphrique correspondant la souris. Loption Protocol dnit le langage parl par la souris. Loption Emulate3Buttons doit tre active si vous avez une souris 2 boutons et que vous voulez pouvoir faire du copier-coller sous X quand mme (ce sera expliqu au chapitre Les bases de Linux en mode graphique). Loption ZAxisMapping doit tre rgle "4 5" pour faire marcher la roulette si votre souris en as une.
Le paramtre Driver xe le pilote utilis par le serveur X pour votre carte graphique. Le nom du driver correspond exactement la liste prsente dans debconf ltape de slection du driver de la carte graphique. Vous trouverez des informations intressantes ce sujet dans le rpertoire /usr/share/doc/xserver-xfree86.
Section "Device"
130
4.7. Lcran
Le paramtre HorizSync prcise la plage des frquences de synchronisation horizontale en kHz. Le paramtre VertRefresh prcise la plage des frquences de rafrachissement verticale en Hz. Loption DPMS active loption dconomie dnergie si vous avez un cran qui supporte la norme DPMS.
Toutes ces informations techniques sont normalement crites dans le manuel de lcran.
Section "Monitor" Identifier HorizSync VertRefresh Option EndSection
4.8. La rsolution
Le paramtre Device assure le lien avec la section concernant la carte graphique : il doit tre exactement identique aux paramtres Identier de la section Device. Le paramtre Monitor assure le lien avec la section concernant lcran : il doit tre exactement identique au paramtres Identier de la section Monitor. Le paramtre DefaultDepth dnit sur combien de bits sont codes les couleurs (1 bit = noir et blanc, 8 bits = 256 couleurs, 16 bits = 65536 couleurs, 24 bits = 16 millions). Elle renvoie une des sous sections suivantes.
Il y a ensuite un certain nombre de sous-sections. Seule la section dont le paramtre Depth est gale au paramtre DefaultDepth est prise en compte par le serveur X. Les paramtres des sous-sections sont les suivants :
Le paramtre Depth dnit sur combien de bits sont codes les couleurs. Le paramtre Modes dnit une liste de rsolutions de lcran. Le Serveur X va choisir la plus haute rsolution possible dans la liste.
Section "Screen" Identifier "Default Screen" Device "Generic Video Card" Monitor "Generic Monitor" DefaultDepth 24 SubSection "Display" Depth 1 Modes "1024x768" "800x600" "640x480" EndSubSection SubSection "Display" Depth 8 Modes "1024x768" "800x600" "640x480" EndSubSection SubSection "Display" Depth 16
131
Le paramtre Screen assure le lien avec la section concernant la rsolution : il doit tre exactement identique au paramtres Identier de la section Screen. Le paramtre InputDevice assure le lien avec le clavier et la souris : il doit donc tre prsent deux fois. On peut ventuellement rajouter le paramtre OffTime qui xe le nombre de minutes dinactivit au bout duquel un cran DPMS se met en mode dconomie dnergie. Pour que a marche, il faut galement avoir activ loption DPMS dans la section Monitor.
"20"
"20"
0666
132
4.11. FIN...
Une fois que le chier de conguration est au point, vous navez plus qu enregistrer les changements et relancer le serveur X.
5. Manipulations de base
5.1. 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.
Ctrl-Alt- + (du pav numrique) pour passer la rsolution suivante dans la liste, Ctrl-Alt- - (du pav numrique) pour revenir la rsolution prcdente.
133
1.1.2. Mthode Sid En Sid, le plus pratique pour congurer Sawsh est de laner le programme sawsh-ui. Pour cela, cliquez sur Action puis Lancer un programme et tapez sawsh-ui puis cliquez sur Lancer.
134
Le programme de conguration de Sawsh apparat alors : Figure 3-3. Programme de conguration de Sawsh
1.1.3. La conguration de Sawsh En vous baladant dans les diffrents menus ou onglets, vous pouvez notamment congurer les paramtres suivants :
le thme, i.e. lapparence des fentres (celui qui apparat dans les screenshots est microGUI), le nombre de bureaux dont vous voulez disposer. Le concept de bureau est quelque-chose inconnu des utilisateurs de Windows, qui ne peuvent avoir quun seul bureau. Les utilisateurs de Linux ont la possibilit davoir plusieurs bureaux, et de passer de lun lautre trs simplement. Un bureau est une sorte dcran virtuel, et un seul bureau nest afch la fois. Vous verrez, cest trs pratique... le comportement du focus, cest dire quelles sont les rgles pour le changement de focus des fentres, les raccourcis clavier (pour passer facilement dun bureau lautre par exemple...)
135
1.2.2. Mthode Sid En Sid, la conguration de Gnome se fait dans le menu Applications / Prfrences de Bureau. Si vous voulez pouvoir changer le thme qui sappliquera Gnome 2 et toutes les applications ayant une interface Gnome 2, installez en plus les packages contenant les thmes Gnome 2 : ceux sont les packages dont le nom commence par gtk2-engines. Mon thme prfr est Crux, contenu dans le package gtk2-engines-crux. Un des plus beau thmes est SphereCrystal, contenu dans le package gtk2-engines-spherecrystal : il impressionne avec ses icnes vectoriels, mais il est trs gourmand en ressources...
1.2.3. La conguration de Gnome Vous pouvez choisir votre fond dcran, les thmes, et rgler divers paramtres. En ce qui concerne lconomiseur dcran, nous verrons a plus tard dans le chapitre Lconomiseur dcran. Tout le reste se congure par clic droit sur les deux tableaux de bord Gnome, qui sont les deux barres afches aux extrmits suprieures et infrieures de lcran (vous ntes pas oblig de conserver les deux). Vous pouvez les personnaliser votre got, cest trs facile. Par exemple, si vous avez un portable et que vous voulez avoir un indicateur de charge de la batterie dans un tableau de bord, faites un clic droit un endroit vide du tableau de bord et :
en Woody, slectionnez Tableau de bord / Ajouter au tableau de bord / Applets / Moniteurs / Moniteur de charge de la batterie ; en Sid, slectionnez Ajouter au tableau de bord / Utilitaire / Moniteur de charge de la batterie.
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. Vous retrouverez un menu comme sous Windows, o la patte dours de Gnome remplace le bouton Windows. Figure 3-4. La patte Gnome
en Woody, cliquez sur la patte Gnome, puis sur Programmes, Applications et enn Nautilus ; en Sid, cliquez sur Applications, puis sur Rpertoire Maison.
en Woody, cliquez sur la patte Gnome, puis sur Clore la session ; en Sid, cliquez sur Action, puis sur Clore la session.
137
1. Un terminal sous X
La premire chose faire est de pouvoir taper des commandes sous X. Pour avoir une console sous X, nous vous proposons dutiliser xterm :
# apt-get install xterm
Crez un icone pour xterm en faisant un clic-droit sur le Panel Gnome, puis en slectionnant successivement :
en Woody : Tableau de bord / Ajouter au tableau de bord / Lanceur... ; en Sid : Ajouter au tableau de bord / Lanceur....
Rentrez alors dans le champ Commande la commande qui correspond lapplication que vous voulez utiliser avec les options ventuelles. Dans le cas de xterm, rentrez la commande suivante :
xterm -bg black -fg white -geometry 80x38 -sl 2000
Vous pouvez alors lancer un Terminal sous X en cliquant sur licne que vous avez cr !
138
139
3.1.2. Crer un icne Cest ce que lon a fait au dbut du chapitre pour xterm... donc vous savez le faire !
en Woody, cliquez sur la patte Gnome et slectionnez Lancer... et cliquez ventuellement sur Avan. en Sid, cliquez sur Actions puis Lancer un programme.
Ensuite, tapez la commande correspondant lapplication avec les options ventuelles. Par exemple, pour lancer le programme xlogo : Figure 4-4. Le lanceur Gnome
3.1.4. Lancer depuis un terminal Vous pouvez galement lancer une application graphique depuis un xterm. Pour cela, tapez au prompt dun xterm la commande avec ses options suivie du caractre & qui permet de dtacher le programme du xterm. Par exemple, pour lancer le programme xlogo : Figure 4-5. Lancer depuis xterm
Cette mthode permet de lancer facilement une application graphique en root : il suft de devenir root dans le xterm avec la commande su avant de lancer le programme.
Note : La quasi-totalit des applications graphiques se lancent avec la commande qui porte leur nom !
140
4. Leuro sous X
# apt-get install xfonts-base-transcoded xfonts-75dpi-transcoded xfonts-100dpi-transcoded
Fermez votre session Gnome et redmarrez le serveur graphique avec la commande startx. Vous devriez alors avoir le symbole euro dans votre xterm avec la combinaison des touches AltGr-e.
5. Vim sous X
Vous pouvez bien sr utiliser vim dans un xterm... mais vous pouvez aussi utiliser la version graphique de vim :
# apt-get install vim-gtk
141
avec la commande glxinfo excute dans un xterm : les trois premires lignes doivent contenir :
name of display: :0.0 display: :0 screen: 0 direct rendering: Yes
Sil marque la troisime ligne direct rendering: No, cest que lacclration matrielle 3D ne fonctionne pas.
142
Les performances safchent alors dans le xterm. Pour vous donner un ordre de grandeur, on obtient environ 1100 FPS (frames par seconde) avec une GeForce 1 DDR et les drivers propritaires Nvidia et 550 FPS avec une ATI Radeon Mobility 7500.
143
1. Installer Mozilla
1.1. Installer les packages
1.1.1. Mthode Woody
# apt-get install mozilla
Le navigateur souvre alors... Allez dans le menu Help puis About Mozilla et notez la version de Mozilla. Ensuite, allez dans le menu Edit puis Preferences. Dans la bote de dialogue des prfrences, allez dans Appearence puis Languages/Content. Vous voyez alors que seul le "language pack" English (US) est install. Cliquez sur Download More pour allez tlcharger le package franais pour Mozilla. Vous arrivez alors sur une page du projet Mozilla qui regroupe tous les packages de langue dans un grand tableau :
la premire colonne correspond la version de Mozilla : descendez dans la page jusqu trouver votre version de Mozilla ; la deuxime colonne correspond la langue : cherchez French ; la troisime colonne contient un lien intitul mac/unix/win vers le package de langue : cliquez sur le lien. Ensuite, autorisez linstallation du package en cliquant sur Install. Si tout sest bien pass, vous obtenez deux messages successifs qui disent que linstallation sest termine avec succs !
144
Allez de nouveau dans les prfrences (menu Edit / Preferences) dans Appearence puis Languages/Content : slectionnez Franais (FR) dans la liste des Installed language packs, cliquez sur OK et quittez de nouveau Mozilla. Au prochain lanement, Mozilla vous parlera franais !
Ensuite, ouvrez Mozilla, allez dans les prfrences (menu Edit / Preferences) dans Appearence puis Languages/Content : slectionnez Franais (FR) dans la liste des Installed language packs, cliquez sur OK et quittez Mozilla. Au prochain lanement, Mozilla vous parlera franais ! Figure 5-1. Le navigateur de Mozilla
depuis le navigateur, allez dans le menu Fentre / Mail & Newsgroups ou cliquez en bas gauche sur licne reprsentant une lettre ; ou utilisez la commande :
% mozilla -mail
Au premier lanement, un assistant se lance et vous propose de congurer un compte mail ou news. Pour changer la conguration des comptes de mail et/ou de news ou rajouter de nouveaux comptes, allez dans le menu Edition / Mail & Newsgroups Account Settings. La conguration du ltrage des messages se fait dans le menu Outils / Filtrer les messages. Mozilla est facile congurer et linterface de la version Linux est identique celle de la version Windows : je vous laisse donc dcouvrir tout seul toutes ses capacits ! Figure 5-2. Le lecteur de mail de Mozilla
146
147
Note : gFTP fait aussi ofce de client SFTP, comme expliqu dans le chapitre Laccs distance par SSH.
148
1.2. Utilisation
Xmms se lance grce la commande xmms. Lutilisation est similaire celle de Winamp. Figure 6-1. Xmms
1.3. Prfrences
La conguration se fait en cliquant sur le bouton en haut gauche. Pour afcher la play-list, il suft de cliquer sur Editeur de Liste de Lecture. Pour le congurer de faon plus pousse, il faut aller dans Options / Prfrences. Par exemple, pour faire de lextraction audio (i.e. CD -> wav) ou de la transformation MP3 -> wav, il suft de slectionner comme plug-in de sortie Plugin Enregistreur Disque [libdisk_writer.so].
149
150
Nous allons maintenant jeter un oeil la conguration. Allez dans longlet Cong :
dans longlet Extr., slectionnez comme Extracteur grip (cdparanoia) (extraction = passage du CD au format Wav), cochez Inhiber le mode "paranoa" et ainsi que Inhiber le mode "extra paranoa" et mettez comme Format du chier extrait : /tmp/%n.wav. dans longlet MP3, slectionnez comme Encodeur oggenc (encodage = passage du format Wav au format Ogg Vorbis ou MP3) et personnalisez le format des futurs chiers Ogg Vorbis dans la case Format des chiers MP3, sachant que les conventions sont les suivantes :
%n = le nom de la chanson, %t = le numro de la piste, %a = le nom du chanteur de la chanson, %A = le nom de lartiste du disque, %d = le nom de lalbum.
Si vous voulez stocker vos chiers musique dans le rpertoire ~/music/, vous pouvez par exemple mettre dans la case Format des chiers MP3 : ~/music/%A/%d/%t-%a-%n.ogg. Ensuite, allez dans longlet Options et cochez Efface les chiers Wav aprs lencodage et rglez le Bitrate de lencodage (kbits/sec) 128 ou 160 ou plus selon la qualit que vous voulez obtenir.
faites le tour des onglets restants, mais nous avons rgl lessentiel.
Retournez dans longlet Pistes et slectionnez les pistes que vous voulez encoder par un clic droit sur celles-ci (pour les slectionner toutes dun seul coup, cliquez sur le titre de la dernire colonne). Pour commencer lextraction et lencodage, allez dans longet Extr. et cliquez sur Extr. + Encodage. Patientez... tout cela prend du temps, et lencodage prend normment de ressources processeur !
151
Relancez grip ; dans longlet Conguration / MP3 / Encodeur, il vous suft alors de slectionner comme encodeur bladeenc au lieu de oggenc.
152
des chiers MPEG-1, MPEG-2 et MPEG-4 / DivX, etc... des DVDs et des VCDs, depuis une carte satellite, depuis le rseau (utile pour la solution globale Client / Serveur).
Pour plus dinformations, je vous invite visiter le site web de VideoLAN (http://www.videolan.org) et en particulier la page "features" du VLC (http://www.videolan.org/vlc/features.html).
2. Installer VLC
Vous allez ajoutez comme source pour les packages Debian le site de VideoLAN, ce qui vous permettra dinstaller libdvdcss, une librairie qui permet de dcrypter les DVDs, et davoir une version rcente de VLC, que vous soyez en Woody ou en Sid.
Installez VLC avec son interface wxWindows (qui est linterface la plus jour) et libdvdcss :
# apt-get update # apt-get install libdvdcss2 wxvlc
153
3. Lancer VLC
Pour lancer VLC, il suft dutiliser la commande vlc. Ensuite, linterface est intuitive et tout se fait au clic !
Note : Si vous voulez lire des DVDs, vriez que vous avez bien laccs en criture au device correspondant au lecteur de DVD.
154
1. Installer OpenOfce.org
1.1. Mthode Woody
OpenOfce est prsent dans la Sid, mais pas dans la Woody. Pour linstaller sur une Woody, il faut donc ajouter une source supplmentaire de packages Debian. Pour cela, ditez le chier /etc/apt/sources.list et rajoutez la ligne suivante :
deb http://ftp.freenet.de/pub/debian-openoffice/ woody main contrib
Mettez jour la liste des packages puis installez les packages requis :
# apt-get update # apt-get install openoffice.org-l10n-fr
2. Lancer OpenOfce.org
Pour lancer OpenOfce, utilisez une des commandes ci-dessous : Fonction Traitement de texte Tableur Prsentation Dessin / Schmas / Organigrammes Commande oowriter oocalc ooimpress oodraw
155
Par dfaut, seul le correcteur orthographique anglais est livr avec les packages Debian dOpenOfce. Pour installer les autres correcteurs orthographiques (par exemple le correcteur orthographique franais), suivez les instructions de la page DicOOo (http://fr.openofce.org/DicOOo/index_dicooo.htm) de la partie francophone du site dOpenOfce. 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 (http://fr.openofce.org/Documentation/Index.html) du site ofciel dOpenOfce.
156
AbiWord (http://www.abisource.com/) pour le traitement de texte, GNUmeric (http://www.gnome.org/projects/gnumeric/) pour les tableurs.
1.2. Screenshot
Figure 9-1. Abiword
157
2.2. Screenshot
Figure 9-2. GNUmeric
158
Gardez le chemin dinstallation par dfaut /usr/local/Acrobat5 quand le script dinstallation vous pose la question Enter installation directory for Acrobat. Enn, dplacez le binaire acroread quil a install au mauvais endroit :
# mv /usr/local/Acrobat5/bin/acroread /usr/local/bin/
159
La commande convert permet de convertir dun format un autre. Par exemple, pour passer une image du format JPEG au format EPS :
% convert image1.jpg image1.eps
2. Albums photos
2.1. sous X
Le programme gthumb (http://gthumb.sourceforge.net/) permet de browser un rpertoire dimages : il construit des vignettes et permet de visionner les images en slectionnant les vignettes, ou de faire un diaporama.
# apt-get install gthumb
Pour lutiliser, il suft de le lancer en lui indiquant le rpertoire contenant les photos :
% gthumb mes_photos/ &
160
2.2. en HTML
Pour faire des albums aussi beaux que ceux de Jihem (cf son album de photos sur Paris (http://sphere.dnsalias.org/gallery/paris)), vous pouvez utiliser gallery qui est disponible dans le package du mme nom. Le jour o jessayerais, je donnerais quelques instructions ici...
Note : Le package gimp1.2-nonfree inclut le support des images GIF et TIFF dont lutilisation est gne par le brevet sur la compression LWZ.
161
The Gimp permet aussi de faire facilement des captures dcran sous X : menu Fichier, Acquisition, Capture dcran.
162
Tout le monde connait ICQ, MSN Messenger, Yahoo Messenger, AIM, etc... mais peu de personne utilisent Gabber (http://gabber.sourceforge.net/), qui est un client de messagerie instantane pour le rseau Jabber. A la diffrence des autres rseaux, Jabber permet de rsoudre les problmes dinterconnexion entre les divers rseaux de messagerie instantane. Cela veut dire quavec un compte sur le rseau Jabber, vous pourrez discuter avec les membres du rseau Jabber et vous connecter grce un agent sur les autres rseaux propritaires an de discuter avec leurs membres.
Avertissement
Bien entendu, il vous faudra cependant un compte sur chacun des rseaux, car lidentication reste obligatoire.
Ce chapitre a pour objet dexpliquer linstallation du client Gabber, avec la conguration minimum pour pouvoir discuter avec les membres dun autre rseau.
1. Installation de Gabber
Tout dabord, il faut installer le package :
# apt-get install gabber
2. Conguration de Gabber
Lanez Gabber :
% gabber
La premire fois que vous lancez Gabber, un assistant se lance pour vous aider congurer lapplication. Cet assistant est trs bien fait, cependant nous avons dcid de faire cette documentation, an de vous donner des informations supplmentaires.
163
Ces informations sont importantes, car cest partir de celles-ci que les utilisateurs des diffrents rseaux de messagerie vont pouvoir vous retrouver. Si vous dsirez rester anonyme, vous pouvez ne pas publier ces informations. Il suft de ne pas cocher la case "Ajouter cette information lannuaire des utilisateurs Jabber (JUD)". Vous pourrez alors transmettre votre identiant seulement vos amis.
164
Le nom du compte est tout simplement votre login sur le rseau Jabber. Figure 11-4. Mot de passe
165
Cette information permet de dnir un nom unique an de pouvoir vous connecter sur le mme compte Jabber avec plusieurs ordinateurs. Cela est trs pratique quand vous utilisez votre compte votre travail et votre domicile par exemple. Avec les autres messageries, il arrivait de laisser son client connect au bureau et dtre bloqu le soir sur son ordinateur personnel. Avec Gabber ce nest plus le cas. Figure 11-6. Votre nouvel JabberID
La procdure de cration de compte sur le rseau Jabber est termine. Voici un rcapitulatif des informations enregistes an de transmettre vos contacts vos identiants.
166
La connection sur le rseau se lance et recherche les utilisateurs connects. Cela peut prendre plusieurs secondes. Figure 11-8. Connexion russie
Une fois la connexion russie, le client Gabber vous lannonce avec ce message. Pour ceux qui sont habitus utiliser des clients de messagerie instantane, vous ne serez pas perdu dans lutilisation de Gabber.
167
Avertissement
Cette liste peut tre diffrente par rapport aux serveurs jabber ou vous vous connectez. Voici la liste de disponible partir du serveur amessage.de
Slectionner lagent qui vous intresse, par exemple, lagent pour le rseau ICQ. Ensuite il faut enregister vos informations de connexion sur ce rseau en cliquant sur Enregistrement.
168
Il faut avoir un compte sur le rseau de lagent slectionn. Cette documentation nest pas ralis dans le but de crer des comptes sur les rseaux propritaires. Figure 11-12. Enregistrement russi.
Quand lauthentication sur le rseau propritaire, en passant par le nouvel agent russi, vous aurez cette fentre dinformation qui safchera. Pour information, lauthentication peut prendre un certain temps.
169
Maintenant que votre agent ICQ est connect, vous verez apparatre la liste des agents, ainsi que vos correspondants dans la fentre de Gabber. Figure 11-14. Mthodes dajout dun contact.
Pour ajouter un contact vous avez plusieurs solutions. Soit vous connaissez dj sont identiant sur le rseau Jabber (JabberID) ou sur les autres rseaux propritaires. Ou alors vous lancez une recherche multicritre. Nous allons vous exppliquer cette deuxime mthode, puisquelle permet de retrouver facilement des amis, sans connatre leurs identiants.
170
Dans notre exemple, nous avons quun agent dactiv. Donc il y a seulement lannuaire pour ICQ. Cette liste augmentera, si vous avez plusieurs agents dactifs. Figure 11-16. Recherche multicritres.
Le formulaire de recherche vous permet de trouver des amis avec des critres trs diffrents. Le login est souvent largement sufsant, mais si vous le connaissez pas, vous pouvez rechercher un ami grce son nom, prnom. Les autres critres permettent de raliser une recherche plus prcise.
171
Voici la liste dune recherche sur le login Cyrilb. Figure 11-18. Information du contact et pseudo.
Aprs avoir slectionn une personne, lassistant recherche les informations de votre contact, comme sont nom complet, le pays ou se trouve la personne, etc. Ces informations peuvent tre utilise pour tre sr que cest bien lun de vos amis.
172
Les groupes permettent de classer vos correspondants. Cest par exemple utile, si vous voulez mettre vos collgues de travail dans un groupe sparer de vos amis. Figure 11-20. Requete des messages.
Cette requete est utilise an davoir une autorisation de votre contact, avant de pouvoir lajouter dans votre liste. Cette fonctionnalit est utile pour ce protger des messages indsirables. Si une personne aimerait vous ajouter dans sa liste de contact, vous recevrez une requete de message avec une demande dautorisation. Dans ce cas prsent, cest vous qui demander une autorisation.
173
Le contact CyrilB t ajout cette liste de contact. Dans cet exemple, il nest pas connect. Ds que CyrilB sera connect, il y aura une petite ampoule ct de son login.
174
Note : Si vous avez une carte dacclration 3D et que le DRI marche bien sur votre systme, vous pouvez installer en plus le package xscreensaver-gl pour avoir les conomiseurs dcran 3D.
2. Conguration dxscreensaver
Fermez votre session Gnome et redmarrez le serveur graphique : xscreensaver sera alors automatiquement activ au dmarrage de Gnome. Pour congurer xscreensaver :
en Woody, allez dans le Centre de Contrle Gnome (dont licne est une bote outils) et cliquez sur Proprits de lconomiseur dcran. en Sid, cliquez sur la patte Gnome et allez dans le menu Prfrences de bureau / Prfrences avances / Screensaver.
Dans le premier onglet, vous avez une liste dconomiseurs dcran, dont beaucoup sont activs. Si vous ne voulez quun seul conomiseur dcran, dslectionnez-les tous sauf celui que vous avez choisi. Sinon, vous pouvez garder une multitude dconomiseurs dcran slectionns et il choisira au hasard un conomiseur dcran dans la liste de ceux qui sont slectionnes, puis passera un autre conomiseur dcran au bout dun temps spci dans le champ Cycle After.
175
3. Verrouiller lcran
Pour verrouiller lcran avec lconomiseur dcran sans attendre quil ne se dclenche, utilisez la commande suivante :
% xscreensaver-command -lock
176
Pour cela, nous vous proposons dinstaller GDM (http://www.5z.com/jirka/gdm.html) (Gnome Display Manager). Cest tout fait facultatif : vous pouvez garder lancien schma o les utilisateurs se loggent en console et lancent le serveur graphique avec la commande startx.
Note : Si vous suivez la mthode Sid, vous pouvez installer en plus le package gdm-themes qui contient des thmes supplmentaires pour GDM.
177
1.2.2. Mthode Sid Pour avoir la touche euro sous X avec GDM, ditez le chier /etc/gdm/PreSession/Default et ajoutez la ligne suivante juste aprs la premire ligne qui commence par PATH= :
/usr/bin/X11/xmodmap -e keycode 26 = e E currency
1.3.1. Se logguer avec GDM Allez sur la console n 7 et logguez-vous en entrant votre login et votre mot de passe. Vous pouvez maintenant congurer GDM sous X avec une belle interface graphique. Ouvrez un xterm, passez root avec la commande su puis lanez le programme de conguration de GDM :
# gdmconfig
1.3.2. Mthode Woody Par exemple, pour mettre GDM en franais, il faut aller dans longlet Comportement du login et mettre fr_FR comme locale par dfaut.
1.3.3. Mthode Sid Par exemple, pour avoir un beau GDM graphique, slectionnez Bannire graphique pour le paramtre Bannire Locale dans longlet Gnral.
178
Une autre fonctionnalit intressante est la possibilit daccder aux fonctions du menu Systme de GDM (teindre, suspendre et rebooter) sans avoir taper le mot de passe root. Pour cela, il faut cocher loption Afcher le menu systme et dcocher loption Secure System Menu.
179
Le troisime rsultat de la recherche a lair de correspondre ce que lon cherche ! Le rexe suivant est dafcher les caractristiques et la description de ce package :
% apt-cache show galeon
Package: galeon Priority: optional Section: web Installed-Size: 6652 Maintainer: Jared Johnson (Debian) <solomon@futureks.net> Architecture: i386 Version: 1.2.0-6 Replaces: galeon-beta, galeon-nautilus Provides: www-browser Depends: gdk-imlib1, libart2 (>= 1.2.13-5), libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.2.4-4), libdb3 (>= 3.2.9Recommends: mozilla-psm Suggests: gtm (>=0.4.10) Conflicts: mozilla-browser (>=2:0.9.10), gconf (<= 1.0.8), gconf2 (<= 1.1.8), galeon-beta, galeon-nautilus Filename: pool/main/g/galeon/galeon_1.2.0-6_i386.deb Size: 2362554
180
MD5Sum: 73568cb0daca81f7d595200544512319 Description: Mozilla based web browser with GNOME look and feel Galeon is a fast Web Browser for the GNOME Desktop Environment. . Galeons use of Mozillas Gecko rendering engine makes it more feature complete and standards compliant than most other browsers available. . By using the GNOME and GTK libraries for the user interface, Galeon is usually faster than mozilla and the interface integrates well with the GNOME Desktop Environment.
La description conrme que cest bien le package quil nous faut. Le champ Recommends conseille dinstaller galement le package mozilla-psm. La description de ce dernier package nous apprend quil est ncessaire pour accder aux sites scuriss.
Si les chiers installs sont nombreux, vous pouvez nafcher que ceux qui vous intressent :
181
un chier README.Debian, qui contient des infos sur la faon dont a t fait le package (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 package 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 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 package part. Par exemple, la documentation du serveur Web Apache est contenue dans le package apache-doc.
182
et suivez les instructions qui safchent dans la console. La lecture de la page How to report a bug in Debian (http://www.debian.org/Bugs/Reporting) vous donnera plus de conseils et de dtails sur la procdure suivre.
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 (http://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.
183
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.
1.2.2. Choisir des mots de passe complexes Un mot de passe complexe est un mot de passe qui ne veut rien dire, qui nest pas dans le dictionnaire et qui comporte au moins 8 caractres, de prfrence avec un mlange de lettres minuscules, de lettres majuscules, de chiffres et de caractres de ponctuation. Une bonne mthode pour obtenir un mot de passe complexe et facile retenir consiste choisir une phrase et prendre la premire lettre de chaque mot, avec quelques complications en plus. Par exemple, la phrase "Linux, moi jy comprends rien de rien !" donne le mot de passe Lmjycr2r!
1.2.3. Tester la complexit des mots de passe Pour vrier que les mots de passe des utilisateurs du systme sont vraiment complexes, le root peut les soumettre un cracker de mots de passe... et voir combien de temps ils rsistent ! Les mots de passes des utilisateurs sont stocks dans le chier /etc/shadow. Seul lutilisateur root peut lire ce chier. Pour tester la complexit des mots de passes, le root peut donc installer le programme john (http://www.openwall.com/john/) et le lancer sur le chier /etc/shadow :
# apt-get install john # john /etc/shadow
185
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.
3. 4.
186
5.
Une fois que le canal scuris est en place, le client va pouvoir envoyer au serveur le login et le mot de passe de lutilisateur pour vrication. La canal scuris reste en place jusqu ce que lutilisateur se dloggue.
La seule contrainte est de sassurer que la cl publique prsente par le serveur est bien sa cl publique... sinon le client risque de se connecter un faux serveur qui aurait pris ladresse IP du vrai serveur (ou toute autre magouille). Une bonne mthode est par exemple de demander ladministrateur du serveur quelle est le ngerprint de la cl publique du serveur avant de sy connecter pour la premire fois. Le ngerprint dune cl publique est une chane de 32 caractres hexadcimaux unique pour chaque cl ; il sobtient grce la commande ssh-keygen -l.
Signie que le serveur SSH coute sur le port 22, qui est le port par dfaut de SSH. Vous pouvez le faire couter sur un autre port en changeant cette ligne. Vous pouvez aussi le faire couter sur plusieurs ports la fois en rajoutant des lignes similaires.
Protocol 2
Signie que votre serveur SSH accepte uniquement la version 2 du protocole SSH. Cest une version plus scurise que la version 1 du protocole. Seuls certains vieux clients SSH ne savent faire que du SSH version 1. Si vous voulez que le serveur accepte les deux protocoles, changez la ligne en :
Protocol 2,1
PermitRootLogin yes
Signie que vous pouvez vous logguer en root par SSH. Vous pouvez changer et mettre "no", ce qui signie que pour vous connecter en root distance, vous devrez dabord vous connecter par SSH en tant que simple utilisateur, puis utiliser la commande su pour devenir root. Cest une sorte de double protection.
X11Forwarding yes
187
Signie que vous allez pouvoir travailler en export display par SSH. Ce sera expliqu plus tard, dans la troisime partie de cette formation Faire de lexport display.
Si vous avez modi le chier de conguration du serveur, il faut lui dire de relire son chier de conguration :
# /etc/init.d/ssh reload Reloading OpenBSD Secure Shell servers configuration.
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.
Les cls gnres ont par dfaut une longueur de 1024 bits, ce qui est aujourdhui considr comme sufsant pour une bonne protection. Par dfaut (il demande conrmation lors du processus de cration), la cl prive est stocke dans le chier ~/.ssh/id_dsa avec les permissions 600 et la cl publique est stocke dans le chier ~/.ssh/id_dsa.pub avec les permissions 644. Lors de la cration, il vous demande une pass phrase qui est un mot de passe pour protger la cl prive. Cette pass phrase sert crypter la cl prive. La pass phrase vous sera alors demande chaque utilisation de la cl prive, cest dire chaque fois que vous vous logguerez en utilisant cette mthode dautentication. Un mcanisme appel ssh-agent permet de ne pas rentrer le mot de passe chaque fois... comme nous le verrons un peu plus loin dans ce chapitre.
Note : Vous pouvez tout moment changer la pass phrase qui protge votre cl prive avec la commande ssh-keygen -p.
188
4.2.2. 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
4.2.3. Se logguer La commande est la mme que pour une autentication par mot de passe.
avec scp (comme Ssh CoPy), qui sutilise la mme manire que la commande cp ; avec yafc, dont je vous avais dj parl au chapitre Le Web et le FTP en console pour les transferts de chiers par FTP. Encore une fois, vous pouvez utiliser la mthode dautentication par mot de passe ou par cls, lutilisation est la mme.
5.1.1. 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
189
5.1.2. Utiliser yafc Je vous avais dj parl dutilisation de yafc comme client FTP dans la section Le FTP en console. Mais ce que je ne vous avais pas dit, cest que yafc sait aussi transfrer des chiers par SSH ! Pour linstallation et la conguration de yafc, reportez-vous la section Le FTP en console. Pour se connecter par SSH en utilisateur toto sur le serveur ordi1.exemple.org :
% yafc ssh://toto@ordi1.exemple.org
Ensuite, les commandes sont exactement les mmes que lors de lutilisation de yafc comme client FTP !
5.2. En graphique
gFTP, dont linstallation est explique la n du chapitre Le Web, le mail et les news en mode graphique fait galement ofce de client SFTP. Lanez gFTP avec la commande gftp. Ensuite, allez dans le menu FTP / Options, slectionnez longlet SSH, mettez le paramtre Chemin sftp-server SSH2 /usr/lib/ et cliquez sur Enregistrez. Pour vous connecter, entrez le nom DNS du serveur ainsi que le login et le mot de passe, slectionnez SSH2 la place de FTP dans la liste droulante et tapez Entre. Figure 1-1. gFTP en SFTP
190
6.2. La pratique
6.2.1. en console Dans une console, ouvrez un screen avec ssh-agent en tche de fond :
% ssh-agent screen
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.
Lagent sera alors actif pour toutes les applications que vous utiliserez en mode graphique, et notamment tous les xterm ouverts ou que vous ouvrirez.
6.2.3. avec GDM Si vous utilisez GDM, lagent SSH a dj t lan par GDM. Vous navez donc plus qu excuter ssh-add une fois que vous tes loggu.
o 2012 est le port sur la machine cliente partir duquel la connexion entre dans le tunnel SSH (le port doit tre suprieur 1024 si on ne veut pas avoir laner le tunnel en tant que root). Ensuite, il suft de laner un navigateur Web en lui demandant de se conneecter en local sur ce port :
% w3m http://localhost:2012
et ensuite rentrez votre login et votre mot de passe quand il vous le demande.
192
2.1.2. Export display classique Le serveur graphique possde une fonction dexport display, mais qui nest pas crypte comme avec SSH. Il faut dabord autoriser les connexions en provenance du serveur X, puis demander au serveur X distant de renvoyer le display vers le
193
Note : Pour que cela marche, il faut que le serveur X de la machine cliente ne soit pas lan avec loption -nolisten tcp, ce qui est le cas par dfaut ! Si vous utilisez la commande startx, enlevez cette option du chier /etc/X11/xinit/xserverrc :
#!/bin/sh exec /usr/bin/X11/X -dpi 100
et redmarrez le serveur X. Si vous utilisez GDM, enlevez cette option du paramtre command= de la section server-Standard du chier /etc/gdm/gdm.conf :
[server-Standard] name=Standard server command=/usr/bin/X11/X -deferglyphs 16
et redmarrez GDM.
2.1.3. Export display avec XDMCP Le protocole XDMCP permet de se logguer au serveur graphique dune machine distante, et de faire exactement comme si on tait loggu sous X en local sur la machine.
Avertissement
Ce protocole fait tout transiter en clair sur le rseau, y compris les mots de passe !
Pour cela, installez GDM sur le serveur, comme expliqu au chapitre Se logguer en graphique. Toujours sur le serveur, ditez le chier /etc/gdm/gdm.conf et modiez la section xdmcp :
[xdmcp] Enable=true
Redmarrez GDM :
# /etc/init.d/gdm restart Stopping GNOME Display Manager: gdm. Starting GNOME Display Manager: gdm.
Sur le client, vous pouvez alors vous logguer au serveur graphique distant. En console, tapez :
% X -query serveur.exemple.org
194
Si vous avez dj un serveur graphique de lan sur le client et que vous ne pouvez pas le fermer, vous pouvez lancer un deuxime serveur graphique depuis une console :
% X :1 -query serveur.exemple.org
Le deuxime serveur X est alors prsent sur la console n 13 ; pour y accder depuis une autre console, vous pouvez vous mettre sur la console n 1 et faire Alt-Flche Gauche.
par VNC vers un Windows sur lequel tourne un serveur VNC : installez le package xvncviewer qui contient un client VNC puis lancez la commande suivante pour vous connecter au serveur VNC :
% xvncviewer serveur.exemple.org
par Terminal Serveur vers un Windows 2000 Server ou Remote Desktop vers un Windows XP Pro (le protocole est le mme) : installez le package rdesktop qui contient un client RDP (Remote Desktop Protocol) et lancez la commande suivante pour vous connecter au Windows distant :
% rdesktop -u login serveur.exemple.org
195
Note : Si vous suivez la mthode Woody, ajoutez loption -k 40c pour mettre le clavier en AZERTY franais (ne mettez pas cette option si vous suivez la mthode Sid). Vous pouvez utiliser en plus loption -d nom_du_domaine pour prciser un domaine.
196
1. NFS ct client
1.1. Conguration ncessaire
Tout dabord, il faut avoir compil le module du noyau NFS File system support avec en plus loption Provide NFSv3 client support (cf Conguration du noyau Linux). Ensuite, il faut le package nfs-common qui est normalement install par dfaut.
Une fois que vous navez plus besoin de ce partage, vous pouvez le dmonter :
# umount /mnt/test
Pour que ce rpertoire soit mont chaque dmarrage, rajoutez la ligne suivante dans le chier de conguration /etc/fstab :
ordi1.exemple.org:/home/ftp /mnt/test nfs soft,timeo=5,intr,rsize=8192,wsize=8192 0 0
Pour comprendre les options, regardez leur description dans man mount.
2. NFS ct serveur
2.1. Conguration ncessaire
Tout dabord, il faut avoir compil le module du noyau NFS Server support avec en plus loption Provide NFSv3 server support (cf Conguration du noyau Linux). Il faut galement le package nfs-kernel-server :
# apt-get install nfs-kernel-server
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 197
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 !
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.
198
1. Samba ct serveur
1.1. Installation des packages
Il suft dinstaller le package samba, qui va installer par dpendance le package samba-common qui sert la fois au serveur et au client :
# apt-get install samba
1.2. Conguration
Ds linstallation, il vous demande si vous voulez congurer Samba avec Debconf : rpondez Non. En effet, nous vous proposons de tlcharger un chier de conguration que vous allez personnaliser. Le chier de conguration de Samba est /etc/samba/smb.conf. Ce chier a une petite partie commune au client et au serveur, le reste tant spcique au serveur. Copiez mon chier de conguration dexemple dans le rpertoire /etc/samba/ :
# cp ~/config/smb.conf /etc/samba/
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/smb.conf # mv smb.conf /etc/samba/
Editez le chier et personnalisez les paramtres en lisant les instructions en commentaire. Une fois que le chier est bien personnalis, vriez sil est bien valide avec le programme testparm :
# testparm
Si le chier de conguration est bien valide, vous pouvez alors demander Samba de relire son chier de conguration :
# /etc/init.d/samba reload Reloading /etc/samba/smb.conf (smbd only).
Note : Il ny a pas de processus samba qui tourne en tche de fond pour le serveur, mais deux processus : smbd qui soccupe des partages et de lautentication, et nmbd qui soccupe de la rsolution des noms NetBIOS.
199
2. Samba ct client
2.1. en console
2.1.1. Installation du client en mode texte Le client pour le voisinage rseau Windows en console sappelle smbclient :
# apt-get install smbclient
2.1.2. 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 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
200
2.1.3. Monter un partage du voisinage rseau Tout dabord, il faut avoir compil le module smbfs du noyau (cf Conguration du noyau Linux). Ensuite, il faut installer le package smbfs :
# apt-get install smbfs
Pour monter le partage partage1 de lordinateur ordi1 dans le rpertoire /mnt/test/ dj existant :
# mount -t smbfs //ordi1/partage1 /mnt/test -o username=login_Windows
Quand vous nen navez plus besoin, vous pouvez dmonter le systme de chiers :
# umount /mnt/test
Pour congurer xsmbrowser, il faut dabord le lancer avec la commande du mme nom. Ensuite, cliquez sur le bouton Network avec la croix verte : Figure 4-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,
201
Ensuite, cliquez sur Advanced Options : Figure 4-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.
2.2.2. 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.
202
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.
203
2.2. Conguration
Ds linstallation, il vous demande une liste de serveurs NTP. Tapez le nom du serveur NTP principal et du serveur secondaire de VIA :
ntp.via.ecp.fr ntp2.via.ecp.fr
Les adresses sont alors crites dans le chier /etc/default/ntp-servers. Votre systme se synchronisera chaque dmarrage. Vous pouvez aussi lancer une synchronisation ponctuelle en lanant :
# /etc/init.d/ntpdate start Running ntpdate to synchronize clock.
204
Si vous voulez pouvoir mettre des restrictions daccs vos pages avec des chiers .htaccess, modiez galement la ligne 357 et mettez :
AllowOverride All
Maintenant que la conguration a t modie, il faut dire Apache de relire ses chiers de conguration :
# /etc/init.d/apache reload Reloading apache configuration.
A ltape de conguration des packages, il pose plusieurs questions : 1. 2. 3. Do you want me to run the apachecong script now ? [y/N] : rpondez y, Save these changes to the conguration les ? [Y/n] : rpondez y, Restart Apache now ? [Y/n] : rpondez n.
205
pour dire Apache de faire passer par linterprteur PHP toutes les pages dextension .php, dcommentez la ligne suivante :
AddType application/x-httpd-php .php
Toutes les pages ayant lextension .php seront dsormais traites par linterprteur PHP avant dtre envoyes par Apache au navigateur Web distant.
2. Utiliser Apache
2.1. Mettre une page web disposition du monde !
La page web mettre disposition du monde doit se trouver dans le rpertoire /var/www/, sappeller index.html et avoir les droits en lecture pour tout le monde. Une page Web a t mise par dfaut linstallation dApache. Cette page web est maintenant disponible ladresse http://nom_DNS_de_la_machine/ pour le monde entier !
La page web de toto est dsormais disponible au monde entier ladresse http://nom_DNS_de_la_machine/~toto/
206
Modier le chier de conguration /etc/proftpd.conf ? Rpondez Oui. Lancer ProFTPd partir dinetd ou indpendamment ? Rpondez indpendamment. Autoriser les connexions anonymes ? Les connexions anonymes sont des connexions sans autentication qui permettent nimporte qui de venir se connecter par FTP et de tlcharger les chiers qui se trouvent dans le home de lutilisateur ftp (par dfaut, cest le rpertoire /home/ftp/). Si vous voulez mettre en place un tel service, rpondez Oui. Si vous avez rpondu Oui la question prcdente, il vous demande Do you want /etc/proftpd.conf to be updated ? Rpondez Oui.
Votre serveur FTP est maintenant lan. Vous pouvez modier sa conguration en ditant le chier /etc/proftpd.conf et en vous aidant ventuellement de la documentation disponible dans le package proftpd-doc. A chaque fois que le chier de conguration change, il faut dire ProFTPd de relire ses chiers de conguration avec la commande :
# /etc/init.d/proftpd reload Reloading proftpd configuration...proftpd. done.
2. Utiliser ProFTPd
2.1. Connexion authenties
Les personnes qui ont un compte sur le systme peuvent dsormais se connecter par FTP avec leur login et leur mot de passe. Ils peuvent tlcharger et dposer des chiers dans tous les rpertoires sur lesquels ils ont les droits ncessaires.
Note : Attention, les mots de passe sont transmis en clair lors dune session FTP : il est donc conseill dutiliser SSH pour faire des transferts de chiers, comme expliqu au chapitre Laccs distance par SSH
2.3. Administration
Pour voir la liste des machines connectes au serveur FTP linstant t, utilisez la commande ftpwho. Les logs de transfert de chiers du serveur FTP sont contenus dans le chier /var/log/xferlog. La commande ftpstats gnre un petit tableau de statistiques partir de ce chier.
208
Avertissement
Si vous tes sur un rseau dont vous ntes pas ladministrateur, ninstallez pas de serveur DHCP : cela risquerait de perturber la bonne marche du rseau !
A linstallation, il vous demande dentrer la liste des interfaces rseaux sur lesquelles le serveur DHCP doit couter (spares par des espaces). Cette information est ensuite stocke dans le chier /etc/default/dhcp3-server.
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/dhcpd.conf # mv dhcpd.conf /etc/dhcp3/
Une fois que le chier de conguration est au point, relancez le serveur DHCP :
# /etc/init.d/dhcp3-server restart
Pour vrier en temps rel le bon fonctionnement du serveur DHCP, surveillez les critures dans le syslog :
% tail -f /var/log/syslog
209
210
auth-nxdomain no; };
o 48.128.12.41 et 48.128.12.42 sont les adresses IPs des serveurs DNS de votre fournisseur daccs. Enn, modiez le chier /etc/resolv.conf et mettez votre serveur en premire position dans la liste des serveurs DNS :
search liste_de_domaines_pour_les_noms_DNS_dont_le_domaine_nest_pas_prcis nameserver 127.0.0.1 nameserver 48.128.12.41 nameserver 48.128.12.42
o :
mondomaine.org est le nom de domaine pour lequel votre serveur sera primaire, mondomaine.org.zone dsigne le chier /var/cache/bind/mondomaine.org.zone o seront stocks les enregistrements de la zone.
2.3.2. Ecriture du chier de zone Cest de loin la partie la plus difcile ! Jai cris un chier de conguration type largement comment qui pourra vous servir comme base de travail pour crire votre propre chier de zone :
# cp ~/config/mondomaine.org.zone /var/cache/bind/
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/mondomaine.org.zone # mv mondomaine.org.zone /var/cache/bind/
2.3.3. Vrications et relance Vriez que vous navez pas fait derreur de syntaxe dans le chier named.conf :
% named-checkconf
Si la commande nafche rien, cest que le chier named.conf est valide. Ensuite, vriez la syntaxe du chier de zone :
% named-checkzone mondomaine.org /var/cache/bind/mondomaine.org.zone
211
Si la commande nafche aucun message derreur, alors il ny a pas derreur de syntaxe dans le chier de zone. Vous pouvez alors dire Bind de relire son chier de conguration :
# /etc/init.d/bind9 reload
Note : Attention, si vous faites un restart au lieu dun reload, le cache de votre serveur DNS se videra !
o :
domaine-ami.org est le nom de domaine pour lequel votre serveur sera secondaire, domaine-ami.org.zone dsigne le chier /var/cache/bind/domaine-ami.org.zone o sera crite la zone lissue du premier transfert depuis le serveur DNS primaire, 12.42.112.242 est ladresses IP du serveur primaire de la zone.
2.4.2. Vrication et relance Vriez que vous navez pas fait derreur de syntaxe dans le chier named.conf :
% named-checkconf
Si la commande nafche rien, cest que le chier est valide. Vous pouvez alors dire Bind de relire son chier de conguration :
# /etc/init.d/bind9 reload
Votre serveur DNS fera alors rgulirement des transferts de zone depuis le serveur primaire (et notamment chaque fois que le serveur primaire lui notiera dun changement dans la zone) et lcrira dans le chier /var/cache/bind/domaine-ami.org.zone.
212
Requte sur le champ "A" du nom www.mondomaine.org auprs du serveur DNS 12.42.112.242 :
% dig @12.42.112.242 www.mondomaine.org A
Requte sur la champ "MX" du nom mondomaine.org auprs du serveur DNS 12.42.112.242 :
% dig @12.42.112.242 mondomaine.org MX
Requte sur tous les champs du nom mondomaine.org auprs du serveur DNS 12.42.112.242 :
% dig @12.42.112.242 mondomaine.org ANY
Requte inverse (i.e. reverse DNS) sur lIP 12.42.111.422 auprs du serveur DNS 12.42.112.242 :
% dig @12.42.112.242 -x 12.42.111.422
La sortie de la commande dig est trs dtaille ; la rponse la requte (la partie qui vous intressera le plus !) se trouve en dessous de la ligne suivante :
;; ANSWER SECTION:
213
1. Congurer Postx
1.1. Installer Postx
Si vous avez saut le chapitre Congurer son serveur de mail local, alors je vous invite y retourner et suivre la procdure qui y est dcrite ! Vous aurez alors un serveur Postx avec une conguration pour dlivrer le mail en local.
1.2. main.cf
La conguration de Postx se fait dans le chier /etc/postfix/main.cf. Utilisez mon chier dexemple pour comprendre les paramtres et bien congurer votre serveur :
# cp ~/config/main.cf /etc/postfix/
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/main.cf # mv main.cf /etc/postfix/
Une fois que vous avez personnalis le chier main.cf en lisant les commentaires contenus dans le chier, il faut dire Postx de relire sa conguration :
# /etc/init.d/postfix reload
Les utilisateurs qui ont des comptes sur le serveur peuvent alors reevoir du mail ladresse nom_du_compte@nom_de_domaine. Le mail reu pour lutilisateur toto est stock dans le chier /var/mail/toto (sauf si lutilisateur a un chier .procmailrc dans son home : cf Le mail en console pour comprendre procmail).
214
# A la rception dun mail ladresse <bruit@nom_de_domaine>, # excute la commande "/usr/lib/ecartis/ecartis -s bruit" : bruit: "|/usr/lib/ecartis/ecartis -s bruit"
Normalement, on dnit aussi dans ce chier quel compte local (ou quelle adresse) le serveur de mail doit faire suivre le mail destin lutilisateur root. En effet, comme il ny a pas besoin davoir tous les pouvois pour lire le mail du root, il serait absurde (et mme dangereux) de lire les mails du root en tant que root. Il est prfrable de faire suivre le mail du root vers un autre compte ou une autre adresse. Il faut galement faire des alias pour les adresses postmaster et abuse, qui sont deux adresses standard pour pouvoir joindre les administrateurs du serveur de mail dun domaine. Par exemple, si vous utilisez un compte local admin pour lire les logs et les mails dadministration, ajoutez les lignes suivantes au chier dalias :
root: admin postmaster: admin abuse: admin
Ensuite, excutez la commande suivante pour quil regnre la base de donne dalias contenue dans le chier /etc/aliases.db (ne pas oublier dexcuter cette commande aprs chaque modication du chier /etc/aliases) :
# newaliases
La syntaxe du chier est semblable celle du chier dalias, mais sans la sparation par les deux-points :
# # # # /etc/postfix/virtual Fichier de correspondance pour les adresses virtuelles NE PAS OUBLIER dexcuter "postmap /etc/postfix/virtual" aprs chaque modification
# Fait correspondre une adresse virtuelle un compte local postmaster@exemple.org admin alexis@exemple.org alexis # Fait correspondre une adresse virtuelle une autre adresse mail toto@exemple.org titi@yahoo.fr # Fait correspondre une adresse virtuelle une commande excuter bruit@exemple.org "|/usr/lib/ecartis/ecartis -s bruit"
Ensuite, excutez la commande suivante pour quil tienne compte des modications :
# postmap /etc/postfix/virtual
215
o mail_ID est lidentiant du mail dans la queue (il apparat gauche dans la sortie de la commande mailq).
La conguration de qpopper se fait dans le chier /etc/qpopper.conf. Par dfaut, tout est comment, mais les paramtres par dfaut doivent vous permettre de lutiliser normalement.
216
1. Monter le serveur
1.1. Installer et congurer Ecartis
Je vous propose dinstaller Ecartis (http://www.ecartis.org/), qui est un manager de mailing-lists robuste et performant. Commencez par installer le package :
# apt-get install ecartis
Ecartis possde un chier de conguration global /etc/ecartis/ecartis.cfg. Editez-le et personnalisez les paramtres suivants en vous aidant des commentaires (dans la plupart des cas, il sufra de remplacer localhost par le nom de domaine de la machine) :
Il vous demande ladresse mail de ladministrateur de la mailing-list : entrez votre adresse mail ; cest avec cette adresse que vous pourrez administrer la mailing-list. Il cre ensuite le rpertoire et les chiers ncessaires au bon fonctionnement de la mailing-list dans le rpertoire /var/lib/ecartis/lists/ :
Writing config file...done. Creating default user file...done.
Enn, il afche une liste dalias crer dans votre serveur de mail :
Sending aliases for sendmail/Exim/Postfix/Zmailer to stdout. # Aliases for bruit mailing list.
217
bruit: "|/usr/lib/ecartis/ecartis -s bruit" bruit-request: "|/usr/lib/ecartis/ecartis -r bruit" bruit-repost: "|/usr/lib/ecartis/ecartis -a bruit" bruit-admins: "|/usr/lib/ecartis/ecartis -admins bruit" bruit-moderators: "|/usr/lib/ecartis/ecartis -moderators bruit" bruit-bounce: "|/usr/lib/ecartis/ecartis -bounce bruit"
Copiez-collez le bloc ci-dessus, qui comprend les 6 alias ncessaires au fonctionnement de la mailing-list, dans le chier dalias de votre serveur de mail (dans notre cas : /etc/aliases) puis mettez jour la base dalias :
# newaliases
list-owner : adresse e-mail du responsable de la mailing-list (cest celle que vous avez donn lors de la cration de la mailing-list) ; subject-tag : tag ventuel rajout aux sujets des mails posts dans la mailing-list (commentez la ligne si vous ne voulez pas de tag) ; reply-to : permet de forcer le champ Reply-to sur une certaine adresse (par exemple ladresse de la mailing-list pour que les rponses aux posts aillent par dfaut dans la mailing-list) ; administrivia-address : adresse e-mail dadministration de la mailing-list o sont envoy les notications (et les autorisations si la mailing-list est en subscribe-mode = closed) dabonnement et de dsabonnement (ne pas modier) ; approved-address : adresse e-mail o sont renvoys les posts accepts ou refuss la modration : mettre <$list>-repost@serveur.exemple.org, o serveur.exemple.org est le nom de domaine du serveur ; mbox-archive-path : rpertoire dans lequel sont stockes les archives au format mbox (si vous voulez en avoir) ; humanize-mime : mettre false si vous voulez que les pices jointes qui ne sont pas des chiers texte ne soient pas supprimes ! closed-post : les personnes qui ne sont pas abonnes la mailing-list sont-elles autorises y poster ? (si vous rpondez true, les posts des personnes extrieures la mailing-list sont alors modrs) moderated : tous les posts doivent-ils tre approuvs par les modrateurs ? moderator : adresse e-mail pour les modrateurs (ne pas modier) ; send-as : adresse du chemin de retour SMTP (ne pas modier) ; subscribe-mode : il y a 3 choix :
open pour que nimporte qui puisse sabonner, conrm pour que nimporte qui puisse sabonner aprs conrmation du futur abonn, closed pour que toutes les demandes dabonnement soient soumises lapprobation des administrateurs ;
218
une adresse e-mail ; le caractre deux-points ; une liste de ags encadrs et spars par le caractre |.
ECHOPOST pour les abonns la mailing-list, ADMIN pour les administrateurs de la mailing-list, SUPERADMIN : [TODO : quel est la diffrence avec ADMIN ?], MODERATOR pour les modrateurs de la mailing-list, CCERRORS pour recevoir les mails derreur de la mailing-list (par exemple quand ladresse dun abonn ne marche pas), REPORTS pour recevoir les rapports rguliers sur le fonctionnement de la mailing-list.
Si lutilisateur toto@yahoo.fr est un simple abonn, on trouvera dans le chier une ligne :
toto@yahoo.fr : |ECHOPOST|
si la mailing-list est en subscribe-mode = open, lutilisateur recevra conrmation de son abonnement par mail, si la mailing-list est en subscribe-mode = conrm, lutilisateur recevra un mail lui donnant les instructions pour conrmer son abonnement, si la mailing-list est en subscribe-mode = closed, un administrateur devra approuver labonnement.
Idem pour un dsabonnement, mais en mettant dans le sujet unsubscribe bruit. Pour avoir une liste complte des commandes, envoyez un mail ladresse ecartis@serveur.exemple.org avec un sujet commands.
219
Pour la modration des mail, les modrateurs reoivent des mails indiquant les instructions pour approuver ou rejeter les posts. Pour avoir de laide sur Ecartis, envoyez un mail ladresse ecartis@serveur.exemple.org avec un sujet help.
si la mailing-list est modre ; si la mailing-list nest pas modre, mais en closed-post = true et que la personne qui poste nest pas abonne la mailing-list.
Le mcanisme darchivage des mailing-list que je vous propose de mettre en place va faire intervenir procmail, un programme de tri des mails. Si vous ntes pas encore familier avec procmail, je vous invite lire et mettre en oeuvre le chapitre Le mail en console au pralable. Lavantage dutiliser procmail est quil va nous permettre une gestion simple des permissions. Tout dabord, il faut dcider dun utilisateur qui appartiendra le rpertoire utilis pour larchivage Web : dans cet exemple, il sagit de lutilisateur toto et larchivage se fait dans son rpertoire ~/public_html/archive-bruit/. Cet utilisateur devra tre abonn la mailing-list et recevra donc les mails. A chaque rception dun mail de la mailing-list, son procmail lance lexcution de MHonArc qui convertit le mail en HTML et met jour les pages Web dindex.
Note : Rappel : le procmail dun utilisateur sexcute avec les droits de lutilisateur.
Nous prenons donc comme exemple lutilisateur toto qui archive la mailing-list bruit dans le sous-rpertoire archive-bruit de son public_html sur le systme dont le nom DNS est serveur.exemple.org (ce serveur pouvant recevoir du mail). Commencez par abonner toto@serveur.exemple.org la mailing-list bruit. Ensuite, crivez un chier .procmailrc dans le home de lutilisateur toto, qui pourrait ressembler a :
# ~/.procmailrc # Fichier de configuration de Procmail # Je ne veux pas trop de messages dans les logs VERBOSE=off # Fichier de log de procmail LOGFILE=$HOME/.procmail.log # Rpertoire de stockage des archives (doit tre cr au pralable) REPERTOIRE=$HOME/public_html/archive-bruit
220
# Jenvoie les mails de la mailing-list "bruit" sur le programme "mhonarc" # pour archivage :0 * ^X-list: bruit | mhonarc -add -quiet -umask 022 -outdir $REPERTOIRE # Je trashe tous les autres mails :0 /dev/null
Quelques prcisions sur les options de la commande mhonarc utilise dans le .procmailrc :
-add : archive les messages au fur et mesure de leur arrive ; -quiet : ncrit dans les logs que les messages derreur ; -umask 022 : met les permissions 644 sur les chiers HTML cres ; -outdir $REPERTOIRE : crit les chiers HTML dans le rpertoire spci dans la variable REPERTOIRE (le rpertoire doit tre cre au pralable).
Ds rception du premier mail, les archives seront accessibles ladresse http://serveur.exemple.org/~toto/archive-bruit/threads.html. Si cela ne marche pas, consultez les logs de procmail dans ~toto/.procmail.log et mettez ventuellement le paramtre VERBOSE on dans .procmailrc pour avoir plus de dtails dans les logs. Si vous voulez restreindre laccs aux archives Web, la conguration se fait au niveau dApache avec un chier .htaccess, et non au niveau de procmail ou de mhonarc !
-spammode : brouille le domaine des adresses mail pour viter le spam ; -tlevel 12 : autorise jusqu 12 niveaux dindentation pour lindex thread ; -title Archives de la mailing-list bruit : met le titre spci sur la page dindex classique ; -ttitle Archives de la mailing-list bruit : met le titre spci sur la page dindex threade ; -nomailto : ne met pas de lien hypertexte sur les adresses e-mail ; -nodoc : supprime la rfrence MHonArc la n des pages dindex.
Pour afcher la liste complte des options, tapez la commande mhonarc -help.
221
# Rpertoire de stockage des archives (doit tre cre au pralable) REPERTOIRE=$HOME/public_html/archive-bruit # Stocke la date du mois DATE=/bin/date +%Y-%m # Jenvoie les mails de la mailing-list "bruit" sur le programme "mhonarc" # pour un archivage par mois :0 * ^X-list: bruit | mkdir -m 755 -p $REPERTOIRE/$DATE ; mhonarc -add -quiet -umask 022 -outdir $REPERTOIRE/$DATE # Je trashe tous les autres mails :0 /dev/null
222
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.
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 : 223
# ln -s /var/lib/cvs /cvs
3.1.2. 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
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
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
3.1.4. 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 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).
Avertissement
Attention, le mot de passe est transmis en clair sur le rseau !
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/cvs-loginfo.sh % wget http://people.via.ecp.fr/~alexis/formation-linux/config/cvs-commitinfo.sh # mv cvs-loginfo.sh cvs-commitinfo.sh /usr/local/bin/
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, 225
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 !
3.2.2. 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
Pour donner laccs certains utilisateurs du systme, ajoutez-les dans le groupe cvs-projet2 :
# adduser toto cvs-projet2
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
226
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.
227
utiliser fetchmail (http://www.catb.org/~esr/fetchmail/) pour rapatrier votre mail sur votre ordinateur (dans le cas o lordinateur sur lequel vous comptez lire votre mail nest pas le mme que celui qui hberge votre boite mail) ; utiliser procmail (http://www.procmail.org/) pour le trier et spamassassin (http://spamassassin.org/) pour ltrer le spam ; utiliser mutt (http://www.mutt.org/) comme lecteur de mail.
Ds linstallation du package, il vous demande : Faut-il installer un service fetchmail pour tout le systme ?. Rpondez Non. Ecrivez votre chier de conguration .fetchmailrc dans votre home en vous basant sur mon chier de conguration type :
% cp /root/config/fetchmailrc ~/.fetchmailrc
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/fetchmailrc % mv fetchmailrc ~/.fetchmailrc
et modiez le nom du serveur de mail, le login et le mot de passe. Le chier de conguration doit avoir les permissions 600, sinon fetchmail refuse de fonctionner :
% chmod 600 ~/.fetchmailrc
Pour rapatrier les mails depuis le serveur sur votre ordinateur, il sufra de lancer la commande :
% fetchmail
mais avant a, nous allons mettre en place le ltrage avec procmail et spamassassin.
229
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.
2.2. La pratique
Utilisez le chier de conguration dexemple pour procmail procmailrc :
% cp /root/config/procmailrc ~/.procmailrc
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/procmailrc % mv procmailrc ~/.procmailrc
Regardez les commentaires crits dans ce chier pour comprendre comment il est construit et personnalisez-le. Aidez-vous ventuellement de man procmailrc et man procmailex. Crez un rpertoire mail dans votre home qui accueillera toutes vos mailboxes :
% mkdir ~/mail
Les mailboxes seront des sous-rpertoires du rpertoire mail et seront cres automatiquement par procmail au premier mail aiguill dans la mailbox.
230
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/muttrc % mv muttrc ~/.muttrc
Editez-le et personnalisez au minimum les deux premiers paramtres (le champ From et la liste des adresses e-mail utilises). Avec le chier de conguration que je vous propose, mutt gnre la liste des mailboxes partir de la liste des sous-rpertoires du rpertoire ~/mail/ (les sous-rpertoires correspondant aux mailboxes sont crs la rception du premier mail pour cette mailbox). Pour avoir la liste complte des paramtres et de leur description, utilisez man muttrc ou ce manuel dutilisation en franais (http://cedricduval.free.fr/mutt/fr/). 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>
La liste des mailboxes apparat lcran : Figure 1-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). 231
Pour crire un mail, placez-vous dans nimporte quelle mailbox et tapez m. Rentrez ladresse du destinataire ou sa cl si vous lavez mis dans votre chier dalias, puis le sujet du message. Mutt ouvre alors votre diteur de texte prfr (vim si vous navez pas chang ce paramtre dans le chier de conguration). Le texte contient dj des headers que vous pouvez complter et / ou modier. Tapez le texte du message en dessous des headers : Figure 1-3. Mutt : criture dun mail
Une fois que vous avez ni, enregistrez et quittez... Vous arriver alors dans lcran denvoi des mails :
232
t pour modier la liste des personnes destinataires, c pour modier la liste des personnes en Cc, b pour modier la liste des personnes en Bcc, s pour modier le Subject, e pour rditer le message, a pour attacher des chiers au mail, p pour accder aux fonctions de cryptage et de signature de GnuPG (voir ci-dessous), q pour annuler lenvoi du mail, y pour envoyer le mail.
Dans une mailbox, que vous soyez dans la liste des messages ou entrain dafcher un message, vous avez accs aux touches suivantes :
r pour rpondre lexpditeur du mail slectionn, g pour rpondre lexpditeur et aux autres destinataires du mail slectionn, Tab pour aller au mail non lu suivant, v pour faire la liste des chiers attachs dun mail puis s pour les dtacher et les enregistrer sur le disque dur, h pour afcher le message avec tous ses headers (et de nouveau h pour enlever lafchage des headers), f pour forwarder le mail slectionn quelquun, d pour marquer le mail comme devant tre effa, u pour annuler le marquage deffacement, F pour marquer le message comme important, i.e. afcher un point dexclamation au niveau du message (idem pour enlever le marquage), 233
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.
A tout moment, vous pouvez taper ? pour accder la liste des touches disponibles avec leur fonction.
4. Cest parti !
Maintenant que tout est en place, vous pouvez : 1. lancer le rapatriement de vos mails :
% fetchmail
2. 3.
vrier quils sont correctement tris en consultant le chier ~/.procmail.log ; les lire avec mutt :
% mutt -y
Quand vous envoyez un mail avec mutt, mutt le transmet Postx qui essaye alors de joindre le serveur mail du destinataire. Si le serveur mail du destinataire nest pas joignable ou si vous ntes pas connect Internet, le mail reste alors stock dans la queue de mails de Postx. Pour voir les mails stocks dans la queue de Postx :
% mailq
234
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.
235
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.
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
236
pouvoir synchroniser facilement toutes mes mailboxes entre le serveur et mon portable de manire scurise (i.e. sans que le mot de passe soit envoy en clair sur le rseau ni stock en clair dans un chier texte sur mon portable) ; que les mails que je lis sur mon portable et ceux que je lis sur le serveur soient marqus comme lu sur mon portable et sur le serveur aprs synchronisation ; que les mails que je marque pour tre effacs sur mon portable et ceux que je marque pour tre effacs sur le serveur soient effas sur mon portable et sur le serveur aprs synchronisation ; que les mails auquels je rpond sur mon portable et ceux auquels je rpond sur le serveur soient marqus comme rpondus sur mon portable et sur le serveur aprs synchronisation.
Cest le programme isync (http://isync.sourceforge.net/) qui va soccuper de la synchronisation. La mise en place de ma solution avec isync require trois choses :
un accs SSH au serveur ; un serveur IMAP install sur le serveur (mais pas forcmment joignable de lextrieur) ; des mailboxes au format maildir sur le serveur.
Note : Si vous avez suivi les instructions du chapitre Le mail en console, vos mailboxes sont au format maildir .
237
Editez le chier ~/.muttrc. Commencez par adapter la premire partie intitule Conguration Gnrale et dcommentez la ligne suivante :
set maildir_trash
Ensuite, dans la 5me partie intitule Binding des touches, dans le paragraphe sur les macros, vous pouvez ventuellement commenter les lignes qui bindent la touche F4 avec fetchmail et dcommenter les lignes qui bindent F4 avec isync. Crez le rpertoire mail/ dans votre home pour accueillir vos mailboxes :
% mkdir ~/mail/
Installez isync :
si vous suivez la Mthode Woody, utilisez le package Debian que jai construit (le package de la Woody est trop vieux pour ce que je propose de faire) :
% wget http://people.via.ecp.fr/~alexis/formation-linux/fichiers/isync_0.9.1-1_i386.deb # dpkg -i isync*.deb
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"
2.5. 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
238
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.
239
Quand vous lancez irssi, vous vous retrouvez dans une fentre aux bordures bleues avec un prompt [(status)] en bas de la fentre : Figure 3-1. Irssi son lancement
Vous tes en fait dans la premire fentre appele status dans laquelle se font les rglages. La conguration se fait par des commandes commenant par /. Un des gros avantages dirssi est sa capacit tre connect plusieurs serveurs IRC en mme temps. Pour cela, il faut dnir des ircnets, qui correspondent un serveur IRC seul ou plusieurs serveurs IRC relis entre-eux, grce la commande /ircnet add. Il faut ensuite donner ladresse dau moins un serveur IRC par ircnet avec la commande /server add. Par exemple, je veux me connecter deux rseaux :
OpenProjects (alias OPN maintenant appel FreeNode), qui est dj congur par dfaut ; ExempleNet qui est un rseau pour lexemple...
240
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
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.
241
En fait, irssi a ouvert une nouvelle fentre. Pour naviguer dune fentre lautre, utilisez les touches suivantes :
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
/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.
/who #debian : afche la liste des gens prsents sur #debian, /hilight mot : met en couleur le nick de la personne qui prononce le mot, /dcc list : liste les chiers disponibles par dcc, /dcc get nick : pour rcuprer un chier envoy par dcc, /dcc send nick nom_du_chier : pour envoyer un chier par dcc, /help pour avoir la liste des commandes, /help nom_de_la_commande pour avoir de laide sur une commande particulire, /quit pour quitter irssi.
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).
2.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
2.8. 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 :
243
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/irssi-touches-fonction % cat irssi-touches-fonction >> ~/.irssi/config
244
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/slrnrc % mv slrnrc ~/.slrnrc
Editez-le pour le personnaliser en vous aidant des commentaires. Les champs que vous devez absolument personnaliser sont les suivants :
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.
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 : 245
o .jnewsrc-serveur est le nom de chier que vous avez indiqu comme deuxime paramtre du champ server de votre slrnrc. Pour les prochains lancements, il vous sufra de taper simplement :
% slrn
Une fois que slrn est lanc, il vous prsente un bel cran presque vide. Cest normalement lcran dans lequel apparat la liste des forums auquels vous tes abonn. Tapez L puis par exemple fr.comp* et Entre pour obtenir la liste des forums en franais qui parlent dinformatique. Il y a un U (comme Unsubscribe) leur gauche, ce qui signie que vous ntes pas abonn. Pour vous abonnez aux forums qui vous intressent, placez le curseur ct du nom du forum et tapez s (comme Subscribe). Le U disparat alors. Pour se dsabonner, il suft de taper u. Le nombre gauche du nom des forums indique le nombre de messages non marqus comme lu dans ce forum. Figure 4-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.
246
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.
247
Il existe plusieurs clients ICQ en mode console, mais nous avons choisis centericq (http://konst.org.ua/centericq/) parce quil est simple dutilisation et supporte beaucoup de protocoles de communication (ICQ, Yahoo Messenger, AIM, MSN, IRC) et surtout Jabber.
La premire chose faire, comme dans la majorit des applications, est sa conguration. Chaque utilisateur a son propre chier de conguration .centericq dans son home. Ce chier est lu chaque lancement de lapplication. Au premier lancement de centericq, vous pouvez congurer lapplication pour quelle soit plus simple dutilisation. Bien entendu, ces congurations peuvent changer dune personne lautre, cependant nous vous proposons une conguration de base : Figure 5-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.
248
Cest dans ce formulaire que vous pouvez ajouter vos comptes de Yahoo messenger, AOL, et autres...
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.
249
Il y a plusieurs critres de recherche, mais personnellement jutilise souvent la recherche sur nickname ou le couple nom/prnom. Voici le formulaire qui permet de faire une recherche par critres : Figure 5-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.
250
251
2. crez lISO :
% mkisofs -R -r -J --hide-rr-moved -V "SauvHome" -o backup.iso /home/toto/
-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,
252
--hide-rr-moved : renomme le rpertoire rr_moved (d aux extensions Rock Ridge) en un rpertoire cach .rr_moved, -V : spcie un Nom de Volume (ici "SauvHome"), -o : spcie le nom et lemplacement du chier ISO (ici backup.iso dans le rpertoire courant).
Autre exemple : vous voulez crer une ISO qui contienne le rpertoire /home/toto/, le chier /etc/X11/XF86Config-4, et en plus le contenu du rpertoire /mnt/win/toto/ qui devra apparatre sur le CD dans un rpertoire win-toto :
% mkisofs -R -r -J --hide-rr-moved -V "SauvHome" -o backup.iso
2.1.2. A partir dun CD Pour crer limage ISO dun CD de donnes, cest trs simple :
% dd if=/dev/cdrom of=backup.iso
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
2.3. Graver le CD
2.3.1. Les options de cdrecord Maintenant que lISO est crer, vous allez utiliser la commande cdrecord pour graver le CD. Les options connatre et utiliser sont :
dev=ATAPI:/dev/graveur o /dev/graveur est un lien symbolique pointant vers le device correspondant votre graveur IDE. -data image_ISO.iso pour prciser que lon grave partir de limage ISO dun CD. si vous avez un graveur qui supporte le burnproof , loption driveropts=burnproof permet dactiver cette fonction.
2.3.2. Pralable pour un CD-RW Si vous voulez graver sur un CD-RW, il faut au pralable effacer ce qui est crit dessus :
253
si le CD-RW a dj t utilis :
# cdrecord -v dev=ATAPI:/dev/graveur -blank=fast
Dans la suite de ce chapitre, vous pourrez toujours ajouter loption driveropts=burnproof la commande cdrecord pour activer cette fonctionnalit.
Avertissement
Le choix de la vitesse de gravure V est ici trs important : il faut choisir le minimum entre la vitesse de votre lecteur de CD et la vitesse de gravure... car si le lecteur de CD est plus lent que le graveur, le tampon du graveur va se vider et vous naurez plus qu jeter votre CD-R la poubelle !
254
3.2.1. Convertir au bon format Pour convertir un MP3 au format CDR, il suft dutiliser mpg321 :
% mpg321 ma_chanson.mp3 --cdr ma_chanson.cdr
Pour extraire une piste dun CD audio au format CDR, il faut utiliser cdparanoia (disponible dans le package du mme nom) :
% cdparanoia -B -p
ou
# cdrecord -v -dev=ATAPI:/dev/graveur -audio track1.wav track2.wav track3.wav [etc...]
ou
# cdrecord -v -dev=ATAPI:/dev/graveur -audio track1.au track2.au track3.au [etc...]
255
2. Installer et utiliser
2.1. Installer le package
# apt-get install screen
Un message dexplication apparat : appuyez sur Entre pour le zapper. Vous avez alors un prompt normal lintrieur du screen. Lancez une application qui tourne en mode console (un client IRC par exemple). 2. Quittez le premier ordinateur en laissant le programme tourner et votre console ouverte (on dit que le screen reste attach). Vous ouvrez une console sur un deuxime ordinateur et vous vous connectez au premier ordinateur (par une connexion SSH par exemple). Pour rattacher le screen, cest--dire retrouver lcran le programme que vous avez lan dans le screen sur le premier ordinateur, tapez la commande :
% screen -x nom_du_screen
Si vous ne vous souvenez plus du nom que vous aviez donn votre screen, lancer simplement la commande screen -x et vous verrez la liste des screens avec leurs noms associs. 3. Si la taille de votre console sur le deuxime ordinateur nest pas la mme que la taille de votre console sur le premier ordinateur, ce qui se traduit par un programme qui occupe plus ou moins de place que la taille de lcran : utilisez alors la combinaison de touches Ctrl-a puis F, ce qui a pour effet de redimensionner le programme la taille de votre nouvelle console. 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]
4.
256
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. 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]
6.
2. 3.
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. 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]
257
LinuxFr (http://www.linuxfr.org) est LE site de lactualit Linux et des logiciels libres en franais, Slashdot (http://slashdot.org) ou /. est son quivalent anglais, beaucoup plus forte audience... Debian Planet (http://www.debianplanet.org) traite de lactualit Debian en anglais, Weekly Debian News (http://www.debian.org/news) est un rsum en anglais de lactualit Debian de la semaine coule (vous pouvez aussi le recevoir par mail chaque semaine), Linux Today (http://www.linuxtoday.com) un site anglais dactualit gnraliste sur Linux, FreshMeat (http://freshmeat.net) est un site anglais qui rassemble toutes les informations sur les logiciels Unix et multiplateformes. Trs utile pour se tenir au courant des sorties de nouvelles versions ou chercher les programmes OpenSource existant dans un certain domaine. Apt-get.org (http://www.apt-get.org) est un site qui recense les sources APT non-ofcielles : trs pratique pour installer un logiciel qui nest pas en standard dans la Debian.
2. Apprendre
2.1. Magazines
Le Linux Magazine France (http://www.linuxmag-france.org) est un mensuel trs technique sur Linux, les logiciels libres et la programmation avec des outils libres. Il est disponible en kiosque au prix de 5,95 euros et par abonnement avec CD au prix de 53 euros. Le magazine Login (http://www.pcteam.posse-press.com) est un mensuel sur les systmes et la programmation OpenSource. Il est galement dun assez haut niveau technique. Il est disponible en kiosque au prix de 6,40 euros et par abonnement avec CD au prix de 49,90 euros. Le magazine Hakin9 (http://www.haking.pl/fr/index.php) est un bimestriel sur la scurit des systmes informatiques. Pour comprendre les articles de ce magazine, il faut avoir une bonne connaissance des rseaux et des diffrentes couches bases. Il est disponible en kiosque au prix de 7,50 euros et par abonnement au prix de 38 euros.
2.2. Livres
Les livres de la collection OReilly (http://www.oreilly.fr) sont trs connus et rputs srieux dans la communaut du logiciel libre.
2.3. Internet
Le site Debian-fr.org (http://www.debian-fr.org) rassemble des documentations en franais sur des sujets divers et varis : trs utile ! La section documentation du site ofciel Debian (http://www.fr.debian.org/doc/) franais rassemble tous les manuels ofciels. 259
Les forums et les articles du site Andesi (http://www.andesi.org/) pourront tre dun grand secours aux dbutants. Le guide de rfrence pour Debian (http://qref.sourceforge.net/Debian/reference/reference.fr.html), comme son nom lindique, un guide en franais trs complet sur Debian, Le Linux Documentation Project franais (http://fr.tldp.org) rassemble tous les HOWTOs franais disponibles.
260
Une des solutions peut tre de redmarrer le service. Par exemple, pour redmarrer Apache :
# /etc/init.d/apache restart Reloading apache modules.
261
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. 2. 3. Alt-Imprime Ecran-s (synchronise les disques durs) Alt-Imprime Ecran-u (dmonte les systmes de chiers) Alt-Imprime Ecran-b (reboote le systme)
o /dev/hdXY dsigne votre parition Linux racine. 4. Demandez au systme que le rpertoire racine devienne /mnt/root/ :
# chroot /mnt/root
Vous vous retrouvez alors dans votre systme de chiers habituel. 5. Pour plus de confort, lancez votre shell habituel :
# zsh
6. 7.
Vous pouvez alors faire toutes les manipulations ncessaires la rparation, par exemple diter /etc/lilo.conf avec vim et relancer lilo. Une fois que la rparation est termine, dlogguez-vous deux fois pour retrouver votre prompt initial et rebootez le systme avec la commande reboot.
262
il afche la liste des packages disponibles avec leur tat et leur marquage ; il permet de marquer un package ; il prend en compte les packages recommands ou suggrs et pas seulement les packages dpendants, contrairement apt-get.
il est compliqu et pas trs intuitif utiliser, la rsolution des dpendances est (parfois) problmatique (problmes de dpendances en boucle cause des packages recommands).
Chaque utilisateur de Debian a le choix dutiliser apt-get ou dselect pour grer les packages. A vous de trouver celui que vous prfrez...
2. Utiliser dselect
Dselect se lance simplement avec la commande du mme nom :
# dselect
7 tapes numrotes de 0 6 vous sont proposes. Nous allons vous les dtailler ci-dessous.
263
en haut, la liste de tous les packages (installs ou non) ; en bas, un espace pour une description.
Dans la liste des packages (moiti haute de lcran), chaque ligne correspond un package. Sur chaque ligne, il y a marqu, de gauche droite : 1. une srie de symboles (expliqu ci-dessous) ; 2. une importance : Std pour "standard", Imp pour "important", Req pour "requis", Opt pour "optionnel" et Xtr pour "extra" ; 3. une section (par exemple : base, libs, graphics, editor, net, devel, etc...) 4. le nom du package ;
264
5. la version installe (<none> si non install) ; 6. la version disponible (<none> si le package est install mais nest pas ou plus prsent dans les sources) ; 7. un descriptif de quelques mots A gauche de chaque ligne, on trouve une srie de 4 symboles. Chaque symbole sa signication. Du symbole de gauche au symbole de droite : 1. Symbole derreur :
Espace : non-install * : install - : non-install, mais chiers de conguration prsents U : endommag (non encore congur) C : endommag (partiellement congur) I : endommag (partiellement install)
* : marqu pour une installation ou mise jour - : marqu pour un retrait sans supression des chiers de conguration _ : marqu pour un retrait avec supression des chiers de conguration = : g, le packet est install mais ne sera pas mis--jour n : nouveau packet
4. Symbole reprsentant le marquage actuel : idem que le symbole prcdent. Par exemple, si on place des barres de sparation entre les symboles (qui ne sont pas prsentes lcran), les combinaisons les plus courantes sont :
| |*|*|*| : package install et marquage inchang ; | | |_|_| : package non install et marquage inchang ; | | |_|*| : package non install mais dsormais marqu pour tre install ; | |*|*|-| : package install mais dsormais marqu pour tre dsinstall sans supression de ses ventuels chiers de conguration.
Pour obtenir de laide sur cette tape (symboles, touches, procdure), vous pouvez tout moment appuyer sur ?. Pour rechercher un package, appuyez sur / et tapez le nom ou une partie du nom dun package. Pour chercher linstance suivante, appuyez sur \. Pour revenir tout en haut de la liste, appuyez sur t. Quand vous tes sur un package, appuyez sur d (bas) et u (haut) pour faire dler le descriptif qui se trouve dans la deuxime moiti de lcran. Vous pouvez galement appuyer sur i pour avoir une description plus dtaille du package. Si le package vous plais et que vous voulez linstaller, appuyez sur +.
265
Si le package ne dpend daucun autre package non-install et nentre en conit avec aucun package install, il devient marqu pour tre install : | | |_|*|. Cela veut dire que le package va tre install ltape suivante. Si le package dpend dautres packages non encore installs ou non encore marqus pour tre install, ou sil entre en conit avec un package install ou marqu pour tre install, alors un cran Introduction la rsolution de conits/dpendances apparat. Appuyez sur Espace. Lcran suivant vous prsente une liste de packages :
en premier, le package que vous voulez installer ; il est marqu pour tre install : | | |_|*|. les packages dont le package que vous voulez installer dpend et qui ne sont pas encore installs ou marqus pour tre installs ; ils sont alors par dfaut marqus pour tre installs : | | |_|*|. les packages que le package que vous voulez installer recommande et qui ne sont pas encore installs ou marqus pour tre installs ; ils sont alors par dfaut marqus pour tre installs : | | |_|*|. Si vous trouvez que la recommendation est mauvaise, vous pouvez vous positionner dessus et appuier sur - pour enlever le marquage linstallation. les packages que le package que vous voulez installer suggre et qui ne sont pas encore installs ou marqus pour tre installs ; par dfaut, leur marquage ne change pas et reste : | | |_|_|. Si vous trouvez que la suggestion est bonne, vous pouvez vous positionner dessus et appuyer sur + pour les marquer tre installs. les packages qui sont installs ou marqus pour tre installs et qui entrent en conit avec le package que vous voulez installer : ils sont alors marqus pour tre dsinstalls : | |*|*|_|.
Quand vous vous positionnez sur un package, une description des interactions avec les autres packages (dpendance, conit, recommandation, suggestion) safche dans la deuxime moiti de lcran. Si vous appuyez sur i, cette description des interactions est remplae par une description du package. Pour accepter les changements de marquage faits par dselect et par vous, appuyez sur Entre. Par contre, si vous voulez annuler les changements de marquage faits par dselect et par vous, appuyez sur X. Dans les deux cas, vous revenez alors la liste des packages, sauf si les changements de marquage ont fait intervenir dautres conits et/ou dpendances.
- (moins) pour retirer un package sans supprimer ses chiers de conguration ; _ (underscore) pour retirer le package en supprimant ses chiers de conguration.
Vous risquez de retrouver une nouvelle fois lcran de rsolution des problmes de conits et de dpendances. Une fois que les packages sont marqus pour tre installs ou desinstalls :
si vous voulez conrmer les changements, appuyez sur Entre : une nouvelle vrication des dpendances est effectue avant de revenir au menu principal ; si vous voulez annuler ce que vous avez fait dans cette tape n 2, appuyez sur X.
266
267
2. dpkg-deb
Dpkg a un grand frre, dpkg-deb qui sert construire et manipuler des packages Debian, mais pas les installer ou dsinstaller. Les commandes qui peuvent vous tre utiles sont les suivantes :
dpkg-deb -I package_0.1_i386.deb : afche les en-ttes du package. dpkg-deb -c package_0.1_i386.deb : afche les noms des chiers contenus dans le package. dpkg-deb -X package_0.1_i386.deb rpertoire : extrait les chiers contenus dans le package dans le rpertoire spci.
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 packages installs. Pour utiliser apt-le, il faut dabord installer le package du mme nom, puis mettre jour sa base de donne propre contenant les chiers de tous les packages :
# apt-get install apt-file # apt-file update
Puis on peut avoir la liste des chiers contenus dans un package mme si celui-ci nest pas install (contrairement la commande dpkg -L) :
% apt-file list nom_du_package
On peut galement savoir quel package appartient un certain chier, mme si le package (et donc le chier) nest pas install (contrairement la commande dpkg -S) :
% apt-file search nom_du_fichier
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 packages au format RPM. Dans ce cas, il faut utiliser alien pour convertir un package du format RPM au format Debian. Commencez par installer alien :
268
269
o nom_de_la_machine_cible est le nom de la machine cible, et o numro_de_version est le nombre de noyaux de cette version que vous avez dj compil pour cette machine augment de 1. Par exemple, dans le cas dune deuxime compilation de noyau 2.6.X pour la machine raton, il faut mettre loption --revision raton.2 (en fait, ceci na rien dobligatoire, mais cest ce que je conseille de faire). Il faut alors patienter pendant la compilation du noyau et des modules et la gnration du package.
270
Il vous pose alors un certain nombre de questions : choisissez les choix par dfaut ! Voil en fait ce quil a fait pendant linstallation du package : 1. install le chier /boot/vmlinuz-2.6.X (cest le noyau), 2. install le chier /boot/System.map-2.6.X (cest la System map), 3. install le chier /boot/config-2.6.X (cest le chier de conguration du noyau), 4. install les modules dans le rpertoire /lib/modules/2.6.X/, 5. modi le lien symbolique /vmlinuz pour quil pointe sur le noyau que vous venez dinstaller, 6. modi le lien symbolique /vmlinuz.old pour quil pointe sur le noyau actuel, 7. excut lilo. Il ne vous reste plus qu rebooter la machine cible pour quelle utilise le nouveau noyau !
271
1. Prliminaires
1.1. Mon imprimante est-elle supporte sous Linux ?
Faire marcher une imprimante sous Linux fait partie des choses difciles : cest mon avis plus difcile que de recompiler un noyau ou de faire marcher un serveur graphique ! Tout dabord, il faut partir aux renseignements pour savoir si votre imprimante est supporte sous Linux ou non. Pour cela, rendez-vous sur le site LinuxPrinting.org (http://www.linuxprinting.org/) et cliquez sur Printer listings : slectionnez la marque et le modle de votre imprimante, et vous afche alors une page qui vous informe sur la qualit du support de votre imprimante sous Linux. Si cette page vous dit que votre imprimante est Paperweight avec un pingouin barr comme logo, alors ce nest pas la peine daller plus loin ! Dans les autres cas, si vous avez un, deux ou trois pingouins, cest que vous devez pouvoir faire quelque chose de votre imprimante sous Linux... continuez lire ce chapitre ! Dune manire gnrale, la qualit du support dune imprimante sous Linux dpend surtout du bon vouloir du constructeur : certains constructeurs comme HP et Epson collaborent avec la communaut du logiciel libre et leurs imprimantes sont bien supportes, alors que dautres comme Canon ou Lexmark ne veulent pas dvoiler les spcications techniques de leurs imprimantes, ce qui empche lcritures de pilotes pour Linux. Pour plus de dtails sur le niveau de coopration du constructeur de votre imprimante avec la communaut du logiciel libre, consultez la page Vendor Info. Lidal est de vrier ce critre avant dacheter une imprimante. LinuxPrinting.org propose une page Suggested printers qui vous aide choisir une bonne imprimante qui sera bien supporte sous Linux.
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]
272
Une fois que vous aurez congur votre imprimante dans CUPS, ce dernier se chargera dinsrer les modules requis au dmarrage du systme.
Si le driver recommand pour votre imprimante est Gimp-print, installez en plus le package cupsys-driver-gimpprint. Si le driver recommand est hpijs, installez en plus le package du mme nom, hpijs.
Si le driver recommand pour votre imprimante est Gimp-print, installez en plus le package cupsys-driver-gimpprint. Si le driver recommand est hpijs, installez en plus le package du mme nom, hpijs.
273
Vous arrivez alors dans linterface dadministration de CUPS : Figure F-1. Interface dadministration de CUPS
Cliquez sur Ajouter une imprimante et suivez lassistant : 1. donnez un nom (sans espace) votre imprimante (et ventuellement un emplacement et une description) ; 2. slectionnez le priphrique daccs limprimante : si cest une imprimante sur port parallle, slectionnez Parallel port #1, si cest une imprimante sur port USB, slectionnez USB printer #1 ; 3. slectionnez la marque de votre imprimante ; 4. slectionnez le modle de votre imprimante : si le nom exact napparat pas, rappelez-vous du nom du driver qui tait recommand par LinuxPrinting.org. Il vous informe alors que limprimante a t ajoute avec succs. Cliquez sur le nom de limprimante pour aller directement la page de status de celle-ci :
274
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 !
3. Imprimer !
3.1. 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.
275
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, 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 !
277
-i et -I pour avoir des informations sur le priphrique, -c pour connatre et rgler le support I/O 32 bits, -d pour connatre et rgler le support du DMA, -X pour rgler le mode du DMA, -t pour faire un test de performance de lecture du priphrique sans utilisation du cache.
Vous allez commencer par recueillir des informations sur votre priphrique :
# hdparm -I /dev/hda
Note : Si vous utilisez hdparm sur des priphriques IDE qui utilisent lmulation SCSI, il faut quand mme les dsigner par leur nom de device IDE classique (/dev/hda, /dev/hdb, /dev/hdc et /dev/hdd, comme expliqu au chapitre Le systme de chiers).
Il faut regarder en particulier dans la section Capabilities ce qui concerne le DMA. Par exemple, pour notre disque-dur, nous avons :
DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 *udma4 udma5
Ltoile sur udma4 signie que mon disque dur supporte le DMA, et que, si le DMA est activ, il se mettra en mode UDMA 4. Maintenant, regardez si le DMA est activ :
% hdparm -d /dev/hda /dev/hda: using_dma = 1 (on)
Ici, le DMA est activ, donc le priphrique est congur en UDMA 4. Ceux qui ont mis loption Use PCI DMA by default when available dans la Conguration du noyau Linux (menu ATA/IDE/MFM/RLL support) et loption correspondant leur chipset ont normalement le DMA activ par dfaut.
278
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
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.
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/hdparm.sh # mv hdparm.sh /etc/init.d/
Personnalisez mon script modle /etc/init.d/hdparm.sh en y mettant la liste des commandes hdparm ncessaires loptimisation de tous vos priphriques IDE en ajoutant loption -q (comme quiet) pour que la sortie standard de la commande ne safche pas lcran (seules les erreurs ventuelles safcheront) :
#! /bin/sh # /etc/init.d/hdparm.sh
279
# Script doptimisation des priphriques IDE avec hdparm # Formation Debian GNU/Linux par Alexis de Lattre # http://www.via.ecp.fr/~alexis/formation-linux/ # Plus dinformations sur hdparm dans "man hdparm". echo -n "Optimizing IDE periphericals with hdparm:" # DEBUT de la liste des commandes hdparm /sbin/hdparm -q -d1 /dev/hda /sbin/hdparm -q -d1 /dev/hdc # FIN de la liste des commandes hdparm echo " done."
Si vous voulez retirer le lien symbolique, il faut passer par le mme script Debian :
# update-rc.d -f hdparm.sh remove
280
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=
pour une souris sur le port PS/2 (les trackpoints et les touchpads des ordinateurs portables sont gnralement raccords ce port), pour une souris sur port USB,
pour une souris sur le premier port srie, 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, si vous avez une souris un peu plus perfectionne,
imps2
... il existe plein dautres formats. Pour avoir la liste complte des protocoles avec le type de souris qui les utilise, lancez la commande gpm -t help.
Une fois que vous avez personnalis les paramtres device et type, enregistrez le chier et quittez votre diteur de texte. Il faut alors relancer GPM pour quil tienne compte du changement dans le chier de conguration :
# /etc/init.d/gpm restart Stopping mouse interface server: gpm. Starting mouse interface server: gpm.
Si vous obtenez un curseur qui bouge... cest gagn ! Sinon, r-ditez le chier de conguration, modiez le paramtre type, enregistrez, et relancez GPM... et ainsi de suite jusqu ce que a marche !
281
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.
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.
Enn, dmarrez votre serveur graphique. Si tout va bien, votre souris doit maintenant fonctionner en console et sous X.
282
1. Comment on installe ?
1.1. 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 :
Device drivers --> Networking support --> IrDA (infrared) support
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
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 Compiler le noyau.
283
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/
Si ce nest pas fait, vous pouvez redmarrer an dutiliser votre nouveau noyau.
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
284
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 oridnateurs 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.
285
Annexe J. LaTeX
1. Quest-ce que LaTeX ?
LaTeX (http://www.latex-project.org/) est un traitement de texte libre qui est trs utilis dans la communaut scientique. Il sutilise un peu comme un langage de programmation : on commence par crire le texte et les commandes LaTeX dans un chier texte, puis on compile, et enn on visualise. Le chier gnr est au format DVI. Il est facilement convertible vers les formats PostScript, PDF et HTML.
Le texte dune formation VIA sur LaTeX (http://www.via.ecp.fr/~o/2000/presentation_LaTeX/) et un aide mmoire (http://www.via.ecp.fr/formations/1999-00/aide-memoire-LaTeX.ps), Le Joli manuel pour LaTeX (http://www.ctan.org/tex-archive/info/JoliManuelPourLaTeX.ps.gz), La FAQ LaTeX (http://www.grappa.univ-lille3.fr/FAQ-LaTeX/index.php) en franais.
2.4. 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
2.5. Visualiser
Le rsultat de la compilation est un chier rapport.dvi que vous pouvez visualiser avec le programme xdvi :
% xdvi rapport.dvi &
286
Annexe J. LaTeX
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{}.
word2x (qui se trouve dans le package du mme nom) produit un chier LaTeX complet, prt tre compil. La commande est :
% word2x -f latex fichier.doc fichier.tex
catdoc (qui se trouve dans le package du mme nom) produit le texte avec les balises LaTaX sans les enttes. La commande est :
% catdoc -f tex fichier.doc > fichier.tex
287
Annexe J. LaTeX
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
288
289
en Woody, tapez ladresse IP ou le nom DNS de lordinateur de votre interlocuteur dans le champ Host et cliquez sur Connect ; en Sid, tapez ladresse IP ou le nom DNS de lordinateur de votre interlocuteur dans la case du haut aprs callto:// et cliquez sur la prise.
Par contre, si cest votre interlocuteur qui vous appelle, vous aurez un pop-up qui vous prsentera le nom de la personne qui vous appelle et qui vous proposera de dcrocher. Figure K-2. Pop-up pour les appels entrants
Ds que votre interlocuteur dcroche, la conversation peut commener. Ajustez les volumes du mixer et de vos hauts-parleurs pour bien entendre votre interlocuteur. Si vous tes gns par la dtection automatique du silence (qui permet de nenvoyer aucune donnes quand la personne ne parle pas), cliquez sur le petit bouton reprsentant lcran dun oscilloscope.
Lanez le serveur :
% openmcu -n -v
pour se connecter au serveur dont le nom DNS est serveur.exemple.org et entrer dans la chatroom debian, il faut taper dans le champ Host de GnomeMeeting :
debian@serveur.exemple.org
Note : Les utilisateurs qui ne prcisent pas de chatroom sont mis dans la chatroom par dfaut room101. Les utilisateurs de Netmeeting ne peuvent pas prciser de chatroom.
291
tlcharger limage ISO depuis un miroir qui les propose en tlchargement, mais ils sont peu nombreux et souvent saturs ; utiliser le programme jigdo (http://home.in.tum.de/~atterer/jigdo/) pour crer une image ISO depuis nimporte quel miroir Debian : jigdo tlcharge depuis le miroir tous les chiers ncessaires pour raliser le CD et les assemble pour crer limage ISO.
1. Installer jigdo
1.1. Mthode Woody
Jigdo est un programme relativement rcent, et la version de la Woody est trop vieille et nest plus supporte. Il faut donc installer le package jigdo-le de la testing. Pour cela, allez sur la page web du package (http://packages.debian.org/testing/utils/jigdo-le.html), cliquez sur le bouton Go to download page et rcuprez le package depuis lun des nombreux miroirs proposs. Installez le package :
# dpkg -i jigdo-file_version_i386.deb
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 Woody dans sa version non-US en tlchargeant le chier jigdo depuis le miroir amricain :
% jigdo-lite http://us.cdimage.debian.org/jigdo-area/current/jigdo/i386/woody-i386-1_NONUS.jigdo
Il va alors tlcharger le chier jigdo. Ensuite, il vous demande si vous avez une version moins rcente du CD que vous voulez crer ; en effet, jigdo est capable de travailler par diffrence avec un autre CD et ne tlcharge alors que les chiers qui ont chang. Si vous avez un tel CD, montez-le et indiquez-lui le point de montage. 292
Ensuite, il vous demande ladresse du miroir Debian que vous voulez utiliser. Entrez ladresse du miroir Debian le plus rapide pour vous ; par exemple, sil sagit du miroir Debian ofciel franais, tapez ftp://ftp.fr.debian.org/debian/ . Il va ensuite tlcharger un chier template (dans notre exemple woody-i386-1.template), puis tous les chiers ncessaires la cration du CD. Une fois quil a ni de crer limage, il vrie la somme MD5 du CD et vous annonce, si la somme est bonne, que le CD est OK !
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.
293
1. GNUwin
Le projet GNUwin (http://gnuwin.ep.ch/apps/fr/index.html) regroupe un grand nombre de logiciels libres fonctionnant sous Windows. Dans la liste des logiciels proposs, nous utilisons notamment PuTTY :
1.1. PuTTY
PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) est un client Telnet et SSH. Figure M-1. PuTTY
1.2. Cygwin
Cygwin (http://www.cygwin.com) est un environnement Unix complet pour Windows. Il permet de se servir de trs nombreux programmes Unix tel quun serveur graphique, un certain nombre dapplications graphiques et la plupart des outils en ligne de commande (comme cvs par exemple). 1.2.1. Installer Cygwin Allez sur www.cygwin.com (http://www.cygwin.com) et cliquez sur licne Install Cygwin now qui se trouve en haut droite de la page. Tlchargez le chier setup.exe et excutez-le. Le chier contient le programme dinstallation, mais pas Cygwin en lui-mme. La procdure dinstallation dmarre alors : 1. 2. 3. 4. 5. Une fois pass lcran daccueil, slectionnez Install from Internet. Slectionnez le rpertoire dinstallation. Slectionnez un rpertoire dans lequel il va crire les chiers quil va tlcharger. Si vous devez passer par un proxy pour accder Internet, entrez ses paramtres. Sinon, slectionnez Direct Connection. 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. 294
6.
Ensuite vient ltape de slection des packages. Slectionnez deux packages supplmentaires par rapport la conguration par dfaut :
7. 8.
Il va ensuite tlcharger les packages slectionns et les installer. Aprs la dernire tape, il lance les scripts de conguration-aprs-installation et ajoute licne Cygwin sur le bureau.
1.2.2. Utiliser Cygwin Double-cliquez sur licne Cygwin ; une console apparat : Figure 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
295
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.
2. WinSCP
WinSCP (http://winscp.sourceforge.net/eng/) est un client SFTP pour Windows sous licence GPL. Il marche exactement comme un client FTP, mais il utilise le protocole SSH pour scuriser les transferts de mots de passes et de chiers.
296
3. Explore2fs
Explore2fs (http://uranus.it.swin.edu.au/~jn/linux/explore2fs.htm) est un programme GPL qui permet de lire ses partitions Linux de type Ext2 et/ou Ext3 depuis Windows.
Attention
Pour se servir de ce programme sous Windows NT / 2000 / XP Pro, il faut avoir les privilges dadministrateur.
297
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 !
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).
298
Avec cette conguration, seul le serveur NAT est directement joignable depuis Internet ; les ordinateurs du rseau local ne sont a priori pas joignables directement depuis Internet... sauf si on fait du port forwarding. Par exemple, pour que le serveur Web qui tourne sur le port 80 de la machine dont ladresse IP est 192.168.0.3 soit joignable de lextrieur via le serveur NAT, il faut forwarder les requtes TCP arrivant sur le port 80 du serveur NAT vers la machine dont lIP est 192.168.0.3... et la rponse la requte sera alors correctement forwarde vers Internet au client qui a initi la requte.
Note : Pour amliorer les temps de rponses des requtes DNS, il pourra tre intressant de mettre en place un serveur DNS de type indpendant sur le serveur NAT, comme expliqu au chapitre Monter un serveur DNS, et dindiquer dans la conguration rseau des ordinateurs du rseau local ladresse 192.168.0.1 comme premier serveur DNS.
Nous allons mettre en place deux scripts laide de mes chiers dexemple :
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/iptables-start # cp iptables-start /etc/network/if-pre-up.d/
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/iptables-stop # cp iptables-stop /etc/network/if-post-down.d/
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.
# DEBUT des "politiques par dfaut" # Je veux que les connexions entrantes soient bloques par dfaut iptables -P INPUT DROP # Je veux que les connexions destines tre forwardes # soient acceptes par dfaut iptables -P FORWARD ACCEPT # Je veux que les connexions sortantes soient acceptes par dfaut iptables -P OUTPUT ACCEPT
300
# 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 la ligne suivante pour que le serveur CUPS ventuel # soit joignable de lextrieur #iptables -A INPUT -p tcp --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) #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,
301
# 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.3:80 # FIN des rgles de "port forwarding"
302
# Linterface "loopback" auto lo iface lo inet loopback # Activation de la fonction de forwarding IP au niveau du noyau up echo "1" > /proc/sys/net/ipv4/ip_forward # 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
303
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). Figure O-1. Schma dun bridge
2. Le Montage
2.1. 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
304
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 Conguration du noyau Linux, 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_n 1 eth1 nom_du_module_de_la_carte_rseau_n 2 eth2 nom_du_module_de_la_carte_rseau_n 3 br0 bridge
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.
2.3.2. 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 :
On lit de gauche droite, et on note la premire diffrence : elle intervient au niveau du septime caractre o on a 1 pour eth0 et A pour eth1. Comme les nombres sont plus faibles que les lettres, cest eth0 qui a la MAC la plus faible. Donc le bridge prendra la MAC deth0. Maintenant que lon sait quelle MAC prend le bridge, il faut demander son administrateur rseau de modier le DHCP si ncessaire (cest le cas du rseau VIA...). Nous allons maintenant modier le chier de conguration des interfaces rseau /etc/network/interfaces en utilisant mon chier de conguration dexemple et en le personnalisant :
# mv /etc/network/interfaces /etc/network/interfaces.old # cp ~/config/interfaces-bridge /etc/network/interfaces
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/interfaces-bridge # mv /etc/network/interfaces /etc/network/interfaces.old # mv interfaces-bridge /etc/network/interfaces
Personnalisez le nouveau chier /etc/network/interfaces ; les lignes de commentaire doivent vous permettre de comprendre chaque paramtre :
# # # # # /etc/network/interfaces Fichier de configuration dexemple des interfaces rseau pour faire un bridge Formation Debian GNU/Linux par Alexis de Lattre http://www.via.ecp.fr/~alexis/formation-linux/
# Plus dinformations dans "man interfaces" # et dans "/usr/share/doc/bridge-utils/README.Debian.gz" # Dabord linterface "loopback" auto lo iface lo inet loopback # Ensuite linterface bridge "br0" qui se configure par DHCP auto br0 iface br0 inet dhcp # Liste des interfaces qui participent au bridge # ATTENTION : # Il faut mettre linterface dont la MAC est la plus petite dabord ! # Sinon, cela peut perturber les outils de surveillance du rseau. bridge_ports eth0 eth1 eth2 # Je dsactive le Spanning tree bridge_stp off # Temps en secondes entre "learning state" et "forwarding state" bridge_fd 2 # Temps maximum en secondes o le script de lancement du bridge # attendra lors du dmarrage que le bridge passe en mode "forwarding # state" pour passer la main et laisser les autres services dmarrer. bridge_maxwait 0
306
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 !
307
Important : Cette partie requiert des connaissances de base en rseau Ethernet et IP. Lien (http://www.via.ecp.fr/~bbp/formation-reseau/partie1.html#transmission) vers une formation VIA ce sujet.
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 ! Figure P-1. Schma dun proxy-ARP
2. Le principe de fonctionnement
2.1. 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.
308
2.2. 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.
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.
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.
3. Montage
3.1. 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_n 1 alias eth1 nom_du_module_de_la_carte_rseau_n 2 alias eth2 nom_du_module_de_la_carte_rseau_n 3
Noubliez pas dexcuter la commande update-modules aprs toute modication dun chier dans le rpertoire /etc/modprobe.d/. Vriez que toutes vos cartes rseau sont bien reconnues au dmarrage.
309
# cp ~/config/interfaces-proxy-arp /etc/network/interfaces
ou :
% wget http://people.via.ecp.fr/~alexis/formation-linux/config/interfaces-proxy-arp # mv /etc/network/interfaces /etc/network/interfaces.old # mv interfaces-proxy-arp /etc/network/interfaces
Personnalisez le nouveau chier /etc/network/interfaces ; les lignes de commentaire doivent vous permettre de comprendre chaque paramtre :
# # # # # /etc/network/interfaces Fichier de configuration dexemple des interfaces rseau pour faire un Proxy-ARP Formation Debian GNU/Linux par Alexis de Lattre http://www.via.ecp.fr/~alexis/formation-linux/
# 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 # 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 :
310
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
Indic UH UH U UG
Metric 0 0 0 0
Ref 0 0 0 0
Use 0 0 0 0
311
3.3.2. Congurer un client Windows La conguration Windows est semblable, si vous avez compris, a devrait aller.
3.3.3. Faire du DHCP relay Le proxy-ARP bloque le broadcast des clients ; donc si ces derniers font une requte DHCP, elle natteindra pas le rseau extrieur. Pour pallier ce problme et faire en sorte que les clients puissent tre congurs par DHCP, il faut installer un relai DHCP sur le proxy-ARP. Pour cela, installez le package suivant :
# apt-get install dhcp3-relay
Lors de la conguration du package, il vous demande : 1. 2. What DHCP servers should the DHCP relay forward requests to ? Entrez ladresse IP du serveur DHCP du rseau extrieur. 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.
3.4. 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...
312
1.1. en console
Dcommentez les lignes suivantes dans le chier zlogin (ce chier se trouve dans le rpertoire /etc/ sur une Woody et /etc/zsh/ sur une Sid :
# Pour les ordinateurs avec un pav numrique... # Active le pav numrique quand on se loggue en console case "tty" in /dev/tty[1-6]*)setleds +num esac
1.2. sous X
1.2.1. Mthode Woody Tlchargez la version de la Sid du package numlockx sur le site de Debian (http://packages.debian.org/unstable/x11/numlockx.html) et installez-le avec dpkg :
# dpkg -i numlockx_version_i386.deb
Lors de linstallation du package, il vous demande Enable NumLock automatically ? : rpondez Oui. Si vous utilisez GDM, il faut ajouter le script de lancement de numlockx au script de lancement de GDM :
# cat /etc/X11/Xsession.d/55numlockx >> /etc/gdm/PreSession/Default
Lors de linstallation du package, il vous demande Enable NumLock automatically ? : rpondez Oui. Si vous utilisez GDM, il faut ajouter le script de lancement de numlockx au script de lancement de GDM. Pour cela, ditez le chier /etc/gdm/PreSession/Default et importez le contenu du chier /etc/X11/Xsession.d/55numlockx aprs la premire ligne qui commence par PATH= (commande :r nom_du_chier pour importer un chier sous vim), puis redmarrez GDM.
313
Ensuite, copiez le chier contenant limage du LILO graphique dans le rpertoire /boot/ :
# cp debian-bootscreen-version/debian-bootscreen-woody.rle.bmp /boot/
314
le patch pour la version du noyau que vous utilisez. Par exemple, si vous utilisez le noyau 2.6.3, tlchargez le chier bootsplash-3.1.4-2.6.3.diff ladresse ftp://ftp.suse.com/pub/people/stepan/bootsplash/kernel/ et enregistrez-le dans le rpertoire /usr/src. Le chier peut ventuellement tre compress (il faut alors le dcompresser avec bzip -d chier.bz2). le thme et les images qui vont bien. Je vous propose ftp://ftp.suse.com/pub/people/stepan/bootsplash/themes/Theme-Linux.tar.bz2 les sources des programmes ncessaires, ftp://ftp.suse.com/pub/people/stepan/bootsplash/rpm-sources/bootsplash/bootsplash-3.0.7.tar.bz2
Maintenant, il faut ajouter des options pour la compilation du noyau. Faites un make menucong et choisissez les options suivantes (dans le cas dun noyau 2.6.x) :
315
Ensuite, compilez et installez votre nouveau noyau, comme indiqu au chapitre Compiler le noyau. Lorsque vous modiez le chier /etc/lilo.conf, il faut ajouter les paramtres suivants dans la section relative votre nouveau noyau (juste en dessous de label=Truc) :
vga=791 initrd=/boot/initrd.splash append="splash=verbose"
La commande vga=791 indique au noyau quil faut changer la rsolution en 1024x768 et 65000 couleurs. La commande append="splash=verbose" permet de choisir le mode verbose ou silent. Pour plus de dtails, voir www.bootsplash.org (http://www.bootsplash.org). Noubliez pas de laisser un accs votre ancien noyau dans le /etc/lilo.conf, an de pouvoir booter dessus en cas de problmes (le framebuffer est parfois capricieux avec certaines cartes graphiques). Nexcutez pas encore lilo, il nous faut dabord crer le chier /boot/initrd.splash qui contient limage charger. Il est temps de soccuper des programmes que vous avez tlchargs :
% % % % %
cd /usr/src tar xvjf bootsplash-3.0.7.tar.bz2 tar xvjf Theme-Linux.tar.bz2 cd bootsplash-3.0.7/Utilities make splash
puis en root :
# # # # # # # #
cp splash /usr/local/bin/ cd /etc mkdir bootsplash cd bootsplash mkdir themes cp -R /usr/src/Linux themes/ splash -s -f /etc/bootsplash/themes/Linux/config/bootsplash-1024x768.cfg > /boot/initrd.splash lilo
Attention
Les lecteurs de disquettes ne sont pas grs par cet utilitaire.
316
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
317
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.
Vous pouvez alors lancer votre client SSH en lui prcisant dutiliser le port 80 :
% ssh -p 80 login@nom_DNS_du_serveur
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
318
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;
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.
319
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.
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.
2.2. 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.
2.3. 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.
321
2.4. 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.
2.5. 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.
2.6. 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.
2.7. 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.
322
2.8. 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. 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.
2.9. 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.
2.10. 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.
2.11. 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.
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.
2.13. 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
324
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.
325