\documentclass{article}
\usepackage{linuxdoc-sgml}
\usepackage{qwertz}
\usepackage[latin1]{inputenc}
\usepackage{epsfig}
\usepackage{null}
\title{Le Mini-HOWTO JAZ-drive}
\author{\'{E}dit\'{e} par Bob Willmot,
{\ttfamily bwillmot@cnct.com}\\ 
Traduit par Olivier Tharan, {\ttfamily Olivier.Tharan@int-evry.fr}}
\date{v1.6, 4 juin 1997}
\abstract{Ceci est la traduction fran\c{c}aise du JAZ-drive mini-HOWTO, elle
décrit la configuration et l'utilisation d'un lecteur Iomega Jaz sous
Linux et les outils logiciels disponibles pour ce lecteur.}


\begin{document}
\maketitle
\tableofcontents

\section{Introduction}



Le disque Iomega Jaz est un lecteur de disques à supports amovibles dont
les disques ont une capacité de 1021 méga-octets. Il est disponible à
l'heure actuelle en versions SCSI interne et externe. Iomega projette de
sortir une version IDE interne.

Ce document décrit la manière d'utiliser le lecteur Jaz avec Linux. Puisque
c'est un périphérique SCSI, il est important que vous lisiez aussi le HOWTO
SCSI de Drew Eckhardt (traduit en français par Jean Zundel) :

\begin{tscreen}
\begin{verbatim}
http://sunsite.unc.edu/pub/Linux/docs/HOWTO/SCSI-HOWTO
http://www.freenix.fr/linux/HOWTO/SCSI-HOWTO.html
\end{verbatim}
\end{tscreen}


J'aimerais remercier les personnes suivantes pour leurs contributions et
les informations qu'elles ont fournies~:

\begin{itemize}
\item Grant Gunther, {\ttfamily grant@torque.net}
\item Tom Poindexter, {\ttfamily tpoindex@nyx.net}
\item Todd Woods, {\ttfamily woods@cs.uiowa.edu}
\item Richard B. Melrose, {\ttfamily rbm@math.mit.edu}
\item Phil Howard, {\ttfamily phil@charon.milepost.com}
\item Rick Niess, {\ttfamily rniess@ocean.st.usm.edu}
\end{itemize}


Si vous avez des commentaires, des suggestions, des corrections, veuillez
les envoyer à : Bob Willmot, {\ttfamily bwillmot@cnct.com}.




\section{Les disques Jaz}



Les disques Jaz (cartouches) ressemblent à un empilement de trois
disquettes 3,5" et contiennent 1 Go de données.

Le lecteur possède un mécanisme motorisé qui peut éjecter le disque à
l'aide d'un bouton-poussoir sur le devant du lecteur ou par logiciel (voir
ci-dessous pour les logiciels Linux {\ttfamily jaztools}).




