fdisk - La commande Linux pour créer et gérer des disques dur en ligne de commande

Image illustrant : Comment créer des partitions avec la commande Linux fdisk ?
  1. Accueil
  2. Tutoriels
  3. Mac
  4. Comment créer des partitions avec la commande Linux fdisk ?

Créez et gérez des partitions de disque dur à partir de la ligne de commande Linux fdisk

fdisk est un éditeur de partition en ligne de commande qui vous permet de créer, modifier et gérer les partitions sur les disques durs de votre ordinateur à partir de la ligne de commande. Il existe d'autres outils similaires, tels que cfdisk et parted, mais fdisk est de loin le plus universel et probablement le plus simple.

Même si vous ne prévoyez pas de l'utiliser régulièrement, il est bon pour tout utilisateur de Linux d'avoir une idée générale de la façon de travailler avec fdisk, car c'est une excellente solution de repli lorsque les options graphiques ne sont pas disponibles, et c'est probablement déjà sur votre Linux système.

Partitionner un lecteur avec fdisk

Ce guide vous expliquera les bases du partitionnement d'un disque dur avec fdisk. C'est un outil simple mais puissant qui offre de nombreuses options pour gérer vos disques. Pour un détail technique plus complet, reportez-vous au manuel technique à la fin du guide.

Attention : Le partitionnement de votre disque dur effacera toutes les données qu'il contient. Assurez-vous de sauvegarder vos données ou de travailler avec un lecteur vierge.

  1. Commencez par trouver l'emplacement de votre disque dur . Tu peux essayer :
    ls / dev

    Ensuite, essayez de déterminer de quel lecteur il s'agit. Votre lecteur principal est probablement / dev / sda, mais vous devez vous en assurer.

    Vous pouvez également jeter un œil à / etc / fstab pour voir quels lecteurs sont montés où. S'il vous donne des numéros UUID, vous pouvez rechercher l'UUID de chaque partition et voir lesquels correspondent.

    sudo blkid / dev / sda1
  2. Ensuite, répertoriez la table de partition actuelle sur le lecteur à l'aide de l' indicateur -l . Remplacez "/ dev / sda" par votre lecteur actuel.
     sudo fdisk -l /dev/sda

    Image illustrant l'exécution de la commande  Linux : sudo fdisk -l /dev/sdaSi vous travaillez avec un lecteur vierge, il ne devrait pas y en avoir beaucoup.

  3. Exécutez à nouveau la commande fdisk. Cette fois, sans aucun drapeau. Cela vous amènera dans la console fdisk.
    sudo fdisk /dev/sda

    Image illustrant la commande Linux : sudo fdisk /dev/sda

  4. Une fois que vous êtes dans la console fdisk, vous pouvez commencer à travailler avec vos partitions. Tout d'abord, si vous souhaitez lister les partitions comme avant, vous pouvez saisir la touche p.
    p
  5. Ensuite, utilisez la touche n pour créer une nouvelle partition.
    n
  6. L'invite vous demandera alors si vous souhaitez créer une partition principale ou étendue . Choisissez p (primaire).
    p
  7. Choisissez un numéro de partition. La valeur par défaut est 1 , pour la première partition, alors utilisez-la.
    1
  8. Ensuite, il vous demandera de choisir le premier secteur. Ne vous en faites pas trop. Appuyez simplement sur Entrée pour la valeur par défaut.
  9. L'invite suivante vous permettra de choisir la taille de votre partition. Vous pouvez spécifier la taille de la partition en mégaoctets (M) ou en gigaoctets (G). En supposant que vous configurez un lecteur pour installer Linux, 512M est un bon point de départ pour une partition de démarrage.
    + 512 M
  10. Une fois cela fait, vous pouvez à nouveau afficher votre nouvelle partition avec la touche p .
  11. Si vous prévoyez d'utiliser votre nouvelle partition comme partition de démarrage, vous devrez activer l'indicateur de démarrage. Faites cela en appuyant sur a . Ensuite, si vous y êtes invité, entrez le numéro de partition. Si c'est le seul sur votre disque, c'est 1.
    a1
  12. Maintenant, vous pouvez créer les autres partitions sur votre disque. Commencez par saisir à nouveau n.
  13. Appuyez à nouveau sur 1 pour une partition principale.
  14. Utilisez le numéro de partition par défaut. Si vous repartez à neuf, c'est 2 .
  15. Utilisez également le premier secteur par défaut. Il démarrera immédiatement après la partition précédente. Appuyez sur Entrée pour continuer.
  16. Encore une fois, choisissez la taille de votre lecteur. Si vous cherchez à configurer une partition racine avec une partition personnelle séparée, quelque chose comme + 20G fonctionnera bien. Si vous souhaitez occuper le reste de l'espace disponible, appuyez simplement sur Entrée.
    +20G

    fdisk Linux - afficher partitions restantes

  17. Répétez ces étapes pour chaque nouvelle partition que vous souhaitez créer sur le lecteur. Lorsque vous avez terminé, appuyez sur w pour écrire la table de partition sur le lecteur.
    w
  18. Maintenant, vous pouvez utiliser la commande mkfs pour formater les partitions à utiliser. Pour la plupart des systèmes Linux, le système de fichiers EXT4 est ce que vous voulez, vous pouvez donc exécuter l'ensemble de commandes suivant pour configurer vos partitions. Cela suppose que vous travaillez sur / dev / sda et que vous avez configuré des partitions home et root séparées.
    sudo mkfs.ext4 /dev/sda1
    sudo mkfs.ext4 /dev/sda2sudo mkfs.ext4 /dev/sda3

    fdisk Linux - formater les partitions

  19. Votre disque nouvellement partitionné et formaté est prêt à être utilisé. Si vous avez suivi, vous pouvez installer et exécuter une distribution Linux comme Arch Linux à partir des partitions que vous venez de créer.

