Le Mini-HOWTO JAZ-drive

Édité par Bob Willmot, bwillmot@cnct.com Traduit par Olivier Tharan, Olivier.Tharan@int-evry.fr v1.6, 4 juin 1997

Ceci est la traduction franç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.

Table des matières

1 Introduction 2

2 Les disques Jaz 2 2.1 L’adaptateur Jaz Jet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

3 Configurer un noyau pour le lecteur Jaz 3

4 Identifier le lecteur au démarrage 3

4.1 Fdisk, mke2fs, mount, etc. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4.1.1 Un disque déjà formaté pour DOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4.1.2 Re-formater un disque pour Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 4.1.3 Le disque Jaz Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

5 Jaztools 6

6 Questions fréquemment posées 6 6.1 Je ne peux monter le disque Jaz Tools qu’en lecture seule. . . . . . . . . . . . . . . . . . . . . 6 6.2 Le Jaz bloque mon système après qu’il s’éteigne... . . . . . . . . . . . . . . . . . . . . . . . . . 6 6.3 Puis-je démarrer à partir du lecteur Jaz? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 6.4 Pourquoi Iomega utilise la partition numéro 4? . . . . . . . . . . . . . . . . . . . . . . . . . . 7 6.5 Comment puis-je avoir le disque monté au démarrage? . . . . . . . . . . . . . . . . . . . . . . 7 6.6 Qu’arrive-t-il si aucun disque n’est présent au démarrage? . . . . . . . . . . . . . . . . . . . . 7 6.7 Comment puis-je rendre ma cartouche Jaz auto-démarrable (en supposant que mon BIOS est

configuré de manière à le permettre)? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

7 Obtenir des informations plus à jour 9

1 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) :

     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 :

   – Grant Gunther, grant@torque.net
   – Tom Poindexter, tpoindex@nyx.net
   – Todd Woods, woods@cs.uiowa.edu

– Richard B. Melrose, rbm@math.mit.edu

   – Phil Howard, phil@charon.milepost.com
   – Rick Niess, rniess@ocean.st.usm.edu

Si vous avez des commentaires, des suggestions, des corrections, veuillez les envoyer à : Bob Willmot,

bwillmot@cnct.com.

2 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 jaztools).

2.1 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 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 :

     Jaz Jet PCI SCSI adapter Copyright Advanced Systems 1996

Compilez le noyau en positionnant la variable CONFIG SCSI ADVANSYS.

3 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 /usr/src/linux/README, ou dans le

répertoire /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 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 /var/log/messages (ou /var/adm/messages). Vous pouvez aussi “revoir” ces messages à partir de la ligne de commande avec la commande dmesg.

Voici la sortie écran d’un démarrage du noyau sur un noyau 2.0.10 avec un contrôleur 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 séquence ci-dessus, notez les noms de périphériques SCSI bruts (sda, 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 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 README dans drivers/scsi et le HOWTO SCSI pour d’autres indices de débogage.

4.1 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, fdisk,

mke2fs, mount, etc.

Reportez-vous aux pages de manuel pour ces programmes.

4.1.1 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 sda) avec les commandes :

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

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 :

     mkdir /jaz

     mount -t vfat /dev/sda4 /jaz

(Ceci vous permettra de lire/écrire les noms de fichiers longs). Les fichiers du disque apparaîtront dans /jaz. Pendant que le disque est monté, vous ne pourrez pas l’éjecter. Pour démonter le lecteur, vous pouvez lancer la commande :

     umount /dev/sda4

Une fois que vous avez créé le point de montage /jaz, vous n’aurez plus besoin de le refaire. (Assurez-vous aussi que vous n’êtes pas dans le répertoire /jaz quand vous essayez de démonter le lecteur.) 4.1.2 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 fdisk sur le disque entier :

     fdisk /dev/sda

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

     mke2fs /dev/sda1

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

     mount -t ext2 /dev/sda1 /jaz

(en ré-utilisant le point de montage que nous avions créé auparavant). 4.1.3 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 reclaim.exe (ou en installant les outils à partir du programme d’installation), ou bien débloquer le disque avec mon programme jaztools (voir la section 5) avec la commande :

     jaztool /dev/sda rw

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

     APlaceForYourStuff

5 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 à :

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

Une nouvelle version de 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.

6 Questions fréquemment posées

6.1 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 reclaim.exe sous DOS ou Windows, ou bien utilisez le programme Linux jaztools (voir la section 5) avec la commande :

     jaztool /dev/sda rw

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

     APlaceForYourStuff

6.2 Le Jaz bloque mon système après qu’il s’éteigne...

J’ai l’impression que ceci peut avoir un rapport avec le 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 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 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 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.

6.3 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.

6.4 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 (resource fork) et la quatrième est la branche de données (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.)

6.5 Comment puis-je avoir le disque monté au démarrage?

Vous devez simplement ajouter une ligne à votre fichier /etc/fstab. Par exemple, si vous avez toujours un disque DOS dans le lecteur quand vous démarrez, 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 listées dans le 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 mount séparée dans /etc/rc.d/rc.local pour monter le disque Jaz. Ceci évitera les problèmes du mount -a habituel qui arrive quand il n’y a pas de cartouche dans le lecteur.

6.6 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 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.

6.7 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.

1. 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 /jaz et toute partition supplémentaire dans ce répertoire comme il le faut.

2. copiez tous les fichiers à leur emplacement. Assurez-vous que tous les fichiers de /dev soient copiés. Assurez-vous que toutes les permissions, propriétés et numéros de groupes soient maintenues.

3. modifiez les fichiers sur la cartouche Jaz pour s’accorder avec le fait qu’on démarre dessus. En particulier, assurez-vous de chager /jaz/etc/fstab pour monter les partitions de la cartouche Jaz comme prévu. Changez aussi /jaz/etc/lilo.conf pour faire de même.

4. il y a deux possibilités :

(a) fabriquez une disquette pour stocker le noyau et utilisez 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 lilo pour rendre le MBR du Jaz démarrable.

(b) vous pouvez lancer 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 1 en votre numéro de partition racine et sda en votre nom de périphérique Jaz pour que ça concorde) au fichier /jaz/etc/lilo.conf avant la première définition du système :

                      drive = /dev/sda1
                      bios = 0x80

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

             lilo -r /jaz

Normalement 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 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 à /dev/hdc qui sont dûs à des tests sur des périphériques que 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 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.

À ce point, votre disque Jaz devrait être démarrable.

7 Obtenir des informations plus à jour

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

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

Les pages Web de Iomega sont à :

     http://www.iomega.com/