<!doctype linuxdoc system>

<article>

<title>UMSDOS HOW-TO
<author>Jacques Gelinas, <tt/jacques@solucorp.qc.ca/
<date>v1.1, 13 November 1995
<abstract>

<em/Umsdos/ est un syst&egrave;me de fichiers pour <em/Linux/. Il propose
une alternative au syst&egrave;me de fichiers <em/EXT2/. Son principal
but est de parvenir &agrave; une coexistence simplifi&eacute;e avec
les donn&eacute;es <em/MS-DOS/ en partageant la m&ecirc;me partition.

Ce document explique tout d'abord comment utiliser <em/Umsdos/ dans
diff&eacute;rentes configurations, puis son fonctionnement. Il se
termine par quelques informations qui devraient vous permettre de
d&eacute;cider si c'est un bon choix pour vous (cf. Pourquoi
UMSDOS &agrave; la fin de ce document).

Adaptation fran&ccedil;aise r&eacute;alis&eacute;e par Guillaume
Deschamps (Guillaume.Deschamps@enst-bretagne.fr)
Version de l'adaptation : v0.1b
</abstract>

<toc>
<sect><em/Umsdos/ : Pr&eacute;sentation
<p>

<sect1>Historique
<p>

Le projet <em/Umsdos/ a commenc&eacute; en 1992, et a
&eacute;t&eacute; disponible sur le r&eacute;seau sous forme de patch
en janvier 1994. Il a &eacute;t&eacute; inclus dans la distribution
standard du noyau en juillet, &agrave; partir de la version 1.1.36.

<em/Umsdos/ a &eacute;t&eacute; au d&eacute;part adopt&eacute; dans la
distribution <em/Slackware/ avant m&ecirc;me d'&ecirc;tre inclus dans le
noyau officiel.

<em/Umsdos/ a commenc&eacute; &agrave; &ecirc;tre
am&eacute;lior&eacute; &agrave; partir de la version 1.1.60 du
noyau. Ses performances ont consid&eacute;rablement augment&eacute;, surtout
en ce qui concerne l'&eacute;criture. Il est de nouveau stable depuis
la version 1.1.70 (&agrave; peu pr&egrave;s).

Un bug majeur a &eacute;t&eacute; corrig&eacute; dans <em/Linux/
1.2.2. Ce bug causait des torts aux utilisateurs depuis le d&eacute;but
(certains fichiers &eacute;taient renomm&eacute;s sans avertissement, donnant
l'impression qu'ils avaient &eacute;t&eacute; effac&eacute;s). Attention ! La
<em/Slackware/ 2.2 contient toujours la version 1.2.1 du noyau, donc
elle a ce bug.

<sect1>Disponibilit&eacute;
<p>

Il est disponible sous forme de patch pour les noyaus 1.0.x, et est
inclus dans le noyau 1.2. Il peut &ecirc;tre compil&eacute; avec le noyau ou
charg&eacute; comme un module. Cependant si vous d&eacute;cidez pour l'instant
d'utiliser <em/Umsdos/ comme un module, il vous faudra aussi utiliser
le systeme de fichiers <em/MS-DOS/ en tant que module. Cela vient d'une
limitation du syst&egrave;me de gestion des modules (certains symboles ne
sont export&eacute;s que lorsque les drivers sont eux-m&ecirc;mes des modules).

<sect1>Distributions le supportant
<p>

Dans l'&eacute;tat actuel des choses, seule la distribution <em/Slackware/
semble le supporter. Mais j'ai s&ucirc;rement tort donc n'h&eacute;sitez pas &agrave;
m'envoyer des corrections &agrave; ce sujet. (NdT : en anglais !)

<sect1>Site d'accueil
<p>

Le site d'accueil pour <em/Umsdos/ est sunsite.unc.edu. Allez faire un
tour du c&ocirc;t&eacute; du r&eacute;pertoire
<tt>/pub/Linux/system/Filesystems/umsdos</tt>. 

<sect1>Documentation technique
<p>

Il existe beaucoup de documentation sur la structure interne
de <em/Umsdos/, disponible &agrave; la fois aux formats
<tt/HTML/ et texte au m&ecirc;me endroit que les utilitaires.

Pour ce que j'en sais, la version <tt/HTML/ n'est pas disponible sur
WWW. Vous devez la t&eacute;l&eacute;charger, puis la "untarer" et finalement la
lire localement.

<sect1>L'auteur
<p>

	Jacques Gelinas jacques@solucorp.qc.ca
	
<sect><em/Umsdos/ comme partition principale
<p>

<sect1>Le concept pseudo-racine
<p>

Avec <em/Umsdos/, <em/Linux/ peut &ecirc;tre install&eacute; sur une partition
<em/DOS/ standard. <em/Linux/ est alors install&eacute; comme le second (ou
troisi&egrave;me) syst&egrave;me d'exploitation sur la partition. Pour &eacute;viter toute collision dans
les noms (il existe peut-&ecirc;tre d&eacute;j&agrave; un r&eacute;pertoire bin ou tmp sur le
lecteur C:), <em/Umsdos/ a recours &agrave; une astuce : la pseudo-racine.

