Table des matières

fdisk

Introduction

La commande fdisk permet de créer des partitions sur votre disque dur.

Elle peut se montrer un nécessaire palliatif devant certaines partitions indéchiffrables avec la commande cfdisk

Le partitionnement avec fdisk entraînera la perte de toutes les données présentes sur le disque dans lequel vous effectuez les opérations !

Utilisation

La commande fdisk seule (sans argument) utilisera le premier disque dur qu'elle trouvera.
Pour préciser le périphérique à traiter, il faut préciser le nom de ce périphérique comme argument.

Exemple

Pour le premier disque sata installé :

fdisk sda

Nommage des périphériques

Sous GNU/Linux, le nom des périphériques de stockage varie selon qu'il s'agisse de disques SCSI, SATA ou IDE.

Complément

Il est à noter que maintenant, nous utilisons la commande cfdisk pour créer la table des partitions.

La commande fdisk reste principalement utilisée :

Option -l

C'est l'option utilisée pour lister l'ensemble des disques actifs sur votre PC, montés ou non-monté dans le système.

Soit, sous root2).
Par exemple pour ce portable avec un disk usb de 750 Go branché dessus :

fdisk -l
retour de la commande
Disk /dev/sda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x8fec8fec
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1         608     4883728+  83  Linux
/dev/sda2             609       14593   112334512+   5  Extended
/dev/sda5            4865       14593    78148161   83  Linux
/dev/sda6             609        1824     9767457   83  Linux
/dev/sda7            1825        3040     9767488+  83  Linux
/dev/sda8            3041        3648     4883728+  83  Linux
/dev/sda9            3649        4256     4883728+  83  Linux
/dev/sda10           4257        4864     4883728+  82  Linux swap / Solaris
 
Partition table entries are not in disk order
 
Disk /dev/sdb: 750.1 GB, 750156374016 bytes
255 heads, 63 sectors/track, 91201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x787e0531
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1       91201   732572001   83  Linux

Soit en session user, la commande su avec l'option -c ainsi :

su -c 'fdisk -l'
séquence interactive
Mot de passe : 

Le mot de passe root validé le résultat est tout pareil…

Lien utile sur le forum

La partition 3 ne commence pas sur une frontière de cylindre physique

Comme cela concerne la partition étendue qui ne contient pas de données et n'est pas utilisée directement, c'est parfaitement bénin.

Ce message n'a aucune importance.
La notion de cylindre physique (et plus généralement de géométrie physique) n'a plus aucun sens avec les disques à contrôleur intégré (IDE/ATA, SCSI…) et n'est plus utilisée depuis bien longtemps par les systèmes d'exploitation qui ont remplacé l'adressage CHS (cylindre, tête, secteur) par l'adressage linéaire dit LBA.

Toute les partitions sont alignées sur des blocs de 2048 secteurs (sauf la partition étendue mais ce n'est pas important car elle ne contient pas directement des données), c'est tout ce qui compte pour la compatibilité avec les disques durs au format avancé 512e ou les SSD.

Et un lien pour plus de précision encore :

Merci raleur. :-)

TP1 - Créer une seule table de partition pour une clé USB

Sous root (voir su ) identifions le périphérique à opérer, par exemple une clé usb :

fdisk -l
retour de la commande
.../...
Disk /dev/sde: 2006 MB, 2006974464 bytes
62 heads, 62 sectors/track, 1019 cylinders
Units = cylinders of 3844 * 512 = 1968128 bytes
Disk identifier: 0x00000000
 
Disk /dev/sde doesn't contain a valid partition table

Démontons la clé /dev/sde avec la commande umount :

umount /dev/sde

Ouvrir fdisk sur ce périphérique :

fdisk /dev/sde
séquence interactive
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x64206ba1.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.
 
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
 
Command (m for help): 

Tapez la lettre D du clavier (d=delete)

séquence interactive
Command (m for help): d
No partition is defined yet!

Puis la lettre N (n=new nouvelle partition)

séquence interactive
Command (m for help): n 
Command action
   e   extended
   p   primary partition (1-4)