Synopsis de Fdisk

Voici une ventilation technique de fdisk et de ses options et capacités:

fdisk [-u] [-b  secteursize ]  [-C  cyls ] [-H  heads ] [-S  sects ]  device

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

partition fdisk -s  ...

fdisk -v

Fdisk et partitions

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

Dans le monde BSD, on parle de «tranches de disque» et d'un «label de disque».

Linux a besoin d'au moins une partition, à savoir pour son système de fichiers racine . Il peut utiliser des fichiers d'échange et / ou des partitions d'échange, mais ce dernier est plus efficace. Donc, généralement, on voudra une deuxième partition Linux dédiée comme partition d'échange.

Sur le matériel compatible Intel, le BIOS qui démarre le système ne peut souvent accéder qu'aux 1024 premiers cylindres du disque dur. Pour cette raison, les personnes possédant des disques volumineux créent souvent une troisième partition, de quelques Mo seulement, généralement montée sur  / boot , pour stocker l'image du noyau et quelques fichiers auxiliaires nécessaires au démarrage, afin de s'assurer que ces éléments sont accessible au BIOS.

Il peut y avoir des raisons de sécurité, de facilité d'administration et de sauvegarde, ou de test, d'utiliser plus que le nombre minimum de partitions.

Comment fonctionne Fdisk