Tous les fichiers <em/Linux/ sont install&eacute;s dans un sous-r&eacute;pertoire
<em/DOS/ appel&eacute; <tt/Linux/, g&eacute;n&eacute;ralement <tt/C:\\LINUX/. La structure
normale des r&eacute;pertoires <em>Linux/Unix</em> se trouve l&agrave;. Vous
obtenez donc :

	<itemize>
	<item> <verb/C:\LINUX\BIN/
	<item> <verb/C:\LINUX\ETC/
	<item> <verb/C:\LINUX\LIB/
	<item> <verb/C:\LINUX\ROOT/
	<item> <verb/C:\LINUX\SBIN/
	<item> <verb/C:\LINUX\TMP/
	<item> <verb/C:\LINUX\USR/
	<item> <verb/C:\LINUX\VAR/
	</itemize>

Quand <em/Umsdos/ d&eacute;marre, il cherche le r&eacute;pertoire <tt/linux/ puis
<tt>/linux/etc</tt>. S'il existe, il active le mode pseudo-racine.

Le mode pseudo-racine s'occupe principalement de rediriger le
repertoire racine vers <tt/C:\\LINUX/, ce qui donne comme r&eacute;sultat un
r&eacute;pertoire <em/Unix/ classique :

	<itemize>
	<item><verb>/bin</verb>
	<item><verb>/etc</verb>
	<item><verb>/lib</verb>
	<item><verb>/root</verb>
	<item><verb>/sbin</verb>
	<item><verb>/tmp</verb>
	<item><verb>/usr</verb>
	<item><verb>/var</verb>
	</itemize>

Il ajoute de plus &agrave; cette liste un nouveau r&eacute;pertoire appel&eacute;
<tt/DOS/, qui est virtuel.

<sect1>Ce qu'il faut savoir &agrave; propos du mode pseudo-racine
<p>
	<itemize>
	<item> Ce mode peut seulement &ecirc;tre activ&eacute; au moment du
		d&eacute;marrage. Il n'y a aucun moyen de l'activer en utilisant
		la commande mount.
	<item> Le m&eacute;canisme est juste de donner une vue diff&eacute;rente
		d'un syst&egrave;me de fichiers <em/Umsdos/ normal. Cela signifie
		qu'une partition principale peut &ecirc;tre mont&eacute;e tout &agrave;
		fait normalement. Il n'y aura pas d'effet pseudo-racine.

		Par exemple, si vous d&eacute;marrez sous Linux avec une
		disquette de maintenance et que vous montez votre
		partition principale normale dans <tt>/mnt</tt>, vous
		trouverez tous vos r&eacute;pertoires linux dans
		<tt>/mnt/linux/bin, /mnt/linux/etc</tt> et ainsi de suite.
	</itemize>

<sect>Diff&eacute;rentes remarques au sujet du fonctionnement de <em/Umsdos/
<p>

<sect1>Option de mount
<p>

	Vous pouvez utiliser les m&ecirc;mes options pour mount que pour le
syst&egrave;me de fichiers MS-DOS. L'utilisation de l'option <tt/conv=/ est
discutable sur un
syst&egrave;me <em/Umsdos/. Je propose de l'&eacute;viter. Les options que vous
aurez g&eacute;n&eacute;ralement &agrave; prendre en compte sont :

	<itemize>
	<item>uid=
	<item>gid=
	<item>umask=
	</itemize>

Il faut juste vous souvenir que <em/Umsdos/ traite les r&eacute;pertoires
non promus de la m&ecirc;me fa&ccedil;on que <em/MS-DOS/. Les options
ci-dessus vont donc s'appliquer globalement &agrave; tous les r&eacute;pertoires
non promus. <em/uid/ configure le propri&eacute;taire par d&eacute;faut,
<em/gid/ le groupe par d&eacute;faut et <em/umask/ les permissions par
d&eacute;faut sur les fichiers.

<sect1>Comment d&eacute;terminer les valeurs par d&eacute;faut pour la partition principale
<p>

umssetup a &eacute;t&eacute; cr&eacute;&eacute;e pour
d&eacute;terminer au
lancement le
propri&eacute;taire par d&eacute;faut de la partition principale. Pour les autres
partitions <em/Umsdos/, il est possible d'utiliser soit les options de
mount soit umssetup. La mani&egrave;re classique pour r&eacute;gler ce probl&egrave;me
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 :

	<tscreen><verb>
		/sbin/umssetup -u jack -g group -m 0755 /
	</verb></tscreen>

<sect1>Swapper ou ne pas swapper
<p>

L'utilisation d'un fichier de swap se r&eacute;v&egrave;le 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
<em/Umsdos/ de la m&ecirc;me fa&ccedil;on que dans tout autre syst&egrave;me de
fichiers <em/Linux/. Par exemple, pour configurer un fichier de swap de 8
Mo dans le r&eacute;pertoire racine :

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

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

	<tscreen><verb>
		/swap	swap	swap	default   	
	</verb></tscreen>

Et le fichier de swap sera activ&eacute; &agrave; chaque d&eacute;marrage. (Il y a
g&eacute;n&eacute;ralement la commande "swapon -a" dans <tt>/etc/rc.d/rc.S</tt>.)

<sect>Comment d&eacute;marrer un syst&egrave;me <em/Umsdos/
<p>

<sect1>Loadlin
<p>

