GNU/Linux >> Tutoriels Linux >  >> Linux

Commandes séparées pour gérer la partition de disque

Parted est un utilitaire GNU gratuit utilisé pour gérer les partitions de disque dur à partir de la ligne de commande. Il peut créer, supprimer, redimensionner et imprimer une partition de disque, et plus encore sous Linux.

Plus souvent, nous utilisons l'outil partagé pour le partitionnement de disque pour exécuter plusieurs systèmes d'exploitation, allouer un espace système spécifique, séparer des fichiers précieux ou étendre des volumes.

Traditionnellement, de nombreux utilisateurs utilisent l'outil fdisk pour le partitionnement, la principale raison d'utiliser parted lorsque la taille du disque est supérieure à 2 To. Initialement, parted ne prenait en charge que GPT, et à partir d'util-linux 2.23, fdisk a également commencé à prendre en charge GPT.

Dans ce tutoriel, je vais montrer comment utiliser la commande parted pour la gestion de disque sous Linux

Installer Parted sur Linux

Parted est installé par défaut sur la plupart des distributions Linux modernes. S'il n'est pas inclus dans votre distribution, installez parted manuellement.

Installation de parted sur les distributions aromatisées Ubuntu et Debian :

$ sudo apt-get install parted

Installation de parted sur CentOS et RHEL :

$ sudo yum install parted

Lorsque vous exécutez la commande parted sans aucune option, elle imprimera la version du package parted, choisissez le premier lecteur par défaut et attendez à l'invite de commandes supplémentaires. La commande Parted doit être exécutée en tant que root ou en tant qu'utilisateur avec un accès Sudo.

$ sudo parted
GNU Parted 3.2
Using /dev/xvda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)

Tapez quit pour quitter l'invite séparée.

Important : Toutes les modifications sont apportées au disque dès que vous avez tapé votre commande.

Répertorier les partitions de disque

Voyons comment imprimer toutes les informations du disque et ses partitions. Par défaut, parted choisit le premier lecteur. Pour imprimer toutes les partitions de disque, tapez print all .

Remarque :L'avertissement affiché dans la sortie est dû au fait que ce disque dispose d'un espace disque non alloué qui n'a pas encore été provisionné.

ubuntu@linoxide:~$ sudo parted
GNU Parted 3.2
Using /dev/xvda
Welcome to GNU Parted! Type 'help' to view a list of commands.
                                                                       (parted) print all
Model: Xen Virtual Block Device (xvd)
Disk /dev/xvda: 8590MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start   End     Size    Type     File system  Flags
 1      1049kB  8590MB  8589MB  primary  ext4         boot

Warning: Not all of the space available to /dev/xvdb appears to be
used, you can fix the GPT to use all of the space (an extra 25165824
blocks) or continue with the current setting?
                                                                                                                                              Fix/Ignore? Ignore
Model: Xen Virtual Block Device (xvd)
Disk /dev/xvdb: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name     Flags
 1      17.4kB  1024MB  1024MB  ext4         primary
 2      1024MB  2048MB  1023MB  ext4         primary
(parted)

Au lieu de cela, vous pouvez également utiliser une seule commande :

$ sudo parted /dev/xvda print all

Si vous avez plusieurs disques, vous pouvez sélectionner le disque à l'aide de la commande select :

Trouver de l'espace non alloué sur le disque

Pour trouver l'espace non alloué, choisissez votre disque puis lancez print free commande.

Plus tard, nous verrons comment utiliser la commande resizepart pour étendre la partition lorsque vous avez plus d'espace disque non alloué.

Créer une nouvelle partition de disque en utilisant parted

Normalement un système d'exploitation est installé sur le premier disque /dev/sda . Lorsque vous ajoutez un nouveau disque, le système d'exploitation choisira le numéro suivant sous la forme /dev/sdb . Pour illustrer, j'utilise un disque virtuel Xen qui utilise la convention de dénomination comme /dev/xvd .

J'ai ajouté un nouveau disque de 20 Go et vous pouvez le voir comme unrecognised disk label .

La première étape serait de définir votre étiquette de disque requise, les étiquettes de disque prises en charge sont bsd, loop, gpt, mac, msdos, pc98 et sun.

(parted) mklabel msdos

Maintenant, je vais segmenter /dev/xvdb en deux partitions principales avec la première partition avec 10 Go et la seconde avec 5 Go.

Pour créer une nouvelle partition, nous utilisons mkpart commande avec début 0 et fin 10000 :

Pour créer la deuxième partition, exécutez à nouveau la commande mkpart en spécifiant la taille de début et de fin

Remarque :Le concept de "principal" reflète le MBR, GPT s'en fiche mais doit encore ajouter un nom.

Vous pouvez également utiliser mkpart pour créer la partition pour s'étendre sur tout le disque en spécifiant le pourcentage à utiliser (ici 0% à 100%).

Par exemple :

$ sudo parted -a opt /dev/sda mkpart primary ext4 0% 100%

Au lieu d'utiliser la commande d'impression, vous pouvez exécuter des commandes alternatives telles que lsblk , fdisk -l to see partitions created.

