  Le Mini-HOWTO JAZ-drive
  Edite par Bob Willmot, bwillmot@cnct.com
  Traduit par Olivier Tharan, Olivier.Tharan@int-evry.fr
  v1.6, 4 juin 1997

  Ceci  est la traduction francaise du JAZ-drive mini-HOWTO, elle decrit
  la configuration et l'utilisation d'un lecteur Iomega Jaz  sous  Linux
  et les outils logiciels disponibles pour ce lecteur.

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

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

  Ce document decrit la maniere d'utiliser le lecteur  Jaz  avec  Linux.
  Puisque  c'est  un peripherique SCSI, il est important que vous lisiez
  aussi le HOWTO SCSI de Drew Eckhardt (traduit  en  francais  par  Jean
  Zundel) :

       http://sunsite.unc.edu/pub/Linux/docs/HOWTO/SCSI-HOWTO
       http://www.freenix.fr/linux/HOWTO/SCSI-HOWTO.html

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

  +o  Grant Gunther, grant@torque.net

  +o  Tom Poindexter, tpoindex@nyx.net

  +o  Todd Woods, woods@cs.uiowa.edu

  +o  Richard B. Melrose, rbm@math.mit.edu

  +o  Phil Howard, phil@charon.milepost.com

  +o  Rick Niess, rniess@ocean.st.usm.edu

  Si vous avez  des  commentaires,  des  suggestions,  des  corrections,
  veuillez les envoyer a : Bob Willmot, bwillmot@cnct.com.

  22..  LLeess ddiissqquueess JJaazz

  Les  disques  Jaz  (cartouches)  ressemblent  a un empilement de trois
  disquettes 3,5" et contiennent 1 Go de donnees.

  Le lecteur possede un mecanisme motorise qui peut ejecter le disque  a
  l'aide  d'un  bouton-poussoir sur le devant du lecteur ou par logiciel
  (voir ci-dessous pour les logiciels Linux jaztools).

  22..11..  LL''aaddaappttaatteeuurr JJaazz JJeett

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

  Apparamment il y a en ce moment  deux  versions  disponibles  pour  ce
  controleur, basees sur deux chipsets SCSI differents.

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

  L'autre adaptateur est  base  sur  le  chipset  Advanced  Systems.  Au
  demarrage, la carte donne un message ainsi :

       Jaz Jet PCI SCSI adapter Copyright Advanced Systems 1996

  Compilez le noyau en positionnant la variable CONFIG_SCSI_ADVANSYS.

  33..  CCoonnffiigguurreerr uunn nnooyyaauu ppoouurr llee lleecctteeuurr JJaazz

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

  Les informations pour construire le noyau se trouvent dans le  fichier
  /usr/src/linux/README,        ou        dans       le       repertoire
  /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) :

       http://sunsite.unc.edu/pub/Linux/docs/HOWTO/Kernel-HOWTO
       http://www.freenix.fr/linux/HOWTO/Kernel-HOWTO.html

  44..  IIddeennttiiffiieerr llee lleecctteeuurr aauu ddeemmaarrrraaggee

  Quand  votre systeme demarre, il devrait afficher des informations sur
  votre adaptateur, et sur tous les disques attaches au lecteur.

  Les messages de demarrage varient selon votre adaptateur SCSI et  sont
  aussi  ajoutes  au  fichier  /var/log/messages (ou /var/adm/messages).
  Vous pouvez aussi ``revoir'' ces messages a  partir  de  la  ligne  de
  commande avec la commande dmesg.

  Voici la sortie ecran d'un demarrage du noyau sur un noyau 2.0.10 avec
  un controleur Adaptec 2940 :

      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

  Dans la sequence ci-dessus, notez les noms de peripheriques SCSI bruts
  (sda,  sdb,  etc.).  Vous  en aurez besoin pour acceder au disque plus
  tard.

  Si ces lignes n'apparaissent pas, c'est  que  quelque  chose  est  mal
  configure dans votre materiel ou dans le noyau.

  Si la ligne scsi0: n'apparait pas, c'est que vous n'avez pas configure
  votre adaptateur et son pilote  correctement.  Certains  pilotes  vous
  donneront  un  indice sur ce qui ne va pas. Si votre lecteur n'est pas
  detecte, vous avez probablement un probleme de cable.  Si  un  nom  de
  lecteur  n'est  pas  donne, vous avez probablement oublie d'inclure le
  support pour disque SCSI quand vous avez construit le noyau.

  Verifiez les fichiers README dans drivers/scsi et le HOWTO  SCSI  pour
  d'autres indices de debogage.

  44..11..  FFddiisskk,, mmkkee22ffss,, mmoouunntt,, eettcc..

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

  Reportez-vous aux pages de manuel pour ces programmes.

  44..11..11..  UUnn ddiissqquuee ddeejjaa ffoorrmmaattee ppoouurr DDOOSS

  Les disques formates en usine chez Iomega sont partitionnes  avec  une
  seule  partition  (pour  une  raison  inconnue,  ils utilisent la 4eme
  partition).

  Vous pouvez monter ce disque (en supposant que votre  disque  Jaz  est
  sur le peripherique brut sda) avec les commandes :

       mkdir /jaz
       mount -t msdos /dev/sda4 /jaz

  Ou  si vous utilisez un noyau de la serie 2.0 et avez compile le noyau
  avec le support de la VFAT Win95, vous pouvez le monter avec :

       mkdir /jaz
       mount -t vfat /dev/sda4 /jaz

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

  Les fichiers du disque apparaitront dans /jaz. Pendant que  le  disque
  est monte, vous ne pourrez pas l'ejecter.

  Pour demonter le lecteur, vous pouvez lancer la commande :

       umount /dev/sda4

  Une  fois  que  vous  avez cree le point de montage /jaz, vous n'aurez
  plus besoin de le refaire. (Assurez-vous aussi  que  vous  n'etes  pas
  dans le repertoire /jaz quand vous essayez de demonter le lecteur.)

  44..11..22..  RRee--ffoorrmmaatteerr uunn ddiissqquuee ppoouurr LLiinnuuxx

  Si vous voulez effacer un disque Jaz et y creer un systeme de fichiers
  Linux natif, vous devez utiliser fdisk sur le disque entier :

       fdisk /dev/sda

  et effacer toute partition existant (avec la commande d). Creez  alors
  une  nouvelle  partition  avec  la  commande n, faites-en la partition
  primaire numero 1, utilisez w pour ecrire la table de  partitions  sur
  le disque, et quittez avec q.

  Formattez la partition :

  mke2fs /dev/sda1

  (Le 1 est le numero que vous avez donne a cette partition dans fdisk).
  Maintenant vous pouvez monter le disque :

       mount -t ext2 /dev/sda1 /jaz

  (en re-utilisant le point de montage que nous avions cree auparavant).

  44..11..33..  LLee ddiissqquuee JJaazz TToooollss

  Il  y a un peu plus de travail si vous voulez utiliser le disque livre
  avec le lecteur Jaz. Livre tel qu'il est, la  protection  en  ecriture
  controlee par logiciel est activee.

  Vous  avez  a  ce point deux options : debloquer le disque sous DOS ou
  Windows avec le programme reclaim.exe (ou en installant les  outils  a
  partir  du programme d'installation), ou bien debloquer le disque avec
  mon programme jaztools (voir la section ``'') avec la commande :

       jaztool /dev/sda rw

  (Corrigez le /dev/sda selon votre peripherique SCSI), et quand on vous
  demande un mot de passe, entrez

       APlaceForYourStuff

  55..  JJaazzttoooollss

  Un programme natif sous Linux, fait pour supporter certaines capacites
  speciales de Iomega (comme l'ejection controlee  par  logiciel  et  la
  protection en ecriture) est disponible a :

       http://www.cnct.com/~bwillmot/jaztool/

  Une  nouvelle  version  de jaztool devrait etre disponible sous peu et
  contiendra une interface graphique et supportera  l'interrogation  des
  lecteurs et le montage et demontage automatique des disques.
  66..  QQuueessttiioonnss ffrreeqquueemmmmeenntt ppoosseeeess

  66..11..  JJee nnee ppeeuuxx mmoonntteerr llee ddiissqquuee JJaazz TToooollss qquu''eenn lleeccttuurree sseeuullee..

  Le disque d'utilitaires est livre dans un  mode  special,  en  lecture
  seule et protege par un mot de passe. Pour debloquer le disque, lancez
  le programme reclaim.exe sous DOS ou  Windows,  ou  bien  utilisez  le
  programme Linux jaztools (voir la section ``'') avec la commande :

       jaztool /dev/sda rw

  (Corrigez le /dev/sda selon votre peripherique SCSI), et quand on vous
  demande un mot de passe, entrez

       APlaceForYourStuff

  66..22..  LLee JJaazz bbllooqquuee mmoonn ssyysstteemmee aapprreess qquu''iill ss''eetteeiiggnnee......

  J'ai l'impression que ceci peut avoir un rapport avec le  _f_i_r_m_w_a_r_e  du
  Jaz. Je demande a toutes les personnes qui ont ce probleme de me faire
  savoir quelle est la version de  votre  lecteur.  Pour  determiner  la
  version  du Jaz, cherchez dans la sortie du programme dmesg des lignes
  comme celles-ci :

           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

  Ceci n'arrive apparamment que dans certaines circonstances specifiques
  que l'utilisateur moyen de Linux a peu de chances de rencontrer. Quand
  une partition/systeme de fichiers d'un  lecteur  Jaz  est  montee,  le
  lecteur  s'arrete de tourner avec un systeme de fichiers encore monte,
  et une tentative de lecture est faite sur le peripherique  bloc  alors
  que  le  lecteur est encore inactif. Il semblerait que Linux essaie de
  lire le MBR a nouveau pour retablir les partitions, mais ceci peut  ne
  pas  fonctionner _c_e_r_t_a_i_n_e_s _f_o_i_s et laisse le peripherique dans un etat
  apparemment occupe. La lecture du MBR par le noyau et  la  lecture  du
  peripherique  par le processus echoueront toutes les deux et cet echec
  peut venir d'un blocage ou d'un etat occupe. Dans cet etat,  le  noyau
  pense  qu'il  est encore en train de lire meme si aucune entree/sortie
  n'est en attente ou en cours.  Ceci  m'est  arrive  principalement  en
  lisant par bloc le MBR lui-meme.

  66..33..  PPuuiiss--jjee ddeemmaarrrreerr aa ppaarrttiirr dduu lleecctteeuurr JJaazz ??

  Le  lecteur  Jaz peut selectionner 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 demarrer a partir de l'ID SCSI la plus basse qui est
  un disque. Certains detectent et enlevent les peripheriques  amovibles
  comme le Jaz.

  Si  le lecteur Jaz cohabite avec des disques durs IDE, a peu pres tous
  les BIOS voudront demarrer sur le premier  disque  dur  IDE.  Certains
  BIOS  permettront  d'enlever le premier disque IDE de la configuration
  et assigneront le premier  peripherique  SCSI  comme  peripherique  de
  demarrage  (Bios  0x80).  D'autres peuvent demander d'enlever tous les
  peripheriques  IDE  de  la  configuration.  D'autres  encore   peuvent
  demander  de detacher physiquement les disques IDE ou de ne pas mettre
  l'interface IDE en service.

  66..44..  PPoouurrqquuooii IIoommeeggaa uuttiilliissee llaa ppaarrttiittiioonn nnuummeerroo 44 ??

  La partition numero 4 est la partition par  defaut  utilisee  sur  les
  Macintosh.

  Sur  un  Mac,  la  premiere partition est reservee aux informations de
  demarrage, la deuxieme pour les  informations  systeme,  la  troisieme
  pour  la  branche  ressources  (_r_e_s_o_u_r_c_e  _f_o_r_k) et la quatrieme est la
  branche de donnees (_d_a_t_a _f_o_r_k).

  De toute maniere, les PC et la plupart  des  autres  systemes  peuvent
  supporter  le  fait  de  devoir  travailler sur la quatrieme partition
  alors que le Mac ne peut pas faire autrement. Iomega  livre  tous  ses
  supports  pre-formates  en  utilisant la partition 4 pour qu'a la fois
  les PC et les Mac puissent les lire et chacun evite des maux  de  tete
  en  ce qui concerne la compatibilite. (Les logiciels sur PC qui lisent
  les disques Mac s'attendent en general a trouver les  donnees  sur  la
  partition 4.)

  66..55..  CCoommmmeenntt ppuuiiss--jjee aavvooiirr llee ddiissqquuee mmoonnttee aauu ddeemmaarrrraaggee ??

  Vous  devez  simplement  ajouter une ligne a votre fichier /etc/fstab.
  Par exemple, si vous avez toujours un disque DOS dans le lecteur quand
  vous demarrez, vous pourriez mettre

       /dev/sda4   /jaz  msdos  defaults  0 0

  dans   le   fichier  fstab.  Selon  votre  distribution,  les  scripts
  d'initialisation peuvent tenter de  lancer  fsck  sur  les  partitions
  listees dans le fstab. Soyez avertis que ceci peut poser des problemes
  si vous oubliez de  mettre  le  disque  dans  le  lecteur  quand  vous
  demarrez, ou y mettez un mauvais disque.

  Pour  se debarasser de ces problemes, vous pouvez ajouter une commande
  mount separee dans /etc/rc.d/rc.local pour monter le disque Jaz.  Ceci
  evitera  les  problemes du mount -a habituel qui arrive quand il n'y a
  pas de cartouche dans le lecteur.
  66..66..  QQuu''aarrrriivvee--tt--iill ssii aauuccuunn ddiissqquuee nn''eesstt pprreesseenntt aauu ddeemmaarrrraaggee ??

  Le  noyau  essaiera  de lire la table des partitions, mais l'operation
  finira par s'arreter.

  Quand vous changez de disque, c'est une  bonne  idee  d'utiliser  fsck
  pour verifier 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 demarrage du systeme. Si vous ne
  pouvez  pas enlever cette verification, vous serez peut-etre contraint
  de toujours demarrer avec un disque dans le lecteur.

  66..77..  CCoommmmeenntt ppuuiiss--jjee rreennddrree mmaa ccaarrttoouucchhee JJaazz aauuttoo--ddeemmaarrrraabbllee ((eenn ssuupp--
  ppoossaanntt qquuee mmoonn BBIIOOSS eesstt ccoonnffiigguurree ddee mmaanniieerree aa llee ppeerrmmeettttrree)) ??

  Le  disque  Jaz est un excellent DRU (Disque de Reparation d'Urgence).
  Ce peut etre amusant de pouvoir se pointer sur un systeme  Linux  neuf
  ou  d'essayer  Linux  sur  la machine de quelqu'un d'autre equipe d'un
  Jaz.

  Vous pourriez simplement suivre la procedure d'installation  de  votre
  distribution favorite avec le disque Jaz comme unique disque sur votre
  systeme.

  Cependant, si vous voulez faire une installation  a  partir  de  votre
  systeme  qui  tourne, vous pouvez souvent y arriver en construisant un
  systeme auto-demarrable sur une cartouche Jaz.

  1. partitionnez le disque et fabriquez les systemes de fichiers.  Vous
     aurez probablement aussi besoin d'une partition de swap, mais peut-
     etre pas si vous avez beaucoup de RAM. Montez  la  nouvelle  racine
     sur /jaz et toute partition supplementaire dans ce repertoire comme
     il le faut.

  2. copiez tous les fichiers a leur emplacement. Assurez-vous que  tous
     les  fichiers  de  /dev  soient copies. Assurez-vous que toutes les
     permissions, proprietes et numeros de groupes soient maintenues.

  3. modifiez les fichiers sur la cartouche Jaz pour s'accorder avec  le
     fait  qu'on  demarre dessus. En particulier, assurez-vous de chager
     /jaz/etc/fstab pour monter les partitions de la cartouche Jaz comme
     prevu. Changez aussi /jaz/etc/lilo.conf pour faire de meme.

  4. il y a deux possibilites :

     a. fabriquez  une  disquette pour stocker le noyau et utilisez rdev
        pour lui faire monter la cartouche Jaz a la racine. Demarrez sur
        la  disquette  quand  vous  etes pret pour la premiere fois puis
        lancez lilo pour rendre le MBR du Jaz demarrable.

     b. vous pouvez lancer lilo a partir de votre systeme en cours  (qui
        n'est  pas  sur  le Jaz) pour installer le MBR demarrable sur la
        cartouche Jaz. Ajoutez ces lignes (changez 1 en votre numero  de
        partition  racine  et  sda en votre nom de peripherique Jaz pour
        que ca concorde) au fichier /jaz/etc/lilo.conf avant la premiere
        definition du systeme :

             drive = /dev/sda1
             bios = 0x80

  quand  vous  etes pret a installer le MBR sur le Jaz, lancez lilo avec
  l'option -r pour le faire fonctionner a partir de l'arborescence  /jaz
  comme si c'etait /. La commande ressemble a :

               lilo -r /jaz

  Normalement  lilo  cherche quel sera le numero de peripherique BIOS du
  peripherique de  demarrage  au  prochain  demarrage.  Ceci  doit  etre
  contourne  puisque  le  disque Jaz n'est pas demarrable a cet instant.
  Les deux lignes ajoutees font ceci.

  Il y aura un certain nombre de messages d'erreurs donnes par  lilo  et
  le  noyau.  Lilo vous previent qu'il pourra y avoir des problemes, qui
  n'en seront pas dans ce cas. Le noyau indique des problemes relatifs a
  /dev/hdc  qui  sont  dus  a  des  tests sur des peripheriques que lilo
  effectue pour essayer de decouvrir certaines choses.  Lilo  essaie  de
  fabriquer un noeud de peripherique pour le vieux code majeur/mineur de
  hdc et le noyau reconnait la tentative comme une erreur.  Vous  pouvez
  ignorer  ces  messages.  Regardez  la LED du lecteur Jaz pour verifier
  qu'on ecrit dessus.

  A ce point, votre disque Jaz devrait etre demarrable.

  77..  OObbtteenniirr ddeess iinnffoorrmmaattiioonnss pplluuss aa jjoouurr

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

       http://www.cnct.com/~bwillmot/jaztool/

  Les pages Web de Iomega sont a :

       http://www.iomega.com/

