next up previous contents index
Next: Partitions Up: Utiliser les disques et Previous: Bandes   Table des matières   Index

Formatage

Le formatage consiste à écrire des marques sur le support magnétique qui sont utilisées pour délimiter les pistes et les secteurs. Avant qu'un disque soit formaté, sa surface magnétique est un mélange de signaux magnétiques. Lorsqu'il est formaté, de l'ordre est apporté au chaos, essentiellement en traçant des lignes où iront les pistes, et où elles seront divisées en secteurs. Les vrais détails ne sont pas exactement ceux-ci mais cela n'a pas d'importance. Ce qui est important c'est qu'un disque ne peut être utilisé tant qu'il n'a pas été formaté.

La terminologie est un peu confuse : sous MS-DOS, le mot formatage est recouvre aussi la création d'un système de fichiers (qui sera décrite plus tard). Là, les deux traitements sont souvent combinés, surtout pour les disquettes. Quand une distinction s'avère nécessaire, le vrai formatage est appelé formatage de bas niveau, tandis que la création du système de fichiers est appelée formatage de haut niveau. Dans les milieux UNIX, ces deux procédures sont respectivement appelées formatage et création du système de fichiers, ce sont les termes que nous utiliserons donc dans ce livre.

Pour les disques IDE, et pour certains disques SCSI, le formatage est maintenant réalisé en usine et n'a pas besoin d'être répété ; par conséquent, la plupart des gens ne s'en préoccupent pas. En fait, formater un disque dur peut le rendre moins performant, par exemple parce qu'un disque a besoin d'être formaté d'une façon très particulière pour permettre le remplacement automatique des secteurs défectueux.

Les disques ayant besoin d'être formatés, ou pouvant être souvent reformatés, nécessitent un programme spécial car l'interface vers la logique de formatage du disque est différente d'un disque à l'autre. Souvent, le programme de formatage est, soit sur le BIOS, soit fourni comme un programme MS-DOS ; aucun de ceux-ci ne peut-être utilisé facilement sous Linux.

Pendant le formatage, on peut rencontrer des endroits défectueux sur le disque. Ils sont appelés blocs défectueux ou secteurs défectueux et sont quelques fois gérés par le lecteur lui-même, mais, même en ce cas, certaines choses doivent être faites pour éviter d'utiliser ces parties du disque. La logique s'occupant de ça est intégrée au système de fichiers ; la façon d'ajouter l'information au système de fichiers est décrite ci-dessous. On peut aussi créer une petite partition qui ne ferait que couvrir la partie défectueuse du disque ; cette approche peut être bonne si la partie défectueuse est très étendue, car les systèmes de fichiers peuvent quelquefois avoir des problèmes à cause de cela.

Les disquettes sont formatées avec fdformat. On donne le fichier pilote de disquettes en paramètre. Par exemple, la commande suivante formaterait une disquette haute densité, de $3{1\over 2}$ pouces dans le premier lecteur :
\begin{tscreen}
\verb*\vert$\vert \textsl{fdformat /dev/fd0H1440} \\
\verb*\ver...
...ert \\
\verb*\vert Verifying ... done\vert \\
\verb*\vert$ \vert
\end{tscreen}

On notera que si l'on veut utiliser le fichier spécial par défaut (/dev/fd0), on doit d'abord positionner les paramètres du périphérique avec setfdprm. Pour réaliser la même chose que ci-dessus, on devrait faire ce qui suit :
\begin{tscreen}
\verb*\vert$\vert \textsl{setfdprm /dev/fd0 1440/1440} \\
\verb...
...ert \\
\verb*\vert Verifying ... done\vert \\
\verb*\vert$ \vert
\end{tscreen}
Il est habituellement plus pratique de choisir le fichier correspondant au type de la disquette. On notera qu'il n'est pas souhaitable de formater une disquette pour qu'elle contienne plus d'information que pour ce pourquoi elle a été conçue.

fdformat vérifiera aussi la disquette, i.e. recherchera les blocs défectueux. Il essaiera un bloc défectueux plusieurs fois (on peut généralement l'entendre, le bruit du lecteur change perceptiblement). Si la disquette est seulement défectueuse de façon marginale (à cause de la poussière sur les têtes de lecture-écriture, certaines erreurs signalées n'en sont pas), fdformat ne se plaindra pas, par contre une véritable erreur terminera le processus de vérification. Le noyau produira un message pour chaque erreur d'E/S qu'il trouve ; ceux-ci seront envoyés sur la console, ou, si syslog est utilisé, vers le fichier /var/log/messages. fdformat lui-même n'indique pas où se trouve l'erreur (en règle générale, on s'en moque, les disquettes sont suffisamment bon marché pour qu'on puisse se permettre d'en jeter une mauvaise systématiquement).
\begin{tscreen}
\verb*\vert$\vert \textsl{fdformat /dev/fd0H1440} \\
\verb*\ver...
...vert Verifying ... read: Unknown error\vert \\
\verb*\vert$ \vert
\end{tscreen}
La commande badblocks peut être utilisée pour rechercher les blocs défectueux dans n'importe quel disque ou partition (y compris les disquettes). Elle ne formate pas le disque et peut donc être utilisée pour vérifier un système de fichiers existant. L'exemple suivant vérifie une disquette de $3{1\over 2}$ pouces qui possède deux blocs défectueux :
\begin{tscreen}
\verb*\vert$\vert \textsl{badblocks /dev/fd0H1440 1440} \\
\verb*\vert 718\vert \\
\verb*\vert 719\vert \\
\verb*\vert$ \vert
\end{tscreen}
badblocks affiche les numéros des blocs défectueux qu'il trouve. La plupart des systèmes de fichiers peuvent éviter de tels blocs. Ils maintiennent une liste des blocs défectueux connus qui est initialisée lorsque le système de fichiers est créé et qui peut être modifiée par la suite. La recherche initiale des blocs défectueux peut être faite par la commande mkfs (qui initialise le système de fichiers), mais les vérifications ultérieures doivent être faites avec badblocks et les nouveaux blocs doivent être ajoutés avec fsck. Nous décrirons mkfs et fsck plus tard.

Beaucoup de disques modernes notent automatiquement les blocs défectueux, et essaient de les réparer en utilisant un bloc spécial et réservé à la place. Ceci est invisible du point de vue du système d'exploitation. Si vous êtes curieux, cette fonctionnalité devrait être documentée dans le manuel du disque. Même de tels disques peuvent échouer si le nombre de blocs défectueux devient trop important, bien qu'alors il y ait de fortes chances pour que le disque soit si abîmé qu'il devienne inutilisable.


next up previous contents index
Next: Partitions Up: Utiliser les disques et Previous: Bandes   Table des matières   Index
root
1999-03-03