fdisk  (dans la première forme d'appel) est un programme piloté par menu pour la création et la manipulation de tables de partition. Il comprend les tables de partition de type DOS et les étiquettes de disque de type BSD ou SUN.

L'  appareil  est généralement l'un des suivants: 

  • / dev / hda / dev / hdb / dev / sda / dev / sdb
  • (/ dev / hd [ah] pour les disques IDE, / dev / sd [ap] pour les disques SCSI, / dev / ed [ad] pour les disques ESDI, / dev / xd [ab] pour les disques XT).
    (Un nom de périphérique fait référence au disque 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 peuvent avoir jusqu'à 15 partitions. Voir aussi /usr/src/linux/Documentation/devices.txt .

Étiquette de disque de type BSD / SUN

Un label de disque de type BSD / SUN peut décrire 8 partitions, dont la troisième doit être une partition «disque entier». Ne démarrez pas une partition qui utilise réellement son premier secteur (comme une partition d'échange) au cylindre 0, car cela détruirait l'étiquette de disque.

Libellé de disque de type RIX / SGI

Un label de disque de type IRIX / SGI peut décrire 16 partitions, dont la onzième devrait être une partition de «volume» entière, tandis que la neuvième devrait être intitulée «en-tête de volume». L'en-tête de volume couvrira également la table de partition, c'est-à-dire qu'il commence au bloc zéro et s'étend par défaut sur cinq cylindres. L'espace restant dans l'en-tête de volume peut être utilisé par les entrées du répertoire d'en-tête.

Aucune partition ne peut chevaucher l'en-tête de volume. Ne changez pas non plus son type et créez un système de fichiers dessus, car vous perdrez la table de partition. Utilisez ce type d'étiquette uniquement lorsque vous travaillez avec Linux sur des machines IRIX / SGI ou des disques IRIX / SGI sous Linux.

Table de partition de type DOS

Une table de partition de type DOS peut décrire un nombre illimité de partitions. Dans le secteur 0, il y a de la place pour la description de 4 partitions (appelées «primaires»). L'un de ceux-ci peut être une partition étendue; il s'agit d'une boîte contenant des partitions logiques, avec des descripteurs trouvés dans une liste chaînée de secteurs, chacun précédant les partitions logiques correspondantes. Les quatre partitions principales, présentes ou non, portent les numéros 1 à 4. La numérotation des partitions logiques commence à partir de 5.

Dans une table de partition de type DOS, le décalage de départ et la taille de chaque partition sont stockés de deux manières: en nombre absolu de secteurs (donné en 32 bits) et en tant que triple Cylindres / Têtes / Secteurs (donné en 10 + 8 + 6 morceaux). Le premier est OK; avec des secteurs de 512 octets, cela fonctionnera jusqu'à 2 To. Ce dernier a deux problèmes différents. Tout d'abord, ces champs C / H / S ne peuvent être remplis que lorsque le nombre de têtes et le nombre de secteurs par piste sont connus.

Deuxièmement, même si nous savons quels devraient être ces nombres, les 24 bits disponibles ne suffisent pas. DOS utilise uniquement C / H / S, Windows utilise les deux, Linux n'utilise jamais C / H / S.

Géométrie du disque

Si possible,  fdisk  obtiendra automatiquement la géométrie du disque. Ce n'est pas nécessairement la géométrie du disque physique (en effet, les disques modernes n'ont vraiment rien de tel qu'une géométrie physique, certainement pas quelque chose qui peut être décrit sous une forme simpliste Cylindres / Têtes / Secteurs), mais c'est la géométrie du disque que MS-DOS utilise pour la table de partition.

Habituellement, tout se passe bien par défaut, et il n'y a aucun problème si Linux est le seul système sur le disque. Cependant, si le disque doit être partagé avec d'autres systèmes d'exploitation, il est souvent judicieux de laisser un fdisk d'un autre système d'exploitation créer au moins une partition. Lorsque Linux démarre, il regarde la table de partition et essaie de déduire quelle (fausse) géométrie est nécessaire pour une bonne coopération avec d'autres systèmes.

Contrôle de cohérence

Chaque fois qu'une table de partition est imprimée, un contrôle de cohérence est effectué sur les entrées de la table de partition. Cette vérification vérifie que les points de départ et de fin physiques et logiques sont identiques et que la partition commence et se termine sur une limite de cylindre (sauf pour la première partition).

Certaines versions de MS-DOS créent une première partition qui ne commence pas sur une limite de cylindre, mais sur le secteur 2 du premier cylindre. Les partitions commençant dans le cylindre 1 ne peuvent pas commencer sur une limite de cylindre, mais il est peu probable que cela pose des problèmes à moins que vous n'ayez OS / 2 sur votre machine.

Un sync () et un BLKRRPART ioctl () (relire la table de partition à partir du disque) sont exécutés avant de quitter lorsque la table de partition a été mise à jour. Il y a longtemps, il était nécessaire de redémarrer après l'utilisation de fdisk. Je ne pense plus que ce soit le cas; en effet, un redémarrage trop rapide peut entraîner une perte de données non encore écrites. Notez que le noyau et le matériel du disque peuvent mettre les données en mémoire tampon.

Avertissement Dos 6.x

La commande DOS 6.x FORMAT recherche des informations dans le premier secteur de la zone de données de la partition et considère ces informations comme plus fiables que les informations de la table de partition. DOS FORMAT s'attend à ce que DOS FDISK efface les 512 premiers octets de la zone de données d'une partition chaque fois qu'un changement de taille se produit. DOS FORMAT examinera ces informations supplémentaires même si l'indicateur / U est donné - nous considérons cela comme un bogue dans DOS FORMAT et DOS FDISK.

L'essentiel est que si vous utilisez cfdisk ou fdisk pour modifier la taille d'une entrée de table de partition DOS, vous devez également utiliser  dd  pour remettre à zéro les 512 premiers octets de cette partition avant d'utiliser DOS FORMAT pour formater la partition. Par exemple, si vous utilisiez cfdisk pour créer une entrée de table de partition DOS pour / dev / hda1, alors (après avoir quitté fdisk ou cfdisk et redémarré Linux pour que les informations de table de partition soient valides) vous utiliseriez la commande "dd if = / dev / zéro de = / dev / hda1 bs = 512 count = 1 "pour remettre à zéro les 512 premiers octets 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 inutiles.

Note : Pour de meilleurs résultats, vous devez toujours utiliser un programme de table de partition spécifique au système d'exploitation. Par exemple, vous devez créer des partitions DOS avec le programme DOS FDISK et des partitions Linux avec le programme Linux fdisk ou Linux cfdisk.

Options de fdisk

-b  secteursize : spécifiez la taille du secteur du disque. Les valeurs valides sont 512, 1024 ou 2048. (Les noyaux récents connaissent la taille du secteur. Utilisez cette option uniquement sur les anciens noyaux ou pour remplacer les idées du noyau.)

-C  cyls : Spécifiez le nombre de cylindres du disque. Nous ne savons pas pourquoi quiconque voudrait le faire.

-H  têtes : Spécifiez le nombre de têtes du disque. (Pas le numéro physique, bien sûr, mais le nombre utilisé pour les tables de partition.) Les valeurs raisonnables sont 255 et 16.

-S  sects : Spécifiez le nombre de secteurs par piste du disque. (Pas le nombre physique, bien sûr, mais le nombre utilisé pour les tables de partition.) Une valeur raisonnable est 63.

-l : répertorie les tables de partition pour les périphériques spécifiés, puis quitte. Si aucun périphérique n'est indiqué, ceux mentionnés dans  / proc / partitions  (s'il existe) sont utilisés.

-u : Lors de la liste des tables de partition, donnez les tailles en secteurs au lieu de cylindres.

-s  partition: la  taille  de la partition (en blocs) est imprimée sur la sortie standard.

-v : affiche le numéro de version du   programme fdisk et quitte.

Partager Tutoriel

Autres Tutoriels sur (Linux, Disque) ...