$ lsblk
NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
loop0     7:0    0   18M  1 loop /snap/amazon-ssm-agent/1566
loop1     7:1    0 93.8M  1 loop /snap/core/8935
loop2     7:2    0 93.9M  1 loop /snap/core/9066
xvda    202:0    0    8G  0 disk
└─xvda1 202:1    0    8G  0 part /
xvdb    202:16   0   20G  0 disk
├─xvdb1 202:17   0  9.3G  0 part
└─xvdb2 202:18   0  4.7G  0 part
$

Nous pouvons maintenant formater la partition (/dev/xvdb1) avec le système de fichiers ex4, utilisez mkfs.ext4 comme suit :

$ sudo mkfs.ext4 /dev/xvdb1

Redimensionner la partition de disque à l'aide de resizepart

Pour agrandir la partition, elle doit d'abord être redimensionnée. Redimensionner signifie simplement déplacer la position finale d'une partition.

Ici, je vais redimensionner la deuxième partition de /dev/xvdb, en déplaçant la position finale à 20000 :

(parted) resizepart


Remarque :growpart est un autre outil pratique disponible sur Linux pour étendre une partition.

Pour redimensionner chaque système de fichiers à la nouvelle capacité, vous devez exécuter une commande spécifique au système de fichiers. Pour étendre le système de fichiers sous Linux, utilisez resize2fs commande comme suit :

$ sudo resize2fs /dev/xvdb2
resize2fs 1.44.1 (24-Mar-2018)
Resizing the filesystem on /dev/xvdb2 to 2441340 (4k) blocks.
The filesystem on /dev/xvdb2 is now 2441340 (4k) blocks long.

Supprimer la partition d'un disque choisi

Pour supprimer une partition, vous devez connaître le numéro de partition sur le disque. Utilisez print commande in parted pour afficher toutes les partitions et leur numéro correspondant.

Pour supprimer, vous pouvez utiliser la commande rm suivie du numéro de partition. Ici, nous allons supprimer la 2ème partition comme indiqué ci-dessous :

(parted) rm 2

Définir des drapeaux sur les partitions

Parted permet de définir des drapeaux sur la partition. Ne soyez pas surpris que certains drapeaux dépendent des étiquettes de disque. Un drapeau peut être activé ou désactivé. Les indicateurs les plus courants sont boot, lab, swap, raid, LVM, etc.

La commande suivante définit l'indicateur LVM sur la partition 2 :

(séparé) activez 2 LVM

Un autre exemple pratique lorsque nous devons définir une partition de démarrage :

(parted) set 2 boot on

Récupérer la partition de disque Linux

Rescue vient en aide lorsque vous supprimez accidentellement une partition. Une partition perdue peut être récupérée en la localisant entre le début et la fin.

Supprimons la partition 1 sur /dev/xvdb et utilisons la commande rescue pour la récupérer :

(parted) rescue

Définir l'unité par défaut

La commande Unit dans parted permet de définir une unité par défaut pour afficher les capacités et les emplacements.
l'unité prise en charge sont :

KiB- kibibyte 
MiB - mebibyte
GiB - gibibyte
TiB - tebibyte
kB - kilobyte
MB - megabyte
GB - gigabyte
TB - terabyte
% - percentage of the device
cyl - cylinders
chs - cylinders, heads, sectors addressing
compact - Use human-readable representation for output

La commande suivante définit l'unité sur compact :

(parted) unit compact
(parted) print
Model: Xen Virtual Block Device (xvd)
Disk /dev/xvda: 8590MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start   End     Size    Type     File system  Flags
 1      1049kB  8590MB  8589MB  primary  ext4         boot
(parted)

Vous pouvez également imprimer en unités comme suit :

(parted) unit GB print
Model: Xen Virtual Block Device (xvd)
Disk /dev/xvda: 8.59GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start   End     Size    Type     File system  Flags
 1      0.00GB  8.59GB  8.59GB  primary  ext4         boot

(parted)

Conclusion

Au moment de la mise à jour de ce didacticiel, nous utilisons la version 3.1 de parted, et il est bon de vérifier les commandes actuellement prises en charge à l'aide de -h option. Parted écrit directement sur le disque, soyez donc prudent lorsque vous exécutez des commandes.

Lorsque vous apportez des modifications, assurez-vous de choisir le bon lecteur, sinon vous risquez de perdre des données.

Si vous avez des questions ou des réflexions à partager sur ce sujet, veuillez utiliser la section des commentaires ci-dessous.


Linux
  1. Partitionner un disque sous Linux avec GNU Parted

  2. Comment partitionner un disque sous Linux

  3. Commande Fdisk sous Linux (Gérer les partitions)

  4. Comment gérer une partition d'échange sous Linux

  5. Comment supprimer une partition de disque à l'aide de la commande Parted

Créer et gérer des partitions de disque avec Parted sous Linux

Comment créer et gérer des partitions de disque avec Fdisk sous Linux

Comment créer et gérer des partitions Linux à l'aide de Parted

Partitionnement à l'aide des commandes parted et fdisk

Comment chiffrer une partition sous Linux

Comprendre l'utilitaire séparé Linux