GNU/Linux >> Tutoriels Linux >  >> Linux

Utilisation de la commande mkfs sous Linux pour formater le système de fichiers sur un disque ou une partition

Les lettres dans mkfs signifie "créer un système de fichiers". La commande est couramment utilisée pour gérer les périphériques de stockage sous Linux. Vous pouvez considérer mkfs comme un outil de ligne de commande pour formater un disque dans un système de fichiers spécifique.

mkfs -t [fs type] [target device]

Vous pouvez également utiliser la commande mkfs de la manière suivante.

mkfs.[fs type] [target device]

Dans ce didacticiel, je vais discuter de manière générale de ce qu'est un système de fichiers. Je fournirai également des exemples d'utilisation efficace de la commande mkfs.

Étant donné que la commande mkfs traite des disques et des partitions, vous devez être utilisateur root ou sudo avec accès pour exécuter des commandes d'administration.

mkfs est un outil puissant. Il est important de comprendre les conséquences potentielles de la modification du système de fichiers. La sélection du mauvais nœud de périphérique effacera toutes les données de ce périphérique. Utilisez cette commande à vos propres risques. Vous avez été prévenu

Qu'est-ce qu'un système de fichiers, déjà ?

Un système de fichiers (fs) fait référence à la structure et à la logique qui gèrent les données sur un périphérique. Le système de fichiers contrôle la façon dont les données sont stockées et récupérées.

Il existe de nombreux types de systèmes de fichiers et chacun a ses propres avantages et inconvénients. Voici les types de systèmes de fichiers les plus courants :

  • GRAS*
  • NTFS
  • poste*
  • APFS
  • HFS*

Vous avez probablement déjà rencontré un ou plusieurs de ces types de systèmes de fichiers. Vous pouvez même associer les types à leurs systèmes d'exploitation respectifs.

De manière générale, FAT/NTFS sont conçus pour Windows, Ext est utilisé avec les systèmes Linux et APFS/HFS sont des systèmes de fichiers macOS. Chacun d'entre eux traite différemment la logique de la structure des fichiers, ce qui peut entraîner des problèmes.

C'est pourquoi il est crucial d'y penser avant de déclarer un type de système de fichiers, ou de "formater" votre appareil. Chaque cas d'utilisation est différent, et c'est à vous de décider quel système de fichiers convient le mieux à vos besoins.

exemples de commandes mkfs

Laissez-moi vous montrer quelques-unes des utilisations les plus courantes de la commande mkfs.

S'il vous plaît, n'essayez aucune de ces commandes sur votre système actuel à l'aveuglette. Il formatera le périphérique cible/la partition de disque en effaçant toutes les données.

mkfs sans aucune option crée un système de fichiers ext2

Si vous ne spécifiez pas le type de système de fichiers pour le périphérique cible, il utilisera le système de fichiers ext2 par défaut.

sudo mkfs /dev/sdb1

Spécifier le type de fichier avec mkfs

L'utilisation d'ext2 n'est ni très pratique ni conseillée. De nos jours, la plupart des systèmes Linux recommandent d'utiliser ext4. Vous pouvez spécifier le système de fichiers de la manière suivante :

sudo mkfs -t ext4 /dev/sdb1

Vous pouvez également l'utiliser comme ceci :

sudo mkfs.ext4 /dev/sdb1

Rechercher les blocs défectueux sur un appareil

Vous pouvez également vérifier les blocs défectueux sur un appareil, mais gardez à l'esprit que la vérification prend souvent beaucoup de temps.

sudo mkfs -c /dev/sdb1

Astuce bonus :vérifiez le type de système de fichiers d'un périphérique

Vous voudrez peut-être vérifier le type de système de fichiers d'un périphérique que vous venez de formater à l'aide de la commande mkfs. Vous pouvez utiliser la commande file à cette fin.

sudo file -sL /device

Voici un exemple qui montre le type de sortie qu'il pourrait afficher :

[email protected]:~$ sudo file -s /dev/nvme0n1p2
/dev/nvme0n1p2: Linux rev 1.0 ext4 filesystem data, UUID=34daa4b7-a2c4-4983-b5cc-df9baa6a6543 (extents) (64bit) (large files) (huge files)

Cas d'utilisation réel :utilisation de la commande mkfs pour créer un fichier Système sur un périphérique USB

Maintenant que vous avez quelques informations de base, vous pouvez commencer à utiliser mkfs.

La démonstration la plus pratique à laquelle je puisse penser est le formatage d'un lecteur de stockage flash USB. Ces mêmes principes s'appliqueront à tout type de stockage que vous choisirez.

Rechercher votre appareil

Vous devez d'abord trouver votre appareil. Une méthode que vous pouvez utiliser est sudo fdisk -l . Cela listera tous les nœuds de disque qui sont actuellement montés.