Le paquetage lodlin15.tgz, disponible sur sunsite.unc.edu dans
<tt>/pub/Linux/system/Bootutils</tt>, est particuli&egrave;rement bien
adapt&eacute; au d&eacute;marrage d'un syst&egrave;me <em/Umsdos/. En g&eacute;n&eacute;ral, tout ce
que vous avez besoin de faire est

	<tscreen><verb>
	Boot DOS
	C:>loadlinx zimage root=D:
	</verb></tscreen>

o&ugrave; zimage est une image normale du noyau (compress&eacute;e), tout
simplement copi&eacute;e quelque part sur le lecteur <em/DOS/. <tt/D:/ est le
lecteur <em/DOS/ o&ugrave; vous avez install&eacute; <em/Linux/.

<sect1>A partir d'une disquette
<p>

D&eacute;marrer un syst&egrave;me <em/Umsdos/ &agrave; partir d'une disquette se fait de
la m&ecirc;me mani&egrave;re que pour un syst&egrave;me <em/Ext2/. Vous avez besoin
d'une image zImage de votre noyau proprement initialis&eacute;e pour
localiser votre partition principale <em/Umsdos/. Pour ce faire, on
utilise g&eacute;n&eacute;ralement la commande <tt/rdev/. La s&eacute;quence suivante
initialise un fichier zImage et le met sur une disquette :

	<tscreen><verb>
	rdev zImage /dev/hda1
	rdev -R zImage 0
	dd if=zImage bs=8192 of=/dev/fd0
	</verb></tscreen>

Si vous trouvez cela d&eacute;routant, formattez une disquette syst&egrave;me DOS et
copiez les fichiers suivants dessus :

	<itemize>
	<item>loadlin.exe
	<item>loadlinx.exe
	<item>zimage
	</itemize>

puis configurez le fichier autoexec.bat comme suit :

	<tscreen><verb>
	loadlinx zimage rw root=C:
	</verb></tscreen>

<sect1>LILO
<p>

LILO, le chargeur (boot-loader) officiel de <em/Linux/ peut aussi &ecirc;tre
utilis&eacute; pour d&eacute;marrer un syst&egrave;me <em/Umsdos/. Cependant je n'ai
jamais essay&eacute;, mais &ccedil;a devrait marcher depuis la version
1.1.60. Merci de m'envoyer un e-mail (NdT : toujours en anglais !) si vous avez
fait l'exp&eacute;rience.

<sect1>Comment d&eacute;fragmenter une partition <em/Umsdos/
<p>

Tout simplement en utilisant n'importe lequel des outils <em/DOS/
classiques. Les fichiers produits par <em/Umsdos/ n'ont rien de
particulier. Et <em/Umsdos/ n'attend rien de particulier (composition
ou s&eacute;quence des points d'entr&eacute;e des r&eacute;pertoires, etc.) du syst&egrave;me de fichier sur
lequel il travaille.

Pour ce que j'en sais, il n'existe pas d'outil sous <em/Linux/ pour faire
&ccedil;a. 

<sect1>Astuces avanc&eacute;es
<p>

<em/Umsdos/ repose sur <tt/--linux-.---/ qui repose lui-m&ecirc;me sur le 
r&eacute;pertoire <em/DOS/. Certains voudront peut-&ecirc;tre faire quelques 
exp&eacute;riences. L'utilitaire <tt/udosctl/ (dans le paquetage 
umsdos_progs, qui contient <tt/umssync/ et <tt/umssetup/) permet de
faire des op&eacute;rations sur les r&eacute;pertoires (effacer, voir le contenu),
et ceci ind&eacute;pendamment sur le r&eacute;pertoire <tt/--linux-.---/ ou sur le
r&eacute;pertoire <em/DOS/.

<sect>Principe de base
<p>

<sect1>Introduction
<p>

<em/Umsdos/ fait directement correspondre aux fichiers <em/Linux/ des
fichiers <em/MS-DOS/. C'est une transposition un pour un, et le contenu
des fichiers n'est pas alt&eacute;r&eacute; du tout. <em/Umsdos/ travaille
seulement sur les noms de fichiers, et r&eacute;serve un traitement
particulier aux fichiers sp&eacute;ciaux (par exemple les liens ou les
fichiers p&eacute;riph&eacute;riques).

Pour chaque r&eacute;pertoire, il y a un fichier appel&eacute; <tt/--linux-.---/.

<sect1><em/Umsdos/ peut remplacer le syst&egrave;me de fichiers <em/MS-DOS/
<p>

<em/Umsdos/ peut &ecirc;tre vu comme un surensemble plus g&eacute;n&eacute;ral du
syst&egrave;me de fichiers <em/MS-DOS/ de linux. En fait cette
capacit&eacute;/flexibilit&eacute; est la source de beaucoup de confusions au
sujet de <em/Umsdos/. Je vais vous expliquer pourquoi. Essayez de
monter une disquette <em/DOS/ qui vient juste d'&ecirc;tre formatt&eacute;e de la
mani&egrave;re suivante :

	<tscreen><verb>
	mount -t umsdos /dev/fd0 /mnt
	</verb></tscreen>

Puis fa&icirc;tes ceci :

	<tscreen><verb>
	ls / >/mnt/LONGFILENAME
	ls -l /mnt
	</verb></tscreen>

Et vous obtiendrez le r&eacute;sultat suivant :

	<tscreen><verb>
	-rwxr-xr-x   1 root     root          302 Apr 14 23:25 longfile
	</verb></tscreen>

