  UMSDOS HOW-TO
  Jacques Gelinas, jacques@solucorp.qc.ca
  v1.1, 13 November 1995

  _U_m_s_d_o_s  est un systeme de fichiers pour _L_i_n_u_x. Il propose une alterna-
  tive au systeme de fichiers _E_X_T_2. Son principal but est de parvenir  a
  une  coexistence  simplifiee  avec les donnees _M_S_-_D_O_S en partageant la
  meme partition.  Ce document explique tout  d'abord  comment  utiliser
  _U_m_s_d_o_s dans differentes configurations, puis son fonctionnement. Il se
  termine par quelques informations  qui  devraient  vous  permettre  de
  decider  si c'est un bon choix pour vous (cf. Pourquoi UMSDOS a la fin
  de  ce  document).   Adaptation  francaise  realisee   par   Guillaume
  Deschamps  (Guillaume.Deschamps@enst-bretagne.fr) Version de l'adapta-
  tion : v0.1b

  11..  _U_m_s_d_o_s :: PPrreesseennttaattiioonn

  11..11..  HHiissttoorriiqquuee

  Le projet _U_m_s_d_o_s a commence en 1992, et a ete disponible sur le reseau
  sous  forme  de  patch  en  janvier  1994.  Il  a  ete  inclus dans la
  distribution standard du noyau en juillet,  a  partir  de  la  version
  1.1.36.

  _U_m_s_d_o_s  a  ete  au  depart adopte dans la distribution _S_l_a_c_k_w_a_r_e avant
  meme d'etre inclus dans le noyau officiel.

  _U_m_s_d_o_s a commence a etre ameliore a partir de  la  version  1.1.60  du
  noyau.  Ses  performances ont considerablement augmente, surtout en ce
  qui concerne l'ecriture. Il est de nouveau stable  depuis  la  version
  1.1.70 (a peu pres).

  Un bug majeur a ete corrige dans _L_i_n_u_x 1.2.2. Ce bug causait des torts
  aux utilisateurs depuis le debut (certains fichiers  etaient  renommes
  sans  avertissement, donnant l'impression qu'ils avaient ete effaces).
  Attention ! La _S_l_a_c_k_w_a_r_e 2.2 contient toujours  la  version  1.2.1  du
  noyau, donc elle a ce bug.

  11..22..  DDiissppoonniibbiilliittee

  Il  est  disponible  sous forme de patch pour les noyaus 1.0.x, et est
  inclus dans le noyau 1.2. Il peut etre compile avec le noyau ou charge
  comme  un  module. Cependant si vous decidez pour l'instant d'utiliser
  _U_m_s_d_o_s comme un module, il vous faudra aussi utiliser  le  systeme  de
  fichiers  _M_S_-_D_O_S  en  tant  que module. Cela vient d'une limitation du
  systeme de gestion des modules (certains symboles ne sont exportes que
  lorsque les drivers sont eux-memes des modules).

  11..33..  DDiissttrriibbuuttiioonnss llee ssuuppppoorrttaanntt

  Dans  l'etat actuel des choses, seule la distribution _S_l_a_c_k_w_a_r_e semble
  le supporter. Mais j'ai surement tort donc n'hesitez pas  a  m'envoyer
  des corrections a ce sujet. (NdT : en anglais !)

  11..44..  SSiittee dd''aaccccuueeiill

  Le site d'accueil pour _U_m_s_d_o_s est sunsite.unc.edu. Allez faire un tour
  du cote du repertoire /pub/Linux/system/Filesystems/umsdos.

  11..55..  DDooccuummeennttaattiioonn tteecchhnniiqquuee

  Il existe beaucoup  de  documentation  sur  la  structure  interne  de
  _U_m_s_d_o_s, disponible a la fois aux formats HTML et texte au meme endroit
  que les utilitaires.

  Pour ce que j'en sais, la version HTML n'est pas disponible  sur  WWW.
  Vous  devez  la  telecharger,  puis la "untarer" et finalement la lire
  localement.

  11..66..  LL''aauutteeuurr

  Jacques Gelinas jacques@solucorp.qc.ca

  22..  _U_m_s_d_o_s ccoommmmee ppaarrttiittiioonn pprriinncciippaallee

  22..11..  LLee ccoonncceepptt ppsseeuuddoo--rraacciinnee

  Avec _U_m_s_d_o_s, _L_i_n_u_x peut etre installe sur une partition _D_O_S  standard.
  _L_i_n_u_x  est  alors  installe  comme  le  second  (ou troisieme) systeme
  d'exploitation sur la partition. Pour eviter toute collision dans  les
  noms (il existe peut-etre deja un repertoire bin ou tmp sur le lecteur
  C:), _U_m_s_d_o_s a recours a une astuce : la pseudo-racine.

  Tous les fichiers _L_i_n_u_x sont installes  dans  un  sous-repertoire  _D_O_S
  appele   Linux,   generalement  C:\LINUX.  La  structure  normale  des
  repertoires _L_i_n_u_x_/_U_n_i_x se trouve la. Vous obtenez donc :

  +o

     C:\LINUX\BIN

  +o

     C:\LINUX\ETC

  +o

     C:\LINUX\LIB

  +o

     C:\LINUX\ROOT

  +o

     C:\LINUX\SBIN

  +o

     C:\LINUX\TMP

  +o

     C:\LINUX\USR

  +o

     C:\LINUX\VAR

  Quand _U_m_s_d_o_s demarre, il cherche le repertoire linux puis  /linux/etc.
  S'il existe, il active le mode pseudo-racine.

  Le   mode   pseudo-racine  s'occupe  principalement  de  rediriger  le
  repertoire racine vers  C:\LINUX,  ce  qui  donne  comme  resultat  un
  repertoire _U_n_i_x classique :

  +o

     /bin

  +o

     /etc

  +o

     /lib

  +o

     /root

  +o

     /sbin

  +o

     /tmp

  +o

     /usr

  +o

     /var

  Il  ajoute de plus a cette liste un nouveau repertoire appele DOS, qui
  est virtuel.

  22..22..  CCee qquu''iill ffaauutt ssaavvooiirr aa pprrooppooss dduu mmooddee ppsseeuuddoo--rraacciinnee

  +o  Ce mode peut seulement etre active au moment du demarrage. Il n'y a
     aucun moyen de l'activer en utilisant la commande mount.

  +o  Le mecanisme est juste de donner une vue differente d'un systeme de
     fichiers _U_m_s_d_o_s normal. Cela signifie qu'une  partition  principale
     peut  etre  montee tout a fait normalement. Il n'y aura pas d'effet
     pseudo-racine.

     Par exemple, si vous demarrez sous  Linux  avec  une  disquette  de
     maintenance  et  que vous montez votre partition principale normale
     dans  /mnt,  vous  trouverez  tous  vos  repertoires   linux   dans
     /mnt/linux/bin, /mnt/linux/etc et ainsi de suite.

  33..  DDiiffffeerreenntteess rreemmaarrqquueess aauu ssuujjeett dduu ffoonnccttiioonnnneemmeenntt ddee _U_m_s_d_o_s

  33..11..  OOppttiioonn ddee mmoouunntt

  Vous pouvez utiliser les memes options pour mount que pour le  systeme
  de fichiers MS-DOS. L'utilisation de l'option conv= est discutable sur
  un systeme _U_m_s_d_o_s. Je propose de l'eviter. Les options que vous  aurez
  generalement a prendre en compte sont :

  +o  uid=

  +o  gid=

  +o  umask=

  Il  faut  juste  vous  souvenir  que _U_m_s_d_o_s traite les repertoires non
  promus de la meme facon que _M_S_-_D_O_S. Les options  ci-dessus  vont  donc
  s'appliquer  globalement  a  tous  les  repertoires  non  promus.  _u_i_d
  configure le proprietaire par defaut, _g_i_d  le  groupe  par  defaut  et
  _u_m_a_s_k les permissions par defaut sur les fichiers.

  33..22..   CCoommmmeenntt  ddeetteerrmmiinneerr  lleess  vvaalleeuurrss  ppaarr ddeeffaauutt ppoouurr llaa ppaarrttiittiioonn
  pprriinncciippaallee

  umssetup  a ete creee pour determiner au lancement le proprietaire par
  defaut de la partition principale. Pour les autres partitions  _U_m_s_d_o_s,
  il est possible d'utiliser soit les options de mount soit umssetup. La
  maniere classique pour regler ce  probleme  pour  les  partitions  non
  principales est de stocker les options de mount dans /etc/fstab. Voici
  un exemple.  Mettez ceci dans /etc/rc.d/rc.S :

                       /sbin/umssetup -u jack -g group -m 0755 /

  33..33..  SSwwaappppeerr oouu nnee ppaass sswwaappppeerr

  L'utilisation d'un fichier de swap se revele souvent  plus  lente  que
  celle  d'une partition de swap. Cette solution est cependant bien plus
  flexible. Vous pouvez configurer un fichier de swap dans une partition
  _U_m_s_d_o_s de la meme facon que dans tout autre systeme de fichiers _L_i_n_u_x.
  Par exemple, pour configurer un fichier  de  swap  de  8  Mo  dans  le
  repertoire racine :

                       dd if=/dev/zero bs=1024k count=8 of=/swap
                       mkswap /swap 8192
                       sync
                       swapon /swap

  Une  fois  cela  fait,  vous  pouvez  ajouter  la  ligne suivante dans
  /etc/fstab :

                       /swap   swap    swap    default

  Et le fichier de  swap  sera  active  a  chaque  demarrage.  (Il  y  a
  generalement la commande "swapon -a" dans /etc/rc.d/rc.S.)

  44..  CCoommmmeenntt ddeemmaarrrreerr uunn ssyysstteemmee _U_m_s_d_o_s

  44..11..  LLooaaddlliinn

  Le   paquetage   lodlin15.tgz,  disponible  sur  sunsite.unc.edu  dans
  /pub/Linux/system/Bootutils,  est  particulierement  bien  adapte   au
  demarrage  d'un  systeme  _U_m_s_d_o_s.  En  general,  tout ce que vous avez
  besoin de faire est

          Boot DOS
          C:>loadlinx zimage root=D:

  ou zimage est une image normale du noyau (compressee), tout simplement
  copiee  quelque part sur le lecteur _D_O_S. D: est le lecteur _D_O_S ou vous
  avez installe _L_i_n_u_x.

  44..22..  AA ppaarrttiirr dd''uunnee ddiissqquueettttee

  Demarrer un systeme _U_m_s_d_o_s a partir d'une disquette se fait de la meme
  maniere  que pour un systeme _E_x_t_2. Vous avez besoin d'une image zImage
  de votre noyau proprement initialisee pour localiser  votre  partition
  principale  _U_m_s_d_o_s. Pour ce faire, on utilise generalement la commande
  rdev. La sequence suivante initialise un fichier zImage et le met  sur
  une disquette :

               rdev zImage /dev/hda1
               rdev -R zImage 0
               dd if=zImage bs=8192 of=/dev/fd0

  Si vous trouvez cela deroutant, formattez une disquette systeme DOS et
  copiez les fichiers suivants dessus :

  +o  loadlin.exe

  +o  loadlinx.exe

  +o  zimage

  puis configurez le fichier autoexec.bat comme suit :

               loadlinx zimage rw root=C:

  44..33..  LLIILLOO

  LILO, le chargeur (boot-loader) officiel  de  _L_i_n_u_x  peut  aussi  etre
  utilise  pour  demarrer  un  systeme  _U_m_s_d_o_s. Cependant je n'ai jamais
  essaye, mais ca devrait marcher depuis la  version  1.1.60.  Merci  de
  m'envoyer  un  e-mail  (NdT : toujours en anglais !) si vous avez fait
  l'experience.

  44..44..  CCoommmmeenntt ddeeffrraaggmmeenntteerr uunnee ppaarrttiittiioonn _U_m_s_d_o_s

  Tout  simplement  en  utilisant  n'importe  lequel  des   outils   _D_O_S
  classiques.   Les   fichiers   produits   par  _U_m_s_d_o_s  n'ont  rien  de
  particulier. Et _U_m_s_d_o_s n'attend rien de  particulier  (composition  ou
  sequence  des  points  d'entree  des  repertoires, etc.) du systeme de
  fichier sur lequel il travaille.

  Pour ce que j'en sais, il n'existe pas d'outil sous _L_i_n_u_x  pour  faire
  ca.

  44..55..  AAssttuucceess aavvaanncceeeess

  _U_m_s_d_o_s  repose  sur --linux-.--- qui repose lui-meme sur le repertoire
  _D_O_S.  Certains  voudront   peut-etre   faire   quelques   experiences.
  L'utilitaire  udosctl  (dans  le  paquetage umsdos_progs, qui contient
  umssync  et  umssetup)  permet  de  faire  des  operations   sur   les
  repertoires  (effacer, voir le contenu), et ceci independamment sur le
  repertoire --linux-.--- ou sur le repertoire _D_O_S.

  55..  PPrriinncciippee ddee bbaassee

  55..11..  IInnttrroodduuccttiioonn

  _U_m_s_d_o_s fait directement correspondre aux fichiers _L_i_n_u_x  des  fichiers
  _M_S_-_D_O_S. C'est une transposition un pour un, et le contenu des fichiers
  n'est pas altere du tout. _U_m_s_d_o_s travaille seulement sur les  noms  de
  fichiers,  et  reserve un traitement particulier aux fichiers speciaux
  (par exemple les liens ou les fichiers peripheriques).

  Pour chaque repertoire, il y a un fichier appele --linux-.---.

  55..22..  _U_m_s_d_o_s ppeeuutt rreemmppllaacceerr llee ssyysstteemmee ddee ffiicchhiieerrss _M_S_-_D_O_S

  _U_m_s_d_o_s peut etre vu comme un surensemble plus general  du  systeme  de
  fichiers  _M_S_-_D_O_S  de  linux. En fait cette capacite/flexibilite est la
  source de beaucoup de confusions au sujet  de  _U_m_s_d_o_s.  Je  vais  vous
  expliquer  pourquoi.  Essayez  de  monter  une disquette _D_O_S qui vient
  juste d'etre formattee de la maniere suivante :

               mount -t umsdos /dev/fd0 /mnt

  Puis faites ceci :

               ls / >/mnt/LONGFILENAME
               ls -l /mnt

  Et vous obtiendrez le resultat suivant :

               -rwxr-xr-x   1 root     root          302 Apr 14 23:25 longfile

  Jusqu'ici, le systeme de fichiers n'a pas l'air de faire  grand  chose
  de  plus  (en fait meme rien) que le systeme de fichiers _M_S_-_D_O_S normal
  de _L_i_n_u_x.

  _?_?_?

  55..33..  PPrroommoouuvvooiirr uunn rreeppeerrttooiirree

  Jusqu'ici ca n'est pas tres impressionant. Mais il y a une  astuce.  A
  moins  d'avoir  ete promu, un repertoire _D_O_S sera traite par _U_m_s_d_o_s de
  la meme facon que par _M_S_-_D_O_S. _U_m_s_d_o_s utilise un fichier  special  dans
  chaque  sous-repertoire  pour  effectuer  la  transposition  entre les
  possibilites etendues (noms de fichiers  longs,  propriete,  etc.)  de
  _U_m_s_d_o_s  et  les  limitations inherentes au systeme de fichiers _D_O_S. Ce
  fichier est invisible aux utilisateurs  de  _U_m_s_d_o_s,  mais  il  devient
  visible  si  vous demarrez sous _D_O_S. Pour eviter de mettre inutilement
  le desordre dans la partition _D_O_S avec  ces  fichiers  (--linux-.---),
  ils sont maintenant optionnels. S'ils sont absents, _U_m_s_d_o_s se comporte
  comme _M_S_-_D_O_S.

  Quand un repertoire est promu, toutes les operations effectuees par la
  suite   tiendront   compte  de  toutes  les  possibilites  normalement
  accessibles aux utilisateurs  d'_U_n_i_x  et  de  _L_i_n_u_x.  Tous  les  sous-
  repertoires  crees  ensuite  seront  promus sans autre intervention de
  votre part.

  Cette  caracteristique  vous  permet  d'organiser  logiquement   votre
  partition _D_O_S entre votre hierarchie _D_O_S et votre hierarchie _L_i_n_u_x. Il
  est important de comprendre que les fichiers --linux-.--- prennent  de
  la  place  (en general 2 Ko par repertoire). Comme _D_O_S utilise de gros
  clusters (par exemple de 16 Ko pour une partition de 500  Mo),  eviter
  de mettre des fichiers --linux-.--- partout peut vous faire gagner pas
  mal de place.

  55..44..  CCoommmmeenntt pprroommoouuvvooiirr //ssbbiinn//uummssssyynncc

  Un repertoire peut etre promu a n'importe  quel  moment  en  utilisant
  /sbin/umssync.  Lorsqu'un repertoire est promu, il se passe les choses
  suivantes :

  +o  Creation d'un fichier --linux-.---.

  +o  Une relation un pour un est etablie entre le  fichier  --linux-.---
     et le contenu actuel du repertoire.

  La  commande  /sbin/umssync  est  utilisee  pour  la  maintenance  des
  fichiers --linux-.--- existants. Elle ne le cree pas a partir de  rien
  a  chaque  fois.  Elle modifie simplement ce qui a change (par exemple
  les fichiers nouvellement crees lors d'une session _D_O_S).  Elle  retire
  aussi  de  ce  fichier  les  fichiers  qui  n'existent  plus  dans  le
  repertoire  _D_O_S.  C'est  pourquoi  umssync  porte  ce  nom,  car  elle
  synchronise  les  fichiers  _-_-_l_i_n_u_x_-_._-_-_-  avec le repertoire _D_O_S sous-
  jacent.

  55..55..  UUttiilliisseerr //ssbbiinn//uummssssyynncc au demarrage

  C'est une bonne idee de mettre un appel a /sbin/umssync a  la  fin  du
  fichier  /etc/rc.d/rc.S  (si  ce  n'est  deja  fait...).  La  commande
  suivante marche sur la plupart des systemes :

               /sbin/umssync -r99 -c -i+ /

  L'option -c empeche  umssync  de  promouvoir  les  repertoires.  Cette
  commande  va  donc  seulement  mettre a jour les fichiers --linux-.---
  existants.

  Cette commande est utile si vous desirez acceder au  repertoire  _L_i_n_u_x
  pendant une session _D_O_S. _L_i_n_u_x n'a pas de moyen efficace de dire qu'un
  repertoire a ete modifie par _D_O_S, donc _U_m_s_d_o_s ne peut pas lancer  lui-
  meme la commande _u_m_s_s_y_n_c necessaire.

  55..66..  CCoommmmeenntt ddee--pprroommoouuvvooiirr

  Effacez le fichier --linux-.--- en utilisant _D_O_S.

  55..77..  AA pprrooppooss ddeess ffiicchhiieerrss ccrreeeess lloorrss dd''uunnee sseessssiioonn _D_O_S

  A moins que vous n'utilisiez umssync sur un repertoire dans lequel des
  fichiers ont ete ajoutes ou effaces  par  _D_O_S,  vous  allez  remarquer
  certains des problemes suivants :

  +o  Le systeme ne va pas planter, et cela ne va pas causer de problemes
     majeurs, juste quelques derangements.

  +o  Fichiers crees par _D_O_S.

  +o  Ils seront invisibles pour _L_i_n_u_x.

  +o  Quand vous  voudrez  creer  un  fichier  avec  le  meme  nom,  vous
     obtiendrez  un  message  derreur  vous disant que ce fichier existe
     deja.

  +o  Plus de confusion que de reels problemes, donc. En tout cas cela ne
     cause aucun dommage au systeme de fichiers.

  +o  Les  fichiers  effaces  par _D_O_S ne causeront aucun probleme. _U_m_s_d_o_s
     remarquera leur absence a la premiere tentative  d'acces,  et  vous
     delivrera   un   message   (qui   sera   gene'ralement  ecrit  dans
     /var/adm/syslog).

  66..  ((DDeess--))IInnssttaallllaattiioonn eett qquueellqquueess aassttuucceess

  L'installation de _U_m_s_d_o_s n'est pas vraiment differente de  celle  d'un
  systeme _L_i_n_u_x ordinaire (_b_a_s_e _s_u_r _E_x_t_2).

  Il y a tout de meme deux differences principales.

  66..11..  LLaa ppsseeuuddoo--rraacciinnee //mmnntt//lliinnuuxx

  Les etapes normales lors de l'installation sont :

  1. Creer une partition avec fdisk et la formatter.

  2. La   monter   sur   /mnt  relativement  a  notre  disque  principal
     d'installation.

  3. Copier tous les paquetages dans /mnt.

  Avec _U_m_s_d_o_s l'etape 1 n'est pas necessaire (n'etait-ce pas le  but  de
  _U_m_s_d_o_s de ne pas avoir a reformatter ?).

  Il  est  possible  d'installer un systeme _U_m_s_d_o_s juste en copiant tous
  les paquetages dans /mnt. Cela marchera  certainement.  Mais  cela  va
  aussi  creer  tout  un  tas  de sous-repertoires dans votre repertoire
  racine _D_O_S (C:), et vous n'allez pas aimer ca. C'est  la  raison  pour
  laquelle  toute  installation  de  _U_m_s_d_o_s utilise la pseudo-racine. Et
  c'est la difference majeure entre une installation normale  (_E_x_t_2)  et
  celle de _U_m_s_d_o_s : tous les fichiers sont copies dans /mnt/linux.

  66..22..  PPrreeppaarreerr llee rreeppeerrttooiirree //mmnntt//lliinnuuxx

  /mnt/linux  n'est pas un repertoire ordinaire. Il doit etre promu pour
  pouvoir manipuler correctement les noms de fichiers longs de _L_i_n_u_x  et
  les  fichiers  speciaux  (liens,  fichiers  peripheriques). Les etapes
  necessaires pour configurer /mnt/linux sont :

  1. mkdir /mnt/linux

  2. umssync /mnt/linux

  Et c'est tout !

  66..33..  VVeerriiffiieerr qquuee //mmnntt//lliinnuuxx est correctement configure

  Meme si la configuration de /mnt/linux est plutot simple, il  y  a  un
  certain  nombre  de  paquetages  qui  ne  marchent pas. Comment est-ce
  possible ?

  Le probleme d'installation le  plus  important  vient  d'un  programme
  umssync incompatible. _U_m_s_d_o_s a ete mis a jour dans linux 1.1.88 (je ne
  me rappelle plus exactement du numero) et un bug a ete decouvert  dans
  umssync.  Pour  eviter  toute confusion dans la communaute _L_i_n_u_x, il a
  ete decide de monter le niveau de compatibilite necessaire  pour  tous
  les  utilitaires _U_m_s_d_o_s. Les anciennes versions de ces utilitaires ont
  ete purement et simplement rejetees.

  Apparemment  beaucoup  de  distributions  n'ont   pas   mis   a   jour
  l'utilitaire umssync sur leur disque d'installation.

  Il  existe encore pas mal de distributions de ce style en circulation.
  Le resultat est que le repertoire /mnt/linux n'est pas promu  du  tout
  et  va tronquer tous les noms de fichiers trop longs, et aussi rejeter
  tous les fichiers speciaux.

  Il est possible de faire un test tres tot pendant l'installation  pour
  voir  si  quelque chose s'est mal passe. Grace au mecanisme de pseudo-
  console de _L_i_n_u_x, vous pouvez  le  faire  sans  quitter  le  programme
  d'installation. Suivez les instructions suivantes :

  1. Appuyez  sur Alt-F2 (Appuyez sur la touche Alt et en meme temps sur
     la touche F2).

  2. Logguez-vous sous root.

  3. cd /mnt/linux

     Si cela ne marche pas, vous etes en train d'essayer  trop  tot.  Un
     bon moment pour faire ce test est d'attendre la fin de la selection
     des paquetages.

  4. >TOTO

  5. ls -l

     Un fichier vide du nom de TOTO (en majuscules) doit apparaitre.  Si
     vous le voyez en minuscules, quelque chose s'est mal passe. Essayez
     de recommencer a l'etape du umssync. Vous pouvez  utiliser  umssync
     autant de fois que vous voulez sans problemes.

     umssync .

     S'il  n'y a pas de message d'erreur, refaites le test pour TOTO. Si
     TOTO apparait bien, alors tout va pour le mieux. Cette installation
     avait  quelque  chose  de bizarre mais vous avez reussi quand meme.
     Continuez.

  6. Appuyez sur Alt-F1 pour revenir a l'ecran d'installation.

  Si le test n'a pas marche, la meilleure solution est  de  prendre  une
  disquette d'installation plus recente. Il est generalement possible de
  resoudre ce  probleme  en  installant  une  version  plus  recente  de
  umssync.  Ce  n'est pas difficile mais cela necessite un systeme _L_i_n_u_x
  en etat de marche. Vous avez juste a monter le lecteur de disquette et
  a remplacer la version caduque de umssync par une nouvelle.

  66..44..  OOooppss rreelleeaassiinngg ppsseeuuddoo rroooott ......

  La plupart des installations qui ne marchent pas le font en donnant ce
  message etrange. Ce n'est pas un bug dans _U_m_s_d_o_s bien que  ce  message
  puisse paraitre vraiment bizarre. Voici les causes connues :

  +o  La plus commune

     L'installation  de  la _S_l_a_c_k_w_a_r_e essaye de configurer un fichier de
     swap tres tot lors de l'installation.  Pour  ce  faire,  elle  vous
     demande  de  selectionner une partition (lecteur _D_O_S), puis elle la
     monte et cree pour finir le fichier de swap.
     Lors  de  l'installation  d'un  systeme   _S_l_a_c_k_w_a_r_e,   vous   devez
     configurer  la partition cible avant de commencer a installer autre
     chose. Cela monte normalement la partition _D_O_S sur  /mnt,  cree  le
     repertoire /mnt/linux et lance umssync dessus.

     C'est  de la que viennent la plupart des problemes. Un grand nombre
     d'utilisateurs  sautent  l'etape  "configuration  de  la  partition
     cible"  et  passent  directement  au reste de l'installation. Comme
     /mnt est deja  monte,  cette  erreur  n'est  pas  remarquee.   Cela
     signifie  que /mnt/linux n'a pas ete correctement cree (non promu).
     Donc tous les fichiers dont le nom est trop long,  ainsi  que  tous
     les  fichiers  speciaux  (liens, fichiers peripheriques) ne peuvent
     pas etre crees correctement.

  +o  Utilitaire umssync non valide

     /mnt/linux  a  ete  mal  configure,   generalement   a   cause   de
     l'utilitaire umssync non valide sur la disquette d'installation.

  +o  Vieux bug de _U_m_s_d_o_s

     Il  y  avait  un bug dans _U_m_s_d_o_s avant _L_i_n_u_x _1_._2_._2. Le mode pseudo-
     racine ne s'activait  pas  correctement  si  le  fichier  /etc/init
     n'etait  pas  present.  init  se trouve maintenant dans /sbin. Vous
     pouvez resoudre ce probleme en vous procurant un noyau plus recent.
     C'est  d'autant  plus recommande qu'un nouveau bug a ete detecte et
     corrige dans la version 1.2.2.

     Si vous n'avez pas de version plus recente, faites ceci :

     1. Demarrez a partir de la disquette d'installation.

     2. Logguez-vous sous root.

     3. mount -t umsdos /dev/hdXX /mnt

        ou /dev/hdXX est votre partition _D_O_S.

     4. cd /mnt/linux/etc

     5. ln -s ../sbin/init init

     6. cd /

     7. Ctrl-Alt-Del

     8. Demarrez normalement sous _U_m_s_d_o_s.

  Malheureusement, les deux premiers  problemes  d'installation  donnent
  une installation completement inutilisable. Il va falloir desinstaller
  puis reinstaller _U_m_s_d_o_s.

  66..55..  CCoommmmeenntt ddeessiinnssttaalllleerr uunn ssyysstteemmee _U_m_s_d_o_s

  Il y a quelque chose de pratique  avec  _U_m_s_d_o_s  et  son  mecanisme  de
  pseudo-racine,  c'est que vous pouvez le desinstaller sans douleur. Il
  suffit de demarrer  sous  _D_O_S  et  d'effacer  recursivement  tous  les
  repertoires  linux.  C'est  tout.  _U_m_s_d_o_s  n'a  pas  besoin de drivers
  particuliers dans le fichier config.sys, et il ne cree rien de special
  en dehors du repertoire linux.

  66..66..  DDeeppllaacceerr uunn ssyysstteemmee _U_m_s_d_o_s vveerrss uunn aauuttrree lleecctteeuurr _D_O_S

  Cela  peut  etre  fait a partir de _L_i_n_u_x ou du _D_O_S. Il suffit juste de
  copier recursivement les repertoires linux d'un lecteur vers  l'autre.
  Ensuite  il  faudra  modifier  le mecanisme de demarrage (generalement
  avec la commande loadlin) et le fichier /etc/fstab.

  _U_m_s_d_o_s peut etre installe sur n'importe quel lecteur _D_O_S. Il n'est pas
  obligatoire  de  l'installer sur le lecteur C:, ni meme sur le premier
  disque dur. Cela ne change rien.

  En fait, vous pouvez meme decider d'avoir plusieurs  installations  de
  _U_m_s_d_o_s sur differents lecteurs pour faire des tests.

  66..77..  IInnssttaalllleerr 5500 ssyysstteemmeess _U_m_s_d_o_s..

  Pourquoi  ne pas installer tout un tas de systemes _L_i_n_u_x en un rien de
  temps ?

  _U_m_s_d_o_s repose sur le mode du _D_O_S. Vous pourvez tirer partie  de  cette
  particularite si vous voulez installer _L_i_n_u_x facilement.

  Vous  pouvez  ainsi  installer  et configurer un systeme _U_m_s_d_o_s sur un
  site. Lorsque vous etes satisfait de la configuration obtenue  et  des
  paquetages  selectionnes,  vous  pouvez demarrer sous _D_O_S et copier la
  totalite du repertoire  linux  sur  votre  serveur  de  fichiers  _D_O_S.
  Ensuite  il vous suffit d'aller sur une autre station _D_O_S et de copier
  les fichiers du lecteur reseau vers le lecteur local. C'est  tout.  Il
  ne  vous reste plus qu'a modifier le script de demarrage (_L_o_a_d_l_i_n_x) et
  c'est parti.

  Avec quelques modifications  minimes  (nom  de  l'hote,  adresse  IP),
  n'importe  qui  pourra  installer un systeme _L_i_n_u_x en deux temps trois
  mouvements.

  Les lecteurs interesses auront pu remarquer qu'il est  aussi  possible
  d'installer n'importe quel systeme _L_i_n_u_x de la meme maniere, y compris
  les systemes bases sur _E_x_t_2.

  Un des aspects les plus sympathiques de _L_i_n_u_x est qu'il n'y a  pas  de
  fichiers   caches  qui  doivent  absolument  etre  installes  par  des
  programmes "magiques".

  77..  CCoonnffiigguurreerr uunnee sseeccttiioonn _L_i_n_u_x ddaannss uunnee ppaarrttiittiioonn _D_O_S..

  _U_m_s_d_o_s peut se reveler utile meme aux utilisateurs de _E_x_t_2 (le systeme
  de fichiers natif de _L_i_n_u_x). Un scenario classique est le suivant :

  +o  _L_i_n_u_x  etant  votre  systeme  d'exploitation  prefere, la partition
     _L_i_n_u_x se remplit a n'en plus finir.

  +o  Votre partition _D_O_S est pleine de poussiere, et a moitie vide.

  +o  Soudain vous n'avez plus de place sur votre partition _E_x_t_2.

  +o  Vous n'etes pas encore sur de  vouloir  vous  debarasser  de  votre
     partition _D_O_S.

  C'est  ici  que  _U_m_s_d_o_s  peut  vous  aider.  Vous pouvez configurer un
  repertoire  _L_i_n_u_x  sur  votre  partition  _D_O_S,  et   l'utiliser   sans
  restriction  sous  _L_i_n_u_x. Par exemple, supposons que vous voulez creer
  un nouveau repertoire nomme "extra" sur votre lecteur C:, et que  vous
  voulez qu'il se comporte comme un repertoire _L_i_n_u_x normal. Faites ceci
  : (en supposant que C: est /dev/hda1)

               mkdir /c
               /sbin/mount -t umsdos /dev/hda1 /c
               mkdir /c/extra
               umssync /c/extra

  Il vous faut etre sous root pour executer ces commandes

  En configurant /etc/fstab comme ceci, vous  aurez  toujours  acces  au
  repertoire /c/extra.

  88..  PPoouurrqquuooii _U_m_s_d_o_s ??

  Expliquer  le  fonctionnement et l'installation d'un systeme _U_m_s_d_o_s ne
  suffit pas. Ce que la plupart des gens cherche, ce sont  des  conseils
  pour savoir s'ils doivent utiliser _U_m_s_d_o_s ou non.

  88..11..  LLee bbuutt ddee _U_m_s_d_o_s

  Le  but  de  _U_m_s_d_o_s est de faciliter l'installation de _L_i_n_u_x. Un autre
  but  est  de  faciliter  sa  DES-installation.  L'idee  ici  etait  de
  favoriser   la  diffusion  de  _L_i_n_u_x.  Installer  un  nouveau  systeme
  d'exploitation  est  toujours  problematique.  _O_S_/_2  par  exemple   va
  gentiment  polluer  la  racine de votre lecteur C: avec tout un tas de
  nouveaux repertoires. Si vous etes aussi doue  que  moi,  il  va  meme
  effacer  vos  fichiers config.sys et autoexec.bat :-( (NdT : Tant qu'a
  faire !).

  L'utilisation de la pseudo-racine permet d'eviter cette  invasion  non
  desiree, et _L_i_n_u_x peut etre desinstalle sans effets de bord.

  88..22..  QQuuii eenn aa bbeessooiinn ??

  Si vous avez un petit disque dur, _U_m_s_d_o_s va vous permettre de partager
  l'espace disque entre le _D_O_S et _L_i_n_u_x. A mon avis, on peut  considerer
  qu'un  disque  de  moins  de 300 Mo est un petit disque. Cette opinion
  repose sur la taille des differents paquetages disponibles  a  l'heure
  actuelle. Un traitement de textes populaire veut prendre jusqu'a 70 Mo
  si vous choisissez toutes les possibilites.

  Si vous avez un disque plus gros,  vous  pouvez  choisir  d'avoir  une
  partition  dediee  a _L_i_n_u_x utilisant le systeme de fichiers _E_x_t_2. _E_x_t_2
  utilise une taille de clusters plus petite que _D_O_S  (en  fait  1  Ko),
  donc  installer beaucoup de petits fichiers prendra moins de place que
  sur une partition _U_m_s_d_o_s.

  88..33..  PPeerrffoorrmmaanncceess

  Ceci s'applique a une comparaison entre _U_m_s_d_o_s et _E_x_t_2.

  +o  La gestion des repertoires est plus rapide sous _E_x_t_2. Cela provient
     de la double structure des repertoires sous _U_m_s_d_o_s.

  +o  L'acces  aux  fichiers  (lecture et ecriture) est probablement plus
     rapide sous _U_m_s_d_o_s que sous _E_x_t_2. Cela vient de  la  simplicite  du
     systeme de fichiers _F_A_T utilise par _D_O_S.

     Cependant cette simplicite a un cout :

  +o  Un  maximum  d'environ  65  000 fichiers ou clusters par partition.
     Cela signifie  aussi  qu'une  parition  de  500  Mo  utilisera  des
     clusters  de  16  Ko.  En  d'autres  termes,  un fichier d'un octet
     utilisera 16 K0 d'espace disque.

  +o  Tout est controle par la FAT qui se trouve au debut du disque  dur.
     Le  systeme _D_O_S est donc certainement plsu fragile a cause de cela.

  +o  Aucune prevision pour eviter  la  fragmentation  des  fichiers.  Un
     systeme  _U_m_s_d_o_s  est generalement utilise en mode mono-utilisateur.
     Dans ce cas, cela n'a  pas  beaucoup  d'importance.  Mais  pour  un
     systeme  multi-utilisateurs,  les  fichiers  seront eparpilles dans
     tous les coins du disque, ce qui aura pour  effet  de  reduire  les
     performances d'acces aux fichiers.

  +o  Les  liens  symboliques  sont stockes dans des fichiers normaux. Si
     vous comptex en avoir beaucoup, vous vous rendrez compte que _U_m_s_d_o_s
     utilise beaucoup d'espace disque compare a _E_x_t_2.