[email protected]:~$ sudo fdisk -l
Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 sectors
Disk model: VBOX HARDDISK   
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x3c62c49c

Device     Boot    Start      End  Sectors  Size Id Type
/dev/sda1  *        4096  1023998  1019903  498M 83 Linux
/dev/sda2        1024000 44036094 43012095 20.5G 83 Linux
/dev/sda3       44036096 52424702  8388607    4G 82 Linux swap / Solaris

Disk /dev/sdb: 28.93 GiB, 31040995328 bytes, 60626944 sectors
Disk model: Patriot Memory  
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 91A34D6F-E67B-E54D-B19C-5CC828DAAB9A

Device     Start      End  Sectors  Size Type
/dev/sdb1   2048 60626910 60624863 28.9G Linux filesystem

Votre sortie variera évidemment. Veuillez être très prudent lorsque vous identifiez le lecteur souhaité . Si vous n'êtes pas sûr, retirez le disque et exécutez le fdisk -l commander à nouveau. Si vous avez le bon appareil, il ne sera pas répertorié pendant la déconnexion.

Vérifier la partition

L'appareil que j'utilise est un Patriot Memory USB et il se trouve dans /dev/sdb . En plus d'identifier le bon disque, vous devrez vous assurer que vous modifiez le fs de la partition souhaitée.

J'ai utilisé les outils fdisk pour supprimer les données existantes et écrire une nouvelle table de partition. Pendant que je faisais cela, j'ai créé une nouvelle partition sur laquelle écrire. Cette partition sera notre cible :/dev/sdb1 .

Démonter

Avant d'essayer de changer le système de fichiers, vous devrez le démonter en utilisant le umount commande.

[email protected]:~$ sudo umount /dev/sdb1

Créer le système de fichiers

Maintenant que vous avez vérifié votre cible et démonté le lecteur, vous pouvez procéder à la création du système de fichiers.

J'ai ajouté le -v option détaillée ici pour afficher plus d'informations lors de l'exécution.

[email protected]:~$ sudo mkfs.ext4 /dev/sdb1 -v
mke2fs 1.45.5 (07-Jan-2020)
fs_types for mke2fs.conf resolution: 'ext4'
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1896832 inodes, 7578107 blocks
378905 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2155872256
232 block groups
32768 blocks per group, 32768 fragments per group
8176 inodes per group
Filesystem UUID: 73882769-7599-4c79-a00b-ef317ccd921d
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done 

Ce processus peut prendre un certain temps, mais devrait se terminer en moins de 20 minutes, sauf si la cible est supérieure à 2 To.

J'ai eu plusieurs problèmes avec le programme suspendu au dernier élément. Malheureusement, il n'y a pas d'indicateur de progression et je n'ai eu aucune erreur.

Vérifier le système de fichiers nouvellement créé

Tout d'abord, vérifiez le système de fichiers de l'appareil que vous venez d'utiliser. Est-ce celui que vous vouliez ?

sudo file -sL /dev/sdb1

Il est important de s'assurer que l'appareil est reconnu sur les systèmes avec lesquels vous l'utiliserez. J'ai créé un dossier appelé test et un fichier à l'intérieur appelé test.txt.

Pour gagner du temps, vous pouvez copier et coller mes commandes ici.

mkdir test && cd test
touch test.txt
echo "THIS IS ONLY A TEST" > test.txt
cat test.txt

Si tout a fonctionné, vous devriez pouvoir monter le lecteur sur les systèmes souhaités et accéder aux fichiers. Si vous ne pouvez pas accéder aux fichiers sur votre système, il y a probablement un problème de compatibilité.

Conclusion

J'espère que vous trouverez ce guide rapide sur mkfs commande utile. Si vous aimez ce tutoriel, partagez-le sur les réseaux sociaux.

Si vous avez des commentaires ou des questions, veuillez les laisser ci-dessous. Si vous avez des suggestions de sujets que vous aimeriez voir abordés, n'hésitez pas à les laisser également.


Linux
  1. Dépannage à l'aide du système de fichiers proc sous Linux

  2. Utilisation de la force sur la ligne de commande Linux

  3. Exemples essentiels de la commande File sous Linux

  4. Créer des fichiers en utilisant la ligne de commande sous Linux

  5. Supprimer un fichier sous Linux en utilisant le numéro d'inode

Comment utiliser la commande touch sous Linux

Utilisation de la commande gratuite Linux

Comment effacer en toute sécurité un disque et un fichier à l'aide de la commande Linux shred

Tutoriel sur l'utilisation de la commande Timeout sous Linux

Comment formater des partitions de disque sous Linux

Exemples de commandes mkfs sous Linux