<!doctype linuxdoc system>

<!-- LinuxDoc file was created by LyX 1.0 (C) 1995-1999 by <jdd> Wed Aug 18 08:16:09 1999
 -->

 <article>
 <title>De MS-DOS à LINUX
 </title>
 <author>Jean-Daniel Dodin
jdanield@linux-france.org
perso.club-internet.fr/jdanield
 </author>
 <date>V2.1 - 28 mars 1999
 </date>
 <abstract>Voilà quelques mois (depuis Septembre 1997) que je me suis attaqué à Linux,
 avec un bonheur varié. Je commence petit à petit à avoir des résultats et j'ai
 décidé de les faire partager. C'est une habitude que j'ai depuis longtemps,
 de mettre par écrit ce que je fais, ne serait-ce que pour pouvoir le refaire
 plus tard. Du coup, pourquoi ne pas en faire profiter les copains? Ces documents
 sont actuellement écrits en SGML (Linuxdoc). Une version "source" SGML devrait
 être disponible en même temps que la version html. Il y a aussi une version
 lyx disponible sur demande. Linux avance si vite qu'une bonne partie de ce
 texte doit être déjà périmé. Je le garde pour le souvenir et pour ceux qui
 récupèrent de vieux CD !
 </abstract>
 <toc>
 <sect>Linux pour les cons
 <p>Quand on vient de MS-DOS et que l'on arrive sous Linux, on se sent vraiment
 con. Une bonne partie des réflexes donne de mauvais résultats et il faut donc
 se "reconfigurer" soi-même. J'ai rassemblé ici les renseignements indispensables
 pour pouvoir aborder Linux. J'ai pensé un moment que ce document allait devenir
 inutile, mais finalement il est sans doute plus commode de le remanier et de
 le conserver.
 </p>
 <sect1>Avant tout
 <p>
 <itemize>
  <item>Sous LINUX, minuscules et majuscules sont deux choses différentes.
  <item>&bsol; n'est pas utilisé. Le remplacer par /.
  <item>&tilde; est le répertoire "home", le vôtre.
  <item>la touche TAB (la grosse touche, à gauche du clavier) permet de compléter
 les commandes en cours de frappe.
  <item>Ctrl D (touche control + lettre D) qui s'écrit avec les normes Linux :
 C-D permet de fermer la session.
  <item>C-M-Suppr (Ctrl Alt Supprime) permet d'arréter Linux proprement avant d'éteindre.
  <item>Les touches spéciales du clavier (flèches, retour arrière...) ne fonctionnent
 pas toujours, il faut donc connaitre les raccourcis "console" :
  <itemize>
   <item>C-a début de ligne
   <item>C-e fin de ligne
   <item>C-b un caractère à gauche
   <item>C-f un caractère à droite
   <item>C-d efface le caractère sous le curseur
   <item>C-k supprime jusqu'à la fin de la ligne
  </itemize>
 </itemize></p>
 <p>Ce sont, en général, les mêmes codes que pour emacs, dévantage ci-dessous.
 </p>
 <sect1>Les disques
 <p>Linux ne connaît pas vraiment les disquettes. On ne peut les gérer facilement
 qu'en mode msdos, avec les outils mtools (en général installés par défaut,
 faites man mtools). Une notable exception est la disquette de démarrage ou
 les disquettes d'installation. 
 </p>
 <sect2>Les disquettes
 <p>
 <itemize>
  <item>/dev/fd0 et
  <item>/dev/fd1
 </itemize></p>
 <sect2>Les diques durs ide 
 <p>/dev/hda1 où 1 est le numéro de partition (varie de 1 à 4 pour les partitions
 principales et de 5 à plus pour les partitions logiques)et a le premier disque
 (le deuxième est b)
 </p>
 <sect2>Le CD-ROM 
 <p>/dev/cdrom
 </p>
 <sect1>Les fichiers
 <p>Linux est un système multi-utilisateurs, il y a donc un administrateur
 qui galère et des utilisateurs heureux (dans notre cas, c'est la même personne !).
 Pour les utilisateurs il n'y a qu'un seul "système de fichiers" arborescent,
 comme s'il n'y avait qu'un seul disque sous MS-DOS.
 </p>
 <p>L'administrateur insère les différents disques, cd, disquettes, dans cet
 arbre de la façon suivante.
 </p>
 <p>
 <itemize>
  <item>il crée un répertoire bidon de nom quelconque (par exemple m :, les : sont
 admis).
  <item>il &dquot;monte&dquot; le disque dans le répertoire en question. A partir
 de ce moment, tout accés à ce répertoire donne en réalité accès au disque.
 </itemize></p>
 <p>Le futé de l'affaire c'est que les différents disques peuvent utiliser
 des systèmes de fichiers différents... sans que l'utilisateur le sache.
 </p>
 <p>Exemple : on monte le cd rom par :
 </p>
 <p>mount -t iso9660 /dev/cdrom m : (m: doit avoir été créé précédemment).
 </p>
 <sect1>Aide
 <p>Il y a plusieurs "systèmes d'aide", parfois pour la même commande.
 </p>
 <p>On obtient de l'aide en tapant &lt;commande&gt; --help (il y a deux -,
 sans espace), man &lt;commande&gt;, info &lt;commande&gt;, ou en allant chercher
 les fichiers doc qui peuvent se trouver... un peu n'importe où. Regardez quand
 même dans /usr/doc
 </p>
 <sect1>Commandes de bash
 <p>Bash est le "command.com" installé par défaut dans toutes les configurations
 (vous pouvez en changer par la suite).
 </p>
 <p>Extrait de &dquot; man bash &dquot;
 </p>
 <p>L'éditeur de ligne est configuré dans le fichier &tilde;/.inputrc et .bashrc
 </p>
 <sect2>Commandes externes de bash et touche correspondant par défaut (extraits)
 <p>
 <itemize>
  <item>beginning-of-line (C-a)
  <item>end-of-line (C-e)
  <item>forward-char (C-f)
  <item>backward-char (C-b)
  <item>idem pour word (M-f ou b)
  <item>delete-char (C-d)
  <item>kill-line (C-k)
  <item>complete (TAB) essaie de terminer la ligne
  <item>possible-completions (M-?)
  <item>complete-filename (M-/)
  <item>complete-command (M-!)
 </itemize></p>
 <sect2>Commandes internes (extraits)
 <p>
 <descrip>
  <tag>alias</tag>création d'un alias
  <tag>bg</tag>&lt;jobspec&gt; exécute job en arrière plan terminer une ligne
 de commande par &amp; donne le même résultat
  <tag>cd</tag>change directory
  <tag>help</tag>x aide sur la commande interne x. help seul, liste des commandes.
  <tag>pwd</tag>print working directory - répertoire courant
  <tag>set</tag>assigner variable
  <tag>times</tag>heure et temps de connection
  <tag>type</tag>X type de la commande X
  <tag>unalias</tag>efface un alias
  <tag>unset</tag>désassigne une variable
 </descrip></p>
 <sect>Slackware
 <p>J'ai débuté Linux avec la slackware, en Septembre 1997. Je suis ensuite
 passsé à la Debian, puis à la Red Hat pour finalement m'arréter à la SuSE 5.2,
 puis 6.0. Je pensais effacer ce document, mais finalement je préfère le conserver
 avec quelques modifications. Bonne lecture !
 </p>
 <sect1>Premier constat
 <p>Je connais au moins deux catégories d'utilisateurs qui abordent Linux.,
 ceux qui viennent d'Unix ou qui débutent directement sous Linux et ceux qui
 viennent du monde MS-DOS. J'ignore tout des autres utilisateurs (mac, atari...).
 </p>
 <p>Je ne parlerai pas des usagers d'Unix qui ne doivent pas être dépaysés.
 J'ai l'impression qu'ils sont nombreux et que presque toute la doc est faite
 par eux / pour eux. Je ne peux pas les aider beaucoup.
 </p>
 <p>Je fais partie de la deuxième catégorie. J'ai une bonne connaissance de
 MS-DOS depuis les origines et j'ai progressé par MS-Windows 3.11, MS-Windows
 95 et maintenant MS-Windows NT. Comme tout le monde je me lamente devant les
 bogues innombrables de MS-Windows et j'aime charrier Microsoft. Il reste que
 ces produits sont quand même performants et - assez - simples à utiliser. 
 </p>
 <p>Ce qui commence à me bloquer, c'est le prix de revient, qui augmente régulièrement
 et l'aspect &dquot; fermé &dquot; de ces produits : je suis un bidouilleur
 et j'aime bien mettre les mains &dquot;dans le cambouis&dquot;. Avec NT quand
 on met les mains quelque part, c'est plutôt dans la merde !
 </p>
 <p>D'où mon intérêt pour Linux. A priori, recompiler le noyau ou partitionner
 un disque dur ne me fait pas peur. Seulement, là je retrouve un problème que
 j'ai bien connu avec le FORTH : la documentation est nulle. Elle est nulle
 pour les gens comme moi. Je ne met aucunement en doute la compétence ou la
 complaisance des auteurs., j'en fréquente plusieurs, mais la difficulté que
 j'ai à utiliser leur travail est directement proportionnelle à leur compétence
 : très grande.. 
 </p>
 <p>Je me propose donc ici de raconter mon expérience dans l'ordre où elle
 s'est faite avec les problèmes rencontrés, les solutions trouvées et les anecdotes
 qui vont avec.
 </p>
 <sect1>Récupérer de la doc.
 <p>Vous avez probablement un livre acheté avec Linux. Il est mal foutu, mais
 vous ne pouvez pas vous en passer. Je n'ai pas l'intention de refaire tout
 ce qui est dit partout.
 </p>
 <p>Moi, j'en ai trois :
 </p>
 <p>J'ai démarré avec &dquot;Le Grand Poche LINUX&dquot; de S&amp;SM par Timothy
 Parker parceque c'était le moins cher à avoir un CD (99F). Le CD est la distribution
 Slackware, semble-t-il assez complète, mais je n'ai pas assez d'expérience
 pour en juger. Le livre est quelconque, sans doute trop fort pour débuter.
 Il m'a donné un bon conseil cependant, que je n'ai bien sûr pas suivi : booter
 LINUX sur disquette. Ça m'a coûté un reformatage de disque dur, bien fait pour
 moi.
 </p>
 <p>J'ai acheté ensuite &dquot;PC poche LINUX&dquot; de Micro Application par
 M. Wielsch. Pas de CD mais 56.50F et plutôt bien fait.
 </p>
 <p>Peu après je suis tombé sur &dquot;Grand Livre LINUX&dquot; du même Micro
 Application et du même auteur, d'occasion moitié prix, c'est à dire 110F au
 lieu de 195 et avec 2 CD et je l'ai acheté. C'est presque le même que le poche
 (sauf les CD). Il est très encombrant mais assez plaisant, même si je n'y ai
 pas tout trouvé.
 </p>
 <p>Je lis aussi régulièrement Le Virus Informatique et les Puces Informatiques
 (très marrant, 10F) et surtout Dream, sympa, pas toujours bien expliqué, avec
 un CD. Le numéro de Décembre 97 est fourni avec la distribution Debian qui
 est assez ambitieuse, mais le programme d'installation est une horreur, je
 suis revenu à la Slackware (pour l'instant).
 </p>
 <p>3 mars 98 - Je viens de me faire prêter par le club Linux-31 un autre livre
 : Le Macmillan LINUX de Tackett, Gunter &amp; Brown. Je viens (Décembre 1998)
 de le faire acheter par mon lycée. Il est fourni avec trois cd, red hat, open
 linux lite et staroffice 4. prix 245F, ce n'est pas cher pour 865 pages et
 3 CD.
 </p>
 <p>La traduction est bizarre, assez approximative et le vocabulaire n'est
 pas vraiment usuel, sans parler d'une faute de typo par page (en progrès sur
 la dernière édition, sans être parfaite), mais l'essentiel est que ce livre
 est presque complet. Du coup il est difficile à manipuler. Il y a l'installation,
 l'utilisation, la liste des principales fonctions, tout sur l'administration,
 y compris le réseau... À vue de nez c'est un bouquin UNIX adapté à Linux. RECOMMANDÉ
 !
 </p>
 <p>(mars 99) Un nouveau journal est apparu depuis quelques mois, consacré
 uniquement à Linux. Je l'apprécie particulièrement : Linux France Magazine,
 20 F partout.
 </p>
 <p>Un des problèmes de Linux est que la documentation ne se trouve jamais
 là ou on devrait la trouver. Il faut que j'apprenne à utiliser grep (ca ne
 va pas tarder - mais un an après je ne sais toujours pas m'en servir !), mais
 pour l'instant j'utilise la fonction de recherche de MS-Windows (sur les cd)
 et ca marche. Suse dispose d'un système d'aide "susehelp" disponible sous X,
 à partir d'un navigateur internet (chez moi, il s'est configuré tout seul pour
 netscape). Un peu lourd, mais pas si mal.
 </p>
 <p>Une fonction est aussi très précieuse : locate. la suse (je ne sais pas
 pour autres distributions) installe un système d'indexage de tous les fichiers
 du disque qui est mis à jour automatiquement la nuit par "updatedb". Si comme
 moi, vous éteignez votre appareil le soir, lancez cette commande à la main
 de temps en temps.
 </p>
 <p>Quand vous faites ensuite locate XXX, linux vous indique immédiatement
 où se trouvent tous les fichiers qui contiennent XXX, ceci vous permet de localiser
 les exécutables, mais aussi les fichiers d'aide.
 </p>
 <p>Savez-vous que majuscule-page haut vous montre ce qui a disparu de l'affichage ?
 </p>
 <p>man XXX ou info XXX donne en général accès à la doc en anglais. pour le
 français, je ne sais pas.
 </p>
 <sect1>Partitionner mon disque.
 <p>Pensez que FIPS est disponible sur le CD, même s'il faut chercher un peu
 pour le trouver.
 </p>
 <p>Ça ne m'a pas posé trop de problèmes. Soyez quand même persuadé que vous
 n'avez guère de chances de réussir l'opération sans reformater le disque dur.
 Plus exactement sans effacer les partitions existantes pour créer les nouvelles.
 Si votre disque est vieux, un reformatage n'est pas idiot, il peut permettre
 de localiser d'éventuelles zones défectueuses. Utilisez pour cela les utilitaires
 fournis avec le disque. Méfiez-vous des utilitaires trop performants en ce
 domaine, certains disques IDE n'apprécient pas d'être bousculés. Si le disque
 est récent le reformatage n'est pas nécessaire.
 </p>
 <p>AVANT d'effacer MS-DOS, pensez à sauvegarder tout ce qui vaut la peine.
 Pensez aussi à préparer votre travail si vous abandonnez définitivement MS-DOS,
 les CD (anciens, ce n'est plus vrai fin 98) de Linux s'installent à partir
 de MS-DOS ! il faut au moins pouvoir booter avec une disquette qui configure
 le lecteur CD (strictement indispensable, à moins que vous ne puissiez booter
 directement du CD) !
 </p>
 <p>Suivant la taille de votre disque vous avez plusieurs choix. Linux demande
 au moins 200 Mo pour pouvoir fonctionner de façon plaisante.
 </p>
 <p>Avec un disque dur de 60 Mo sur un portable, je n'ai pas pu installer TEX
 faute de place. On doit pouvoir installer Emacs (juste) pour faire de la saisie,
 mais c'est restreint. Le portable est mort entre temps, je n'ai donc pas pu
 continuer mes expériences.
 </p>
 <p>Avec un disque dur de 1 Go vous pouvez envisager de donner 300 Mo à Linux
 et le reste à windows 95. Avec 4 Go vous pouvez avoir 1 Go pour win95, 1Go
 pour Linux et le reste pour NT. 
 </p>
 <p>Je vais continuer en supposant que vous avez 1 Go au moins et donc une
 partition MS-DOS.
 </p>
 <p>Créez vos disquettes boot et root de Linux. Lancez Linux. Loggez-vous comme
 root (tapez root à la demande de login). Vous avez sous la main à ce moment
 un système Linux extra mini qui sait quand même lancer setup et surtout, pour
 le moment, fdisk. N'utilisez pas le fdisk du dos, ne reformatez rien avant
 cette étape.
 </p>
 <p>Ce programme est très simple à utiliser. Il n'écrit rien tant que vous
 ne le lui demandez pas. Commencez par examiner l'aide puis par lister les partitions
 présentes.
 </p>
 <p>Quand vous serez sûr de ce que vous voulez faire : effacez toutes les partitions.
 </p>
 <p>Créez successivement trois partitions. Une pour MS-DOS (la première), une
 pour les fichiers swap de Linux, de 16 Mo (60Mo pour les versions récentes)
 et le reste pour Linux.
 </p>
 <p>Donnez à chaque partition le numéro de type correspondant à son usage.
 </p>
 <p>Vérifiez bien et écrivez le résultat sur le disque... suspense... essayez
 de redémarrer sous MS-DOS (sans disquette). Avec un peu de chance ça peut marcher
 (ça m'est arrivé une fois). 
 </p>
 <p>Pensez à noter la désignation (numéro,...) des partitions sous Linux, ce
 n'est pas la même que celle que donne MS-DOS et vous en aurez besoin plus tard.
 </p>
 <p>Si ça ne marche pas, réinstallez msdos. En principe, la première partition
 doit encore être la partition active et tout doit donc se passer sans problème.
 Ça peut-être une bonne idée de réinstaller le dos 6.2 pour avoir plus tard
 le choix entre MS-DOS 6.2 et MS-Windows 95.
 </p>
 <p>Vous pouvez passer à l'installation de Linux.
 </p>
 <sect1>Installer un Linux minimum avec démarrage sur disquette.
 <p>Attention, quand on veut ajouter un module du groupe A que l'on a pas installé
 au départ, il y a problème. J'ai pour la deuxième fois aujourd'hui effacé mon
 installation. Je ne suis pas sûr du comment. Ce qui est sûr c'est que setup
 donne un avertissement, mais dès lors que l'on a modifié quelque chose dans
 les menus, c'est foutu, même si on fait &lt;cancel&gt;, setup lance quand même
 l'installation. Dans ce cas, essayer Ctrl Alt Del ! (sans garantie)
 </p>
 <p>Si le principal reproche fait à MS-DOS était de manquer d'utilitaires indispensables,
 le principal défaut de Linux pour les débutants est d'en avoir trop. Linux
 a trop de tout, programmes, packages et même documentation.
 </p>
 <p>J'en suis bien à ma dix ou douzième installation de Linux (encore 2, ce
 matin 16 jan 98), presque toutes ratées, mais ca commence à marcher. Je me
 base ici sur une distribution Slackware 3.1 de Linux 2.0.0 fournie avec le
 grand livre Linux de Micro Application.
 </p>
 <p>Première remarque : Je suis juste en train de m'apercevoir qu'une partie
 de mes problèmes vient d'avoir installé trop de choses d'un seul coup. Quand
 j'ai eu l'idée de faire une installation minimale, tout s'est mis à marcher.
 </p>
 <p>Premier conseil : installez Linux petit à petit. Le minimum c'est le jeu
 A de la distribution, à installer en entier et le jeu AP à installer tel que
 proposé par défaut (c'est la documentation).
 </p>
 <p>Deuxième remarque : Si vous voulez installer Linux sérieusement vous n'y
 couperez pas de repartitionner votre disque dur, autant le faire tout de suite
 (voir ci-dessus).
 </p>
 <p>Commencez par créer (sous dos) les disquettes boot et root. Pour la première,
 il faudra choisir en fonction de votre lecteur de CD-ROM.
 </p>
 <p>Essayez et recommencez jusqu'au succès. Pour essayer la disquette, inutile
 de repartitionner, contentez-vous de démarrer avec la nouvelle disquette et
 lisez les affichages à l'écran. bare.i a toutes les chances de marcher.
 </p>
 <p>À un moment vous allez voir quelque chose du genre &dquot; trying to detect
 CDROM... failed &dquot; si le cd n'est pas reconnu. C'est d'ailleurs une bonne
 idée de laisser le CD de Linux dans le lecteur pendant les essais. Si le CD
 est reconnu Linux vous affiche ses caractéristiques. Vous pouvez alors passer
 à la suite. 
 </p>
 <p>Avec vos deux disquettes, chargez boot puis root. Vous avez sous la main
 le système qui vous a permis de partitionner votre disque.
 </p>
 <p>Vous allez utiliser le programme setup. Ce programme est très bien fait,
 prévoyez quand même une heure et deux ou trois essais avant d'arriver au but.
 </p>
 <p>Suivez la procédure par défaut, c'est à dire tapez ce qui vous est demandé
 et ne modifiez rien sans être sûr de vous. Les seuls choix problématiques sont
 les suivants. Attention, il y a souvent dans les menus des choix qui ne se
 voient pas tant que l'on a pas amené le curseur tout en bas de l'écran (il
 défile alors vers le haut).
 </p>
 <p>Police de caractères. Prenez fr-latin1.map (bien fr, pas fi !)
 </p>
 <p>Forme des caractères Répondez NON quand on vous demande de choisir une
 forme de caractères.
 </p>
 <p>Choisissez le lecteur de cdrom, le même que vous avez pris pour la disquette
 de boot. En cas de doute, essayez le dernier choix (scan).
 </p>
 <p>Quand on vous demande quel type de démarrage vous voulez, il y a trois
 remarques essentielles :
 </p>
 <p>1. créez toujours une disquette de boot/lilo, c'est la méthode la plus
 sûre.
 </p>
 <p>2. surtout NE FAITE PAS écrire dans la MBR si dos doit exister sur le disque.
 Si vous n'avez que Linux, au contraire, c'est le seul choix utile.
 </p>
 <p>3. faites aussi (en plus de 1) écrire dans le secteur principal de la partition
 Linux. Ca c'est sans danger et vous pourrez quand vous le voudrez faire de
 Linux le système majeur de votre disque.
 </p>
 <p>N'oubliez pas, le moment venu, de configurer lilo avec 30 s d'attente et
 d'installer la partition Linux (ce n'est pas fait automatiquement !) et la
 partition MS-DOS. Appelez dos la partition.
 </p>
 <p>Attention, écrivez bien dos en minuscules, vous allez être en clavier américain
 (QWERTY), n'utilisez donc pas de lettre qui soit différente de celle du clavier
 français (éviter azqwm).
 </p>
 <p>NE confondez pas installer la partition dans LILO et monter la partition
 dans le système de fichier Linux. Il faut faire les deux.
 </p>
 <p>Essayez de démarrer avec la nouvelle disquette, ca doit marcher, vous avez
 installé Linux !
 </p>
 <sect1>Configurer Linux pour qu'il démarre à partir de MS-DOS (loadlin).
 <p>Démarrer Linux avec une disquette est peu glorieux, même si ca marche très
 bien. Notez qu'après le démarrage vous pouvez retirer la disquette, Linux ne
 vous la demandera plus (contrairement à MS-DOS).
 </p>
 <p>Il est cependant très facile de démarrer Linux à partir de MS-DOS. Si vous
 ne comprenez pas les explications ci-après, ce n'est pas grave, attendez un
 peu, vous y reviendrez plus tard. Il faut installer avec setup le programme
 loadlin.exe que vous récupérez dans votre répertoire au démarrage (sous Linux
 - vous pouvez aussi le trouver sur le cd). 
 </p>
 <p>Il faut alors, créer dans la partition MS-DOS un répertoire &bsol;linux
 et y copier loadlin.exe et /vmlinuz (ca, ca ne peut se faire que sous Linux).
 </p>
 <p>Redémarrez sous MS-DOS et venez dans le répertoire Linux. Créez alors un
 fichier linux.bat dans ce genre :
 </p>
 <p>loadlin vmlinuz /dev/hda2
 </p>
 <p>À la fin de la ligne, vous devez mettre la désignation Linux de votre partition
 Linux. Attention au type de disque (ide=hd ou scsi=sd, à son numéro d'ordre
 (a, b...) et à son numéro de partition (0, 1,...).
 </p>
 <p>Du dos il suffira alors de taper linux et hop (ce n'est pas vous qui devez
 faire hop, contentez-vous de taper linux &lt;entrée&gt; et laissez loadlin
 sauter!). Mais vous ne pourrez revenir sous dos qu'en réinitialisant.
 </p>
 <sect1>Configurer Linux pour qu'il démarre à partir de sa propre partition.
 <p>Si vous avez écrit lilo dans le secteur principal de la partition Linux
 (ou toute opération équivalente au niveau du vocabulaire) il suffit de rendre
 active la partition Linux. Cela peut se faire aussi bien avec le fdisk du dos
 qu'avec celui de Linux et c'est sans danger.
 </p>
 <p>Au prochain démarrage, c'est alors LILO qui prends la main. Il vous attends
 30s pour voir si vous allez taper &dquot; dos &dquot;. Si oui il vous renvoie
 sous MS-DOS. Si vous faites quoi que ce soit d'autre, vous démarrez Linux.
 </p>
 <sect1>Monter mes répertoires ms-dos dans Linux.
 <p>Je l'ai fait avec setup sans aucune difficulté. Il faut savoir qu'UNIX
 (et donc Linux) ne connaissent pas les disques ou les disquettes, mais uniquement
 les répertoires. Pour accéder à un disque quelconque, il faut le &dquot; monter
 &dquot;. Il prends alors la place du répertoire et ce qui était dedans n'est
 plus accessible (mais n'est pas effacé pour autant, je pense). Vous avez un
 répertoire /dosc, un autre /cdrom... Pour les détails, regardez le manuel de
 mount (man mount)
 </p>
 <sect1>Avoir les accents 
 <sect2>dès le démarrage (demande de login).
 <p>Avec la configuration minimale, ca a marché du premier coup. Dans tous
 les autres cas, en installant tout ce qui était proposé par défaut, rien. Je
 ne sais pas encore pourquoi.
 </p>
 <sect2>A l'appel de bash (donc après m'être loggé et avoir donné mon mot de passe).
 <p>Pour ca, il faut créer un fichier .inputrc dans votre répertoire (n'oubliez
 pas le point devant le nom du fichier) contenant :
 </p>
 <p>set meta-flag on
 </p>
 <p>set convert-meta off
 </p>
 <p>set input-meta on
 </p>
 <p>set output-meta on
 </p>
 <p>Je tire ça du French-Howto de Guylhem Aznar. Il y a une ligne de plus que
 ce qui est indiqué dans les bouquins. Je ne sais pas si elle est indispensable,
 mais comme ca ça marche, je ne suis pas allé plus loin pour le moment.
 </p>
 <sect1>Apprendre à utiliser vi.
 <p>Quand, après avoir installé Linux complet (et marchant mal) j'ai voulu
 commencer un dictionnaire des programmes Linux, j'ai immédiatement constaté
 qu'il y avait sur mon disque une multitude d'éditeurs de texte. Après en avoir
 essayé quelques-uns, je suis arrivé à la conclusion suivante. 
 </p>
 <p>Tout le monde nous dit qu'il faut savoir utiliser vi. Pour savoir utiliser
 quelque chose, il faut s'en servir régulièrement. Utilisons donc vi. Dans ce
 cas, inutile d'installer les autres.
 </p>
 <p>En fait vi est très facile à utiliser pour faire la gestion de tous les
 petits fichiers texte de configuration, comme .inputrc. Il suffit de retenir
 quelques commandes.
 </p>
 <p>D'abord, tapez le nom du fichier à éditer sur la même ligne que vi (vi
 &lt;nomfich&gt;). Ensuite, avant d'entrer le texte, tapez i (insertion). Si
 vous voyez un i s'afficher à l'écran c'est que vous l'aviez déjà fait. Vous
 pouvez effectuer la frappe et les corrections courantes dans ce mode.
 </p>
 <p>Pour faire autre chose, frappez ESC (Echap), plusieurs fois si vous avez
 un doute. Tapez ensuite : (deux points) et
 </p>
 <p>
 <itemize>
  <item>w pour écrire votre fichier sur le disque.
  <item>w &lt;nomfich&gt; pour l'écrire sous un nom différent.
  <item>wq pour sauver et quitter
  <item>q! pour quitter sans sauver.
 </itemize></p>
 <p>Je ne vois pas pourquoi vous auriez besoin du reste, en tout cas pour l'instant.
 Quand vous en aurez besoin, c'est très simple. Faites ALT F2 pour ouvrir une
 deuxième console virtuelle, donnez à nouveau votre login et votre mot de passe,
 tapez man vi et dès ce moment en faisant ALT F1 ou ALT F2 pour pourrez passer
 de vi à son manuel. Ce système de consoles virtuelles est une merveille. Je
 pleure tous les jours de ne pas l'avoir sous MS-Windows !
 </p>
 <p>Problème : si votre ligne dépasse la largeur de l'écran, elle ne passe
 pas à la ligne. vi n'est pas un traitement de texte. Il n'est donc pas utilisable
 pour saisir du texte au km (ce que je fais en ce moment ! - en fait on peut
 tout faire avec vi, mais il faudra apprendre...).
 </p>
 <sect1>Naviguer dans mes répertoires (savoir utiliser ls)
 <sect2>ls
 <p>Y a pas à dire, pour se retrouver dans les répertoires, il faut passer
 par DIR sous MS-DOS et par ls sous Linux. Il y a un nombre inconvenant d'options,
 dont il faut bien connaître quelques unes... pour les autres, faites man ls.
 </p>
 <p>-a afficher tous les fichiers, y compris les fichiers de configuration
 débutant par un point.
 </p>
 <p>-d répertoires seuls.
 </p>
 <p>-l affichage long et détaillé.
 </p>
 <p>-t tri par date de modification (n'affiche pas la taille, ca fait drôle).
 </p>
 <p>-R récursive. Liste tous les sous-répertoires
 </p>
 <p>-S tri par taille
 </p>
 <p>-X tri par extension. Ca n'a pas grand intérêt sous Linux, qui ne s'occupe
 pas trop des extensions.
 </p>
 <sect2>Identifier les fichiers
 <p>Les fichiers exécutables sont suivis (quand ils sont affichés par ls) par
 * et les liens symboliques par @. Les fichiers dont le nom se termine par &tilde;
 sont des backups (*.bak sous MS-DOS). c'est du moins le réglage par défaut
 de mon installation.
 </p>
 <sect2>Caractères génériques
 <p>On peut utiliser * (? Aussi, je pense). Attention, les fichiers peuvent
 commencer par le point (.), mais c'est également, comme sous MS-DOS, le symbole
 du répertoire courant, du coup &dquot;ls .*&dquot; donne un résultat curieux.
 Vous allez découvrir les joies des "regexp" (expressions régulières). au bout
 d'un an, je n'y suis pas encore.
 </p>
 <sect2>Les couleurs du temps...
 <p>Par défaut, mon ls donne un affichage en couleur, mais ca n'a pas l'air
 très standard. Les couleurs sont désignées par un numéro. Tout ça n'est pas
 très standard, le détail de ma configuration n'a pas d'intérêt.
 </p>
 <sect1>Trouver ce que je cherche (find)
 <p>Je ne sais pas pourquoi, mais j'ai eu du mal à utiliser la commande find
 de Linux. Elle ressemble pourtant beaucoup à celle de MS-DOS, mais le vocabulaire
 des fichiers man est un peu différent de celui auquel je suis habitué. Résultat,
 pas dur !
 </p>
 <p>find &lt;répertoire de départ&gt; -name &lt;chaîne à chercher&gt;
 </p>
 <p>Les astuces sont les suivantes : il faut mettre -name avant la chaine à
 chercher et ne pas oublier un espace entre -name et la chaîne, contrairement
 à MS-DOS. Parfois (si on emploie des caractères génériques) il faut mettre
 la chaîne entre guillemets. Pour les détails, voir man.
 </p>
 <sect1>Quelle est la structure des répertoires de mon disque?
 <p>La structure de MS-DOS est simple, au moins au début. Vous avez le répertoire
 racine et un répertoire &bsol;DOS. Ensuite vous avez sans doute &bsol;WINDOWS
 et peut-être &bsol;PROGRA&tilde;1 (&bsol;Program files). Pour le reste chacun
 fait ce qu'il veut, ce qui donne rapidement une grande anarchie. J'ai longtemps
 essayé de maintenir de l'ordre sur mon disque en utilisant un répertoire &bsol;TRAVAIL
 comme racine de tous les programmes de travail et &bsol;DATA comme racine des
 données.
 </p>
 <p>Mais beaucoup de programmes MS-DOS ou MS-Windows refusent de travailler
 ailleurs que dans les répertoires prévus par leur programmeur, sans compter
 les innombrables fichiers dispersés n'importe où, mais spécialement dans les
 répertoires système de windows par toutes les applications.
 </p>
 <p>Au départ, Linux est plus complexe, mais je viens (3 fév 98) de découvrir
 un document fort intéressant que je vais essayer de vous résumer (outrageusement,
 pour les détails, voyez l'original à ftp://ftp.lip6.fr/pub/linux/sunsite/docs/fhs/fhs-2.0.tar.gz).
 </p>
 <sect2>Classification des fichiers
 <sect3>Règles générales
 <p>Il y a deux façons de classer les fichiers dans tout système informatique
 : fichiers partageables ou non, fichiers statiques ou variables.
 </p>
 <p>Sont partageables les fichiers (et les répertoires) auxquels on peut avoir
 besoin d'accéder de plusieurs utilisateurs ou de plusieurs machines (votre
 répertoire perso, par exemple, si vous utilisez plus d'un terminal). Par contre
 des pilotes de périphériques ne sont utilisables que sur la machine où le périphérique
 en question est connecté.
 </p>
 <p>Sont statiques les fichiers qui ne peuvent être modifiés que par l'administrateur
 (exécutables...). Les fichiers de données sont par nature variables (comme
 le texte que je tape en ce moment).
 </p>
 <p>Il est vivement souhaitable, pour que l'on puisse établir un système de
 permissions cohérent que les répertoires soient répartis en fonction des types
 de fichiers. N'oublions pas, de plus, que sous Linux, des répertoires sont
 utilisés comme points de montage de disques et que leur contenu peut donc varier
 considérablement en un instant. 
 </p>
 <p>Exemples  :
 </p>
 <p>.....................*partageable..............................* non partageable....*
 
 </p>
 <p>*statique..*..../usr, /opt.................................*....... /etc,
 /boot...........*
 </p>
 <p>*variable *var/mail, /var/spool/news..* /var/run, /var/lock*
 </p>
 <p>Première règle : pas de nouveau répertoire à la racine.
 </p>
 <p>La racine d'un disque (ou d'une partition) est le siège de fichiers d'une
 importance toute particulière et sa structure doit être de la compétence exclusive
 de l'administrateur. Les répertoires prévus à la racine sont :
 </p>
 <p>/, le répertoire racine
 </p>
 <p>/bin : Binaires (commandes essentielles)
 </p>
 <p>/boot : Fichiers statiques du chargeur de démarrage
 </p>
 <p>/dev : Fichiers de périphériques
 </p>
 <p>/etc : Configuration système spécifique à la machine
 </p>
 <p>/home : (racine des) Répertoires personnels des utilisateurs
 </p>
 <p>/lib : Bibliothèques partagées essentielles et modules du noyau
 </p>
 <p>/mnt : Point de montage des partitions temporaires (vous pouvez y monter
 la disquette, par exemple)
 </p>
 <p>/opt : Paquetages d'applications logicielles supplémentaires
 </p>
 <p>/root : Répertoire personnel de l'utilisateur root
 </p>
 <p>/sbin : Binaires systèmes essentiels
 </p>
 <p>/tmp : Fichiers temporaires
 </p>
 <p>/usr : Hiérarchie secondaire
 </p>
 <p>/var : Données variables
 </p>
 <p>j'ai en plus :
 </p>
 <p>/cdrom : pour un montage de CD
 </p>
 <p>/lost+found c'est là que le système place les fichiers "orphelins" (inode
 valable, mais pas de nom de fichier connu)
 </p>
 <p>/proc : j'en ai entendu parler qq part, mais je ne sais plus où (processus
 ?)
 </p>
 <sect3>contenu des répertoires
 <p>Le contenu des répertoires est une information plus complexe. Je l'ai déplacé
 dans le Memento. 
 </p>
 <sect1>Les fichiers de configuration
 <p>Maintenant que je connais mes répertoires et vi, je peux m'attaquer aux
 fichiers de configuration. Ces fichiers sont tous (tous ?) dans /etc (ou etc/rc.d)
 qui ne devrait même contenir que ca. Ils sont signalés comme des exécutables
 et ressemblent fortement à des scripts bash. Cependant, je ne sais pas trop
 à quel moment du démarrage ils sont lancés et il vaut mieux faire attention.
 </p>
 <p>J'y ai trouvé (le fonctionnement est indiqué dans chaque fichier, ici je
 résume). :
 </p>
 <p>
 <descrip>
  <tag>rc.local</tag>dans lequel se trouve le lancement de gpm (gestion de la
 souris, très utile en mode console)
  <tag>rc.0</tag>lien symbolique vers rc.6, scripts exécutés au moment du redémarrage
 de Linux (run level 0 et 6) (vous pouvez y mettre "au revoir les mecs...&dquot;).
  <tag>rc.4</tag>run level 4, lancement de xdm, pour l'interface fenêtre. Je
 ne sais pas encore faire ca, d'ailleurs je n'aime pas trop démarrer directement
 l'interface graphique, j'aime bien faire une partie du travail en mode texte.
  <tag>rc.K</tag>run level 1 état administratif, un seul utilisateur
  <tag>rc.M</tag>init 8 démarrage normal, avec :
 </descrip>
 <p>
 <itemize>
  <item>- données d'extinction de l'écran (veille)
  <item>- remontage du cdrom par rc.cdrom
  <item>- lancement de cron (je ne sais pas encore ce que c'est).
  <item>- donne le nom de la console, trouve dans /etc/HOSTNAME
  <item>- initialise le réseau par rc.net1 et rc.net2 ou usr/bin/syslogd et usr/bin/klogd.
  <item>- enlève le verrouillage (?)
  <item>-met à jour le lien vers les librairies (/sbin/ldconfig)
  <item>-lance sendmail (en avez-vous besoin?)
  <item>-charge une fonte si rc.font
  <item>-lance ibcs (?) (rc.ibcs)
  <item>-charge le clavier avec rc.keymap
  <item>-charge rc.local
 </itemize>
 <p>
 <descrip>
  <tag>rc.S</tag>suite de l'initialisation par path=/sbin:/usr/sbin:/usr/bin
 (remarquez qu'il y a deux point entre les répertoires au lieu du point virgule
 sous dos). Swapon, update, teste le système de fichiers (fsck) en cas d'erreur
 au login. 
On y trouve en remarque la syntaxe de création d'un disque boot
 (rdev -R /dev/fd0 0).
Ce doit être là que l'on initialise pcmcia, sans doute
 inutile si vous n'avez pas un portable.
  <tag>lilo.conf</tag>intéressant à lire, ne modifier qu'avec prudence. Il est
 sans doute préférable d'ajouter une configuration sans modifier celles mises
 en place à l'installation. La première ligne est celle démarrée par défaut
  <tag>fstab</tag>contient les informations de montage des partitions (pour les
 détails, voyez le guide du rootard Linux)
  <tag>mtools.conf</tag>contient la configuration des mtools avec les noms des
 disques dur. Je ne les ai pas encore modifiés, mais il va falloir que je m'y
 mette car dans mon installation C: est considéré comme un disque SCSI ce qui
 n'est pas le cas, du coup mcopy xxx c: ne marche pas et c'est peut-être pour
 ça que je ne peux pas convertir mes fichiers texte vers MS-DOS. En relisant
 ceci, j'en ai profité pour régler le problème. Presque tous les fichiers de
 configuration sont abondamment commentés. En anglais, évidemment...
 </descrip></p>
 <sect1>Jouer avec Xfree
 <p>Je ne pensais pas mettre ce paragraphe ici, mais j'ai fini par me rendre
 contre que l'on peut tout faire avec emacs, surtout se perdre... et j'ai quand
 même voulu savoir avant ma mort ce que donne XFree. Bof le résultat pour l'instant
 est un peu décevant. Sur un 486-33 XFree rame lamentablement - encore pire
 que win95. N'oublions pas cependant que Linux se compare en terme de puissance
 non pas avec win 95 mais avec win NT qui ne s'installe même pas sur mon 486
 (pas assez de ram avec 8Mo). Même avec de la ram, un 486 est quand même pénible
 en mode graphique (64Mo RAM).
 </p>
 <p>Sur le Pentium, pas de problème, j'ai pu jouer à tétris et au mah-jongg...
 L'interface qui a été installée par défaut est fvwm95 (qui imite win95) mais
 il y a plein d'autres possibilités disponibles un peu partout.
 </p>
 <p>Il faut être patient pour installer la vidéo, mais on y arrive en étant
 pas trop exigeant. Juste un truc, un écran vous dit à un moment que startx
 est juste un lien symbolique vers X qui, lui même n'est qu'un lien symbolique
 vers le serveur graphique (le pilote de carte, en langage MS-DOS) puis vous
 laisse croire qu'il fait le travail à votre place. IL NE LE FAIT PAS ! Notez
 soigneusement la ligne à taper et faites-le à la main... (je n'ai plus ce problème
 avec des distributions plus récentes).
 </p>
 <p>Je viens de trouver sur le CD un fichier &dquot;modeline&dquot; (c'est
 son nom sous MS-Windows) qui est en fait un mini howto qui explique très simplement
 la signification de la ligne du même nom dans le fichier XF86Config
 </p>
 <sect1>Utiliser emacs
 <p>Si vous êtes toujours dans la configuration minimale, Emacs n'est pas installé.
 Vous allez donc installer le jeu de disques E. Utilisez l'installation par
 défaut de setup, tout ira bien. J'ai l'impression qu'il faut refaire la configuration
 de Linux, je ne sais pas trop pourquoi, en cas de doute faites-le. En fait
 il semble (après une nouvelle installation sur un autre appareil) que ce n'est
 pas nécessaire, par contre j'ai dû installer emacs en deux passes.
 </p>
 <p>D'abord l'installation par défaut, puis une deuxième installation en cochant
 uniquement la case &dquot;supprimer la configuration X11&dquot; (remove X11
 support). Il serait peut-être malin de noter ce que vous faites au cas ou il
 faudrait le refaire. Dans tous les cas de figure évitez de réinstaller le jeu
 de disquettes A, cela revient à effacer le disque (partition Linux), il faudrait
 refaire les fichiers .xxx. Au fait, ce serait peut-être une bonne idée de les
 recopier dans /dosc/linux, manière de les sauvegarder (je vais le faire).
 </p>
 <p>Ensuite, avec vi, créez le fichier .emacs :
 </p>
 <p>(standard-display-european 1)
 </p>
 <p>(load-library &dquot;iso-syntax&dquot;)
 </p>
 <p>(set-input-mode (car (current-input-mode))
 </p>
 <p>(nth 1 (current-input-mode)) 0)
 </p>
 <p>Ne vous faites pas de bile, c'est du lisp. Ca devrait marcher. Utilisez
 le même système de console virtuelle qu'avec vi pour avoir le manuel sous la
 main. C'est nettement moins évident que vi, mais au moins on peut taper plus
 de 80 caractères par ligne.
 </p>
 <p>Je viens (3 mars 98) d'assister à une démonstration d'emacs au club Linux-31
 qui m'a montré deux choses. Ca vaut le coup, mais il faut prendre le temps
 de l'apprendre et il vaut mieux utiliser la version pour X, qui permet d'utiliser
 des menus pour les commandes moins souvent utilisées.
 </p>
 <p>J'ai depuis avoir écrit ces lignes lu toute la doc d'Emacs et préparé un
 résumé (disponible par ici).
 </p>
 <sect1>Imprimer mes documents sur mon imprimante
 <p>Réglée pour ms-dos et que je n'ai pas l'intention de dérégler !
 </p>
 <p>Ca, je ne sais pas encore le faire, ca viendra. Le principal problème que
 j'ai est que les éditeurs vi et emacs ne sont que cela, des éditeurs. C'est
 à dire qu'ils sont conçus pour entrer du texte source, des programmes, pas
 pour faire du traitement de texte. Mais comme TEX n'a pas l'air d'être fait
 du tout pour saisir du texte... Ils n'ont donc pas de fonction d'impression.
 </p>
 <p>Du coup il faut imprimer à partir de bash. Dans ma configuration minimale
 actuelle, je n'ai pas lpr et je ne vais pas vous embéter plus  longtemps tant
 que je ne sais pas faire ! Voir plus loin...
 </p>
 <sect1>Fin
 <p>J'ai changé définitivement de distribution avant d'aller plus loin avec
 la Slackware, je n'en dirais donc pas plus. Le chapitre suivant concerne la
 Debian.
 </p>
 <sect>Debian
 <p>Je viens (13 mars 1998) d'abandonner la slackware. Non pas qu'elle soit
 mauvaise en elle-même, mais celles qui sont livrées avec les livres que j'ai
 achetés sont assez mal fichues, avec des manques, j'en suis donc venu à douter
 de leur fiabilité. En même temps la revue Dream (j'aime bien!) a diffusé gratuitement
 la distribution debian. Cette distribution a bonne réputation et, diffusée
 par une revue, on peut espérer trouver chaque mois des choses intéressantes.
 Je vais donc vous entretenir de mon expérience à partir de la debian. Commencer
 à lire la première partie serait donc une bonne idée (faire ses premières expériences
 avec la slackware aussi).
 </p>
 <sect1>Récupérer de la doc.
 <p>Outre les livres déjà cités, j'ai &dquot;aspiré&dquot; avec memoweb (sous
 windows, il y a le même sous Linux, mais je ne sais pas encore m'en servir)
 les quelques 7 Mo du site www.linux-france.com que je regrette de n'avoir pas
 découvert plus tôt. Mais si vous me lisez c'est peut-être sur ce site où l'on
 vient de m'offrir de la place. Le seul ennui de memoweb c'est que c'est la
 version demo qui ne prends pas tout et qu'il fonctionne sous dos !
 </p>
 <p>Rappelez-vous - apprenez-le si vous commencez seulement à me lire - que
 ceci s'adresse d'abord à des gens qui sont encore sous dos/95/nt et qui veulent
 passez à Linux.
 </p>
 <sect1>Préalable à l'installation
 <p>Dream est une revue sympa, mais les articles sont un peu &dquot;vite faits".
 Par exemple quand on vous explique comment installer la debian, on ne vous
 dit pas grand chose. Si vous avez une configuration récente, pas de problème,
 mais si vous avez un cd un peu vieux, que nib ! 
 </p>
 <p>Si votre cd n'est pas un ide, il faut nécessairement créer avant tout une
 disquette de pilotes. L'image de cette disquette se trouve dans le répertoire
 &bsol;BO&bsol;Disks-i3&bsol;1997-05- (sous linux, il vous dévoilera son nom
 complet : disks-i386). Elle s'appelle drv1440.bin (ou 1220 si vous avez un
 lecteur 5&dquot;). Pour faire la disquette, lancez (sous dos) rawrite2, donnez-lui
 le nom de l'image puis celui du lecteur (a: ou b:). 
 </p>
 <p>Etiquetez soigneusement la disquette (par exemple : pilotes pour debian)
 et conservez-la précieusement. Elle vous servira pour les cd &dquot;proprietary
 interface&dquot;.
 </p>
 <sect1>Installer un Linux avec démarrage sur disquette.
 <sect2>Remarques
 <p>Installer la debian n'est pas une partie de plaisir et je déconseille ce
 sport aux tout débutants. Il y a pourtant quelques avantages significatifs.
 En particulier, inutile de créer des disquettes de démarrage, la mise en route
 se fait avec loadlin, directement à partir du CD (ce qui suppose, évidemment,
 que vous ayez démarré à partir du dos avec un accès au cd, une disquette bien
 faite suffit).
 </p>
 <p>La principale difficulté est le grand nombre de messages d'erreur qui passent
 si vite à l'affichage qu'ils sont impossible à lire. Certains sont normaux
 et sans importance (ils signalent simplement que vous ne possédez pas certains
 périphériques), d'autres sont essentiels et font avorter l'installation. faire
 alt Fx pour chercher sur quelle console ils sont affichés est une aide précieuse.
 Savoir que majuscule page haute affiche ce qui a disparu de l'écran. 
 </p>
 <p>Je dois refaire l'installation sur un autre poste, j'en profiterai pour
 prendre des notes. Faute de les avoir notés au passage, j'ai du mal à vous
 donner une liste des messages, qui doit cependant varier avec les configurations.
 Par exemple, je n'ai que des disques IDE, du coup l'installation s'indigne
 de ne pas pouvoir installer /dev/sda, ce qui est bien normal puisque c'est
 un disque SCSI.
 </p>
 <p>Le programme d'installation alterne sans arrêt entre des écrans en couleur
 avec une belle mise en page (en mode texte) et des écrans monochromes à défilement
 (comme celui du dos ordinaire). J'ai eu en particulier des problèmes pour indiquer
 au programme à partir de quels répertoires du cd il doit faire l'installation.
 Mes premiers essais ont été ratés, mais je ne m'en suis appercu que bien plus
 tard au moment de créer une disquette de boot, création impossible du fait
 des erreurs.
 </p>
 <p>Ce cd de debian vient du numéro 46 de Dream et le journal décrit l'installation.
 Mais cette description est faite en dépit du bon sens et a probablement été
 écrite avant la fabrication du cd (c'est presque toujours ainsi que cela se
 passe, pour des questions de délais). Du coup elle comporte des erreurs. 
 </p>
 <sect2>allez-y
 <p>Quand debian vous demande si la distribution est standard et quelle est
 la racine, il faut répondre non (au fait toute l'installation est en anglais),
 je crois qu'il suffit de faire entrée.
 </p>
 <p>Debian vous demande ensuite la liste des répertoires. Le seul qui existe
 est stable/binary, répondre none aux autres questions. J'ai eu un problème
 la première fois, je ne sais pas si il faut ou non taper un / en tête du chemin,
 sans doute pas.
 </p>
 <p>Vous voyez un message d'erreur assez compliqué qui vous annonce avoir trouvé
 deux répertoires. Ca devrait être bon.
 </p>
 <p>Au hasard, j'ai noté que mon cd mitsumi est monté à partir de /dev/mcd,
 qu'il faut installer le système de fichier vfat si on veut monter une partition
 windows 95.
 </p>
 <sect2>Dselect
 <p>Vous arrivez dans l'écran de dselect.
 </p>
 <p>Ce programme est puissant, mais passablement &dquot;chiant&dquot; pour
 deux raisons : ses commandes ne sont pas intuitives (au moins pour un utilisateur
 de dos), le fichier d'aide est en anglais et je n'ai pas trouvé le moyen d'abréger
 le parcours des quelques 900 (980!) paquetages fournis.
 </p>
 <p>En fait on retrouve cette disposition sur la SuSE, mais avec quelques astuces
 de simplification. Elle est bien adaptée dès que vous avez dépasé le niveau
 de débutant.
 </p>
 <p>Je vous conseille vivement de commencer par vous faire un résumé des commandes
 sur papier - je le ferais plus tard si j'ai le temps (comme j'ai abandonné
 la debian, n'y comptez pas trop...).
 </p>
 <p>Ensuite vous allez choisir le media source (l'endroit où sont les paquetages),
 ce qui à ce stade doit être facile, puis faire lire la liste des paquetages.
 Il y en a donc plus de 900, ca doit prendre un certain temps. Si l'opération
 se fait instantanément c'est que la source n'est pas bonne, il faut recommencer.
 </p>
 <p>Deux conseils, à ce niveau. Si vous en êtes arrivés là, votre cd est sans
 doute déjà monté. Il est donc recommandé de choisir l'option &dquot;répertoire
 déjà monté&dquot;. Le nom de ce répertoire est /instmnt.
 </p>
 <p>Ensuite, vous avez sans doute envie de voir ces 980 paquetages. Résistez
 à cette envie. passez directement à la liste d'installation, la configuration
 par défaut est déjà choisie. Dans le cas contraire :
 </p>
 <p>Vous êtes alors confronté à la liste des paquetages. Elle n'est pas si
 mal faites, mais il y a UNE liste de 900 paquetages. Même s'ils sont classés
 par catégories, il faut faire défiler la liste pour trouver les catégories.
 Prévoyez une heure à chaque fois. Au premier coup, NE FAITES RIEN sauf entrée,
 pour accepter les valeurs par défaut. Et via...
 </p>
 <p>Si un écran de &dquot;résolution des dépendances&dquot; se présente, ne
 touchez à rien et faites entrée.
 </p>
 <p>Après l'installation, il y a des choses qui ne vont pas et il reste un
 message d'erreur. Apparemment il faut exécuter dselect plusieurs fois (jusqu'à
 4 fois, ais-je vu quelque part). Je ne sais pas pourquoi. Chez moi, il me répond
 toujours que AT n'est pas bien installé et aussi qu'un autre programme demande
 un outil qui n'est pas présent. Pour l'instant l'essentiel marche, touchons
 du bois.
 </p>
 <p>Il faut éventuellement modifier le fichier /etc/fstab qui contient les
 partitions à monter au démarrage. Le fichier man est bien fait, consultez-le.
 Prenez votre temps!
 </p>
 <p>Au fait. On n'a pas non plus les accents, voir plus loin la solution de
 G. Aznar qui marche.
 </p>
 <p>Bien sur, quand linux vous demande comment configurer lilo, répondez toujours
 : démarrage sur disquette. Il faut absolument procéder ainsi, même si plus
 tard d'autres solutions sont envisageables.
 </p>
 <sect1>Réparer une erreur
 <p>J'ai voulu récupérer les fichiers .inputrc et .emacs sur une disquette
 où je les avais sauvegardés. Je sais maintenant monter une disquette, après
 avoir correctement configuré le fichier /etc/fstab.
 </p>
 <p>Première déconvenue, ma disquette devait être formatée dos car les fichiers
 avaient la forme initrc&tilde;1. Mais bon, cp m'a permis de faire le travail
 et j'ai fait logout pour essayer.
 </p>
 <p>Catastrophe! pour une raison que je n'ai pas élucidée (défaut sur la disquette
 ou erreur de copie) je me suis retrouvé avec un fichier .initrc contenant...
 le contenu de .emacs. Horreur! le e ne marchait plus, le m non plus, le l donnait
 une série de caractères...
 </p>
 <p>Evidemment j'étais root ! Complètement bloqué, impossible de faire rm (pas
 de m), même impossible de faire ls (pas de l), du coup pas d'accès à vi ni
 à emacs!
 </p>
 <p>Le redémarrage avec la disquette n'a rien donné : ou bien il me renvoie
 à root, ou bien il refuse de monter /dev/hda4. J'ai résolu le problème en relancant
 dos, puis le boot linux du cd et après la configuration minimale j'ai trouvé
 en bas d'un menu une option &dquot;shell&dquot; qui m'a redonné la main. En
 QWERTY, mais la main. J'ai donc effacé .inputrc, réinitialisé et retapé les
 meta choses à la main, tout est maintenant nickel.
 </p>
 <sect1>Configurer Linux pour qu'il démarre à partir de sa propre partition.
 <p>Vous entrez dans une zone dangereuse. Préparez vous à réinstaller tout
 votre disque en cas d'erreur... Ne vous pressez pas. Si vous ne comprenez pas,
 renoncez ! Cette méthode n'est réellement indispensable que si vous n'avez
 que linux sur votre disque, dans ce cas elle est sans danger.
 </p>
 <p>Il faut absolument éviter de faire cette installation dans le logiciel
 utilisé pour la première installation. Il est ambigu. Par contre, une fois
 sous linux, vous avez à votre disposition un logiciel tout simple appelé liloconf
 qui marche tout seul. 
 </p>
 <p>Il vous propose en premiére option d'installer lilo sur le secteur principal
 de la partition linux. C'est justement ce que nous voulons faire. Répondez
 donc yes (entrée suffit). Pour la suite, suivez les instructions (en anglais...).
 Il va vous demander si vous voulez démarrer avec linux par défaut. Dans mon
 cas la réponse correcte était no, je démarre sous dos ou avec le boot manager
 de windows NT (trop compliqué pour que je l'explique ici, pour un résultat
 d'importance très secondaire).
 </p>
 <p>J'ai cru comprendre que sous certaines conditions, si lilo démarre le disque,
 on peut choisir le numéro de la partition à démarrer. Si c'est bien ca, c'est
 peut-être très commode. Attention, vous serez sans doute avec le clavier qwerty,
 les chiffres sont au même endroit, mais en minuscule. Je ne sais pas si le
 clavier numérique fonctionne ici. Il faut bien vous laisser un peu de travail.
 </p>
 <sect1>Monter mes répertoires ms-dos dans Linux.
 <p>(suite) Les répertoires à monter au démarrage se trouvent indiqués dans
 /etc/fstab, il y a un man fstab raisonablement clair. L'utilisation de ce fichier
 de configuration est très simple (chez moi je l'ai trouvé avec des commentaires
 inclus qui simplifiaient bien la tache). En particulier, il simplifie grandement
 le montage des lecteurs.
 </p>
 <p>Comme dit précédemment, pour pouvoir accéder à un disque il faut le &dquot;monter&dquot;.
 La syntaxe de la commande mount est assez complexe, mais elle est très intelligente.
 </p>
 <p>Dans fstab, vous allez mettre une ligne pour chaque lecteur que vous pouvez
 avoir à monter un jour, en prévoyant un répertoire de montage au nom évocateur
 (cdrom, zip...). Il suffit alors de taper &dquot;mount zip&dquot; pour que
 tout se passe nickel. Notez au passage que linux reconnait le zip impeccablement,
 il va jusqu'à bloquer la zippette pour empécher son éjection et à l'éjecter
 automatiquement quand on démonte (umount /zip). Bien sur il faut avoir installé
 le pilote. Je l'ai trouvé par hasard en lisant la liste des packages dans dselect
 (ppa).
 </p>
 <sect1>Midnight Commander
 <p>Je n'ai jamais été un fan des &dquot;shell&dquot; à la mode PCTOOLS ou
 NORTON, en dehors de tâches administratives précises. Mais c'est quand même
 parfois commode, c'est pourquoi j'ai installé Midnight Commander (mc).
 </p>
 <p>C'est en particulier très commode pour lire les fichiers de configuration
 (encore qu'il vous renvoie sous vi) ou pour copier des fichiers entre deux
 répertoires. Aussi pour nettoyer un répertoire encombré, on peut lire les fichiers
 et les effacer au besoin sans erreur.
 </p>
 <sect1>Utiliser vi
 <p>Le vi qui a été installé par la debian a une caractéristique que n'avait
 pas celui de la slackware, et qui me gène beaucoup : il repasse tout seul en
 mode commande quand on utilise les flèches du curseur. Du coup on ne sait plus
 si on est en mode commande ou saisie.
 </p>
 <p>Ca doit pouvoir se configurer, mais je ne sais pas encore comment. J'ai
 quand même fini par remarquer qu'il n'y a jamais vi dans les distributions,
 mais des "clones" améliorés, en général vim.
 </p>
 <sect1>Jouer avec Xfree
 <p>Bien sur, j'ai installé Xfree. Je maitrise maintenant sans problème la
 configuration du moniteur avec les lignes MODELINE. Du coup X démarre sans
 problème avec une définition correcte et des caractères lisibles.
 </p>
 <p>Enfin lisibles... J'ai l'habitude de travailler sur un 17&dquot; en 1280x1024,
 ce qui fait des caractères de moins de deux millimètres sur l'écran. C'est
 petit, mais lisible. Ajoutons que j'utilise des lunettes (et oui, je suis binoclar)
 et que depuis que j'ai passé 50 ans, entre la miopie et la presbitie je me
 suis fait faire une paire de lunettes spéciale pour l'ordinateur, avec une
 vision réglée à 60 cm. Avec, je peux sans problème me déplacer dans la maison
 (c'est un peu flou, mais ce n'est pas grave) et je travaille sur écran à l'aise.
 </p>
 <p>Interdit en voiture!
 </p>
 <p>Par contre je suis encore à la recherche d'exécutables. J'ai installé plusieurs
 programmes pour Xfree, mais je ne sais pas comment les lancer. J'ai juste une
 fenêtre xterm, mais je ne sais pas où ils sont, ni même le nom de leur exécutable.
 </p>
 <p>Après plusieurs essais de windows manager, je suis revenuà fvwm95. Reste
 à trouver où sont les menus. Décidément, Linux se fait désirer.
 </p>
 <sect1>Fin
 <p>Cette version de la debian était trop incomplète pour moi, je me suis donc
 décidé à passer à une distribution commerciale... la Red Hat.
 </p>
 <sect>Red Hat
 <p>Je me suis enfin décidé à acheter une distribution commerciale. Curieusement,
 j'ai pris cette décision un lundi, du coup n'ai trouvé que la Red Hat, beaucoup
 de distributeurs étant fermés ce jour là..
 </p>
 <sect1>Déductions
 <p>Ce n'est jamais que la troisième fois que je change de distribution, sans
 compter l'essai. En effet, en ce moment, j'utilise la Red Hat 5. Ma version
 de Debian m'a causé des problèmes. Comme je ne pouvais pas rester éternellement
 sous windows NT pour parler de Linux, j'ai fait le saut. En ce moment, au point
 où j'en suis de mes réflexions, j'ai déduit que les distributions de linux
 se réduisent aux usages ci-dessous : 
 </p>
 <p>
 <itemize>
  <item>Red hat ou SuSE : système utilisable assez rapidement, bon pour démarrer
 Linux. 
  <item>Debian : Système intelligemment conçu, mais plutôt destiné aux connaisseurs.
 J'y reviendrais peut-être un jour. 
  <item>Slackware : distribué essentiellement avec des livres et assez mal configuré
 dans plusieurs cas. Ce n'est pas une mauvaise distribution, mais elle est laborieuse
 à mettre en service. Deux usages contradictoires : faire connaissance avec
 Linux (à partir de 100F) ou à utiliser pour un expert qui saura se tirer tout
 seul des problèmes. 
 </itemize></p>
 <p>Ceci dit, La Red Hat n'est pas irréprochable, voyez ci-dessous.
 </p>
 <sect1>Premier constat :
 <p>La documentation... elle est nulle - voilà où le texte de ce passage va
 changer par rapport aux autres versions. La documentation Red Hat N'EST PAS
 nulle. Je dirais même qu'elle vaut largement la plus part des livres sur Linux
 que j'ai eu entre les mains. De plus elle est disponible gratuitement sur le
 web et vous pouvez donc y jeter un coup d'oeil. En résumé, vous pouvez acheter
 un livre avec une distribution médiocre ou, pour à peu près le même prix une
 bonne distribution avec un livre. Choisissez!
 </p>
 <sect1>Récupérer de la doc.
 <p>Pour une fois, pas de problème, elle est livrée dans la boite, et plutôt
 bien faite. Lisez là! On parle partout de l'aide &dquot;man&dquot; (man xx
 pour avoir l'aide sur xx), mais il y a d'autres types d'aide. Je viens (1 Avril
 98 - ce n'est pas un poisson!) d'essayer de taper &dquot;info&dquot; et - croyez
 le ou non - ca marche ! Et ca marche même bien! 
 </p>
 <p>Il faut en parler davantage. Il faudrait même expliquer un peu mieux! Je
 fais &dquot;info info&dquot; et après quelques touches tapées un peu au hasard,
 je trouve &dquot;info n'est pas textinfo&dquot;. Là Je flippe...
 </p>
 <sect1>Que faut-il installer ?
 <p>Avec Red Hat, je n'ai eu aucun problème pour installer et désinstaller
 les packages, pourvu que j'aie accès à X, grace au programme glint. Au fait
 j'ai fini par comprendre que sous X il faut lancer les programmes en tapant
 leur nom dans une fenêtre de terminal. On peut faire ca aussi avec Windows,
 mais qui le fait ? en ce moment (30 mars 98), je ne sais pas encore configurer
 les menus à la main et cela ne se fait pas bien automatiquement.
 </p>
 <sect1>Configurer le système
 <p>J'ai pourtant lu le manuel... Mais évidemment, je ne l'ai pas appris par
 coeur, du coup, j'ai failli louper une bonne chose : il y a un programme &dquot;setup&dquot;
 dans la red hat. C'est une interface en mode semi-graphique (simili graphique,
 en mode texte, ce que je préfère pour ce genre de choses) pour les programmes
 &dquot;cabaret&dquot; (montage de systèmes de fichiers), &dquot;kbdconfig&dquot;
 pour le clavier, &dquot;mouseconfig&dquot; pour la souris, &dquot;sndconfig&dquot;
 pour la carte son, &dquot;ntsysv&dquot; pour la configuration des services
 à lancer au démarrage, &dquot;timeconfig&dquot; pour l'horloge, &dquot;Xconfigurator&dquot;
 pour X.
 </p>
 <p>Je ne suis pas sûr de l'utilité de certains de ces utilitaires dans la
 vie de tous les jours, mais enfin ils sont là.
 </p>
 <p>Depuis (mars 99) j'ai appris qu'il y a un très bon programme linuxconf
 pour faire la configuration. essayez.
 </p>
 <sect1>Savoir ce qu'il y a sur les CD
 <p>Assez curieusement il n'y a jamais dans la doc Linux de liste du contenu
 des CD. Heureusement, sur les cd Red Hat il y a dans chaque racine un fichier
 ls-lr qui reprends simplement la liste de toute l'arborescence du CD. Bien
 sur vous auriez pu la trouver vous même (avec ls), mais c'est mieux ainsi.
 On peut même lire les fichiers Linux sous windows avec write sans avoir de
 problème de retour à la ligne. Non sans quand même un peu de peine, j'ai donc
 extrait de ces fichiers la liste des paquetages avec leur nom exact, ce qui
 vous permettra de les repérer mieux avec rpm. C'est trop long pour que je le
 mette, à vous de le faire...
 </p>
 <sect1>Fin
 <p>Pas de chance, la version Red hat que j'ai achetée (5.1) était -d'après
 la rumeur- la moins réussie de la marque. A dire vrai, j'ai dû télécharger
 (au lycée, par Numéris, heureusement!) les 60 Mo de mise à jour ! De plus la
 gestion des dépendances n'est pas bonne.
 </p>
 <p>Les dépendances, c'est la liste de ce qui est nécessaire pour qu'un programme
 tourne (les DLL, sous windows). Une des forces de Linux est de n'utiliser qu'un
 nombre réduit de "library", mais certains programmes ont besoin d'un copain...
 C'est ce qui était indiqué dans la debian et qui est assez bien géré par la
 Suse. Ma version de red hat se contentait de me jeter en me disant que les
 dépendances n'était pas bonnes, sans me dire pourquoi. Le programme rpm rends
 le boulot faisable, mais pas facile.
 </p>
 <p>Il parait que ca va mieux maintenant, mais je n'ai pas attendu. j'ai revendu
 la red hat et j'ai fait acheter la SuSe par mon lycée.
 </p>
 <sect>SuSE
 <p>Ce document explique comment j'ai installé la distribution SuSE 5.2 et
 comment je m'en suis trouvé bien. 
 </p>
 <sect1>Introduction
 <p>Les remarques ci-dessous valent pour la suse 5.2 française (juin 98). Les
 choses évoluent vite et les distributions s'améliorent, vous n'aurez peut-être
 donc pas les mêmes problèmes avec des versions récentes.
 </p>
 <p>Les autres chapitres de mon histoire vous ont montré, si vous les avez
 lus (si vous ne l'avez pas fait et que vous êtes débutants, commencez par là),
 les déboires, malheurs et bonheurs que j'ai eu avec les différentes distributions
 du marché.
 </p>
 <p>Je vous avais laissé alors que je n'étais pas trop mécontent de la Red
 Hat 5. Il se trouve que j'avais essayé brièvement la SuSE 5.1 (l'ancienne version,
 d'Aout 97) et que je l'avais trouvée assez bonne. Mais La seule distribution
 commerciale disponible sur Toulouse quand je me suis décidé à en acheter une
 était la RH5 et j'ai donc du m'en contenter. Pourtant, ayant décidé les collègues
 de mon lycée à installer Linux comme serveur de réseau, et m'étant chargé de
 l'opération, j'ai fait acheter la fameuse SuSE 5.2, celle dont il est question
 ici.
 </p>
 <p>Cette installation ne s'est pas passée tout seul, entre un appareil HS
 et un détail de l'installation réseau non pris en compte par Yast, mais la
 différence est tellement en faveur de la SuSE que j'ai très vite décidé de
 l'installer chez moi.
 </p>
 <p>Il en est résulté pour moi... un crash majeur, la nécessité de reconfigurer
 complètement mon disque dur et 15 jours de perdus. Mais je ne le regrette pas.
 </p>
 <sect1>Avant tout
 <sect2>Travailler avec Windows 95/NT 4
 <p>Si, comme moi, vous partez d'une configuration Windows 95/NT performante,
 il vous faudra sans doute du temps (je prévoyais un an, au moins, il en faudra
 sans doute deux) avant d'arriver à une configuration Linux au moins égale.
 Voici donc quelques conseils pour utiliser Windows et Linux ensemble.
 </p>
 <p>Il est très facile de faire coexister sur le même système et même sur le
 même disque Linux, Windows 95 et windows NT. C'est comme ca que je travaille
 en ce moment chez moi. 
 </p>
 <p>Sachez d'abord que je ne connais aucun moyen de lire avec Windows une partition
 Linux (sur le même poste - par réseau c'est très différent) et je ne suis pas
 sur que ce soit un inconvénient. En tout cas, pour la sécurité, c'est un avantage.
 Ce n'est plus vrai depuis peu (pour moi !). J'ai trouvé des utilitaires qui
 permettent de lire (pas d'écrire) une partition linux depuis dos ou une fenêtre
 windows et de recopier les fichiers linux sur un répertoire dos. Pas encore
 très commode, mais mieux que rien, sauf la sécurité... Il s'agit de e2cd.bat
 e2ls.exe e2cd2.exe e2part.exe e2cat.exe e2cp.exe e2pwd.exe. Ils sont sur le
 cd de la suse 6.0, répertoire /dosutils/ext2tool et leur utilisation est très
 simple.
 </p>
 <p>Mais du coup, il est indispensable d'avoir une partition MS-DOS FAT16 pour
 servir d'échange entre Windows (en particulier NT, car Linux ne lit pas non
 plus par défaut les partitions NTFS) et Linux.
 </p>
 <p>Sous Linux/Unix, les fichiers texte voient leurs fins de paragraphes marqués
 par un code LF (line feed - changement de ligne) alors que sous dos/Windows
 ils sont marqués par CR LF (Carriage Return Line Feed - retour chariot, changement
 de ligne). Du coup les textes dos paraissent un peu étranges sous Linux (un
 ^M qui représente le CR en fin de paragraphe), mais surtout les fichiers texte
 Linux s'affichent mal et s'impriment très mal sous dos.
 </p>
 <p>Sachez que Write.exe (aussi appelé wordpad), au moins la version de Windows
 NT, affiche et imprime parfaitement les fichiers Linux. Du coup, je viens de
 modifier l'affectation des "documents textes" qui étaient dirigés vers notepad
 pour les diriger vers write (dans l'explorateur, affichage, options des dossiers,
 types de fichiers).
 </p>
 <sect2>Clavier QWERTY
 <p>Il semble que les claviers des stations Unix sont des claviers QWERTY,
 donc sans accents. Il y a longtemps que je sais travailler avec ce type de
 clavier, qui est la configuration que l'on obtient sous dos en cas de difficulté
 avec les fichiers de configuration du démarrage. Cependant je n'ai jamais connu,
 sur PC, depuis les origines, que des claviers AZERTY.
 </p>
 <p>Il y a deux façons pour les logiciels de gérer le clavier : les scan codes
 et les codes ASCII. Si le logiciel gère les codes ASCII, il récupère le code
 ASCII du caractère inscrit sur la touche. dans ce cas, peu importe quel clavier
 vous utilisez, q est toujours q, jamais a (dès lors, du moins, que le système
 est correctement configuré). Si le logiciel gère directement le scan code,
 il recoit directement un code lui donnant la position de la touche. Du coup,
 il ne sait pas ce qu'il y a marqué dessus. Par exemple, dans vi, C-&rsqb; doit
 être compris C-&dollar; car le clavier QWERTY a &rsqb; là où le clavier AZERTY
 à &dollar;. Vous devez connaître le problème qui se pose souvent avec les jeux.
 </p>
 <sect3>Correspondance :
 <p>Voici les correspondances AZERTY vers QWERTY.
 </p>
 <p>Les touches de fonction (ligne supérieure) ne sont pas modifiées, non plus
 que le clavier numérique.
 </p>
 <p>Les chiffres (deuxième ligne) sont sur les mêmes touches, mais en minuscule
 au lieu de majuscule. la touche la plus à gauche, qui porte un petit 2 donne
 une apostrophe ouvrante (qui n'existe pas dans le clavier AZERTY) et, en majuscule,
 le tilde. Ensuite 1=!, 2=@, 3=&num;, 4=&dollar;, 5=&percnt;, 6=^, 7=&amp;,
 8=*, 9=(, 0=), )=-, °=_. 
 </p>
 <p>La touche Alt Gr n'est pas utilisée.
 </p>
 <p>Pour les lettres, a=q, z=w, Q=a, w=z.
 </p>
 <p>Les autres changements sont pour les touches de symboles, à droite des
 touches alphabétiques. 
 </p>
 <p>¨=&lcub;, ^=&lsqb;, £=&rcub;, &dollar;=&rsqb;,M=:, ,=;, &percnt;=", ù=',
 µ=|, *=&bsol;, ?=M, ,=m, .=&lt;, ;=,, /=&gt;, :=., §=?, !=/.
 </p>
 <p>Toutes les autres touches sans changement. Je vous conseille de faire un
 plan de votre clavier avec les touches normales (AZERTY) et, en rouge, les
 touches QWERTY et de le garder à portée de main.
 </p>
 <sect1>Récit d'une aventure
 <p>J'ai une vrai religion des sauvegardes. Etant assez &dquot;bidouilleur&dquot;
 de nature, je me retrouve assez souvent avec un disque dur vide. Au début,
 je faisais mes sauvegardes sur disquettes, c'était le temps béni des disques
 de 20Mo. Puis je suis passé au lecteur ZIP, que j'utilise toujours avec beaucoup
 de plaisir (et qui marche parfaitement sous Linux). Quand les disques durs
 ont dépassé le Go (j'en suis à 4Go), au prix de 100F les 100Mo de disquettes
 ZIP, le problème s'est posé à nouveau. Je suis passé au lecteur Ditto Iomega
 2Gb. Je n'ai donc rien perdu d'essentiel dans le crash, 15 jours de travail
 quand même. Depuis j'ai appris que le ditto n'est pas utilisable sous linux.
 J'espère qu'iomega va cesser sa politique de refus de linux.
 </p>
 <sect2>La faute à Linux
 <p>Je venais d'installer un serveur &dquot;pur Linux&dquot; dans mon lycée,
 alors que sur mon disque j'utilise dos, Windows 95, Windows NT et donc Linux.
 J'avais pris un certain nombre d'automatismes qui m'ont joué un tour. Au lieu
 de répondre à l'installation de lilo &dquot;le mettre sur le secteur principal
 de sa partition&dquot;, j'ai répondu &dquot;le mettre sur le MBR&dquot;.
 </p>
 <p>Je sais pourtant que c'est la bêtise à ne pas faire, mais... je l'ai faite.
 Quand je m'en suis apperçu, cela ne m'a pas inquiété pour autant. Il est quand
 même anormal que Yast écrive sur le MBR (Master Boot Record = secteur principal
 d'enregistrement des partitions) sans vérifier que ce secteur &dquot;lui appartient&dquot;.
 C'est vrai qu'il prévient du danger de l'opération, mais cet avertissement
 est abstrait et donc peu efficace (surtout quand on vient de passer une semaine
 à l'ignorer à raison).
 </p>
 <p>Je suis sûr que Linux est capable de tester le &dquot;propriétaire&dquot;
 du MBR et d'en déduire qu'il peut écrire sans trop se poser de question si
 c'est lui-même ou redoubler de précautions si c'est un autre système d'exploitation.
 </p>
 <sect2>La faute à Windows NT
 <p>Windows NT est depuis Juin 97 - ca s'est terminé en février 99 - mon système
 d'exploitation principal, celui oû je fais l'essentiel de mon travail. C'est
 au premier abord un système assez plaisant. Très lourd à manier, mais Linux
 ne l'est pas moins, beaucoup plus fiable et stable que Windows 95. Je conserve
 DOS/Windows 95 pour jouer et installer les quelques applications qui refusent
 de tourner sous NT, mais tout mon travail sérieux est fait sous NT (et les
 applications Krosoft : office et internet explorer).
 </p>
 <p>Mais NT a des défauts que je découvre petit à petit (je n'en ai jamais
 douté, d'ailleurs, mais avant de connaitre Linux je n'avais aucune alternative).
 Il est très gourmand en mémoire ; au dessous du pentium 120 / 32Mo RAM, pas
 de salut. Il est difficile à configurer, j'y ai quand même passé 3 mois. Il
 n'est pas aussi stable qu'il le faudrait. En particulier pendant la période
 de mise au point, la gestion des pilotes de périphériques provoque souvent
 ce que les NTsiens appellent &dquot;l'écran bleu de la mort&dquot;, l'affichage
 d'un dump mémoire suivant un arrêt brutal du système. De plus il est encore
 assez fréquent qu'un programme se plante, ce qui ne bloque pas NT, mais provoque
 un arêt système avec dump sur disque de la mémoire vive et donc quelques instants
 de blocage partiel. C'est en particulier le cas avec l'antivirus Thunderbyte
 (que pourtant je recommande vivement), NT ne gérant pas correctement les conflits
 d'accès aux fichiers.
 </p>
 <p>Enfin NT n'est pas restaurable. C'est dû à l'usage qu'il fait de son &dquot;registre&dquot;,
 en fait un groupe de fichiers systèmes, ouverts en permanence (c'est là le
 hic !) et ou se retrouvent stockés non seulement les paramètres essentiels
 du système mais tous les trucs et bidules de chaque programme, avec deux conséquences
 dramatiques : ces fichiers sont constamment modifiés (c'est pourquoi ils restent
 ouverts) et ils ne peuvent pas être sauvegardés correctement (un fichier qui
 n'est pas fermé a toujours des données en balade et ne peut donc pas être copié)
 et encore moins restaurés.
 </p>
 <p>Cette sauvegarde est possible si on la demande à NT lui-même, qui traduit
 alors son registre en donnèes compressées restaurables. Mais cette sauvegarde
 est longue (plusieurs minutes) et ne peut donc pas être faite en permanence.
 Microsoft (que je ne veux pas accabler ici, j'essaie d'être objectif, même
 si c'est dur !) prévoit bien un système de récupération, mais il est basé sur
 le disque dur et ne convenait donc pas à mon problème.
 </p>
 <p>Windows NT utilise un système de fichier personnel (baptisé Système de
 fichier de NT, en anglais NTFS) qu'il est seul (avec Linux ! - et NTFSDOS)
 à lire. En particulier il n'est pas possible de démarrer avec une disquette
 et de lire les fichiers. En fait il y a quand même deux moyens pour cela :
 </p>
 <p>
 <itemize>
  <item>Faire une disquette &dquot;bidouillée&dquot; avec le lilo de NT (ntloader).
 Ca marche quand ca veut.
  <item>Faire une disquette de récupération qui contient aussi une copie du registre.
 </itemize></p>
 <p>Bien sûr, vous devez commencer à me connaître, j'avais plusieurs disquettes
 de récupération, certaines assez récentes (quelques jours).
 </p>
 <p>J'ai donc (rappelez-vous, j'ai fait lilo/MBR et écrasé le MBR d'origine)
 lancé une récupération du secteur de boot. Après 1/4 d'heures (multiplié par
 5 ou 6 essais), NT n'a absolument rien récupéré. Le MBR de Linux ne fonctionnait
 pas (Linux, sur mon disque, est installé au dela des 2Go), mais NT n'avait
 même pas mis un MBR valide et avait même effacé la table de partition !
 </p>
 <p>Si j'avais cru ça possible, j'avais encore le temps (avant d'utiliser NT !),
 avec une disquette d'installation de Linux contenant fdisk, de noter sur papier
 la table de partition de mon disque. A vrai dire, j'étais tellement persuadé
 de l'avoir déjà fait...
 </p>
 <sect2>Ma faute... et celle de la fatigue de fin d'année.
 <p>Un élément essentiel d'un disque dur, que l'on ne modifie quasiment jamais
 est sa table de partition. C'est ça que l'on fait avec fdisk et dont vous avez
 déjà entendu parler si vous vous êtes mis à Linux, sans doute jamais si vous
 n'êtes encore qu'à Windows 95.
 </p>
 <p>Cette table indique simplement au BIOS, au démarrage, comment est organisé
 le disque, où sont les différents systèmes d'exploitation... Il est très simple
 de la reconstituer si on l'a sur papier (il suffit de noter les numéros de
 secteurs donnés par fdisk). Si vous ne l'avez pas encore fait, <bf>faites le tout
 de suite</bf>.
 </p>
 <p>Voilà ce que l'on peut faire, par exemple :
 </p>
 <p>charles:/home/jdd &num; fdisk -l
 </p>
 <p>ce qui donne
 </p>
 <p>Disk /dev/hda: 255 heads, 63 sectors, 527 cylinders Units = cylinders of
 16065 * 512 bytes
 </p>
 <p>DeviceBoot Begin Start End Blocks Id System 
 </p>
 <p>/dev/hda1 * 1 1 128 1028128+ 6 DOS 16-bit &gt;=32M 
 </p>
 <p>/dev/hda2 129 129 361 1871572+ 5 Extended 
 </p>
 <p>/dev/hda3 362 362 374 104422+ 82 Linux swap 
 </p>
 <p>/dev/hda4 375 375 527 1228972+ 83 Linux native 
 </p>
 <p>/dev/hda5 129 129 256 1028128+ 7 OS/2 HPFS 
 </p>
 <p>/dev/hda6 257 257 361 843381 7 OS/2 HPFS 
 </p>
 <p>en rajoutant | lpr à la ligne, vous pouvez même l'imprimer.
 </p>
 <p>Si vous ne l'avez pas sur papier, mais que votre disque contient des données
 essentielles, ce n'est pas grave, un spécialiste peut la reconstituer. Mais,
 &dquot;à la main&dquot;, il y en a pour plusieurs heures... et plusieurs milliers
 de francs. Néammoins dans certains cas cela vaut le coup.
 </p>
 <p>Mais, moi, je n'avais rien d'essentiel qui ne soit sauvegardé trois fois
 (ditto, zip et disquette !) et j'ai donc décidé de restaurer tout à partir
 de mes cartouches ditto (donc sous NT). Bien sur, je n'ai pas encore configuré
 cette cartouche sous Linux, mais comme je devais de toute façon réinstaller
 la SuSE...
 </p>
 <sect2>Problème initial
 <p>Tout est parti de mon désir d'installer la SuSE après la Red Hat 5. Ces
 deux distributions étant sorties en même temps et donc basées sensiblement
 sur le même noyau de Linux, j'ai pensé naïvement que je pouvais simplement
 installer la SuSE &dquot;par dessus&dquot; la Red Hat, c'est à dire sans supprimer
 la RH5. Grave erreur. Ces deux distributions s'installent différemment. Ne
 me demandez pas en quoi, je suis incapable de vous répondre, mais quand j'ai
 tenté l'expérience, tout ce que j'ai obtenu de Yast est un ensemble de lignes
 rouges et pas de résultat. Il y a là un défaut. Yast devrait être capable de
 s'installer, quitte à supprimer l'installation précédente.
 </p>
 <p>D'où la nécessité de réinstaller... et les problèmes. Avec un peu d'expérience,
 je me rends compte maintenant que ces messages d'erreur n'étaient peut-être
 pas si graves que ca, mais à ce moment je n'avais pas les moyens de faire autrement.
 </p>
 <sect2>Réinstallation de Windows NT
 <p>J'ai donc essayé de réinstaller NT. Ouai. Pour pouvoir relire mes sauvegardes,
 il fallait installer NT. Ne riez pas ! Les outils ditto fournis par iomega
 pour dos, windows 95 et NT sont incompatibles ! on ne peut pas relire sous
 dos une sauvegarde faite avec NT. J'ai donc revu mes partitions et divisé celle
 de NT en deux. Dans la deuxième, j'ai installé une version de NT &dquot;bare
 bone&dquot;, c'est à dire minimale. A partir de là, j'ai installé l'utilitaire
 de sauvegarde/restauration et hop... une journée de lecture de bandes. Ces
 bandes ont un raport prix/capacité très avantageux, mais qu'est-ce qu'elles
 sont lentes !
 </p>
 <p>Bilan : Ma partition Windows 95 restaurée nickel, mes fichiers de données
 essentiels, nickel, Windows NT Que nib ! Rien qui marche ! Visiblement NT ne
 peut se sauvegarder lui-même. Or il faut comprendre qu'au delà du &dquot;bare
 bone&dquot; NT il y a tout une série de configurations et des utilitaires nombreux
 (antivirus, winzip,...).
 </p>
 <p>Heureusement, moi, malin, j'ai une liste de tous les paramètres sur un
 petit cahier d'écolier (j'ai réinstallé NT encore plus souvent que Linux, c'est
 dire !) et tout s'est donc passé à peu près bien.
 </p>
 <p>Quand j'ai voulu réinstaller mon disque, j'ai rencontré de multiples difficultés,
 certaines dues à la malchance, d'autres à NT. Vous trouvez sans doute que je
 parle beaucoup de NT, mais je m'adresse à des gens issus du monde DOS/Windows
 95 qui vont être pour la plus part obligés, comme moi, de faire cohabiter tout
 ce petit monde et le récit de mes malheurs et des solutions que j'y ai apporté
 ne peut que leur servir.
 </p>
 <p>Quand NT s'installe, il commence par recopier tous ses fichiers d'installation
 sur le disque dur, puis fabrique trois disquettes (ça, on peut le court-circuiter,
 heureusement), redémarre avec ces trois disquettes (dix bonnes minutes) avant
 de commencer l'installation proprement dite. Dans mon cas, après tout ca, plantage
 : &dquot;il me manque un fichier&dquot;. Mon CD de NT a souffert, je ne sais
 quand, et il est un peu difficile à lire, avec donc une erreur de temps en
 temps. Heureusement qu'il se lit quand même car, bien que je connaisse le nom
 du fichier manquant et que j'en ai une copie saine je n'ai jamais réussi à
 le mettre à la main là ou NT puisse le trouver.
 </p>
 <p>Et puis, me semble-t-il (mais je ne suis pas tout à fait sûr de l'influence
 du mauvais cd là dedans), NT refuse de s'installer sur un disque qui n'a pas
 été partitionné par lui-même
 </p>
 <p>Passons là dessus...
 </p>
 <sect2>Gestion des partitions, un exemple concret
 <sect3>Serveur
 <p>J'ai finalement décidé les collègues de mon lycées à utiliser Linux comme
 serveur de fichiers, et je me suis donc trouvé à installer un nouvel appareil.
 Celui-ci est un 486 DX-2/66 que nous avons muni de 64Mo de RAM et d'un deuxième
 disque dur de 3.2Go (le premier faisant 500Mo).
 </p>
 <p>Je me suis donc trouvé à nouveau dans la galère des partitions. Comment
 faire démarrer ce serveur avec Linux ?
 </p>
 <p>Cette fois, après moultes discussions et consultations sur la liste SuSE,
 je pense avoir trouvé la solution définitive.
 </p>
 <sect3>Solution
 <p>Les BIOS des appareils un tant soi peu anciens ne savent pas gérer les
 gros disques durs. Prenez comme idée de base que votre Bios ne sait sans doute
 pas gérer un disque plus gros que celui que vous aviez à l'origine. Ce n'est
 pas grave pour Linux, sauf pour une chose : au démarrage, tant que le noyau
 n'est pas lancé, Lilo doit obligatoirement faire confiance au BIOS pour la
 gestion du disque dur. Donc tout ce que Lilo gère doit se trouver dans une
 partition entièrement située sous la limite.
 </p>
 <p>Il ne suffit pas qu'une partie de la partition soit en dessous de (dans
 mon cas) 500Mo. Il semble que linux utilise parfois le disque en commençant
 par la fin (les mystères de ext2fs).
 </p>
 <p>J'ai donc créé sur mon deuxième disque (de 3.2Go) une partition de 500Mo
 (de toute façon bien suffisante pour Linux) et deux autres partitions, une
 swap de 80Mo et le reste monté en /smb pour samba et les clients.
 </p>
 <p>Dès ce moment je n'ai plus eu aucun problème de lilo.
 </p>
 <p>N'oubliez pas quand même que si cette solution n'est pas possible pour
 vous, il est toujours possible de démarrer le dos et d'utiliser Loadlin - c'est
 ce que je fais en ce moment à mon domicile.
 </p>
 <p>Il est surement possible de regrouper tous les fichiers nécessaire dans
 une partition /boot réduite, je sais que certains le font, mais je n'y suis
 pas arrivé. 
 </p>
 <sect1>Installer avec la Suse
 <sect2>Démarrer
 <p>Le programme d'installation et d'administration de la SuSE est son point
 fort. Il s'appelle YaST, mais vous pouvez taper son nom en minuscule, le nécessaire
 a été fait pour qu'il réponde. Son principal défaut (version 5.2) est d'être
 en anglais. C'est fini avec la 6.0, tout ou presque est en français (mais parfois
 en anglais ou même en allemand - suse est allemand).
 </p>
 <p>Dans la racine du CD1, vous allez trouvez un programme setup. Lancez-le
 (sous dos). Aussi curieux que ca puisse paraitre, je n'ai pas trouvé d'où démarer
 Yast sur le cd à partir de linux. Je n'ai pas dû bien chercher..
 </p>
 <p>Après quelques questions simples, vous allez vous retrouver dans yast,
 sous Linux. Si vous avez le manuel, suivez les instructions. Sinon, faites
 pour le mieux, je ne vais pas recopier le manuel.
 </p>
 <p>D'une façon ou d'une autre, vous allez devoir créer au moins deux partitions
 (celle de swap et celle de Linux) et affecter les "mount points".
 </p>
 <p>Dans yast, beaucoup d'actions doivent être activées ou validées en pressant
 des touches indiquées clairement en bas de l'écran. Donc suivez les inscriptions,
 n'hésitez pas à demander l'aide (en général F1) et ne vous en faites pas trop,
 puisque vous avez tout sauvegardé, il ne peut rien vous arriver de plus grave
 que de perdre trois jours de travail.
 </p>
 <p>Très clairement, vous ne pouvez pas savoir maintenant quelle est exactement
 la configuration dont vous avez besoin. Faites donc à peu près et prévoyez
 dans quelques mois de tout recommencer. Ceci n'est pas spécial pour linux.
 D'ailleurs, périodiquement, vous aurez à refaire tout, soit que vous ayez acheté
 un nouveau disque, soit que vous ayez simplement changé d'avis. Tous ca n'est
 pas grave.
 </p>
 <p>Si, comme moi, vous n'en êtes pas à la première installation, vos partitions
 sont peut-être déjà actives et correctes, il faut donc juste ajouter un point
 de montage (/ pour la partition Linux, /dosc ou /mnt/dosc de préférence pour
 la partition ms-dos). 
 </p>
 <sect2>Installer un Linux minimum
 <p>Il vaut toujours mieux installer d'abord le minimum. Avec la SuSE, vous
 avez un grand nombre d'installations type qui vous sont proposées. Choisissez
 l'installation de base. C'est la plus rapide et donc celle qui vous fait perdre
 le moins de temps. Vous finasserez plus tard.
 </p>
 <p>De plus, quand vous allez avoir à gérer les dépendances, ce sera plus simple.
 </p>
 <sect2>Les dépendances
 <p>C'est un sujet qui inquiète toujours les débutants (et pas eux seulement !).
 Assez curieusement, même dans les installations type de SuSE il y a des problèmes
 de dépendance. Prenez le temps de les examiner tranquillement.
 </p>
 <p>Les logiciels Linux sont fournis sous forme de "paquetages", dans des fichiers
 .rpm (Red hat et SuSE), .tgz (tout venant) ou .deb (debian). SuSE peut installer
 tout cela (en principe, je ne suis pas parvenu à faire installer un tgz par
 yast). Ces paquetages comprennent tous les fichiers nécessaires au programme
 sauf les "librairies" (les DLL de Windows) qui devraient se trouver sur votre
 disque et sont communes à beaucoup de programmes. La liste de ces librairies
 et indiquée dans le paquetage et yast sait la lire.
 </p>
 <p>Donc yast vérifie que vous avez bien sur votre disque les librairies nécessaires
 ou que vous avez prévu de les installer. il vérifie aussi que votre programme
 n'est pas incompatible avec un autre. par exemple le compilateur mini gcc est
 incompatible avec le gcc complet (ne me demandez pas pourquoi...). Yast vous
 indique alors &lsqb;EXCL&rsqb; et le programme qu'il faut supprimer. Il vous
 indique aussi dans quelle liste (désignée par une lettre, a, d, x...) se trouve
 ce programme en trop.
 </p>
 <p>Si yast peut tout seul se charger du travail (option "AUTO"), il va le faire,
 sinon il faut aller dans la liste (choisir/modifier une configuration) et désactiver
 le programme (vérifiez l'aide, la façon de faire peut changer d'une version
 à l'autre).
 </p>
 <p>En fin de compte, quand vous demandez l'installation, yast doit vous dire
 qu'il n'y a aucun problème de dépendance et lancer l'installation.
 </p>
 <p>Le deselect de la debian fonctionne un peu de la même façon.
 </p>
 <sect2>Suite de l'installation
 <p>Prenez votre mal en patience, si votre appareil est un peu ancien, l'installation
 complète peut durer plusieurs heures pendant lesquelles vous n'avez rien à
 faire qu'à regarder. Sur un appareil récent, en un quart d'heure tout est torché.
 </p>
 <p>Yast vous dit alors que c'est fini et qu'il va redémarer Linux. Méfiez-vous,
 c'est un redémarage "interne", qui marche toujours et qui ne prouve pas que vous
 pourrez démarrer Linux en allumant votre appareil, pour ca voir plus loin.
 </p>
 <p>Donc Linux démarre. Vous allez entrer le mot de passe root et un message
 vous indique qu'il y a probablement des choses à configurer et que donc yast
 va démarrer, ce qui se produit.
 </p>
 <p>Répondez alors aux questions sans trop vous faire de bile, tout cela pourra
 être refait plus tard. Une seule chose demande des précautions, mais là il
 ne faut pas se louper : l'installation de LILO (voir plus loin).
 </p>
 <p>Vous allez donc arriver tranquillement à la fin de l'installation. Là il
 vous indique que tous les logiciels n'ont pas pu être chargés, car ne se trouvant
 pas sur le cd en cours et il vous demande si vous voulez le faire maintenant.
 Dites oui !
 </p>
 <p>Yast va vous demander (selon ce que vous avez prévu d'installer) les CD
 2 et 3. Méfiez-vous, tant que l'installation ne sera pas complètement finie,
 vous ne pourrez pas récupérer le dernier CD (l'ouverture du cd est bloquée
 tant qu'il n'est pas démonté).
 </p>
 <p>En fin de compte, yast va vous annoncer qu'il doit mettre à jour une base
 de données en arrière plan. Laissez-le faire, sinon il va recommencer au prochain
 démarrage. C'est très long sur un 486... allez vous coucher et continuez demain.
 </p>
 <sect2>Loadlin
 <p>LILO est le "Linux Loader", c'est à dire le chargeur de linux. C'est lui
 qui est chargé de lancer Linux sur votre ordinateur.
 </p>
 <p>Enfin, ca c'est vrai si vous n'installez que linux. Si le dos est installé,
 LILO est dangereux. Ne l'utilisez pas avant d'être compétent pour cela (bientôt !).
 </p>
 <p>La méthode la plus robuste, la plus simple, celle qui marche toujours,
 est d'utiliser Loadlin.
 </p>
 <p>Pour cela, dans l'installation, quand on vous demande si vous voulez installer
 LILO, répondez NON.
 </p>
 <p>Ensuite, dès que vous avez la main, copiez le noyau sur la partition dos.
 </p>
 <p>Cherchez votre noyau. C'est un assez gros fichier (de 640Ko à plus d'un
 méga) appelé vmlinuz, zImage ou un nom du genre. Vous le trouverez sans doute
 à la racine de votre partition Linux, parfois dans un répertoire /boot.
 </p>
 <p>Vérifiez que vous avez accès à la partition dos. Elle doit être montée
 là où vous l'avez demandé (/dosc ou /mnt/dosc).
 </p>
 <p>Sachez d'abord que même si vous échouez complètement dans votre configuration,
 ce n'est pas grave, vous pouvez toujours démarrer du CD et revenir dans Linux,
 donc pas de stress.
 </p>
 <p>Créez maintenant dans votre partition dos un répertoire linux. Pour cela,
 venez sur cette partiton (la commande est la même que sous dos : cd). Faites
 attention, il n'y a plus de &bsol;, Linux utilise partout des /.
 </p>
 <p>Donc cd /mnt/dosc vous amène sur votre disque dos (et cela, même si c'est
 un autre disque physique que celui de Linux, surprise !). Vérifiez-le en tapant
 ls (l'équivalent Linux de DIR - notez que dir existe aussi).
 </p>
 <p>Faites mkdir linux et votre répertoire est créé. cd linux et vous êtes
 dedans. "cp /vmlinuz ." (il faut taper le point, il fait partie de la commande,
 mais pas "") et vmlinuz est copié dans votre répertoire, ce qui doit être facile
 à vérifier.
 </p>
 <p>C'est fini pour Linux, vous pouvez redémarrer... sous dos ! Faites donc
 Ctrl Alt Suppr pour arréter Linux proprement et lancez le dos.
 </p>
 <p>Sous dos, vérifiez que vous avez bien un répertoire &bsol;linux et qu'il
 contient un fichier vmlinuz.
 </p>
 <p>Venez maintenant sur le cd1 de SuSE. Vous allez trouver un répertoire "dosutils"
 qui contient lui-même un répertoire "loadlin". Copier dans c:&bsol;linux loadlin.exe
 et linux.bat.
 </p>
 <p>Vous n'avez plus qu'à modifier linux.bat pour qu'il corresponde à votre
 système : les bon noms de répertoire, le bon nom de noyau et surtout le bon
 nom de disque (hd pour les disques ide, sd pour les disques scsi, a, b, c pour
 les noms de disque et 1, 2... pour les numéros de partition. Si vous vous trompez,
 vous ne risquez rien de plus que de planter l'ordinateur et de redémarrer dos,
 ce qui n'est pas trop grave. Si vous ne savez pas quoi mettre, regardez les
 valeurs avec fdisk (celui de Linux). Ces valeurs sont aussi affichées au moment
 du démarrage de Linux.
 </p>
 <p>Dès que linux.bat est correct, quand vous le lancez Linux démarre. Si il
 vous demande une disquette, faites Entrée sans mettre de disquette et c'est
 tout (ca dépend des installations).
 </p>
 <sect2>LILO quand même
 <p>Dans Yast, system administration, kernel and boot configuration, LILO configuration
 vous allez trouver votre bonheur.
 </p>
 <p>Si vous n'avez que Linux sur votre appareil, vous pouvez installer LILO
 sur le MBR (Master Boot Record). Sinon c'est fortement déconseillé. Installez-le
 donc sur le "boot record of the root partition".
 </p>
 <p>Pendant que vous y êtes, sachez que Lilo va démarrer par défaut la première
 configuration qui figure dans la liste, à vous de choisir.
 </p>
 <p>Sachez également que pour que LILO démarre sans problème il faut absolument
 que la totalité de la partition Linux (racine) puisse être lue par le BIOS,
 cela signifie en général qu'elle doit être en entier en dessous de 1Go, même
 en dessous de 500Mo sur les appareils les plus anciens (j'en ai déjà parlé).
 Rien ne vous empêche de créer d'autres partitions pour Linux sur le reste du
 disque, bien sur. Quand vous serez un expert (c'est à dire meilleur que je
 ne suis au premier janvier 1999 !) vous pourrez finasser. pour l'instant, respectez
 cette règle ou démarrez avec loadlin.
 </p>
 <p>Maintenant il ne vous reste plus qu'à rendre amorcable votre partition
 linux. Ca peut être fait sous n'importe quel système (dos ou linux) avec fdisk.
 Le nom du programme et sa fonction sont les mêmes quel que soit le système.
 C'est ce programme qui gère les partitions (c'est lui qui est appelé par yast).
 </p>
 <p>Donc repérez votre partition Linux et rendez-la amorçable. Ayez quand même
 une disquette dos de démarrage avec fdisk dessus en cas d'erreur.
 </p>
 <p>A ce moment, quand vous allumez votre appareil, vous verrez :
 </p>
 <p>LILO...
 </p>
 <p>Dans quelques secondes le système par défaut va démarrer (dos ou linux,
 selon votre choix). sinon tapez le nom du système que vous voulez démarrer.
 La touche TAB vous rappelle les noms que vous avez choisi.
 </p>
 <p>Méfiez-vous, le clavier est encore en QWERTY, si vous avez choisi "windows"
 comme nom, tapez "zindozs" !
 </p>
 <sect>Memento
 <p>Il y a de très nombreuses commandes dans Linux, qui ne sont pas toutes
 simples à comprendre, tant s'en faut. Elles sont réparties selon les répertoires
 standard Linux (voir ailleurs dans mes documents).
 </p>
 <sect1>Remarque
 <p>Nous connaissons tout find, qui permet de trouver l'emplacement d'un fichier
 (comme sous dos), mais sur un gros disque, le résultat est long à venir. Je
 viens de découvrir "locate" qui donne le même résultat en un éclair sur un système
 correctement configuré (ce qui est le cas de la suse), qui possède donc un
 index de tous ses fichiers. locate xxx vous trouve xxx immédiatement.
 </p>
 <p>Ce mémento de Linux est conçu pour les utilisateurs de msdos. Le fait de
 posséder Windows est un plus. Je ne sais pas pour les autres versions, mais
 la traitement de texte write (wordpad) fourni avec windows NT sais parfaitement
 lire les fichiers texte Linux du C.D. (ce n'est pas le cas du bloc note)
 </p>
 <p>Dans chaque CD de n'importe quelle distribution, il y a un fichier de nom
 variable (index...) qui donne le contenu du disque.
 </p>
 <sect1>Commandes de bash 
 <p>L'éditeur de ligne est configuré dans le fichier &tilde;/.inputrc. Les
 noms symboliques suivants sont reconnus :
 </p>
 <p>RUBOUT, DEL, ESC, LFD, NEWLINE, RET, SPC, SPACE, TAB
 </p>
 <p>rubout = touche d'effacement par retour en arrière.
 </p>
 <p>Dans le fichier .inputrc, la syntaxe est la suivante :
 </p>
 <p>
 <descrip>
  <tag>C-x</tag>signifie control x, 
  <tag>M-x</tag>signifie Méta-X (Alt pour le PC)
 </descrip></p>
 <p>Les lignes blanches sont ignorées, les lignes commencant par &num; sont
 des commentaires, les lignes commençant par &dollar; indiquent une structure
 conditionnelle.
 </p>
 <p>Les autres lignes sont des affectations de touches et des affectations
 de variables.
 </p>
 <p>Affectation de touches : Le nom de la touche suivi de la commande qui lui
 est affectée.
 </p>
 <sect2>Exemple
 <p>
 <descrip>
  <tag>Control-u</tag>: universal-argument
  <tag>Meta-Rubout</tag>: backward-kill-word
  <tag>control-o</tag>: &dquot;&gt;&amp;output &dquot;
  <tag>set nomvariable</tag>valeur pour affecter une variable (&dquot;on&dquot;
 ou &dquot;off&dquot;)
 </descrip></p>
 <sect2>Symboles internes de bash et clé correspondant par défaut (extraits) :
 <p>
 <descrip>
  <tag>beginning-of-line</tag>(C-a)
  <tag>end-of-line</tag>(C-e)
  <tag>forward-char</tag>(C-f)
  <tag>backward-char</tag>(C-b)
  <tag>idem</tag>pour word (M-f ou b)
  <tag>delete-char</tag>(C-d)
  <tag>kill-line</tag>(C-k)
  <tag>complete</tag>(TAB) essaie de terminer la ligne. Très important, on y
 pense rarement quand on vient de dos.
  <tag>possible-completions</tag>(M-?)
  <tag>complete-filename</tag>(M-/)
  <tag>complete-command</tag>(M-!)
 </descrip></p>
 <p>En fait je ne suis pas arrivé à configurer la touche DEL pour qu'elle efface
 le caractère sous le curseur (au lieu de control-d), il y a donc quelque chose
 qui m'échappe.
 </p>
 <sect2>Commandes internes (extraits)
 <p>
 <descrip>
  <tag>alias</tag>création d'un alias
  <tag>bg &lsqb;jobspec&rsqb;</tag>exécute job en arrière plan
  <tag>bind</tag>affecte une fonction à une touche
  <tag>cd</tag>change directory
  <tag>fg</tag>exécute un job en avant plan
  <tag>help x</tag>aide sur la commande interne x
  <tag>pwd</tag>print working directory
  <tag>readonly</tag>lecture seule pour une commande
  <tag>set</tag>assigner variable
  <tag>times</tag>heure et temps de connection
  <tag>type X</tag>type de la commande X
  <tag>unalias</tag>efface un alias
  <tag>unset</tag>désassigne une variable
 </descrip></p>
 <sect1>Répertoire /bin, commandes générales
 <p>
 <descrip>
  <tag>cat</tag>affiche le contenu d'un fichier. cat xxx envoie à l'écran le
 fichier xxx. Si celui-ci n'est pas du texte, "reset" peut vous permettre de récupérer
 un écran.cat xxx | lpr permet d'envoyer un fichier à l'impression, man prog
 | lpr permet d'imprimer un fichier man.
  <tag>chgrp</tag>permet de changer le groupe d'un fichier
  <tag>chmod</tag>permet de changer le "mode" de protection d'un fichier. Le détail
 est trop complexe pour le mettre ici, mais c'est surement quelque part dans
 mon site (je ne sais pas encore comment mettre des renvois entre documents
 différents).
  <tag>chown</tag>changement du propriétaire d'un fichier
  <tag>cp</tag>copie simple de fichiers (copy)
  <tag>date</tag>date système.
  <tag>dd</tag>permet la copie de secteurs et de fichiers. puissant et dangereux
 mais souvent indispensable. Les options sont entre autre if (in file) et of
 (out file).
  <tag>df</tag>disk free, espace disque sur toutes les partitions. Rapprocher
 de "du", qui donne l'usage de la partition en cours.
  <tag>dmesg</tag>une fonction passionnante, affiche les messages qui défilent
 si vite au lancement du système; Pas très complet, hélas
  <tag>echo</tag>comme pour le dos, envoie un texte à l'écran.
  <tag>false</tag>drapeau "faux" pour la programmation bash.
  <tag>kill</tag>kill -9 &lt;pid&gt; permet de tuer (arréter) un processus désigné
 par son numéro, le "pid", que l'on obtient par "ps".
  <tag>ln</tag>permet de créer un lien vers un fichier (windows dirait "un raccourci").
 Vois man ln.
  <tag>login</tag>je ne sais pas trop à quoi sert cette fonction, mais le "login"
 est le nom que l'on utilise pour se connecter.
  <tag>ls</tag>c'est le "dir" de linux. On fait plein de choses avec, mais ce n'est
 pas toujours facile.
  <tag>mkdir</tag>sert à créer les répertoires. Comme souvent sous linux, on
 peut mettre plusieurs noms de répertoires sur la même ligne (mkdir un deux
 trois).
  <tag>mknod</tag>je ne sais pas trop à quoi ca sert, donc méfiance ! Un "inode"
 est un descripteur de fichier dans le système (une entrée de la fat, pour les
 spécialistes msdos). Avec mknod on peut créer un inode spécial. Si vous ne
 savez pas pourquoi, n'essayez pas !
  <tag>more</tag>plus ou moins inutile. De nos jours on utilise less pour voir
 les fichiers.
  <tag>mount</tag>permet de "monter" une partition ou un lecteur (disquette, zip
 ou cd) dans votre arborescence/système de fichier. Voir /etc/fstab.
  <tag>mv</tag>move. Permet de déplacer ou de renommer un fichier.
  <tag>ps</tag>donne la liste des processus actifs, ce qui permet de savoir ce
 qui se passe, et, éventuellement, de "tuer" (kill) un processus qui ne répond
 plus.
  <tag>pwd</tag>present working directory : répertoire courant
  <tag>rm</tag>remove. efface fichiers et répertoires. Attention, il nexiste
 pas d'unerase, un fichier effacé l'est définitivement !
  <tag>rmdir</tag>supprime un répertoire.
  <tag>sed</tag>éditeur de texte en ligne, surtout utile pour faire, avec bash,
 des programmes puissants et illisibles !
  <tag>setserial</tag>configure un port série (comme "mode", sous dos).
  <tag>sh</tag>c'est le petit nom de bash, le "sh"ell, le programme qui vous obéit
 au démarrage en mode texte. En fait, sh est en général un lien vers le shell
 que vous avez choisi.
  <tag>stty</tag>en rapport avec la communication par les ports série et la console.
  <tag>su</tag>"super user". Quans vous êtes connecté pour le travail courant (en
 utilisateur "normal" n'est-ce pas ?), permet de devenir "super user", c'est à dire
 administrateur, root ! le temps d'effectuer une commande. Ne pas oublier de
 se déconnecter après usage (control D).
  <tag>sync</tag>permet d'écrire tous les tampons sur le disque, si on craint
 un crash.
  <tag>true</tag>ca doit être le contraire de "false".
  <tag>umount</tag>si vous voulez enlever le cdrom, contraire de mount.
  <tag>uname</tag>donne le nom du système en cours, à mon avis, ca doit être
 "linux" !
 </descrip></p>
 <sect1>Répertoire /usr/bin les commandes moins importantes
 <p>
 <descrip>
  <tag>cpio</tag>copie en entrée sortie. bof...
  <tag>tar</tag>y a pas de fichier man, mais y en a un info. Donc "info tar" va
 vous donner les milliers d'option de cette commande de sauvegarde. On l'utilise
 toujours avec les mêmes, mais je les ai oubliées... ne pas mettre de - devant
 les options.
  <tag>gzip</tag>gnu zip, comme pkzip.
  <tag>gunzip</tag>(lien vers gzip) uniquement pour les ignares qui se croient
 encore sous dos. Sous linux, le même programme zippe et désippe !
  <tag>zcat</tag>(lien vers gzip) sont ajoutées pour permettre une remise en
 route d'un système endommagé
  <tag>domainname</tag>nom de domaine de votre pc dans le réseau.
  <tag>hostname</tag>le nom de votre pc dans le réseau, le mien c'est charles.
  <tag>netstat</tag>statistiques réseau.
  <tag>ping</tag>la fonction la plus utile pour le réseau. ping 192.168.000.3
 permet de voir si l'ordinateur en question peut être joint par le réseau (il
 peut).
 </descrip></p>
 <sect1>Répertoire /sbin : binaires systèmes
 <sect2>Commandes générales :
 <p>
 <descrip>
  <tag>clock</tag>affiche une pendule à aiguilles dans une session X
  <tag>getty</tag>j'en ai beaucoup entendu parler, sans très bien comprendre
 de quoi il s'agit. En gros la gestion des consoles (écran/clavier), une par
 session.
  <tag>init</tag>c'est le programme d'initialisation. A manier avec précautions.
  <tag>update</tag>je ne sais pas trop, mais je viens de lancer updatedb (en
 un seul mot) et j'en espère la mise à jour de la base de donées de locate.
 update tout court semble utilisé dans un script pour forcer la prise en compte
 immédiate du résultat.
  <tag>mkswap</tag>a vue de nez, doit servir à créer un disque swap, ne pas utiliser
 sans savoir !
  <tag>swapon swapoff</tag>activation ou désactivation du swap. A réserver aux
 initiés.
  <tag>telinit</tag>une variante d'init.
 </descrip></p>
 <sect2>Commandes d'extinction :
 <p>
 <descrip>
  <tag>fastboot fasthalt halt reboot shutdown</tag>démarrage ou arrêt du système.
 </descrip></p>
 <sect2>Commandes de gestion du système de fichiers :
 <p>
 <descrip>
  <tag>fdisk</tag>permet de créer et de gérer les partitions.
  <tag>fsck fsck.*</tag>file check, le chkdsk de dos, en beaucoup plus évolué.
 ne fonctionne qu'en init 1.
  <tag>mkfs mkfs.*</tag>création d'un système de fichier (format, sous dos),
 un ou plus parmi ext, ext2, minix, msdos, xia et peut-être d'autres
 </descrip></p>
 <sect2>Commandes réseau :
 <p>
 <descrip>
  <tag>ifconfig</tag>configuration du réseau.
  <tag>route</tag>configuration réseau.
  <tag>badblocks dumpe2fs e2fsck mke2fs mklost+found tune2fs</tag>programmes
 de mise au point réservés aux spécialistes.
  <tag>lilo</tag>parfait pour démarer un disque dur ou le planter.
 </descrip></p>
 <sect1>Divers
 <p>
 <descrip>
  <tag>crontab</tag>manipule les crontabs, qui indiquent des tâches à accomplir
 périodiquement.
  <tag>ddate</tag>date grégorienne &gt; date discordienne ( ?)
  <tag>dumpkeys</tag>affiche la table du clavier
  <tag>env</tag>exécute un programme dans un environnement modifié
  <tag>expr</tag>évalue des expressions
  <tag>fuser</tag>file users identifie les processus utilisant un fichier donné.
  <tag>gawk</tag>langage de programmation
  <tag>getfilename</tag>filtre pour gestion du courrier
  <tag>getkeycodes</tag>tableau des codes de touches
  <tag>groups</tag>affiche la liste des groupes auquels appartient un utilisateur
  <tag>hostid</tag>affiche ou règle un numéro d'identification
  <tag>id</tag>identification de l'utilisateur
  <tag>ipcrm</tag>supprime une ressource
  <tag>ipcs</tag>affiche les ressources
  <tag>kbd_mode</tag>affiche ou modifie un aspect du clavier
  <tag>last</tag>liste les derniers login
  <tag>ldd</tag>linker pour programmation
  <tag>less</tag>lesskey lesspipe.sh less or more... amélioration de more
  <tag>loadkeys</tag>charge une table de traduction de clavier
  <tag>locate</tag>lit dans un index la localisation d'un fichier.
  <tag>logger</tag>interface avec le système de &dquot; log &dquot;
  <tag>logname</tag>nom de l'utilisateur loggé
  <tag>man</tag>manuel en ligne
  <tag>mapscrn</tag>comfiguration de l'affichage
  <tag>mattrib</tag>équivallents msdos d'attrib
  <tag>mcookie</tag>générateur de nombre aléatoire pour le système X
  <tag>md5sum</tag>somme de contrôle
  <tag>mesg</tag>contrôle d'accès à la console
  <tag>namei</tag>gestion des noms syboliques
  <tag>newgrp</tag>log in to a new group
  <tag>nice</tag>gestion des priorités de processus
  <tag>nohup</tag>permet l'exécution d'une commande en tâche de fond, même après
 logout, la console est écrite dans un fichier
  <tag>passwd</tag>gestion du mot de passe
  <tag>pstree</tag>arbre de processus
  <tag>renice </tag>modification des priorités
  <tag>reset </tag>réinitialise le terminal. A essayer si vous ne pouvez plus
 rien voir à la console (le taper en aveugle)
  <tag>resizecons </tag>taille console
  <tag>script </tag>enregistre tous ce qui est affiché pendant une session
  <tag>selection </tag>couper/coller entre consoles
  <tag>sessreg </tag>pour utmp/wtmp?
  <tag>sleep</tag>
  <tag>snice@</tag>
  <tag>sort</tag>
  <tag>split</tag>
  <tag>splitvt</tag>
  <tag>strings</tag>
  <tag>sum</tag>
  <tag>superformat</tag>
  <tag>sysvbanner</tag>
  <tag>tac</tag>
  <tag>tail</tag>
  <tag>tee</tag>
  <tag>test</tag>
  <tag>time</tag>
  <tag>tload</tag>
  <tag>top</tag>
  <tag>tput</tag>
  <tag>tr</tag>
  <tag>tsort</tag>
  <tag>tty</tag>
  <tag>tunelp</tag>
  <tag>ul</tag>
  <tag>unexpand</tag>
  <tag>uniq</tag>
  <tag>unjpeg</tag>
  <tag>arch</tag>renvoie 1386 ou 1486 selon le processeur
  <tag>bash</tag>Bourne again shell
  <tag>cal</tag>affiche un calendrier
  <tag>setkeycodes</tag>affecte un code à une touche
  <tag>setleds</tag>voyants du clavier
  <tag>setmetamode</tag>définit la gestion des touches de controle du clavier
  <tag>xargs</tag>transmet des arguments à une commande
  <tag>zdump</tag>affiche l'heure pour la "time zone" indiquée
 </descrip></p>
 <sect1>Gestion de fichiers
 <p>
 <descrip>
  <tag>basename</tag>extrait le nom de fichier à partir du chemin complet
  <tag>cat</tag>affiche un fichier ou concatène plusieurs fichiers
  <tag>cksum</tag>calcule le chksum et le nombre d'octets d'un fichier
  <tag>col</tag>filtre les line feed
  <tag>colcrt</tag>filtre pour l'écran
  <tag>colrm</tag>filtre - supprime des colonnes dans un fichier texte
  <tag>column</tag>filtre - formate la sortie en colonnes
  <tag>comm</tag>filtre - compare des fichiers triés
  <tag>cp</tag>copie un fichier (copy)
  <tag>cpio</tag>copie dans ou à partir d'archives (disque A1)
  <tag>csplit</tag>découpe un fichier en morceaux
  <tag>cut</tag>renvoie une partie seulement de chaque ligne d'un fichier
  <tag>dd</tag>copie un fichier avec conversion
  <tag>df</tag>disk free - espace libre sur le disque
  <tag>dirname</tag>renvoie le chemin d'accès d'un fichier
  <tag>dsplit</tag>coupe des fichiers binaires en morceaux tenant sur une disquette
  <tag>du</tag>espace utilisé par chaque répertoire
  <tag>file</tag>donne le type d'un fichier
  <tag>filesize</tag>donne la taille d'un fichier
  <tag>find</tag>cherche des fichiers dans une arborescence
  <tag>fold</tag>raccourcit des lignes
  <tag>egrep</tag>cherche une expression dans un fichier (disque A1)
  <tag>grep</tag>Cherche un texte dans un fichier et affiche les lignes qui le
 contiennent
  <tag>head</tag>renvoie les premières lignes des fichiers indiqués
  <tag>hexdump</tag>filtre hex mais aussi bin, ascii, octal, décimal
  <tag>ln</tag>link - donne plusieurs noms à un fichier
  <tag>look</tag>cherche des lignes dans un fichier trié
  <tag>ls</tag>liste le contenu d'un répertoire
  <tag>mkdir</tag>créer un répertoire
  <tag>more</tag>affiche par page (more)
  <tag>mount</tag>monte un système de fichiers
  <tag>mv</tag>move / rename
  <tag>nl</tag>nombre de lignes d'un fichier
  <tag>od</tag>dump de fichier en octal
  <tag>paste</tag>assemble les lignes de plusieurs fichiers
  <tag>patch</tag>applique un patch (fichier .diff) à l'original
  <tag>pathchk</tag>teste la validité d'un nom de fichier
  <tag>pwd</tag>print working directory (cd)
  <tag>rev </tag>inverse les caractères des lignes d'un fichier (?)
  <tag>rm</tag>remove - efface un fichier rm XX/* -R efface un répertoire et
 tout son contenu (danger !)
  <tag>rmdir</tag>efface un répertoire vide
  <tag>tar</tag>système d'archivage (A)
  <tag>touch</tag>change la date des fichiers. Un fichier non existant est créé
 vide
  <tag>umount</tag>démonte un système de fichiers
  <tag>whatis</tag>whatis xxx affiche le résumé de la page man de xxx
  <tag>wc</tag>word count. nombre de mots et de lignes d'un fichier (texte)
  <tag>whereis</tag>comme which avec quelques variantes
  <tag>which</tag>indique le chemin d'accès d'une commande : which which donne
 /usr/bin/which.
  <tag>xcopy</tag>comme dos
 </descrip></p>
 <sect1>Editeurs
 <p>Il y en a des dizaines disponibles.
 </p>
 <p>
 <descrip>
  <tag>ed red</tag>editeur de texte
  <tag>Elvis</tag>editeur de texte
  <tag>elvprsv</tag>récupération de fichiers après un crash d'elvis (en principe
 automatique)
  <tag>elvrec</tag>récupération de fichiers après un crash d'elvis (en principe
 automatique
  <tag>emacs@</tag>éditeur de texte puissant
  <tag>emacs-19.31-with-x11</tag>idem
  <tag>ex</tag>éditeur de texte
  <tag>fmt</tag>formateur de texte
  <tag>restoretextmode</tag>sauve et restore les tampons de mode texte
  <tag>sed</tag>stream editor
  <tag>vi</tag>éditeur de texte basique existant sur tous les unix et qu'il faut
 donc connaitre un minimum.
  <tag>view</tag>éditeur de texte
 </descrip></p>
 <sect1>Administration
 <p>
 <descrip>
  <tag>apropos</tag>recherche dans une base de données
  <tag>at,</tag>batch, atq, atrm plannification
  <tag>biff</tag>avis de message ne fait pas partie de l'installation de base.
 Je l'indique ici car son absence (normale ici) entraine un message d'erreur
 de bash au login.
  <tag>bpe</tag>patche un fichier binaire
  <tag>chfn,</tag>informations sur l'usager
  <tag>chgrp</tag>change le groupe propriétaire d'un fichier
  <tag>chmod</tag>change les permissions d'accès d'un fichier
  <tag>chown</tag>change la propriété d'un fichier
  <tag>chsh</tag>change le shell en cours
  <tag>clear</tag>efface l'écran (cls)
  <tag>date</tag>donne ou change la date système
  <tag>dialog</tag>boite de dialogue dans un script
  <tag>dircolors</tag>règle les paramètres de couleur de ls
  <tag>dmesg</tag>renvoie les messages de boot pour examen ultérieur
  <tag>dnsdomainname</tag>donne le nom de domaine du système
  <tag>echo</tag>affiche une ligne de texte (echo)
  <tag>false</tag>renvoie un code de sortie de 1 (échec)
  <tag>free</tag>free mem
  <tag>getopt getoptprog</tag>analyse les options passées à un script
  <tag>hostname</tag>donne le nom réseau de l'appareil
  <tag>kill killall</tag>arrête un processus
  <tag>login</tag>debut d'une session
  <tag>mkfifo</tag>fifo=first in first out, crée un type de pile.
  <tag>mknod</tag>crée un fichier spécial
  <tag>mt</tag>GNU gestion des dérouleurs de bande magnétique
  <tag>ps</tag>donne l'état des processus (process status)
  <tag>setserial</tag>configure un port série (mode)
  <tag>setterm</tag>configure le terminal
  <tag>stty</tag>affiche et change les réglages de ligne du terminal
  <tag>su</tag>substitute user - permet de se substituer à un utilisateur (par
  <tag>exemple</tag>appeler root temporairement ?
  <tag>sync</tag>flush les tampons mémoires vers le disque (pour la mise au point
 de programmes)
  <tag>true</tag>renvoie un code de sortie de 0
  <tag>uname</tag>affiche le nom du dos (sans doute &dquot; LINUX &dquot;)
  <tag>updatedb</tag>met à jour la base de données de locate.
  <tag>uptime</tag>donne l'heure, la durée d'utilisation du système et sa charge
  <tag>users</tag>liste des utilisateurs
  <tag>vmstat</tag>statistiques de la mémoire virtuelle
  <tag>w</tag>affiche une liste des utilisateurs et de qu'ils font. BEWARE Big
 brother is watching you !
  <tag>wall</tag>write all, écrit à tous les utilisateurs
  <tag>who</tag>donne la liste des utilisateurs loggés (ou le nombre et la nature
 des xterm)
  <tag>whoami</tag>quel est mon nom de login
  <tag>write</tag>envoie un message (par sendmail) à un autre utilisateur
 </descrip></p>
 <sect1>Fontes de caractères
 <p>
 <descrip>
  <tag>restorefont</tag>corrige une fonte corrompue
  <tag>setfont</tag>change la fonte
 </descrip></p>
 <sect1>Compression de fichiers
 <p>
 <descrip>
  <tag>compress</tag>(voir uncompress et zcat, pack, compact) compresse les fichiers
 sous forme .z (genre pkzip)
  <tag>fiz</tag>répare archive zoo
  <tag>funzip</tag>filtre pour unzipper
  <tag>gz</tag>gunzip@ compresseurs
  <tag>gzexe</tag>compresse les exécutables en place (restent exécutables)
  <tag>unarj</tag>
  <tag>uudecode</tag>
  <tag>uuencode</tag>
  <tag>unprotoize</tag>
  <tag>unshar</tag>
  <tag>unzip</tag>
  <tag>unzipsfx</tag>permet de faire des archives auto-extractibles
  <tag>uz</tag>unzip
  <tag>zcat</tag>équivallent à gzip
  <tag>zcmp zdiff</tag>compare les fichiers comprimés
  <tag>zforce</tag>force une extension .gz pour les fichiers zippés qui l'auraient
 perdue
  <tag>zgrep</tag>recherche dans des fichiers compressés
  <tag>zip</tag>
  <tag>zipgrep</tag>recherche dans des fichiers compressés
  <tag>zipinfo</tag>
  <tag>zipnote</tag>
  <tag>zipsplit</tag>
  <tag>zic</tag>gestion de time zone
  <tag>zless</tag>
  <tag>znew</tag>prends un fichier .Z et en fait un fichier .gz
  <tag>zoo</tag>programme de compression
 </descrip></p>
 <sect1>Imprimante
 <p>
 <descrip>
  <tag>banner</tag>imprime une bannière
  <tag>lp0</tag>line printer 0 
  <tag>lpc</tag>gestion de l'impression
  <tag>lpq</tag>line printer queue
  <tag>lpr</tag>(PRINT) imprime un fichier
  <tag>lprm</tag>supprime des impressions
  <tag>pr</tag>impression formatée (numéros de page, titres)
  <tag>printenv</tag>imprime l'environnement
  <tag>printf</tag>impression
 </descrip></p>
 <sect1>Disquettes
 <p>
 <descrip>
  <tag>diskcopy</tag>copie de disquette linux (boot, par exemple) (diskcopy)
  <tag>fdformat</tag>setfdprm /dev/fd0 1440/1440
  <tag>fdmount</tag>monte un lecteur de disquette
  <tag>fdrawcmd</tag>envoie des commandes de bas niveau à un lecteur de disquettes
  <tag>floppycontrol</tag>controles des disquettes (pour script)
  <tag>getfdprm</tag>lit l'état d'une disquette
  <tag>mcheck</tag>vérification de disquette
  <tag>setfdprm </tag>configuration disquette
 </descrip></p>
 <sect1>Spécial msdos
 <p>
 <descrip>
  <tag>fdformat</tag>/dev/fd0 formate la disquette au format msdos (ou autre)
  <tag>fromdos</tag>textes dos &gt; unix
  <tag>mbadblocks</tag>msdos - contrôle une disquette
  <tag>mcd</tag>changer répertoire msdos
  <tag>mcomp</tag>?
  <tag>mcopy</tag>copie msdos
  <tag>mdel</tag>del msdos
  <tag>mdeltree</tag>deltree msdos
  <tag>mdir</tag>dir msdos
  <tag>mformat</tag>format dos
  <tag>mkfs</tag>-t msdos /dev/fd0 monte une disquette msdos
  <tag>mlabel</tag>label dos
  <tag>mmd</tag>md dos
  <tag>mmount</tag>monter un disque msdos
  <tag>mmove</tag>move dos
  <tag>mrd</tag>rd dos
  <tag>mread</tag>obsolete - utiliser mcopy
  <tag>mren</tag>ren dos
  <tag>mtest@</tag>configuration de mtools
  <tag>mtools</tag>n'est pas une commande. Man mtools liste les outils dos
  <tag>mtype</tag>type dos
  <tag>mwrite</tag>obsolete - utiliser mcopy 
  <tag>todos</tag>
 </descrip></p>
 <sect>Résumé du guide des outils SGML 
 <p>Par Matt Welsh.  mis à jour par Greg Hankins. traduit et résumé par Jean-Daniel
 Dodin. Ce document est un résumé du guide d'utilisation des outils sgml, qui
 permettent de diffuser un même texte en plusieurs formats (html, TeX...) version
 des outils 0.99.0. 
 </p>
 <sect1>Introduction 
 <p>Les SGML-Tools permettent d'écrire des textes et ensuite de les formater
 en multiples formats : groff, LaTeX, HTML, GNU info, LyX, et RTF. 
 </p>
 <sect2>Ce document 
 <p>Ce document est écrit avec les outils SGML (bien sur!). Il contient tout
 ce qu'il faut savoir - et ce qui ne s'y trouve pas se trouve dans le guide
 complet (en anglais), disponible avec les outils. 
 </p>
 <sect2>Jeu de caractères ISO 8859-1 
 <p>Le jeu de caractères ISO 8859-1 (latin1) peut (et doit, en français) être
 utilisé en texte pur, LaTeX, HTML, LyX, et RTF (GNU info peut-être un jour).
 
 </p>
 <p>&percnt; sgml2txt -l bidule.sgml
 </p>
 <p>Si j'ai bien compris, les instructions ci-dessus concernent ceux qui doivent
 écrire les caractères sous forme de code d'échappement dans le texte, sinon,
 si vous les entrez dans le texte source, ils seront automatiquement traduits
 quand ce sera nécessaire (utilisez la bibliothèque emacs iso-sgml.el). 
 </p>
 <sect1>Écrire avec les outils SGML 
 <p>Le fichier <tt>example.sgml</tt> vous donne un exemple et un modèle. Imprimez le
 document pouvoir le comparer avec le source. 
 </p>
 <sect2>Concepts de base 
 <p>Le source est composé de texte normal et de &dquot;balises&dquot; encadrées
 par <tt>&lt;</tt> et <tt>&gt;</tt>.  Une balise indique simplement le début ou la fin d'un élément,
 comme une section, un paragraphe... 
 </p>
 <p>Par exemple, pour avoir <bf>ce texte en gras</bf>, j'ai tapé 
 </p>
 <p>Par exemple, pour avoir &lt;bf&gt;ce texte en gras&lt;/bf&gt;,...
 </p>
 <p>dans le source. 
 </p>
 <p>Il y a une forme abrégée : 
 </p>
 <p>Par exemple, pour avoir &lt;bf/ce texte en gras/,...
 </p>
 <p>La balise de fin est facultative dans certains cas, par exemple pour les
 sections.
 </p>
 <sect2>Caractères spéciaux 
 <p>Pour avoir dans un texte <tt>&lt;bidule&gt;</tt> (c'est à dire une balise bidule
 encadrée), Il faut taper <tt>&amp;lt;</tt> ce qui est une macro. J'ai donc tapé :
 </p>
 <p>&lt;tt&gt;&amp;lt;bidule&gt;&lt;/tt&gt;.
 </p>
 <p>Tout ce qui commence par un et commercial est en général une macro, comme
 <tt>&amp;percnt;</tt> pour donner &percnt;, etc. 
 </p>
 <p>Les macros les plus courantes sont : 
 </p>
 <p>
 <itemize>
  <item><tt>&amp;amp;</tt> pour &amp;,  
  <item><tt>&amp;lt;</tt> pour &lt;, 
  <item><tt>&amp;gt;</tt> pour &gt;, 
  <item><tt>&amp;etago;</tt> pour <tt>&lt;/</tt> 
  <item><tt>&amp;dollar;</tt> pour &dollar;, 
  <item><tt>&amp;num;</tt> pour &num;, 
  <item><tt>&amp;percnt;</tt> pour &percnt;, 
  <item><tt>&amp;tilde;</tt> pour &tilde;, 
  <item><tt>``</tt>et <tt>''</tt> pour guillemets simples, ou <tt>&amp;dquot</tt> pour des doubles &dquot;.
 Sur un clavier français, les guillemets simples ouvrants (`) indiqués au début
 de cette phrase s'obtiennent en faisant alt 7 puis espace. 
 </itemize></p>
 <sect2>Environnements Verbatim et Code 
 <p>L'élément <tt>verb</tt> permet de reproduire texto une partie de texte. 
 </p>
 <p>&lt;verb&gt;
 </p>
 <p>Un peu de texte ordinaire
 </p>
 <p>&lt;/verb&gt;
 </p>
 <p>L'environnement <tt>verb</tt> ne permet pas <em>tout</em> On doit faire dans l'environnement
 <tt>verb</tt> 
 </p>
 <p>
 <itemize>
  <item><tt>&amp;ero;</tt> pour avoir un et commercial 
  <item><tt>&amp;etago;</tt> pour <tt>&lt;/</tt>, 
  <item>ne pas utiliser <tt>&bsol;end&lcub;verbatim&rcub;</tt> dans un environnement <tt>verb</tt>
 car c'est ainsi que LaTeX termine <tt>verbatim</tt>
 </itemize></p>
 <p>L'environnement <tt>code</tt> ressemble à l'environnement <tt>verb</tt> sauf que des lignes
 horizontales sont ajoutées autour du texte, ainsi 
 </p>
 <p>
 <code>Voici un exemple de code   
 </code></p>
 <p>Vous devriez utiliser <tt>tscreen</tt> autour de <tt>verb</tt> : 
 </p>
 <p>&lt;tscreen&gt;&lt;verb&gt;
 </p>
 <p>Un peu de texte, pour voir
 </p>
 <p>&lt;/verb&gt;&lt;/tscreen&gt;
 </p>
 <p><tt>tscreen</tt> indente simplement le texte et règle la fonte de caractères sur
 <tt>tt</tt>. 
 </p>
 <p>L'environnement <tt>quote</tt> est comme <tt>tscreen</tt>, mais il ne modifie pas la fonte.
 
 </p>
 <sect1>Structure générale des documents 
 <sect2>Le préambule 
 <p>&lt;!doctype linuxdoc system&gt;
 </p>
 <p>&lt;article&gt;
 </p>
 <p>&lt;title&gt;Linux Bidule HOWTO
 </p>
 <p>&lt;author&gt;Norbert Ebersol, &lt;tt/nob@baz.com/
 </p>
 <p>&lt;date&gt;v1.0, 9 March 1994
 </p>
 <p>&lt;abstract&gt;
 </p>
 <p>This document describes how to use the &lt;tt/bidule/ tools to frobnicate
 </p>
 <p>bar libraries, using the &lt;tt/xyzzy/ relinker.
 </p>
 <p>&lt;/abstract&gt;
 </p>
 <p>&lt;toc&gt;
 </p>
 <sect2>Sections et Paragraphes 
 <p>Dans le document, les commandes suivantes sont disponibles: 
 </p>
 <p>
 <itemize>
  <item><tt>sect</tt>: Sections de premier niveau (c'est à dire  1, 2, etc.)  
  <item><tt>sect1</tt>: Sous-sections de deuxième niveau (1.1, 1.2, etc.) 
  <item><tt>sect2</tt>: troisième niveau 
  <item><tt>sect3</tt>: quatrième niveau 
  <item><tt>sect4</tt>: cinquième niveau 
 </itemize></p>
 <p>Après <tt>sect</tt> (ou <tt>sect1</tt>, <tt>sect2</tt>, etc.), vient le nom de la section 
 </p>
 <p>sect&gt;Introduction
 </p>
 <p>Le corps de la section doit commencer par <tt>&lt;p&gt;</tt>, ainsi : 
 </p>
 <p>&lt;sect&gt;Introduction
 </p>
 <p>&lt;p&gt; Guide de l'utilisateur...
 </p>
 <p>Pour signaler que vous avez terminé le titre. Ensuite, les paragraphes
 sont marqués par une ligne blanche. 
 </p>
 <p>Fin du premier paragraphe
 </p>
 <p>Et début du suivant
 </p>
 <sect2>Fin du document 
 <p>À la fin du document, utiliser 
 </p>
 <p>&lt;/article&gt;
 </p>
 <sect1>Références croisées<label id="cross-ref" >
 <p>Pour référencer une section, 
 </p>
 <p>&lt;sect1&gt;Introduction&lt;label id=&dquot;sec-intro&dquot;&gt;
 </p>
 <p>Et s'y référer  
 </p>
 <p>Voir section &lt;ref id=&dquot;sec-intro&dquot; name=&dquot;Introduction&dquot;&gt;
 pour une introduction
 </p>
 <p>Ceci remplace la balise <tt>ref</tt> par le numéro de section appelé <tt>sec-intro</tt>.
  L'argument <tt>name</tt> de <tt>ref</tt> est necessaire pour groff et HTML. 
 </p>
 <p>Par exemple, la présente section est <ref id="cross-ref" name="Références croisées" >. 
 </p>
 <p>Il y a aussi un élément <tt>url</tt> pour Universal Resource Locators, adresses
 web. Par exemple : 
 </p>
 <p>Vous pouvez trouver les documents HOWTO de Linux à &lt;url url=&dquot;http://sunsite.unc.edu/mdw/HOWTO/&dquot;
 name=&dquot;The Linux HOWTO INDEX&dquot;&gt;.
 </p>
 <p>L'argument <tt>url</tt> specifie l'URL elle-même. Un lien sera ajouté automatiquement.
 L'argument <tt>name</tt> est optionnel. Une variante est <tt>htmlurl</tt>, qui ne met en place
 l'URL qu'en mode html. 
 </p>
 <sect1>Fontes 
 <p>Les fontes sont les mêmes que pour LaTeX, mais ne sont pas reproduites
 en sorties texte pur, il vaut donc mieux ne pas trop identifier de texte de
 cette façon. En particulier, la balise <tt>tt</tt> donne une fonte à chasse constante
 ''machine à écrire'', <tt>bf</tt> pour <bf>caractères gras</bf> et <tt>em</tt> pour <em>italiques</em>. Il vaut
 mieux éviter les autres, qui n'existent pas dans tous les formats. 
 </p>
 <sect1>Listes 
 <p>
 <itemize>
  <item><tt>itemize</tt> Listes à puces comme celle-ci 
  <item><tt>enum</tt> Listes numérotées 
  <item><tt>descrip</tt> descriptions Chaque item dans <tt>itemize</tt> ou <tt>enum</tt> doit être marqué
 avec une balise <tt>item</tt>. Dans <tt>descrip</tt> la balise est particulière. Par exemple
 
 <p>&lt;itemize&gt;
 </p>
 <p>&lt;item&gt;Premier item.
 </p>
 <p>&lt;item&gt;Deuxième item.
 </p>
 <p>&lt;/itemize&gt;
 </p>
 </itemize></p>
 <p>Donne: 
 </p>
 <p>
 <itemize>
  <item>Premier item. 
  <item>Deuxième item. Ou, avec <tt>enum</tt>, 
 <p>&lt;enum&gt;
 </p>
 <p>&lt;item&gt;Premier item.
 </p>
 <p>&lt;item&gt;Deuxième item.
 </p>
 <p>&lt;/enum&gt;
 </p>
 </itemize></p>
 <p>Donne: 
 </p>
 <p>
 <enum>
  <item>Premier item. 
  <item>Deuxième item. 
 </enum></p>
 <p>Une liste <tt>descrip</tt> est légèrement différente, et un peu laide, mais peut
 être utile: 
 </p>
 <p>&lt;descrip&gt;
 </p>
 <p>&lt;tag/Gnats./ Bestioles agaçantes qui se baladent dans votre ventilateur
 </p>
 <p>&lt;tag/Gnus./ Bestioles agaçantes qui se baladent dans votre processeur
 </p>
 <p>&lt;/descrip&gt;
 </p>
 <p>Donne: 
 </p>
 <p>
 <descrip>
  <tag>Gnats. </tag>Bestioles agacantes qui se baladent dans votre ventilateur
 
  <tag>Gnus. </tag>Bestioles agacantes qui se baladent dans votre processeur
 
 </descrip></p>
 <sect1>Vérifier la syntaxe SGML 
 <p>&percnt; sgmlcheck bidule.sgml
 </p>
 <sect1>Formater les documents SGML 
 <p>Supposons que vous ayez le document <tt>bidule.sgml</tt> à formater, voici des exemples
 de méthode. 
 </p>
 <sect2>Texte pur sans accents 
 <p>&percnt; sgml2txt bidule.sgml
 </p>
 <sect2>Pages man, à formater avec <tt>groff -man</tt>
 <p>&percnt; sgml2txt -man bidule.sgml
 </p>
 <sect2>Document LaTeX (fichier dvi seul)
 <p>&percnt; sgml2latex bidule.sgml
 </p>
 <sect2>Sortie dvi, ps ou tex:
 <p><tt>-p</tt> option: 
 </p>
 <p>&percnt; sgml2latex -o dvi bidule.sgml
 </p>
 <p>&percnt; sgml2latex -o ps bidule.sgml 
 </p>
 <p>&percnt; sgml2latex -o tex bidule.sgml
 </p>
 <sect2>Sortie imprimante (dvi + tex + toc + log) 
 <p>&percnt; sgml2latex -dbidule.sgml
 </p>
 <p>et ensuite
 </p>
 <p>lpr bidule.dvi
 </p>
 <sect2>Document HTML
 <p>&percnt; sgml2html -l -L french -t 2 bidule.sgml
 </p>
 <p>Ceci va produire <tt>bidule.html</tt>, <tt>bidule-1.html</tt>, <tt>bidule-2.html</tt>, et ainsi de
 suite pour chaque section du document 
 </p>
 <p>Lisez <tt>bidule.html</tt>, le fichier de premier niveau avec votre navigateur,
 et vérifiez bien que tous les fichiers soient dans le même répertoire. Les
 documents HTML auront des boutons ``Previous'', ``Next'', and ``Contents''
 pour la navigation. Pour avoir ces boutons en français, rajoutez -l french
 sur la ligne de commande.
 </p>
 <p>Si vous voulez utiliser une image gif au lieu de texte pour les boutons,
 utilisez l'option sgml2html -img. Les fichiers gif sont dans /usr/lib/sgmltools/icons
 (si vous ne les trouvez pas là, regardez dans /usr/bin/sgml2*), ce sont des
 scripts perl et le répertoire est dans la variable &dollar;LibDir. 
 </p>
 <sect2>Document pour GNU Info
 <p>&percnt; sgml2info bidule.sgml
 </p>
 <sect2>Documents LyX 
 <p>&percnt; sgml2lyx bidule.sgml
 </p>
 <sect2>Sorties RTF 
 <p>&percnt; sgml2rtf bidule.sgml
 </p>
 <p>Cela produira des sorties <tt>bidule.rtf</tt>, <tt>bidule-1.rtf</tt>, <tt>bidule-2.rtf</tt>, etc.
 Un fichier par section. 
 </p>
 <sect1>Informations supplémentaires 
 <p>La version originale du guide contient d'autres conseils. 
 </p>
 <sect1>Utiliser LyX
 <p>LyX est un traitement de texte, sorte d'interface visuelle à LaTeX. Il
 a un mode sgml extrèmement efficace. Je n'utilise plus que ca !
 </p>
 <sect>Emacs QRG
 <p>Guide rapide de référence d'emacs. Ceci est un &dquot;Quick Reference Guide&dquot;,
 c'est à dire un &dquot;vade mecum&dquot; d'Emacs. De ce fait, il n'y a pas
 ici toutes les commandes, seulement les plus importantes, au moins pour moi
 en ce moment. 
 </p>
 <sect1>Généralités 
 <p>
 <descrip>
  <tag>C- </tag>Signifie de presser et de maintenir la touche Ctrl, 
  <tag>M- </tag>Signifie de presser et de maintenir la touche Méta (Alt sur PC
 - on peut aussi presser brièvement Echap). 
 </descrip></p>
 <p>Dans le texte en anglais, presque partout dans la doc, la touche nommée
 DEL est en fait la touche BACKSPACE (retour arrière) et non pas la touche Suppr
 comme on pourrait le penser. 
 </p>
 <p>Une &dquot;frappe complète&dquot; s'exécute immédiatement, une &dquot;frappe&dquot;
 attends une suite. Presque toutes les commandes admettent un multiplicateur.
 
 </p>
 <sect1>Commandes essentielles : 
 <p>Pour lancer emacs, taper simplement 'emacs'. 
 </p>
 <p>
 <descrip>
  <tag>C-g ('keyboard-quit') </tag>permet d'annuler les commandes en cours. 
  <tag>C-h </tag>donne de l'aide 
  <tag>C-x C-c </tag>sort d'emacs. 
  <tag>M-x </tag>suivi d'un nom de commande exécute la dite commande, 
  <tag>M-x standard-display-european </tag>donne les caractères accentués. Si
 ca ne marche pas, essayez : 
  <tag>(set-input-mode (car (current-input-mode)) (nth 1 (current-input-mode)) 0) (ou voir doc C- h i),  
</tag>
  <tag>M-x iso-accents-mode </tag>donne les caractères diacritiques 
 </descrip></p>
 <sect1>Complétion 
 <p>Dans le mini-buffer, 
 </p>
 <p>
 <descrip>
  <tag>TAB </tag>essaie de compléter la frappe, 
  <tag>SPC </tag>essai de compléter le mot, 
  <tag>? </tag>affiche les complétions possibles, 
  <tag>M-x TAB </tag>affiche la liste de toutes les commandes disponibles par
 M-x, 
 </descrip></p>
 <p>Quand une liste de complétion est affichée (et que la souris n'est pas
 disponible) page up ou M-v y place le curseur, on peut s'y déplacer et RET
 choisit. 
 </p>
 <sect1>Ecran : 
 <p>Les messages divers sont sauvegardés dans le buffer *Messages* dont le
 nombre de lignes est socké 'dans message-log-max'. 
 </p>
 <p>Dans la ligne d'état, en bas de l'écran,  
 </p>
 <p>
 <descrip>
  <tag>** </tag>buffer modifié, 
  <tag>&percnt;&percnt; </tag>buffer en lecture seule, 
  <tag>&percnt;* </tag>buffer en lecture seule modifié (?) 
 </descrip></p>
 <p>Le pourcentage indiqué en fin de ligne donne la position par rapport au
 début du texte. 
 </p>
 <p>
 <descrip>
  <tag>&lsqb;&lsqb; &rsqb;&rsqb; </tag>indique un appel récursif à emacs, 
  <tag>C-l ('recenter') </tag>recentre l'écran autour du curseur, 
  <tag>C-v </tag>page bas, 
  <tag>M-v </tag>page haut 
  <tag>ARG C-l </tag>recentre sur la ligne ARG (compté à partir du début si ARG
 est positif, de la fin si ARG est négatif, 
  <tag>C-x &lt; </tag>
  <tag>C-x &gt; </tag>déplace le texte dans le sens de la flèche
  <tag>C-M-l </tag>essaie de déplacer le texte intelligemment (affiche toute
 une fonction, par exemple), 
  <tag>M-x follow-mode </tag>fait déplacer ensemble deux fenêtres juxtaposées
 avec C-x 3
 </descrip></p>
 <sect1>Sortie d'emacs : 
 <p>
 <descrip>
  <tag>C-x C-c ('save-buffers-kill-emacs') </tag>sort d'emacs en sauvegardant
 les buffers à la demande, 
  <tag>C-z ('suspend-emacs') </tag>sort d'emacs en le laissant en arrière plan.
 Reprise par '&percnt;emacs' (sous bash, inutile sous X). 
 </descrip></p>
 <sect1>Insertion de caractères : 
 <p>Il suffit de taper pour les caractères ordinaires. 
 </p>
 <p>
 <descrip>
  <tag>C-q ('quoted-insert') </tag>suivi de tout caractère de controle insère
 celui-ci. Ca ne marche pas dans le mini buffer. Dans ce cas, écrire le texte
 dans le buffer normal, le sélectionner avec C-SPC et le curseur, le couper
 avec C-w et le coller ensuite dans le minibuffer avec C-y 
  <tag>C-q </tag>suivi de trois chiffre (octal) insère le caractère en question.
 
  <tag>DEL (donc BACKSPACE) ('delete-backward-char') </tag>sans commentaire,
 
  <tag>C-o ('open-line') </tag>insére une ligne, 
 </descrip></p>
 <sect1>Déplacement du curseur : 
 <p>
 <descrip>
  <tag>C-a ('beginning-of-line') </tag>
  <tag>C-e ('end-of-line') </tag>
  <tag>C-f (forward-char') </tag>
  <tag>C-b ('backward-char') </tag>
  <tag>M-f ('forward-word') </tag>
  <tag>M-b ('backward-word') </tag>
  <tag>C-n ('next-line') </tag>
  <tag>C-p ('previous-line') </tag>
  <tag>M-r ('move-to-window-line') </tag>met le pointeur à gauche à mi hauteur,
 
  <tag>M-&lt; ('beginning-of-buffer') </tag>
  <tag>M-&gt; ('end-of-buffer') </tag>
  <tag>M-x goto-char ('goto-char') </tag>il faut tout taper, même goto-char,
 emacs vous demande un chiffre et place le pointeur après le caractère de ce
 numéro, compté depuis le début du buffer. 
  <tag>M-x goto-line ('goto-line') </tag>il faut tout taper, même goto-char,
 emacs vous demande un chiffre et place le pointeur après la ligne de ce numéro,
 comptée depuis le début du buffer. 
 </descrip></p>
 <sect1>Recherche et remplacement : 
 <p>
 <descrip>
  <tag>C-s ('isearch-forward') </tag>en avant. recherche incrémentale. arrétée
 par C-g ou RET un deuxième C-g renvoie le pointeur d'où il venait. Retaper
 C-s cherche l'occurrence suivante, 
  <tag>C-r ('isearch-backward') </tag>en arrière, 
  <tag>C-s C-s </tag>cherche à nouveau la même chaîne, 
  <tag>C-s </tag>suivi de M-p ou M-n passe en revue les arguments de recherche
 déjà utilisés. Pour chercher LF (line feed, marque de paragraphe), tapez LFD,
 
  <tag>C-w </tag>copie le mot au pointeur dans la chaine de recherche, 
  <tag>C-y </tag>fait de même pour le reste de la ligne. 
 </descrip></p>
 <p>La recherche déplace le pointeur et marque l'emplacement précédent de ce
 pointeur. 
 </p>
 <p>
 <descrip>
  <tag>C-s RET CHAINE RET </tag>cherche pour CHAINE (C-r idem) 
  <tag>C-s RET C-w MOTS RET </tag>recherche les mots quelle que soient les ponctuations
 qui les séparent 
  <tag>C-M-s </tag>lance une recherche sur une expression régulière 
  <tag>M-x replace-string RET CHAINE RET NOUVCHAINE RET </tag>remplacement systèmatique
 après le curseur 
  <tag>M-&percnt; CHAINE RET NOUVCHAINE RET </tag>remplace avec question. Un
 argument numérique ne trouve que les mots entiers. Réponses à la question :
 
  <descrip>
   <tag>SPC </tag>remplacer 
   <tag>DEL (backspace) </tag>suivant 
   <tag>, (virgule) </tag>donne une chance de changer d'avis après remplacement
 
   <tag>RET </tag>termine la recherche 
   <tag>. (point) </tag>remplacer et terminer 
   <tag>! </tag>tout remplacer sans plus poser de question 
   <tag></tag>revoir le dernier changement 
  </descrip>
 </descrip></p>
 <sect1>Effacer du texte : 
 <p>
 <descrip>
  <tag>DEL ('delete-backward-char') </tag>
  <tag>C-d ('delete-char') </tag>
  <tag>C-k ('kill-line') </tag>coupe du pointeur à la fin de la ligne 
  <tag>C-x DEL </tag>coupe le début de la ligne 
  <tag>M-d ('kill-word') </tag>
  <tag>M-DEL ('backward-kill-word') </tag>
  <tag>M-&bsol;  </tag>efface les espaces et TAB autour du pointeur 
  <tag>M-SPC </tag>efface les espaces et TAB autour du pointeur et laisse un
 espace 
  <tag>C-x C-o ('delete-blank-line') </tag>toutes sauf une 
  <tag>C-w </tag>coupe région 
  <tag>M-k </tag>coupe jusqu'au prochain point 
  <tag>C-M-k </tag>coupe une expression lisp (sexp) 
  <tag>M-z CHAR </tag>coupe jusqu'au caractère 
 </descrip></p>
 <sect1>Registres : 
 <p>Un registre a un nom d'un seul caractère 
 </p>
 <p>
 <descrip>
  <tag>C-x r SPC R </tag>sauve la position du pointeur dans le registre R 
  <tag>C-x r j R </tag>envoie le pointeur à la position sauvée dans R (ou restaure
 fenêtre, cadre ou fichier) 
  <tag>C-x r s R </tag>copie région dans le registre R 
  <tag>C-x r r R </tag>copie le rectangle dans le registre R (avec un argument
 numérique, le coupe) 
  <tag>C-x r i R </tag>insére le texte ou le rectangle de R au pointeur 
  <tag>C-x r w R </tag>sauve la configuration des fenêtres dans R 
  <tag>C-x r f R </tag>sauve la configuration des cadres dans R 
 </descrip></p>
 <p>(set-register ?R '(file . NOM)) est la fonction lisp pour stocker le nom
 de fichier NOM (nom absolu, complet) 
 </p>
 <sect1>Signets : 
 <p>
 <descrip>
  <tag>C-x r m RET </tag>positionne un signet portant le nom du fichier 
  <tag>C-x r m SIGNET RET </tag>positionne un signet de nom SIGNET 
  <tag>C-x r b SIGNET RET </tag>saute au signet SIGNET 
  <tag>C-x r l </tag>liste les signets 
  <tag>M-x bookmark-save </tag>sauvegarde les signets dans un fichier spécial
 (pour d'autres commandes, voir doc) 
 </descrip></p>
 <sect1>Coller : 
 <p>
 <descrip>
  <tag>C-y ('yank') </tag>colle le dernier texte coupé ou copié - avec un argument
 numérique, colle un texte précédemment copié 
  <tag>M-y ('yank-pop') </tag>remplace un texte que l'on vient de coller par
 un texte précédemment coupé (il faut donc faire C-y avant) 
  <tag>M-w ('kill-ring-save') </tag>copie la région 
  <tag>C-M-w ('append-next-kill') </tag>ajoute la prochaine coupure à la précédente
 
  <tag>M-x append-to-buffer </tag>envoie une région dans un buffer spécifié 
  <tag>M-x prepend-to-buffer </tag>ajoute le texte devant le contenu actuel du
 buffer 
  <tag>M-x copy-to-buffer </tag>remplace le buffer par le texte 
  <tag>M-x insert-buffer </tag>insère le buffer en question au pointeur 
  <tag>M-x append-to-file </tag>ajoute la région au fichier indiqué 
 </descrip></p>
 <sect1>Défaire (undo) : 
 <p>
 <descrip>
  <tag>C-x u ('undo'). Egalement C-_</tag>
 </descrip></p>
 <sect1>Aide : 
 <p>
 <descrip>
  <tag>C-h ou F1 </tag>
  <tag>C-h k </tag>suivi d'une séquence de touche donne la signification de cette
 séquence 
  <tag>C-h b </tag>liste des affectations de touches 
  <tag>C-h a REGEXP RET </tag>('apropos-command') liste des commandes 
  <tag>C-h c TOUCHE </tag>indique l'affectation de TOUCHE 
  <tag>C-h k TOUCHE </tag>indique l'affectation de TOUCHE, plus en détail 
  <tag>C-h f FONCTION RET </tag>donne des informations sur la FONCTION 
  <tag>C-h i </tag>affiche le fichier info dont j'ai tiré ce résumé 
  <tag>C-h l </tag>affiche une description des 100 derniers caractères tapés
 ou actions faites 
  <tag>C-h m </tag>décrit le mode majeur courant 
  <tag>C-h n </tag>décrit les nouveautés de cette version d'emacs 
  <tag>C-h p </tag>trouve les packages (d'emacs?) par mot clé 
  <tag>C-h s </tag>affiche la table de syntaxe (j'ai pas très bien compris) 
  <tag>C-h t </tag>tutorial - pas mal, si vous ne l'avez pas déjà fait, faites
 le! 
  <tag>C-v VAR RET </tag>doc sur la variable VAR 
  <tag>C-h w COMMANDE RET </tag>indique quelle touche exécute la commande donnée
 
  <tag>C-h C-f FONCTION RET </tag>lance l'aide &dquot;info&dquot; à l'emplacement
 de la fonction indiquée 
  <tag>C-h C-k KEY </tag>lance info à l'emplacement de la séquence de touches
 indiquée 
  <tag>C-h C-c </tag>affiche le copyright d'emacs 
  <tag>C-h C-d </tag>indique comment se procurer une nouvelle version d'emacs
 
  <tag>C-h C-p </tag>affiche des infos sur le projet GNU 
 </descrip></p>
 <sect1>Transposer du texte : 
 <p>Ici cela veut dire échanger deux parties de texte. 
 </p>
 <p>
 <descrip>
  <tag>C-t ('transpose-chars') </tag>deux caractères de part et d'autre du pointeur
 ou juste tapés 
  <tag>M-t ('transpose-words') </tag>
  <tag>C-M-t (transpose-sexps') </tag>deux expressions (?) 
  <tag>C-x C-t ('transpose-lines') </tag> 
 </descrip></p>
 <sect1>Conversion de casse (majuscules &lt;-&gt; minuscules) : 
 <p>
 <descrip>
  <tag>M-- M-l </tag>(M-- est M-le moins en dessous du 6, M-l est M-initiale
 de lima) mettre en minuscule le dernier mot 
  <tag>M-- M-u </tag>mettre en majuscule le dernier mot 
  <tag>M-- M-c </tag>mettre le dernier mot en minuscule avec l'initiale en majuscule
 
 </descrip></p>
 <sect1>Orthographe : 
 <p>
 <descrip>
  <tag>M-&dollar; ('ispell-word') </tag>
  <tag>M-TAB ('ispell-complete-word') </tag>complète le mot en cours d'après
 ispell 
  <tag>M-x ispell-buffer </tag>('ispell-buffer') (tout taper) corrige le buffer
 entier 
  <tag>M-x ispell-region </tag>('ispell-region') (?) 
  <tag>M-x ispell-message </tag>('ispell-message') vérifie un courrier en négligeant
 les citations 
  <tag>M-x ispell-change-dictionary ('ispell-change-dictionary') </tag>permet
 de changer de dictionnaire 
  <tag>M-x ispell-kill-ispell ('ispell-kill-ispell') </tag>arrète la tâche ispell.
 
 </descrip></p>
 <p>Réponses valides au correcteur ispell : 
 </p>
 <p>
 <descrip>
  <tag>SPC </tag>passer 
  <tag>r NEW RET </tag>remplacer par NEW 
  <tag>R NEW RET </tag>toujours remplacer par NEW 
  <tag>CHIFFRE </tag>si ispell vous propose plusieurs choix numérotés, taper
 le chiffre voulu  
  <tag>a </tag>accepter le mot comme correct pour la session en cours 
  <tag>A </tag>accepter le mot comme correct pour ce buffer 
  <tag>i </tag>insérer ce mot dans votre dictionnaire personnel 
  <tag>u </tag>insérer ce mot en minuscules dans votre dictionnaire personnel
 
  <tag>m </tag>comme i mais avec des infos supplémentaires 
  <tag>l MOT RET (lettre lima) </tag>chercher dans ispell des analogues à MOT.
 * est utilisable comme joker 
  <tag>C-g (ou X) </tag>arréter provisoirement ispell. reprendre par C-u M-&dollar;
 
  <tag>x </tag>quitter ispell et retourner le pointeur à sa position initiale
 
  <tag>C-l (lima) </tag>rafraichir l'écran 
 </descrip></p>
 <sect1>Gestion de fichiers : 
 <p>
 <descrip>
  <tag>M-x pwd </tag>donne le répertoire courant 
  <tag>M-x cd RET </tag>permet de changer de répertoire courant emacs peut lire
 les fichiers à distance par ftp (voir doc) 
  <tag>C-x C-f ('find-file') </tag>visiter un fichier (le lire et s'appréter
 à l'éditer) si vous tapez RET sans donner de nom de fichier, emacs vous affiche
 le répertoire dans un buffer (fonction dired). 
  <tag>C-x C-r ('find-file-read-only') </tag>visiter en lecture seule 
  <tag>C-x C-q </tag>autorise l'écriture sur un fichier en lecture seule 
  <tag>C-x C-v ('find-alternate-file') </tag>ouvrir un autre fichier. utile si
 on a pas ouvert le bon fichier 
  <tag>C-x 4 C-f ('find-file-other-windows') </tag>partage en deux la fenètre
 courante pour afficher le fichier 
  <tag>C-x 5 C-f ('find-file-other-frame') </tag>ouvre une autre fenêtre pour
 le fichier Le menu &dquot;buffer&dquot; donne maintenant le choix entre buffers
 et frames 
  <tag>M-x auto-compression-mode ('auto-compression-mode') </tag>bascule entre
 décompression manuelle et automatique 
  <tag>C-x C-s ('save-buffer') </tag>écrit le fichier en cours. Crée un backup
 la première fois que le fichier est écrit (peut écrire plusieurs backups, voir
 doc) 
  <tag>C-x s ('save-some-buffers') </tag>écrit tous les buffers (invoqué également
 par C-x C-c, exit emacs). Plusieurs réponse sont possibles : 
  <descrip>
   <tag>y </tag>sauve et continue 
   <tag>n </tag>ne sauve pas et continue 
   <tag>! </tag>sauve tout et fous moi la paix 
   <tag>RET </tag>terminé 
   <tag>. (point) </tag>sauve celui ci et termine 
  </descrip>
  <tag>C-r </tag>voyons de quoi il s'agit (voir le buffer en question) 
  <tag>M-  (tilde) ('not-modified') </tag>oublie que le fichier a été modifié
 (et ne propose plus de le sauvegarder) 
  <tag>C-x C-w ('write-file') </tag>enregistrer sous... 
  <tag>M-x set-visited-file-name ('set-visited-file-name') </tag>change le nom
 sous lequel le fichier doit être enregistré (mais ne l'enregistre pas). Emacs
 surveile les fichiers pour éviter que plusieurs utilisateurs du même fichier
 ne fassent des bétises (voir doc) 
  <tag>M-x revert-buffer ('revert-buffer') </tag>abandonne les modifications
 faites depuis la dernière sauvegarde - met à jour les répertoires (comme F5
 sous windows). 
 </descrip></p>
 <p>Emacs sauve automatiquement votre fichier dans un fichier &num;nom&num;
 tous les 300 caractères ou quand vous arrétez de taper. Pour récupérer cette
 sauvegarde, lancer emacs, faire M-x recover-file RET nom sans les &num; RET,
 puis sauvegarder avec C-x C-s si nécessaire. 
 </p>
 <p>
 <descrip>
  <tag>M-x recover-session </tag>permet de récupérer d'un crash emacs peut gérer
 les fichiers sous &dquot;contrÔle de versions&dquot; - voir doc 
 </descrip></p>
 <sect1>Gérer les buffers : 
 <p>
 <descrip>
  <tag>C-x b BUFFER RET ('switch-to-buffer') </tag>sélectionne ou crée un buffer
 
  <tag>C-x 4 b BUFFER RET ('switch-to-buffer-other-window') </tag>sélectionne
 ou crée un buffer dans une autre fenètre 
  <tag>C-x 5 b BUFFER RET ('switch-to-buffer-other-frame') </tag>sélectionne
 ou crée un buffer dans un autre cadre 
  <tag>C-x C-b ('list-buffers') </tag>
  <tag>C-x C-q ('vc-toggle-read-only') </tag>change le statut lecture seule 
  <tag>M-x rename-buffer RET NOM RET </tag>change le nom du buffer courant 
  <tag>M-x rename-uniquely </tag>ajoute un nombre à la fin du nom 
  <tag>M-x view-buffer RET BUFFER RET </tag>visualiser un buffer sans le modifier
 
  <tag>C-x k NOMBUF RET ('kill-buffer') </tag>couper tampon 
  <tag>M-x kill-some-buffers </tag>liste les buffer en demandant s'il faut les
 couper 
  <tag>M-x buffer-menu </tag>crée une liste des buffers et permet de les éditer
 avec les commandes suivantes : 
  <tag>d </tag>marque pour effacement 
  <tag>C-d </tag>marque pour effacement et monte 
  <tag>s </tag>marque pour sauvegarde 
  <tag>x </tag>exécuter les commandes marquées 
  <tag>u </tag>annule les commandes marquées pour la ligne et descend 
  <tag>DEL </tag>va sur la ligne précédente et enlève toutes ses marques 
 </descrip></p>
 <p>Commandes à action immédiate : 
 </p>
 <p>
 <descrip>
  <tag>  </tag>rend le buffer non modifié 
  <tag>&percnt; </tag>bascule le drapeau lecture seule 
  <tag>q </tag>quitte le menu buffer 
  <tag>RET </tag>
  <tag>f </tag>sélectionne le buffer de cette ligne 
  <tag>o </tag>ouvre le buffer sélectionné 
  <tag>C-o </tag>ouvre le buffer sélectionné dans une autre fenètre 
  <tag>1 </tag>ouvre ce buffer en plein écran 
  <tag>2 </tag>ouvre deux fenètres avec ce buffer et le précédent 
  <tag>m </tag>marque le buffer pour ouverture en sortie de menu 
  <tag>v </tag>sort du menu 
  <tag>M-x make-indirect-buffer BUFFER-DE-BASE RET NOM-INDIRECT </tag>crée en
 quelque sorte une fenètre sur le buffer de base 
 </descrip></p>
 <sect1>Gestion des fenêtres : 
 <p>
 <descrip>
  <tag>C-x 2 ('split-window-vertically') </tag>
  <tag>C-x 3 ('split-window-horizontally') </tag>
  <tag>C-mouse-2 </tag>je ne sais pas ce que ca veut dire 
  <tag>C-x o ('other-window') </tag>sélectionne une autre fenêtre 
  <tag>C-M-v ('scroll-other-window') </tag>scrolle la fenêtre que C-x o aurait
 sélectionnée 
  <tag>M-x compare-windows </tag>trouve la première différence entre deux fenêtres
 
  <tag>C-x 4 </tag>rajouter 4 après C-x effectue l'action dans une autre fenêtre
 
  <tag>C-x 0 (zéro) ('delete-window') </tag>efface la fenêtre courante 
  <tag>C-x 1 ('delete-others-windows') </tag>efface les fenêtres sauf celle courante.
 Ne laisse donc qu'une fenêtre ouverte 
  <tag>C-x  ('enlarge-window') </tag>élargir la fenêtre (en hauteur, d'une ligne)
 
  <tag>C-x &rcub; ('enlarge-window-horizontally') </tag>On peut tirer la ligne
 d'état d'une fenêtre avec la souris (bouton droit) pour changer la taille de
 la fenêtre cliquer avec le bouton gauche dans la barre d'état efface toutes
 les autres fenêtres. Cliquer avec le bouton du milieu dans la barre d'état
 efface la fenêtre en question. Tout ceci n'efface que la fenêtre, pas son contenu.
 
 </descrip></p>
 <sect1>Informations sur la position du curseur 
 <p>
 <descrip>
  <tag>M-x what-page </tag>imprime le numéro de page et le numéro de ligne dans
 la page 
  <tag>M-x what-line </tag>imprime le numéro de ligne dans le buffer 
  <tag>M-x line-number-mode </tag>bascule le mode numéro de ligne 
  <tag>M-= ('count-lines-region') </tag>donne le nombre de lignes dans la région
 courante 
  <tag>C-x = ('what-cursor-position') </tag>donne le code du caractère, sa position
 et sa colonne 
  <tag>C-x l (lima) </tag>compte le nombre de lignes dans la page courante 
 </descrip></p>
 <sect1>Arguments numériques 
 <p>Beaucoup de commande dans emacs acceptent un &dquot;multiplicateur&dquot;
 sous forme d'argument numérique. Les commandes ci-dessous doivent donc être
 tapées avant la commande que l'on veut multiplier. 
 </p>
 <p>
 <descrip>
  <tag>M-(chiffre de 1 à 9) </tag>et M-- (deux -) sont des raccourcis 
  <tag>C-u chiffre </tag>donne chiffre comme argument. Il y a d'autres possibilités,
 voir doc 
 </descrip></p>
 <sect1>Marque et région 
 <p>Dans emacs, on peut poser une marque. L'espace entre la marque et le pointeur
 est la région (&dquot;sélection&dquot;). Les fonctions qui insèrent du texte
 fixent la marque et le pointeur de chaque coté. 
 </p>
 <p>
 <descrip>
  <tag>C-SPC </tag>pose la marque 
  <tag>C-@ </tag>idem 
  <tag>C-x C-x </tag>échange la marque et le pointeur 
 </descrip></p>
 <p>tirer le bouton gauche (de la souris) place la marque et le pointeur 
 </p>
 <p>souris-3 place la marque à la position du pointeur puis déplace le pointeur
 à la position du curseur 
 </p>
 <p>Actions sur la région : 
 </p>
 <p>
 <descrip>
  <tag>C-w </tag>coupe la région 
  <tag>C-x r s </tag>sauve la région dans un registre 
  <tag>C-x C-l ou C-x C-u </tag>convertit la région en minuscules ou majuscules
 
  <tag>C-x TAB ou C-M-&bsol;  </tag>indente le texte (programmation) 
  <tag>M-x print-region </tag>
  <tag>M-@ </tag>sélectionne le prochain mot 
  <tag>C-M-@ </tag>sélectionne la prochaine expression lisp 
  <tag>M-h </tag>sélectionne le paragraphe 
  <tag>C-M-h </tag>sélectionne la fonction lisp 
  <tag>C-x h </tag>sélectionne tout le buffer 
  <tag>C-x C-p </tag>sélectionne la page 
  <tag>C-u C-SPC </tag>déplace le ponteur vers une des 16 précédentes positions
 de la marque 
 </descrip></p>
 <sect1>Sélection rectangulaire 
 <p>Le rectangle est défini par la marque et le pointeur 
 </p>
 <p>
 <descrip>
  <tag>C-x r k ('kill-rectangle') </tag>coupe le rectangle et l'enregistre dans
 une zone spéciale (une seule place) 
  <tag>C-x r d ('delete-rectangle') </tag>efface le rectangle 
  <tag>C-x r y ('yank-rectangle') </tag>colle un rectangle 
  <tag>C-x r o ('open-rectangle') </tag>insère des espace dans le rectangle,
 poussant les autres caractères 
  <tag>M-x clear-rectangle </tag>remplace le rectangle par des espaces 
  <tag>M-x string-rectangle RET CHAINE RET </tag>insére la chaine dans chaque
 ligne du rectangle 
 </descrip>


 </article>