> Linux Reviews > man >

fdisk

Manipuler les tables de partitions pour Linux.


  1. fdisk.8.man


1. fdisk.8.man

Manpage of FDISK

FDISK

Section: Manuel du Programmeur Linux (8)
Updated: 14 Août 2000
Index Return to Main Contents
 

NOM

fdisk - Manipuler les tables de partitions pour Linux.  

SYNOPSIS

fdisk [-u] périphérique

fdisk -l [-u] [périphérique ...]

fdisk -s partition ...

fdisk -v  

DESCRIPTION

Les disques durs peuvent être divisés en un ou plusieurs disques logiques appelés partitions. Cette division est décrite dans la table des partitions trouvée sur le secteur 0 du disque.

Dans le monde BSD, on parle de `tranches de disque' et de `label de disque'.

Linux a besoin d'au moins une partition, pour son système de fichiers racine. Il peut utiliser des fichiers de swap ou des partitions de swap, mais ces dernières sont plus efficaces. C'est pourquoi, en général, on utilise une seconde partition Linux en tant que partition de swap. Sur les matériels compatibles Intel, le BIOS qui démarre le système ne peut souvent accéder qu'aux 1024 premiers cylindres du disque. Pour cette raison, les personnes possédant des disques volumineux créent souvent une troisième partition, de quelques MB de taille, montée en général en /boot, pour conserver l'image du noyau et un petit nombre de fichiers auxiliaires nécessaires au démarrage, pour être sûr que ce matériel soit accessible par le BIOS. Il peut y avoir des raisons de sécurité, de facilité d'administration et de sauvegarde ou de tests pour utiliser plus que le nombre minimal de partitions.