Jusqu'ici, le syst&egrave;me de fichiers n'a pas l'air de faire grand chose
de plus (en fait m&ecirc;me rien) que le syst&egrave;me de fichiers <em/MS-DOS/
normal de <em/Linux/.
	
	<em/???/

<sect1>Promouvoir un r&eacute;pertoire
<p>

Jusqu'ici &ccedil;a n'est pas tr&egrave;s impressionant. Mais il y a une astuce. A
moins d'avoir &eacute;t&eacute; promu, un r&eacute;pertoire <em/DOS/ sera trait&eacute; par
<em/Umsdos/ de la m&ecirc;me fa&ccedil;on que par <em/MS-DOS/. <em/Umsdos/
utilise un fichier sp&eacute;cial dans chaque sous-r&eacute;pertoire pour
effectuer la transposition entre les possibilit&eacute;s &eacute;tendues (noms de
fichiers longs, propri&eacute;t&eacute;, etc.) de <em/Umsdos/ et les limitations
inh&eacute;rentes au syst&egrave;me de fichiers <em/DOS/. Ce fichier est invisible
aux utilisateurs de <em/Umsdos/, mais il devient visible si vous
d&eacute;marrez sous <em/DOS/. Pour &eacute;viter de mettre inutilement le
d&eacute;sordre dans la partition <em/DOS/ avec ces fichiers
(<tt/--linux-.---/), ils sont maintenant optionnels. S'ils sont
absents, <em/Umsdos/ se comporte comme <em/MS-DOS/.

Quand un r&eacute;pertoire est promu, toutes les op&eacute;rations effectu&eacute;es par
la suite tiendront compte de toutes les possibilit&eacute;s normalement
accessibles aux utilisateurs d'<em/Unix/ et de <em/Linux/. Tous les
sous-r&eacute;pertoires cr&eacute;es ensuite seront promus sans autre intervention
de votre part.

Cette caract&eacute;ristique vous permet d'organiser logiquement votre
partition <em/DOS/ entre votre hi&eacute;rarchie <em/DOS/ et votre
hi&eacute;rarchie <em/Linux/. Il est important de comprendre que les
fichiers <tt/--linux-.---/ prennent de la place (en g&eacute;n&eacute;ral 2 Ko par
r&eacute;pertoire). Comme <em/DOS/ utilise de gros clusters (par exemple de
16 Ko pour une partition de 500 Mo), &eacute;viter de mettre des fichiers
<tt/--linux-.---/ partout peut vous faire gagner pas mal de place.

<sect1>Comment promouvoir /sbin/umssync
<p>

Un r&eacute;pertoire peut &ecirc;tre promu &agrave; n'importe quel moment en utilisant
<tt>/sbin/umssync</tt>. Lorsqu'un r&eacute;pertoire est promu, il se passe
les choses suivantes :

	<itemize>
	<item>Cr&eacute;ation d'un fichier <tt/--linux-.---/.
	<item>Une relation un pour un est &eacute;tablie entre le fichier
		<tt/--linux-.---/ et le contenu actuel du r&eacute;pertoire.
	</itemize>

