====== fdisk ======
* Objet : fdisk
* Niveau requis : {{tag>avisé}}
* Commentaires : //Céer des partitions sur votre disque dur. //
* Suivi : {{tag>à-placer}}
* Création par [[user> mattux]] le 10/06/2007
* Testé par [[user>deuchdeb]] le 20/04/2015
* Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?id=1041 | c'est ici]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
===== 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 [[:doc:systeme:cfdisk | 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.
* Pour des disques IDE, le premier sera nommé **hda**, le second **hdb**, ...
* Pour des disques SCSI ou SATA, le premier s'appellera **sda**, le second **sdb**, ...
===== Complément =====
Il est à noter que maintenant, nous utilisons [[:doc:systeme:cfdisk| la commande cfdisk]] pour créer la table des partitions.
La commande **fdisk** reste principalement utilisée :
* pour la recherche de disque installé,
* pour voir le détail des partitions actives,
* pour traiter certains périphériques que la commande [[cfdisk]] ne découvre pas.
===== 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 root(([[:doc:systeme:su | la commande su]])). \\
Par exemple pour ce portable avec un disk usb de 750 Go branché dessus :
fdisk -l
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'
Mot de passe :
Le mot de passe root validé le résultat est tout pareil...
==== Lien utile sur le forum ====
* [[https://debian-facile.org/viewtopic.php?pid=111298#p111298]]
* [[https://debian-facile.org/viewtopic.php?pid=117184#p117184]]
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 :
* [[https://debian-facile.org/viewtopic.php?pid=234384#p234384]]
Merci **raleur**. :-)
===== TP1 - Créer une seule table de partition pour une clé USB =====
Sous root (voir [[:doc:systeme:su]] ) identifions le périphérique à opérer, par exemple une clé usb :
fdisk -l
.../...
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 [[:doc:systeme:umount]] :
umount /dev/sde
Ouvrir fdisk sur ce périphérique :
fdisk /dev/sde
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//)
Command (m for help): d
No partition is defined yet!
Puis la lettre n (n=new nouvelle partition)
Command (m for help): n
Command action
e extended
p primary partition (1-4)
La lettre p (p=primary partition primaire)
p
Partition number (1-4):
Première partition, taper le chiffre 1 :
Partition number (1-4): 1
First cylinder (1-1019, default 1):
Validez sans rien écrire (utilisation par defaut) :
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-1019, default 1019):
Validez simplement pour utiliser tout l'espace disponible :
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.
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 [[:doc:systeme:mkfs | 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 [[:doc:systeme:su | 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 : [[:doc:systeme:mkfs | 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//
* Création par martinux_qc le 09-12-2009
* Testé par smolski le 17-07-2014
* Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?id=9421]]
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 commande((Voir aussi [[doc:systeme:grep|la commande grep]] ainsi que [[doc:programmation:shell:pipe|l'usage de pipe]])), 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 =====
* Le [[http://debian-facile.org/forum/viewtopic.php?pid=16817#p16817|fil sur le forum]].
===== 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 !// :-)