fdisk (dans la première forme d'invocation) est un programme dirigé par un menu utilisé pour la création et la manipulation de tables de partitions. Il comprend les tables de partitions de type DOS, et les labels de disque BSD ou SUN.

Le périphérique est en général l'un des suivants :

/dev/hda /dev/hdb /dev/sda /dev/sdb
(/dev/hd[a-h] pour les disques IDE, /dev/sd[a-p] pour les disques SCSI, /dev/ed[a-d] pour les disques ESDI, /dev/xd[ab] pour les disques XT). Un nom de périphérique référence le dique entier.

La partition est un nom de périphérique suivi d'un numéro de partition. Par exemple, /dev/hda1 est la première partition sur le premier disque dur IDE du système. Les disques IDE peuvent avoir jusqu'à 63 partitions, les disques SCSI jusqu'à 15. Pour de plus amples informations, lisez /usr/src/linux/Documentation/devices.txt.

Un label de disque de type BSD/SUN peut décrire 8 partitions, dont la troisième devrait être un `disque entier'. Ne créez pas de partition qui ait son premier secteur sur le cylindre 0 (comme une partition de swap), car cela détruirait le label du disque.

Un label de disque de type IRIX/SGI peut décrire 15 partitions, dont la onzième devrait être une partition entière de `volume', alors que la neuvième devrait être un `entête de volume'. L'entête de volume couvre également la table des partitions, çàd qu'elle débute au bloc zéro et s'étend par défaut sur 5 cylindres. L'espace restant dans l'entête de volume peut être utilisé par des entrées de répertoires d'entête. Aucune partition ne peut empiéter sur l'entête de volume. Ne modifiez pas son type ni ne créez de système de fichiers dessus, car vous perdriez alors la table des partitions. N'utilisez ce type de label que quand vous travaillez sous Linux sur des machines IRIX/SGI ou quand vous utilisez des disques IRIX/SGI sous Linux.

Une table de partitions de type DOS peut décrire un nombre illimité de partitions. Dans le secteur 0, il y a de la place pour décrire 4 partitions (appelées `primaires'). L'une d'entre elles peut être une partition étendue; c'est une sorte de boîte contenant des partitions logiques, dont les descripteurs sont trouvés dans une liste chaînée de secteurs, chacun précédant les partitions logiques correspondantes. Les quatre partitions primaires, présentes ou pas, portent les numéros 1-4. Les partitions logiques sont numérotées à partir de 5.

Dans une table de partitions de type DOS, le décalage de départ et la taille de chaque partition sont conservés de deux façons : comme un nombre absolu de secteurs (en 32 bits), ou comme un triplet Cylindres/Têtes/Secteurs (en 10+8+6 bits). La première manière fonctionne bien - avec des secteurs de 512 bytes, cela marchera jusqu'à 2 TB. La seconde possibilité souffre de deux problèmes différents. Primo, ces champs C/T/S ne peuvent être remplis que lorsque les nombre de têtes et de secteurs par piste sont connus. Secundo, même si l'on connaissait ces nombres, les 24 bits qui sont disponibles ne suffiraient pas. DOS utilise uniquement C/T/S, Windows utilise les deux, Linux ne l'utilise jamais.

Si c'est possible, fdisk déterminera la géométrie du disque automatiquement. Ce n'est pas nécessairement la géométrie physique du disque (en effet, les disques modernes n'ont pas réellement de géométrie physique, et sûrement pas une géométrie décrite dans la forme simpliste Cylindres/Têtes/Secteurs), mais c'est la géométrie de disque utilisée par MS-DOS pour la table des partitions que fdisk peut détecter.

D'habitude, tout se passe bien, et il n'y a aucun problème si Linux est le seul système sur le disque. Néanmoins, si le disque doit être partagé avec d'autres systèmes d'exploitation, c'est en général une bonne idée de laisser créer au moins une partition par un fdisk d'un autre système d'exploitation. Quand Linux démarre, il regarde la table des partitions, et essaie de déduire quelle (fausse) géométrie est requise pour une bonne coopération avec les autres systèmes.

Chaque fois qu'une table des partitions est écrite, un test de cohérence est effectué sur les entrées de la table des partitions. Ce test vérifie que les début et fin physiques et logiques sont identiques, et que la partition commence et se termine avec une limite de cylindre (sauf pour la première partition).

Certaines versions de MS-DOS créent une première partition qui ne commencent pas sur une limite de cylindre, mais sur le secteur 2 du premier cylindre. Les partitions commençant au cylindre 1 ne peuvent débuter sur une limite de cylindre, mais cela ne pourrait causer des problèmes que si vous avez OS/2 sur votre machine.

Un sync() et un ioctl() BLKRRPART (relire la table des partitions à partir du disque) sont exécutés avant la sortie quand la table des partitions a été mise à jour. Il y a longtemps, il était nécessaire de redémarrer la machine après l'utilisation de fdisk. Je ne crois pas que cela soit encore le cas - en effet, redémarrer trop rapidement peut causer la perte de données non encore écrites sur disque. Notez qu'à la fois le noyau et le matériel disque peut mettre des données dans des tampons.

 

AVERTISSEMENT DOS 6.x

La commande DOS 6.x FORMAT recherche certaines informations sur le premier secteur de la zône de données de la partition, et suppose que cette information est plus fiable que l'information contenue dans la table des partitions. Le FORMAT de DOS suppose que FDISK (de DOS) efface les 512 premiers bytes de la zône de données de la partition chaque fois qu'un changement de taille se produit. FORMAT regardera cette information additionnelle même si l'option /U est donnée -- nous considérons que c'est un bogue dans FORMAT et FDISK de DOS.

Si vous utilisez cfdisk ou fdisk pour modifier la taille d'une entrée de la table des partitions DOS, alors vous devez aussi utiliser dd pour mettre à zéro les 512 premiers bytes de cette partition avant d'utiliser FORMAT de DOS pour formater cette partition. Par exemple, si vous avez utilisé cfdisk pour créer une entrée dans la table des partitions DOS pour /dev/hda1, alors (après la sortie de fdisk ou de cfdisk et après avoir redémarré Linux pour que les informations sur la table des partitions soient valides) vous devriez utiliser la commande "dd if=/dev/zero of=/dev/hda1 bs=512 count=1" pour mettre à zéro les 512 premiers bytes de la partition.

SOYEZ EXTRÊMEMENT PRUDENT si vous utilisez la commande dd, car une petite faute de frappe peut rendre toutes les données de votre disque inutilisables.

Pour de meilleurs résultats, vous devriez toujours utiliser un programme de partitionnement spécifique au système d'exploitation. Par exemple, vous devriez créer des partitions DOS avec le programme FDISK DOS, et les partitions Linux avec l'un des programmes Linux fdisk ou cfdisk.

 

OPTIONS

-v
Afficher le numéro de version de fdisk et se terminer normalement.
-l
Lister les tables de partitions pour les périphériques spécifiés et ensuite se terminer. Si aucun périphérique n'est fourni, ceux mentionnés dans /proc/partitions (si ce fichier existe) sont utilisés.
-u
Pendant le listing des tables de partitions, donner la taille en secteurs plutôt qu'en cylindres.
-s partition
La taille de la partition (en blocs) est affichée sur la sortie standard.
 

BOGUES

Il existe plusieurs programmes *fdisk. Chacun a ses points forts et ses points faibles. Essayez-les dans l'ordre cfdisk, fdisk, sfdisk. (En effet, cfdisk est un beau programme qui a des exigences strictes sur les tables de partitions qu'il accepte, et qui produit des tables de partitions de haute qualité. A utiliser si vous le pouvez. fdisk est un programme boggé qui fait des choses assez floues - d'habitude, il arrive à produire des résultats raisonnables. Son seul avantage est qu'il permet le support des labels de disque BSD, et d'autres tables de partitions non DOS. A éviter si vous le pouvez. sfdisk est destiné uniquement aux hackers - l'interface utilisateur est quelque peu rebutante, mais il travaille mieux que fdisk et est plus puissant que fdisk et cfdisk. De plus, il peut être utilisé de façon non interactive.)

Le label de disque de type IRIX/SGI n'est pas supporté actuellement par le noyau. De plus, les répertoires d'entête, IRIX/SGI ne sont pas encore entièrement supportés.

Il manque l'option `écrire la table des partitions dans un fichier'.  

TRADUCTION

Frédéric Delanoy, 2000.


 

Index

NOM
SYNOPSIS
DESCRIPTION
AVERTISSEMENT DOS 6.x
OPTIONS
BOGUES
TRADUCTION

This document was created by man2html using the manual pages.
Time: 17:36:42 GMT, October 23, 2013

SVENSKA - SVENSKA - ja - pl