La commande <tt>/sbin/umssync</tt> est utilis&eacute;e pour la maintenance des fichiers
<tt/--linux-.---/ existants. Elle ne le cr&eacute;e pas &agrave; partir de rien &agrave;
chaque fois. Elle modifie simplement ce qui a chang&eacute; (par exemple les
fichiers nouvellement cr&eacute;es lors d'une session <em/DOS/). Elle retire
aussi de ce fichier les fichiers qui n'existent plus dans le
r&eacute;pertoire <em/DOS/. C'est pourquoi <tt/umssync/ porte ce nom, car
elle synchronise les fichiers <em/--linux-.---/ avec le r&eacute;pertoire
<em/DOS/ sous-jacent.

<sect1>Utiliser <tt>/sbin/umssync</tt> au d&eacute;marrage
<p>

C'est une bonne id&eacute;e de mettre un appel &agrave; <tt>/sbin/umssync</tt> &agrave;
la fin du fichier /etc/rc.d/rc.S (si ce n'est d&eacute;j&agrave; fait...). La
commande suivante marche sur la plupart des syst&egrave;mes :

	<tscreen><verb>
	/sbin/umssync -r99 -c -i+ /
	</verb></tscreen>

L'option <tt/-c/ emp&ecirc;che <tt/umssync/ de promouvoir les
r&eacute;pertoires. Cette commande va donc seulement mettre &agrave; jour les
fichiers <tt/--linux-.---/ existants.

Cette commande est utile si vous d&eacute;sirez acc&eacute;der au r&eacute;pertoire
<em/Linux/ pendant une session <em/DOS/. <em/Linux/ n'a pas de moyen
efficace de dire qu'un r&eacute;pertoire a &eacute;t&eacute; modifi&eacute; par <em/DOS/, donc
<em/Umsdos/ ne peut pas lancer lui-m&ecirc;me la commande <em/umssync/
n&eacute;cessaire. 

<sect1>Comment d&eacute;-promouvoir
<p>

Effacez le fichier <tt/--linux-.---/ en utilisant <em/DOS/.

<sect1>A propos des fichiers cr&eacute;&eacute;s lors d'une session <em/DOS/
<p>

A moins que vous n'utilisiez <tt/umssync/ sur un r&eacute;pertoire dans
lequel des fichiers ont &eacute;t&eacute; ajout&eacute;s ou effac&eacute;s par <em/DOS/, vous
allez remarquer certains des probl&egrave;mes suivants :

	<itemize>
	<item>Le syst&egrave;me ne va pas planter, et cela ne va pas
		causer de probl&egrave;mes majeurs, juste quelques
		d&eacute;rangements. 
	<item>Fichiers cr&eacute;&eacute;s par <em/DOS/.
		<itemize>
		<item>Ils seront invisibles pour <em/Linux/.
		<item>Quand vous voudrez creer un fichier avec le
			m&ecirc;me nom, vous obtiendrez un message d&eacute;rreur
			vous disant que ce fichier existe d&eacute;j&agrave;.
		<item>Plus de confusion que de r&eacute;&eacute;ls probl&egrave;mes,
			donc. En tout cas cela ne cause aucun dommage
			au syst&egrave;me de fichiers.
		</itemize>
	<item>Les fichiers effac&eacute;s par <em/DOS/ ne causeront aucun
		probl&egrave;me. <em/Umsdos/ remarquera leur absence &agrave; la
		premi&egrave;re tentative d'acc&egrave;s, et vous d&eacute;livrera un
		message (qui sera g&eacute;ne'ralement &eacute;crit dans
		<tt>/var/adm/syslog</tt>). 
	</itemize>

<sect>(D&eacute;s-)Installation et quelques astuces
<p>

L'installation de <em/Umsdos/ n'est pas vraiment diff&eacute;rente de celle
d'un syst&egrave;me <em/Linux/ ordinaire (<em/bas&eacute; sur Ext2/).

Il y a tout de m&ecirc;me deux diff&eacute;rences principales.

<sect1>La pseudo-racine <tt>/mnt/linux</tt>
<p>

Les &eacute;tapes normales lors de l'installation sont :

	<enum>
	<item>Cr&eacute;er une partition avec fdisk et la formatter.
	<item>La monter sur /mnt relativement &agrave; notre disque
		principal d'installation.
	<item>Copier tous les paquetages dans <tt>/mnt</tt>.
	</enum>

Avec <em/Umsdos/ l'&eacute;tape 1 n'est pas n&eacute;cessaire (n'&eacute;tait-ce pas le
but de <em/Umsdos/ de ne pas avoir &agrave; reformatter ?).

Il est possible d'installer un syst&egrave;me <em/Umsdos/ juste en copiant
tous les paquetages dans <tt>/mnt</tt>. Cela marchera
certainement. Mais cela va aussi creer tout un tas de
sous-r&eacute;pertoires dans votre r&eacute;pertoire racine <em/DOS/ (C:), et vous
n'allez pas aimer &ccedil;a. C'est la raison pour laquelle toute
installation de <em/Umsdos/ utilise la pseudo-racine. Et c'est la
diff&eacute;rence majeure entre une installation normale (<em/Ext2/) et
celle de <em/Umsdos/ : tous les fichiers sont copi&eacute;s dans
<tt>/mnt/linux</tt>.

<sect1>Pr&eacute;parer le r&eacute;pertoire <tt>/mnt/linux</tt>
<p>

<tt>/mnt/linux</tt> n'est pas un r&eacute;pertoire ordinaire. Il doit &ecirc;tre
promu pour pouvoir manipuler correctement les noms de fichiers
longs de <em/Linux/ et les fichiers sp&eacute;ciaux (liens,
fichiers p&eacute;riph&eacute;riques). Les &eacute;tapes n&eacute;cessaires pour configurer <tt>/mnt/linux</tt>
sont :

	<enum>
	<item><tt>mkdir /mnt/linux</tt>
	<item><tt>umssync /mnt/linux</tt>
	</enum>

Et c'est tout !

<sect1>V&eacute;rifier que <tt>/mnt/linux</tt> est correctement configur&eacute;
<p>

M&ecirc;me si la configuration de <tt>/mnt/linux</tt> est plut&ocirc;t simple,
il y a un certain nombre de paquetages qui ne marchent pas. Comment
est-ce possible ?

<!--	<quote> -->
Le probl&egrave;me d'installation le plus important vient d'un programme
<tt/umssync/ incompatible. <em/Umsdos/ a &eacute;t&eacute; mis &agrave; jour dans linux
1.1.88 (je ne me rappelle plus exactement du num&eacute;ro) et un bug a
&eacute;t&eacute; d&eacute;couvert dans <tt>umssync</tt>. Pour &eacute;viter toute confusion
dans la communaut&eacute; <em/Linux/, il a &eacute;t&eacute; d&eacute;cid&eacute; de monter le
niveau de compatibilit&eacute; n&eacute;cessaire pour tous les utilitaires
<em/Umsdos/. Les anciennes versions de ces utilitaires ont &eacute;t&eacute;
purement et simplement rejet&eacute;es.

Apparemment beaucoup de distributions n'ont pas mis &agrave; jour
l'utilitaire <tt>umssync</tt> sur leur disque d'installation.
<!--	</quote> -->

Il existe encore pas mal de distributions de ce style en
circulation. Le r&eacute;sultat est que le r&eacute;pertoire <tt>/mnt/linux</tt>
n'est pas promu du tout et va tronquer tous les noms de fichiers
trop longs, et aussi rejeter tous les fichiers sp&eacute;ciaux.

Il est possible de faire un test tr&egrave;s t&ocirc;t pendant l'installation
pour voir si quelque chose s'est mal pass&eacute;. Gr&acirc;ce au m&eacute;canisme de
pseudo-console de <em/Linux/, vous pouvez le faire sans quitter le
programme d'installation. Suivez les instructions suivantes :

	<enum>
	<item>Appuyez sur <tt>Alt-F2</tt> (Appuyez sur la touche
		<tt/Alt/ et en m&ecirc;me temps sur la touche <tt/F2/).
	<item>Logguez-vous sous root.
	<item><tt>cd /mnt/linux</tt>

		Si cela ne marche pas, vous &ecirc;tes en train d'essayer
		trop t&ocirc;t. Un bon moment pour faire ce test est
		d'attendre la fin de la s&eacute;lection des paquetages.

	<item><tt>>TOTO</tt>
	<item><tt>ls -l</tt>

		Un fichier vide du nom de <tt/TOTO/ (en majuscules)
		doit appara&icirc;tre. Si vous le voyez en minuscules,
		quelque chose s'est mal pass&eacute;. Essayez de recommencer
		&agrave; l'&eacute;tape du <tt/umssync/. Vous pouvez utiliser
		<tt/umssync/ autant de fois que vous voulez sans probl&egrave;mes.

		<tt>umssync .</tt>

		S'il n'y a pas de message d'erreur, refaites le test
		pour <tt/TOTO/. Si <tt/TOTO/ apparait bien, alors tout
		va pour le mieux. Cette installation avait quelque
		chose de bizarre mais vous avez r&eacute;ussi quand
		m&ecirc;me. Continuez. 
		
	<item>Appuyez sur <tt>Alt-F1</tt> pour revenir &agrave; l'&eacute;cran
		d'installation.
	</enum>

<!--	<code> -->
Si le test n'a pas march&eacute;, la meilleure solution est de prendre une
disquette d'installation plus r&eacute;cente. Il est g&eacute;n&eacute;ralement possible
de r&eacute;soudre ce probl&egrave;me en installant une version plus
r&eacute;cente de <tt/umssync/. Ce n'est pas difficile mais cela n&eacute;cessite
un syst&egrave;me <em/Linux/ en &eacute;tat de marche. Vous avez juste &agrave; monter
le lecteur de disquette et &agrave; remplacer la version caduque de
<tt/umssync/ par une nouvelle.
<!--	</quote> -->

<sect1>Oops releasing pseudo root ...
<p>

La plupart des installations qui ne marchent pas le font en donnant ce
message &eacute;trange. Ce n'est pas un bug dans <em/Umsdos/ bien que ce
message puisse para&icirc;tre vraiment bizarre. Voici les causes connues :

	<itemize>
	<item>La plus commune
		<p>
L'installation de la <em/Slackware/ essaye de configurer un fichier de
swap tr&egrave;s t&ocirc;t lors de l'installation. Pour ce faire, elle vous
demande de s&eacute;lectionner une partition (lecteur <em/DOS/), puis elle la
monte et cr&eacute;e pour finir le fichier de swap.

Lors de l'installation d'un syst&egrave;me <em/Slackware/, vous devez
configurer la partition cible avant de commencer &agrave; installer autre chose. Cela monte
normalement la partition <em/DOS/ sur <tt>/mnt</tt>, cr&eacute;e le
r&eacute;pertoire <tt>/mnt/linux</tt> et lance <tt/umssync/ dessus.

C'est de l&agrave; que viennent la plupart des probl&egrave;mes. Un grand nombre
d'utilisateurs sautent l'&eacute;tape "configuration de la partition cible"
et passent directement au reste de l'installation. Comme <tt>/mnt</tt>
est d&eacute;j&agrave; mont&eacute;, cette erreur n'est pas remarqu&eacute;e.
Cela signifie que <tt>/mnt/linux</tt> n'a pas &eacute;t&eacute; correctement cr&eacute;e
(non promu). Donc tous les fichiers dont le nom est trop long,
ainsi que tous les fichiers sp&eacute;ciaux (liens, fichiers p&eacute;riph&eacute;riques) ne peuvent pas
&ecirc;tre cr&eacute;es correctement.
	<item>Utilitaire <tt/umssync/ non valide
		<p>
<tt>/mnt/linux</tt> a &eacute;t&eacute; mal configur&eacute;, g&eacute;n&eacute;ralement &agrave; cause
de l'utilitaire <tt/umssync/ non valide sur la disquette d'installation.
	<item>Vieux bug de <em/Umsdos/
		<p>
Il y avait un bug dans <em/Umsdos/ avant <em/Linux 1.2.2/. Le mode
pseudo-racine ne s'activait pas correctement si le fichier
<tt>/etc/init</tt> n'&eacute;tait pas pr&eacute;sent. <tt/init/ se trouve
maintenant dans <tt>/sbin</tt>. Vous pouvez r&eacute;soudre ce probl&egrave;me en
vous procurant un noyau plus r&eacute;cent. C'est d'autant plus recommand&eacute;
qu'un nouveau bug a &eacute;t&eacute; d&eacute;tect&eacute; et corrig&eacute; dans la version 1.2.2.

Si vous n'avez pas de version plus r&eacute;cente, faites ceci :

		<enum>
		<item>D&eacute;marrez &agrave; partir de la disquette d'installation.
		<item>Logguez-vous sous root.
		<item><tt>mount -t umsdos /dev/hdXX /mnt</tt>

			o&ucirc; <tt>/dev/hdXX</tt> est votre partition <em/DOS/.
		<item><tt>cd /mnt/linux/etc</tt>
		<item><tt>ln -s ../sbin/init init</tt>
		<item><tt>cd /</tt>
		<item><tt>Ctrl-Alt-Del</tt>
		<item>D&eacute;marrez normalement sous <em/Umsdos/.
		</enum>
	</itemize>

Malheureusement, les deux premiers probl&egrave;mes d'installation donnent
une installation compl&egrave;tement inutilisable. Il va falloir
d&eacute;sinstaller puis r&eacute;installer <em/Umsdos/.

<sect1>Comment d&eacute;sinstaller un syst&egrave;me <em/Umsdos/
<p>

Il y a quelque chose de pratique avec <em/Umsdos/ et son m&eacute;canisme de
pseudo-racine, c'est que vous pouvez le d&eacute;sinstaller sans douleur. Il
suffit de d&eacute;marrer sous <em/DOS/ et d'effacer r&eacute;cursivement tous les
r&eacute;pertoires <tt/linux/. C'est tout. <em/Umsdos/ n'a pas besoin de
drivers particuliers dans le fichier config.sys, et il ne cr&eacute;e rien
de sp&eacute;cial en dehors du r&eacute;pertoire <tt/linux/.

<sect1>D&eacute;placer un syst&egrave;me <em/Umsdos/ vers un autre lecteur <em/DOS/
<p>

Cela peut &ecirc;tre fait &agrave; partir de <em/Linux/ ou du <em/DOS/. Il suffit
juste de copier r&eacute;cursivement les r&eacute;pertoires <tt/linux/ d'un
lecteur vers l'autre. Ensuite il faudra modifier le m&eacute;canisme de
d&eacute;marrage (g&eacute;n&eacute;ralement avec la commande loadlin) et le fichier
<tt>/etc/fstab</tt>. 

<em/Umsdos/ peut &ecirc;tre install&eacute; sur n'importe quel lecteur
<em/DOS/. Il n'est pas obligatoire de l'installer sur le lecteur
<tt/C:/, ni m&ecirc;me sur le premier disque dur. Cela ne change rien.

En fait, vous pouvez m&ecirc;me d&eacute;cider d'avoir plusieurs installations de
<em/Umsdos/ sur diff&eacute;rents lecteurs pour faire des tests.

<sect1>Installer 50 syst&egrave;mes <em/Umsdos/.
<p>

Pourquoi ne pas installer tout un tas de syst&egrave;mes <em/Linux/ en un
rien de temps ?

<em/Umsdos/ repose sur le mode du <em/DOS/. Vous pourvez tirer partie
de cette particularit&eacute; si vous voulez installer <em/Linux/
facilement. 

Vous pouvez ainsi installer et configurer un syst&egrave;me <em/Umsdos/ sur
un site. Lorsque vous &ecirc;tes satisfait de la configuration obtenue et
des paquetages s&eacute;lectionn&eacute;s, vous pouvez d&eacute;marrer sous <em/DOS/ et
copier la totalit&eacute; du r&eacute;pertoire <tt/linux/ sur votre serveur de
fichiers <em/DOS/. Ensuite il vous suffit d'aller sur une autre
station <em/DOS/ et de copier les fichiers du lecteur r&eacute;seau vers le
lecteur local. C'est tout. Il ne vous reste plus qu'&agrave; modifier le
script de d&eacute;marrage (<em/Loadlinx/) et c'est parti.

Avec quelques modifications minimes (nom de l'h&ocirc;te, adresse IP),
n'importe qui pourra installer un syst&egrave;me <em/Linux/ en deux temps
trois mouvements.

Les lecteurs int&eacute;ress&eacute;s auront pu remarquer qu'il est aussi possible
d'installer n'importe quel syst&egrave;me <em/Linux/ de la m&ecirc;me mani&egrave;re, y
compris les syst&egrave;mes bas&eacute;s sur <em/Ext2/.

Un des aspects les plus sympathiques de <em/Linux/ est qu'il n'y a pas
de fichiers cach&eacute;s qui doivent absolument &ecirc;tre install&eacute;s par des
programmes "magiques".

<sect>Configurer une section <em/Linux/ dans une partition <em/DOS/.
<p>

<em/Umsdos/ peut se r&eacute;v&eacute;ler utile m&ecirc;me aux utilisateurs de
<em/Ext2/ (le syst&egrave;me de fichiers natif de <em/Linux/). Un sc&eacute;nario
classique est le suivant :

	<itemize>
	<item><em/Linux/ &eacute;tant votre syst&egrave;me d'exploitation
		pr&eacute;f&eacute;r&eacute;, la partition <em/Linux/ se remplit &agrave; n'en
		plus finir.
	<item>Votre partition <em/DOS/ est pleine de poussi&egrave;re, et &agrave;
		moiti&eacute; vide.
	<item>Soudain vous n'avez plus de place sur votre partition
		<em/Ext2/. 
	<item>Vous n'&ecirc;tes pas encore s&ucirc;r de vouloir vous d&eacute;barasser
		de votre partition <em/DOS/.
	</itemize>

C'est ici que <em/Umsdos/ peut vous aider. Vous pouvez configurer un
r&eacute;pertoire <em/Linux/ sur votre partition <em/DOS/, et l'utiliser
sans restriction sous <em/Linux/. Par exemple, supposons que vous
voulez cr&eacute;er un nouveau r&eacute;pertoire nomm&eacute; <tt/"extra"/ sur votre
lecteur <tt/C:/, et que vous voulez qu'il se comporte comme un
r&eacute;pertoire <em/Linux/ normal. Faites ceci :
(en supposant que <tt/C:/ est <tt>/dev/hda1</tt>)

	<tscreen><verb>
	mkdir /c
	/sbin/mount -t umsdos /dev/hda1 /c
	mkdir /c/extra
	umssync /c/extra
	</verb></tscreen>

Il vous faut &ecirc;tre sous root pour ex&eacute;cuter ces commandes

En configurant <tt>/etc/fstab</tt> comme ceci, vous aurez toujours
acc&egrave;s au r&eacute;pertoire <tt>/c/extra</tt>.

<sect>Pourquoi <em/Umsdos/ ?
<p>
Expliquer le fonctionnement et l'installation d'un syst&egrave;me
<em/Umsdos/ ne suffit pas. Ce que la plupart des gens cherche, ce sont
des conseils pour savoir s'ils doivent utiliser <em/Umsdos/ ou non.

<sect1>Le but de <em/Umsdos/
<p>
Le but de <em/Umsdos/ est de faciliter l'installation de
<em/Linux/. Un autre but est de faciliter sa DES-installation. L'id&egrave;e
ici &eacute;tait de favoriser la diffusion de <em/Linux/. Installer un
nouveau syst&egrave;me d'exploitation est toujours
probl&eacute;matique. <em>OS/2</em> par exemple va gentiment polluer la
racine de votre lecteur <tt/C:/ avec tout un tas de nouveaux
r&eacute;pertoires. Si vous &ecirc;tes aussi dou&eacute; que moi, il va m&ecirc;me effacer
vos fichiers config.sys et autoexec.bat :-( (NdT : Tant qu'&agrave; faire !). 

L'utilisation de la pseudo-racine permet d'&eacute;viter cette invasion non
d&eacute;sir&eacute;e, et <em/Linux/ peut &ecirc;tre d&eacute;sinstall&eacute; sans effets de bord.

<sect1>Qui en a besoin ?
<p>
Si vous avez un petit disque dur, <em/Umsdos/ va vous permettre de
partager l'espace disque entre le <em/DOS/ et <em/Linux/. A mon avis,
on peut consid&eacute;rer qu'un disque de moins de 300 Mo est un petit
disque. Cette opinion repose sur la taille des diff&eacute;rents paquetages
disponibles &agrave; l'heure actuelle. Un traitement de textes populaire
veut prendre jusqu'&agrave; 70 Mo si vous choisissez toutes les
possibilit&eacute;s. 

Si vous avez un disque plus gros, vous pouvez choisir d'avoir une
partition d&eacute;di&eacute;e &agrave; <em/Linux/ utilisant le syst&egrave;me de fichiers
<em/Ext2/. <em/Ext2/ utilise une taille de clusters plus petite que
<em/DOS/ (en fait 1 Ko), donc installer beaucoup de petits fichiers
prendra moins de place que sur une partition <em/Umsdos/.

<sect1>Performances
<p>

Ceci s'applique &agrave; une comparaison entre <em/Umsdos/ et <em/Ext2/.

	<itemize>
	<item>La gestion des r&eacute;pertoires est plus rapide sous
		<em/Ext2/. Cela provient de la double structure des
		r&eacute;pertoires sous <em/Umsdos/.
	<item>L'acc&egrave;s aux fichiers (lecture et &eacute;criture) est
		probablement plus rapide sous <em/Umsdos/ que sous
		<em/Ext2/. Cela vient de la simplicit&eacute; du syst&egrave;me de
		fichiers <em/FAT/ utilis&eacute; par <em/DOS/.
		
		Cependant cette simplicit&eacute; a un co&ucirc;t :

		<itemize>
		<item>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.
		<item>Tout est control&eacute; par la <tt/FAT/ qui se trouve
			au d&eacute;but du disque dur. Le syst&egrave;me <em/DOS/
			est donc certainement plsu fragile &agrave; cause de
			cela.
		<item>Aucune pr&eacute;vision pour &eacute;viter la fragmentation
			des fichiers. Un syst&egrave;me <em/Umsdos/ est
			g&eacute;n&eacute;ralement utilis&eacute; en mode
			mono-utilisateur. Dans ce cas, cela n'a pas
			beaucoup d'importance. Mais pour un syst&egrave;me
			multi-utilisateurs, les fichiers seront
			&eacute;parpill&eacute;s dans tous les coins du disque, ce
			qui aura pour effet de r&eacute;duire les
			performances d'acc&egrave;s aux fichiers.
		</itemize>
	<item>Les liens symboliques sont stock&eacute;s dans des fichiers
		normaux. Si vous comptex en avoir beaucoup, vous vous
		rendrez compte que <em/Umsdos/ utilise beaucoup
		d'espace disque compar&eacute; &agrave; <em/Ext2/.
	</itemize>
</article>