\subsection{L'adaptateur Jaz Jet}



Iomega commercialise un adaptateur SCSI sous le nom de Jaz Jet.

Apparamment il y a en ce moment deux versions disponibles pour ce
contrôleur, basées sur deux chipsets SCSI différents.

L'un est basé sur la famille d'adaptateurs Adaptec 7800, et est compatible
avec les adaptateurs 2930/2940. Linux 2.0 supporte cet adaptateur avec le
pilote {\ttfamily aic7xxx}. (Ce pilote est apparu dans les versions 1.3.? du
noyau).

L'autre adaptateur est basé sur le chipset Advanced Systems. Au démarrage,
la carte donne un message ainsi :

\begin{tscreen}
\begin{verbatim}
Jaz Jet PCI SCSI adapter Copyright Advanced Systems 1996
\end{verbatim}
\end{tscreen}


Compilez le noyau en positionnant la variable CONFIG\_SCSI\_ADVANSYS.




\section{Configurer un noyau pour le lecteur Jaz}



Pour utiliser le lecteur Jaz avec Linux, vous devez avoir un noyau
configuré pour votre adaptateur SCSI.

Les informations pour construire le noyau se trouvent dans le fichier
{\ttfamily /usr/src/linux/README}, ou dans le répertoire
{\ttfamily /usr/src/linux/Documentation/}
pour les noyaux 2.x.

Allez aussi faire un tour sur le Kernel-HOWTO de Brian Ward (traduit par
Eric Dumas) :

\begin{tscreen}
\begin{verbatim}
http://sunsite.unc.edu/pub/Linux/docs/HOWTO/Kernel-HOWTO
http://www.freenix.fr/linux/HOWTO/Kernel-HOWTO.html
\end{verbatim}
\end{tscreen}





\section{Identifier le lecteur au démarrage}



Quand votre système démarre, il devrait afficher des informations sur votre
adaptateur, et sur tous les disques attachés au lecteur.

Les messages de démarrage varient selon votre adaptateur SCSI et sont aussi
ajoutés au fichier {\ttfamily /var/log/messages} (ou
{\ttfamily /var/adm/messages}). Vous pouvez
aussi ``revoir'' ces messages à partir de la ligne de commande avec la
commande {\ttfamily dmesg}.

Voici la sortie écran d'un démarrage du noyau sur un noyau 2.0.10 avec un
contrôleur Adaptec 2940 :

\begin{tscreen}
\begin{verbatim}
    aic7xxx: BurstLen = 8 DWDs, Latency Timer = 64 PCLKS
    aic7xxx: AHA-2940 Ultra Rev B.
    aic7xxx: devconfig = 0x580.
    aic7xxx: Reading SEEPROM...done.
    aic7xxx: Extended translation enabled.
    aic7xxx: Using 16 SCB's after checking for SCB memory.
    AHA-2940 Ultra (PCI-bus):
        irq 11
        bus release time 40 bclks
        data fifo threshold 100%
        SCSI CHANNEL A:
            scsi id 7
            scsi selection timeout 256 ms
            scsi bus reset at power-on enabled
            scsi bus parity enabled
            scsi bus termination (low byte) enabled
    aic7xxx: Downloading sequencer code...done.
    aic7xxx: Resetting the SCSI bus...done.
    scsi0 : Adaptec AHA274x/284x/294x (EISA/VLB/PCI-Fast SCSI) 3.2/3.1/3.0
    scsi : 1 host.
    aic7xxx: Scanning channel A for devices.
    aic7xxx: Target 4, channel A, now synchronous at 10.0MHz, offset(0xf).
      Vendor: iomega    Model: jaz 1GB           Rev: G.60
      Type:   Direct-Access                      ANSI SCSI revision: 02
    Detected scsi removable disk sda at scsi0, channel 0, id 4, lun 0
    scsi : detected 1 SCSI disk total.
    SCSI device sda: hdwr sector= 512 bytes. Sectors= 2091050 [1021 MB] [1.0 GB]
    sda: Write Protect is off
\end{verbatim}
\end{tscreen}


Dans la séquence ci-dessus, notez les noms de périphériques SCSI bruts
({\ttfamily sda}, {\ttfamily sdb}, etc.). Vous en aurez besoin pour accéder au disque
plus tard. 

Si ces lignes n'apparaissent pas, c'est que quelque chose est mal configuré
dans votre matériel ou dans le noyau.

Si la ligne {\ttfamily scsi0:} n'apparait pas, c'est que vous n'avez pas configuré
votre adaptateur et son pilote correctement. Certains pilotes vous
donneront un indice sur ce qui ne va pas. Si votre lecteur n'est pas
détecté, vous avez probablement un problème de câble. Si un nom de lecteur
n'est pas donné, vous avez probablement oublié d'inclure le support pour
disque SCSI quand vous avez construit le noyau.

Vérifiez les fichiers {\ttfamily README} dans {\ttfamily drivers/scsi} et le HOWTO
SCSI pour d'autres indices de débogage.




\subsection{Fdisk, mke2fs, mount, etc.}



Une fois que vous connaissez le nom de lecteur pour votre lecteur Jaz, vous
êtes sur la bonne voie. Vous pouvez manipuler le lecteur avec les commandes
traditionnelles de gestion de disques sous Linux, {\ttfamily fdisk}, {\ttfamily mke2fs},
{\ttfamily mount}, etc.

Reportez-vous aux pages de manuel pour ces programmes.




\subsubsection{Un disque déjà formaté pour DOS}



Les disques formatés en usine chez Iomega sont partitionnés avec une seule
partition (pour une raison inconnue, ils utilisent la 4ème partition).

Vous pouvez monter ce disque (en supposant que votre disque Jaz est sur le
périphérique brut {\ttfamily sda}) avec les commandes :

\begin{tscreen}
\begin{verbatim}
mkdir /jaz
mount -t msdos /dev/sda4 /jaz
\end{verbatim}
\end{tscreen}


Ou si vous utilisez un noyau de la série 2.0 et avez compilé le noyau avec
le support de la VFAT Win95, vous pouvez le monter avec :

\begin{tscreen}
\begin{verbatim}
mkdir /jaz
mount -t vfat /dev/sda4 /jaz
\end{verbatim}
\end{tscreen}


(Ceci vous permettra de lire/écrire les noms de fichiers longs).

Les fichiers du disque apparaîtront dans {\ttfamily /jaz}. Pendant que le
disque est monté, vous ne pourrez pas l'éjecter.

Pour démonter le lecteur, vous pouvez lancer la commande :

\begin{tscreen}
\begin{verbatim}
umount /dev/sda4
\end{verbatim}
\end{tscreen}


Une fois que vous avez créé le point de montage {\ttfamily /jaz}, vous n'aurez
plus besoin de le refaire. (Assurez-vous aussi que vous n'êtes pas dans le
répertoire {\ttfamily /jaz} quand vous essayez de démonter le lecteur.)




\subsubsection{Re-formater un disque pour Linux}



Si vous voulez effacer un disque Jaz et y créer un système de fichiers Linux 
natif, vous devez utiliser {\ttfamily fdisk} sur le disque entier :

\begin{tscreen}
\begin{verbatim}
fdisk /dev/sda
\end{verbatim}
\end{tscreen}


et effacer toute partition existant (avec la commande {\ttfamily d}). Créez alors
une nouvelle partition avec la commande {\ttfamily n}, faites-en la partition
primaire numéro 1, utilisez {\ttfamily w} pour écrire la table de partitions sur
le disque, et quittez avec {\ttfamily q}.

Formattez la partition :

\begin{tscreen}
\begin{verbatim}
mke2fs /dev/sda1
\end{verbatim}
\end{tscreen}


(Le 1 est le numéro que vous avez donné à cette partition dans {\ttfamily fdisk}).
Maintenant vous pouvez monter le disque :

\begin{tscreen}
\begin{verbatim}
mount -t ext2 /dev/sda1 /jaz
\end{verbatim}
\end{tscreen}


(en ré-utilisant le point de montage que nous avions créé auparavant).




\subsubsection{Le disque Jaz Tools}



Il y a un peu plus de travail si vous voulez utiliser le disque livré avec
le lecteur Jaz. Livré tel qu'il est, la protection en écriture contrôlée
par logiciel est activée.

Vous avez à ce point deux options : débloquer le disque sous DOS ou
Windows avec le programme {\ttfamily reclaim.exe} (ou en installant les outils à
partir du programme d'installation), ou bien débloquer le disque avec mon
programme {\ttfamily jaztools} (voir la section \ref{jaztools}) avec la
commande :

\begin{tscreen}
\begin{verbatim}
jaztool /dev/sda rw
\end{verbatim}
\end{tscreen}


(Corrigez le {\ttfamily /dev/sda} selon votre périphérique SCSI), et quand on
vous demande un mot de passe, entrez

\begin{tscreen}
\begin{verbatim}
APlaceForYourStuff
\end{verbatim}
\end{tscreen}





\section{Jaztools\label{jaztools}}



Un programme natif sous Linux, fait pour supporter certaines capacités
spéciales de Iomega (comme l'éjection contrôlée par logiciel et la
protection en écriture) est disponible à :

\begin{tscreen}
\begin{verbatim}
        
http://www.cnct.com/~bwillmot/jaztool/
\end{verbatim}
\end{tscreen}


Une nouvelle version de {\ttfamily jaztool} devrait être disponible sous peu et
contiendra une interface graphique et supportera l'interrogation des
lecteurs et le montage et démontage automatique des disques.




\section{Questions fréquemment posées}






\subsection{Je ne peux monter le disque Jaz Tools qu'en lecture seule.}



Le disque d'utilitaires est livré dans un mode spécial, en lecture seule
et protégé par un mot de passe. Pour débloquer le disque, lancez le
programme {\ttfamily reclaim.exe} sous DOS ou Windows, ou bien utilisez le
programme Linux {\ttfamily jaztools} (voir la section \ref{jaztools}) avec
la commande :

\begin{tscreen}
\begin{verbatim}
jaztool /dev/sda rw
\end{verbatim}
\end{tscreen}


(Corrigez le {\ttfamily /dev/sda} selon votre périphérique SCSI), et quand on
vous demande un mot de passe, entrez

\begin{tscreen}
\begin{verbatim}
APlaceForYourStuff
\end{verbatim}
\end{tscreen}





\subsection{Le Jaz bloque mon système après qu'il s'éteigne...}



J'ai l'impression que ceci peut avoir un rapport avec le {\itshape firmware\/} du
Jaz. Je demande à toutes les personnes qui ont ce problème de me faire
savoir quelle est la version de votre lecteur. Pour déterminer la version
du Jaz, cherchez dans la sortie du programme {\ttfamily dmesg} des lignes comme
celles-ci : 

\begin{tscreen}
\begin{verbatim}
    scsi0: Target 4, channel A, now synchronous at 10.0MHz, offset 15.
      Vendor: iomega    Model: jaz 1GB           Rev: G.60
      Type:   Direct-Access                      ANSI SCSI revision: 02
\end{verbatim}
\end{tscreen}


Ceci n'arrive apparamment que dans certaines circonstances spécifiques que
l'utilisateur moyen de Linux a peu de chances de rencontrer. Quand une
partition/système de fichiers d'un lecteur Jaz est montée, le lecteur
s'arrête de tourner avec un système de fichiers encore monté, et une
tentative de lecture est faite sur le périphérique bloc alors que le
lecteur est encore inactif. Il semblerait que Linux essaie de lire le MBR
à nouveau pour rétablir les partitions, mais ceci peut ne pas fonctionner
{\itshape certaines fois\/} et laisse le périphérique dans un état apparemment
occupé. La lecture du MBR par le noyau et la lecture du périphérique par
le processus échoueront toutes les deux et cet échec peut venir d'un
blocage ou d'un état occupé. Dans cet état, le noyau pense qu'il est
encore en train de lire même si aucune entrée/sortie n'est en attente ou
en cours. Ceci m'est arrivé principalement en lisant par bloc le MBR
lui-même. 




\subsection{Puis-je démarrer à partir du lecteur Jaz ?}



Le lecteur Jaz peut sélectionner n'importe quelle cible SCSI entre 0 et 6.

Si le lecteur Jaz cohabite avec d'autres disques durs SCSI, la plupart des
BIOS voudront démarrer à partir de l'ID SCSI la plus basse qui est un
disque. Certains détectent et enlèvent les périphériques amovibles comme
le Jaz. 

Si le lecteur Jaz cohabite avec des disques durs IDE, à peu près tous les
BIOS voudront démarrer sur le premier disque dur IDE. Certains BIOS
permettront d'enlever le premier disque IDE de la configuration et
assigneront le premier périphérique SCSI comme périphérique de démarrage
(Bios 0x80). D'autres peuvent demander d'enlever tous les périphériques
IDE de la configuration. D'autres encore peuvent demander de détacher
physiquement les disques IDE ou de ne pas mettre l'interface IDE en
service. 




\subsection{Pourquoi Iomega utilise la partition numéro 4 ?}



La partition numéro 4 est la partition par défaut utilisée sur les
Macintosh.

Sur un Mac, la première partition est réservée aux informations de
démarrage, la deuxième pour les informations système, la troisième
pour la branche ressources ({\itshape resource fork\/}) et la quatrième est la
branche de données ({\itshape data fork\/}).

De toute manière, les PC et la plupart des autres systèmes peuvent
supporter le fait de devoir travailler sur la quatrième partition
alors que le Mac ne peut pas faire autrement. Iomega livre tous ses
supports pré-formatés en utilisant la partition 4 pour qu'à la fois
les PC et les Mac puissent les lire et chacun évite des maux de tête
en ce qui concerne la compatibilité. (Les logiciels sur PC qui lisent
les disques Mac s'attendent en général à trouver les données sur la
partition 4.)




\subsection{Comment puis-je avoir le disque monté au démarrage ?}



Vous devez simplement ajouter une ligne à votre fichier
{\ttfamily /etc/fstab}. Par exemple, si vous avez toujours un disque DOS
dans le lecteur quand vous démarrez, vous pourriez mettre

\begin{tscreen}
\begin{verbatim}
/dev/sda4   /jaz  msdos  defaults  0 0
\end{verbatim}
\end{tscreen}


dans le fichier {\ttfamily fstab}. Selon votre distribution, les scripts
d'initialisation peuvent tenter de lancer {\ttfamily fsck} sur les partitions
listées dans le {\ttfamily fstab}. Soyez avertis que ceci peut poser des
problèmes si vous oubliez de mettre le disque dans le lecteur quand vous
démarrez, ou y mettez un mauvais disque.

Pour se débarasser de ces problemes, vous pouvez ajouter une commande
{\ttfamily mount} séparée dans {\ttfamily /etc/rc.d/rc.local} pour monter le disque
Jaz. Ceci évitera les problèmes du {\ttfamily mount -a} habituel qui arrive quand
il n'y a pas de cartouche dans le lecteur. 




\subsection{Qu'arrive-t-il si aucun disque n'est présent au démarrage ?}



Le noyau essaiera de lire la table des partitions, mais l'opération
finira par s'arrêter.

Quand vous changez de disque, c'est une bonne idée d'utiliser {\ttfamily fsck}
pour vérifier la structure de la partition sur le nouveau disque.

Le BIOS de certains adaptateurs SCSI tentera de lire la table des
partitions sur votre disque durant le démarrage du système. Si vous ne
pouvez pas enlever cette vérification, vous serez peut-être contraint de
toujours démarrer avec un disque dans le lecteur.




\subsection{Comment puis-je rendre ma cartouche Jaz auto-démarrable (en supposant que mon BIOS est configuré de manière à le permettre) ?}



Le disque Jaz est un excellent DRU (Disque de Réparation d'Urgence). Ce
peut être amusant de pouvoir se pointer sur un système Linux neuf ou
d'essayer Linux sur la machine de quelqu'un d'autre équipé d'un Jaz.

Vous pourriez simplement suivre la procédure d'installation de votre
distribution favorite avec le disque Jaz comme unique disque sur votre
système.

Cependant, si vous voulez faire une installation à partir de votre système
qui tourne, vous pouvez souvent y arriver en construisant un système
auto-démarrable sur une cartouche Jaz.

\begin{enumerate}
\item partitionnez le disque et fabriquez les systèmes de fichiers. Vous
aurez probablement aussi besoin d'une partition de swap, mais peut-être
pas si vous avez beaucoup de RAM. Montez la nouvelle racine sur
{\ttfamily /jaz} et toute partition supplémentaire dans ce répertoire comme
il le faut.
\item copiez tous les fichiers à leur emplacement. Assurez-vous que tous
les fichiers de {\ttfamily /dev} soient copiés. Assurez-vous que toutes les
permissions, propriétés et numéros de groupes soient maintenues.
\item modifiez les fichiers sur la cartouche Jaz pour s'accorder avec le
fait qu'on démarre dessus. En particulier, assurez-vous de chager
{\ttfamily /jaz/etc/fstab} pour monter les partitions de la cartouche Jaz
comme prévu. Changez aussi {\ttfamily /jaz/etc/lilo.conf} pour faire de même.
\item il y a deux possibilités :
\begin{enumerate}
\item fabriquez une disquette pour stocker le noyau et utilisez {\ttfamily rdev}
pour lui faire monter la cartouche Jaz à la racine. Démarrez sur la
disquette quand vous êtes prêt pour la première fois puis lancez {\ttfamily lilo}
pour rendre le MBR du Jaz démarrable.
\item vous pouvez lancer {\ttfamily lilo} à partir de votre système en cours (qui
n'est pas sur le Jaz) pour installer le MBR démarrable sur la cartouche
Jaz. Ajoutez ces lignes (changez {\ttfamily 1} en votre numéro de partition
racine et {\ttfamily sda} en votre nom de périphérique Jaz pour que ça concorde)
au fichier {\ttfamily /jaz/etc/lilo.conf} avant la première définition du
système :

\begin{tscreen}
\begin{verbatim}
        drive = /dev/sda1
        bios = 0x80
\end{verbatim}
\end{tscreen}
\end{enumerate}

\end{enumerate}


quand vous êtes prêt à installer le MBR sur le Jaz, lancez {\ttfamily lilo} avec
l'option {\ttfamily -r} pour le faire fonctionner à partir de l'arborescence
{\ttfamily /jaz} comme si c'était {\ttfamily /}. La commande ressemble à :

\begin{tscreen}
\begin{verbatim}
        lilo -r /jaz
\end{verbatim}
\end{tscreen}


Normalement {\ttfamily lilo} cherche quel sera le numéro de périphérique BIOS du
périphérique de démarrage au prochain démarrage. Ceci doit être contourné
puisque le disque Jaz n'est pas démarrable à cet instant. Les deux lignes
ajoutées font ceci.

Il y aura un certain nombre de messages d'erreurs donnés par {\ttfamily lilo} et
le noyau. Lilo vous prévient qu'il pourra y avoir des problèmes, qui n'en
seront pas dans ce cas. Le noyau indique des problèmes relatifs à
{\ttfamily /dev/hdc} qui sont dûs à des tests sur des périphériques que
{\ttfamily lilo} effectue pour essayer de découvrir certaines choses. Lilo essaie
de fabriquer un noeud de périphérique pour le vieux code majeur/mineur de
{\ttfamily hdc} et le noyau reconnaît la tentative comme une erreur. Vous pouvez
ignorer ces messages. Regardez la LED du lecteur Jaz pour vérifier qu'on
écrit dessus.

\`{A} ce point, votre disque Jaz devrait être démarrable.




\section{Obtenir des informations plus à jour}



Vous pouvez trouver la version la plus à jour de ce mini-HOWTO à :

\begin{tscreen}
\begin{verbatim}
http://www.cnct.com/~bwillmot/jaztool/
\end{verbatim}
\end{tscreen}


Les pages Web de Iomega sont à :

\begin{tscreen}
\begin{verbatim}
http://www.iomega.com/
\end{verbatim}
\end{tscreen}




\end{document}