La lettre P (p=primary partition primaire)

séquence interactive
p
Partition number (1-4):

Première partition, taper le chiffre 1 :

séquence interactive
Partition number (1-4): 1
First cylinder (1-1019, default 1):

Validez sans rien écrire (utilisation par defaut) :

séquence interactive
Using default value 1
   Last cylinder or +size or +sizeM or +sizeK (1-1019, default 1019):

Validez simplement pour utiliser tout l'espace disponible :

séquence interactive
Last cylinder or +size or +sizeM or +sizeK (1-1019, default 1019): 
Using default value 1019
 
Command (m for help): 

Maintenant, nous déclenchons l'écriture. Tapez W (w = write écrire) et on laisse faire jusqu'au retour de la main sur le promp.

séquence interactive
Command (m for help): w
The partition table has been altered!
 
Calling ioctl() to re-read partition table.
Syncing disks.

Et voilà, il nous reste à utiliser la commande mkfs pour formater la partition créée sur la cle USB.

TP2 - Table de plusieurs partitions pour une installation

C'est de l'administration système, donc toutes ces commandes sont éxécutées sous root. Voir La commande SU.

Pour cet exemple, nous opérons sur un disque SATA identifié par /dev/sda

Allez, aux fourneaux maintenant ! :-)

Tapez :

fdisk /dev/sda

Il suffit maintenant de taper aux prochaines demandes, dans l'ordre :

 d (delete pour effacer)
 n (pour nouveau donc)
 p (pour primaire)
 1 (1ère partition)

Et puis :

 First cylinder : on laisse vide
 Last cylinder : +15000M (pour une partition sda1 d'environ 14GO)

Options boot

Certains systèmes demande une partition bootable. Tapez :

 a (pour rendre amorçable sda1 = partition de boot)
 1

Ajouter une partition swap

Sans quitter fdisk, tapez :

 n
 2
 p (pour primaire)
 First : vide
 Last : +1500M (sda2 d'environ 1500MO = swap)

Ajouter une partition supplémentaire

On recommence, sans quitter fdisk :

 n
 3
 p (pour primaire)
 First : vide
 Last : vide (= la totalité du reste du disque) pour /home par exemple

Et pour finir, on tape W

Ainsi, on écrit tout ça et on quitte fdisk en sauvegardant d'un seul coup.

Vérifier la table de partition du disque /dev/sda :

fdisk -l /dev/sda

Easy, is'nt ? ;-)

Formater

À savoir : la commande mkfs

Les tables posées, il reste à les formater, tapez dans l'ordre :

pour de l'ext3 :

 mke2fs -j /dev/sda1
 mke2fs -j /dev/sda3

pour de l'etx4 :

 mkfs -V -t ext4 /dev/sda1
 mkfs -V -t ext4 /dev/sda3

pour la swap

 mkswap /dev/sda2
 swapon /dev/sda2 (swap prête)

Merci au compagnon zodar d'avoir rédigé ce “zoli tuto TP2” sur le forum DF, là :
http://debian-facile.org/forum/viewtopic.php?pid=21341#p21341

Tchibâââ ! LOL

dumpe2fs : informations sur votre système de fichier

tuto sur dumpe2fs fusionné le 30/04/2023

Cette commande permet d'afficher des informations sur le système de fichier ext2/ext3/ext4. Pour en savoir plus, il suffit, comme toujours de faire un :

man dumpe2fs

Il existe plusieurs utilisations à cette commande.
Ici, nous voulons en signaler une qui peut être assez intéressante. Grâce à cette commande3), il est en effet possible de connaître, ou de retrouver, la date d'installation (ou de réinstallation) d'une partition racine, donc d'un système.

Il suffit de taper :

dumpe2fs -h /dev/DEVICE | grep 'created'

où vous remplacez, bien sûr, DEVICE par la partition concernée.

Références

Remerciements

Merci au captnfab et à françoise pour leur mutuelle entraide sur le salon #debian-facile qui ont permis le complément TP1 de ce tuto. Hop ! :-)

1)
N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !
3)
Voir aussi la commande grep ainsi que l'usage de pipe