Les informations contenues dans ce chapitre concernent les disques.
Tous les périphériques SCSI à accès direct, d'une taille de bloc de 256, 512 ou 1024 octets devraient fonctionner. Les autres tailles de bloc ne marchent pas (notez que cela peut souvent être corrigé en modifiant la taille des blocs et/ou des secteurs en utilisant la commande SCSI MODE SELECT).
La taille des secteurs fait référence au nombre d'octets de données présents par secteur sur un périphérique (les lecteurs de CDROM utilisent par exemple une taille de secteur de 2048 octets).
La taille des blocs fait référence à la taille des blocs logiques utilisés pour s'interfacer avec le périphérique. Bien que cette valeur soit habituellement identique à la taille des secteurs, certains périphériques regroupent plusieurs secteurs physiques plus petits (par exemple 256 octets dans le cas des périphériques Syquest de 55 Mo) en un seul bloc logique plus important ou l'inverse (des blocs de 512 octets sur les lecteurs de CDROM compatibles SUN, par exemple).
Les périphériques amovibles incluent les disques Bernouilis, les disques flopticals, les disques magnéto-optiques et les Syquest.
En théorie, les périphériques d'une taille inférieure à 1 To (téra-octets) devraient marcher. Il n'y a en particulier aucun problème avec les minuscules disques de 9 Go.
Au moment du partitionnement, un message d'avertissement "cylinder > 1024" s'affiche ou bien vous êtes incapable de démarrer depuis une partition possédant des cylindres au-delà du cylindre 1024.
C'est une limitation du BIOS.
Reportez-vous aux chapitres Géométrie et Partitionnement pour des explications plus détaillées.
Les /dev/hd*
font référence à des périphériques IDE. Utilisez /dev/sd*
pour vos disques SCSI.
Reportez-vous aux chapitres Fichiers spéciaux , Géométrie et Partitionnement pour les noms de fichiers corrects et la marche à suivre pour le partionnement.
Linux tente de verrouiller la porte du lecteur lorsqu'un média est monté, afin d'éviter les endommagements du système de fichiers résultants d'un changement de support.
Démontez vos disques amovibles avant de les éjecter.
Dans certaines conditions, le pilote SCSI et le BIOS ne sont pas d'accord sur le mapping du BIOS correct à utiliser. Le résultat est que LILO se bloque après avoir affiché les lettres 'LI' au moment du boot.
Comme contournement, trouvez quelle géométrie est utilisée sous DOS puis créez une entrée pour votre disque dans le fichier /etc/lilo/disktab
.
Vous pouvez éventuellement également utiliser l'option "linear" pour LILO.
You must set heads sectors and cylinders.
You can do this from the extra functions menu.
et la géométrie du disque n'est pas mémorisée lorsque fdisk est réexécuté.
Reportez-vous au chapitre Partitionnement .
Linux ne recherche pas les unités logiques (LUNs) supérieures à 0 sur les périphériques SCSI qui retournent une version ANSI SCSI 1. Si vous voulez que toutes les unités logiques soient reconnues, allez modifier la fonction scan_scsis()
du fichier drivers/scsi/scsi.c
.
La version 1.1.38 devrait avoir corrigé le problème. Essayez de faire une mise à jour de votre pilote.
Cela est dû à un erreur du microcode dans les fonctions de lecture anticipée et dans le cache.
>D'après Soenke Behrens, du support technique de Conner :
Ces dernieres semaines, nous avons recu des appels de plusieurs clients qui nous affirmaient avoir de serieux problemes avec les disques SCSI Conner CFP1060x de 1Go en utilisant le systeme d'exploitation Linux. Des erreurs etaient detectees par e2fsck a chaque demarrage du systeme (inodes abimes) entre autres. Une correction est maintenant disponible pour les clients possedant des CFP1060x (versions de microcode 9WA1.62/1.66/1.68) sous Linux. Pour appliquer la mise a jour, vous aurez besoin d'une disquette bootable DOS, et des pilotes ASPI qui permettent l'acces au disque dur. La mise a jour telecharge un nouveau code de gestion de files (mise en file et lecture) dans la memoire SCSI non-volatile du disque. Si vous avez des problemes avec des disques dont le microcode est a la version 9WA1.60, contactez votre centre Conner le plus proche pour une mise a jour. La version du microcode peut etre trouvee sur l'etiquette du disque ou, sur sa face inferieure, sur l'etiquette d'un des circuits integres. Si vous vous sentez assez sur de vous pour faire vous-meme la mise a jour, appelez le support technique de Conner, apres avoir note la version de votre microcode. Le support technique de Conner en Europe peut etre joint au +44-1294-315333. Le support americain peut etre joint au 1-800-4CONNER. Salutations, Soenke Behrens Support Technique Europe
Les disques SCSI utilisent le majeur bloc 8. Il n'y a pas d'accès en mode "raw", comme sous BSD.
16 mineurs sont attribués pour chaque disque SCSI, mineur % 16 == 0 représentant le disque entier, 1 <= (mineur % 16) <= 4 les 4 partitions principales et 5 <= (mineur % 16) <= 15 les partitions étendues.
Exemple de configuration avec un seul contrôleur :
Peripherique Adresse Unite logique disque SCSI Seagate 84M 0 0 /dev/sda Disque 0 SCSI->SMD bridge 3 0 /dev/sdb Disque 1 SCSI->SMD bridge 3 1 /dev/sdc Derouleur de bande Wangtek 4 0 aucun Maxtor 213M 6 0 /dev/sdd
etc.
La convention de nommage standard est
/dev/sd{lettre}
pour le disque entier ((mineur % 16) == 0)
/dev/sd{lettre}{partition}
pour les partitions de ce disque
(1 <= (mineur % 16) <= 15)
Par exemple :
/dev/sda peripherique mode bloc de majeur 8 et de mineur 0 /dev/sda1 peripherique mode bloc de majeur 8 et de mineur 1 /dev/sda2 peripherique mode bloc de majeur 8 et de mineur 2 /dev/sdb peripherique mode bloc de majeur 8 et de mineur 16
etc.
Vous pouvez partitionner vos disques SCSI en utilisant l'outil de votre choix, sous DOS, OS/2, Linux ou n'importe quel autre système d'exploitation supportant le schéma de partionnement standard.
Le meilleur moyen d'utiliser le programme fdisk de Linux est de spécifier le périphérique sur la ligne de commande. Par exemple, pour partitionner le premier disque SCSI, tapez :
fdisk /dev/sda
Si vous ne précisez pas explicitement le périphérique, le programme de partionnement pourrait prendre par défaut /dev/hda
, qui n'est pas un disque SCSI.
Il peut arriver que fdisk affiche
You must set heads sectors and cylinders.
You can do this from the extra functions menu.
Command (m for help):
ou qu'il sorte un message comme quoi "HDIO_REQ ou HDIO_GETGEO ioctl" a échoué.
Dans ce cas, spécifiez manuellement la géométrie du disque (
Géométrie
) au moment de lancer fdisk ou entrez-la dans /etc/disktab
si vous avez l'intention de booter sur ce disque en utilisant LILO.
Si vous avez manuellement précisé la géométrie du disque, les utilisations ultérieures de fdisk vous donneront le même message d'erreur. C'est normal, puisque les PC ne stockent pas les informations de géométrie dans la table des partitions. Cela ne cause AUCUN PROBLEME et vous n'aurez pas de soucis à accéder aux partitions créées par Linux. Certains programmes mal écrits peuvent en être gênés ; contactez votre revendeur et insistez pour qu'il corrige son code si cela arrivait.
Un message d'avertissement vous signale parfois que votre partition se termine au-delà du cylindre 1024. Si vous créez une telle partition, vous ne serez pas capable de démarrer dessus avec LILO. Cela étant, rien n'empêche de créer une partition racine (root) partiellement ou entièrement située au-delà de ce cylindre 1024. Il est en effet toujours possible de créer une petite partition /boot
sous la barrière des 1024 ou de démarrer le noyau directement depuis une autre partition.
Sous Linux, chaque disque est vu tel que le contrôleur SCSI le voit : N blocs, numérotés de 0 à N - 1, sans erreurs, là où le DOS / BIOS considèrent avoir affaire à des disques intelligents et appliquent une transformation arbitraire <tête/cylindre/secteur> à cet adressage linéaire.
Cela peut poser un problème lorsque vous partitionnez votre disque sous Linux, puisqu'il n'y a pas de moyen portable de récupérer la géométrie estimée par le DOS/BIOS. Dans la plupart des cas, un ioctl() HDIO_GETGEO peut être implémenté pour obtenir ce mapping. Malheureusement, lorsque le vendeur (au hasard Seagate) choisit un mapping retors, non standard et non documenté, cela n'est plus possible et il est nécessaire de préciser manuellement la géométrie.
Si vous en arrivez là, plusieurs options sont possibles :
1 <= tete <= 256 1 <= cylindre <= 1024 1 <= secteur <= 63
Sous DOS, vous pouvez utiliser un programme tel que NU (Norton Utilities). Vous pouvez aussi lancer le programme suivant :
begin 664 dparam.com MBAZ``##_B+^!`+N!`(H'0SP@=/D\,'5:@#]X=`6`/UAU4(!_`3AU2H!_`P!U M1(I7`H#J,(#Z`7<Y@,*`M`C-$PCD=3-14HC()#\PY.@R`.@J`%J(\/[`,.3H M)0#H'0!8AL2Q!M+L0.@7`+K"`;0)S2'#NIP!ZR"ZQ0'K&[K5`>L6N]T!,=*Y M"@#W\8#",$N(%PG`=>^)VK0)S2'#=7-A9V4Z(&1P87)A;2`P>#@P#0H@("!O L<B`@9'!A<F%M(#!X.#$-"B1);G9A;&ED(&1R:79E#0HD("`D```````D``!O ` end
Lorsque vous le lancerez, il affichera le nombre de secteurs, de cylindres et de têtes du disque dont l'adresse BIOS a été fournie sur la ligne de commande (0x80 pour le premier disque, 0x81 pour le second disque, etc.).
Par exemple, dparam 0x80
60 17 1007
signifie que C: a 60 secteurs, 17 têtes et 1007 cylindres.
Chapitre suivant, Chapitre Précédent
Table des matières de ce chapitre, Table des matières générale
Début du document, Début de ce chapitre