Redimensionner un système de fichiers BTRFS

Redimensionner un système de fichiers BTRFS

Le système de fichiers BTRFS peut être redimensionné en ligne (lorsque le système de fichiers est monté), mais si vous souhaitez redimensionner une partition qui est ajoutée à un système de fichiers BTRFS, vous devrez le faire hors ligne (lorsque le système de fichiers n'est pas monté). Vous pouvez développer / étendre ou rétrécir un système de fichiers BTRFS en ligne et développer / développer ou rétrécir une partition BTRFS hors ligne.

Le système de fichiers BTRFS est un système de fichiers multi-appareils. Si vous avez plusieurs appareils ajoutés à votre système de fichiers BTRFS, vous devez redimensionner des périphériques de stockage spécifiques joints au système de fichiers pour redimensionner le système de fichiers lui-même. Sinon, vous pouvez redimensionner directement le système de fichiers (comme par défaut, le seul périphérique de stockage connecté sera sélectionné lorsque vous effectuez l'opération de redimensionnement).

Dans cet article, je vais vous montrer comment se développer / développer et rétrécir un système de fichiers BTRFS en ligne et une partition BTRFS hors ligne. Je vais également montrer comment redimensionner un système de fichiers BTRFS qui a plusieurs appareils qui y sont attachés. Alors, commençons.

Conditions préalables

Pour essayer les exemples de cet article:

  • Vous devez avoir le système de fichiers BTRFS installé sur votre ordinateur.
  • Vous devez avoir un disque dur ou un SSD avec au moins 2 partitions gratuites (de toute taille).

J'ai un disque dur de 20 Go SDB Sur ma machine Ubuntu. J'ai créé 2 partitions, SDB1 et SDB2, Sur ce disque dur. Les partitions SDB1 et SDB2 une taille de 10 Go.

$ sudo lsblk -e7


Votre disque dur ou SSD peut avoir un nom différent de la mienne, les partitions aussi. Alors, assurez-vous de les remplacer par le vôtre à partir de maintenant.

Si vous avez besoin d'aide pour installer le système de fichiers BTRFS sur Ubuntu, consultez mon article Installez et utilisez des btrfs sur Ubuntu 20.04 LTS.

Si vous avez besoin d'aide pour installer le système de fichiers BTRFS sur Fedora, consultez mon article Installer et utiliser BTRFS sur Fedora 33.

Création d'un système de fichiers BTRFS

Pour expérimenter la redimensionnement d'un système de fichiers BTRFS, nous devons créer un système de fichiers BTRFS. Alors, créons des données de système de fichiers BTRFS sur la partition SDB1.

Pour créer un système de fichiers BTRFS avec l'étiquette données sur le sdb1 partition, exécutez la commande suivante:

$ sudo mkfs.BTRFS -L DATA / DEV / SDB1

Créer un répertoire /données avec la commande suivante:

$ sudo mkdir -v / data


Monter la partition BTRFS sdb1 (que vous avez créé plus tôt) sur le /données Répertoire avec la commande suivante:

$ sudo mont / dev / sdb1 / data


Comme vous pouvez le voir, le système de fichiers BTRFS données monté sur le /données Le répertoire n'a qu'un seul périphérique de stockage (sdb1) ajouté à lui, et l'ID du périphérique de stockage est 1.

$ sudo btrfs Utilisation / données du périphérique


La taille du système de fichiers est 10 Go (taille de l'appareil). Hors de 10 Go de l'espace disque, 9.48 Go N'est pas utilisé (Non alloué), 8 Mb est alloué pour le stockage des données (Données, célibataire), 512 MB est alloué pour les métadonnées du système de fichiers (Métadonnées, dup), et 16 Mb est alloué aux données du système (Système, dup).

L'espace disque entier de la partition sdb1 est sur le pool de systèmes de fichiers BTRFS (peut être utilisé). Ainsi, 0 octet est en dehors du pool de systèmes de fichiers ( Dispositif).


Le système de fichiers BTRFS monté sur le /données Le répertoire est 10 Go en taille.

$ df -h / données

Redimensionner un système de fichiers BTRFS

Vous pouvez redimensionner le système de fichiers BTRFS données que vous avez créé plus tôt et l'avez monté sur le /données Répertoire en ligne (quand il est monté).

Par exemple, pour réduire le système de fichiers BTRFS monté sur le /données Répertoire, disons, par 1 Go, exécutez la commande suivante:

$ sudo btrfs Système de fichiers redimensionner -1g / data

Comme le montre l'illustration, le système de fichiers BTRFS a supprimé 1 Go d'espace disque du pool de systèmes de fichiers. Vous pouvez utiliser l'espace Slack (Dispositif) pour développer / étendre le système de fichiers BTRFS plus tard.

$ sudo btrfs Utilisation / données du périphérique


Sur la base de l'image ci-dessous, vous pouvez voir que le système de fichiers BRTFS monté sur le répertoire / données est 9 Go en taille. C'était auparavant 10 Go.

$ df -h / données


Pour développer / étendre le système de fichiers BTRFS monté sur le /données Répertoire, disons, par 256 Mo, exécutez la commande suivante:

Système de fichiers de fichiers de fichiers de fichiers BTRFS $ + 256m / données


Vous pouvez voir sur l'image ci-dessous que 256 Mo d'espace disque sont supprimés du Dispositif et ajouté au pool de systèmes de fichiers BTRFS.

$ sudo btrfs Utilisation / données du périphérique


Comme vous pouvez le voir, le système de fichiers BTRFS est monté sur le /données Le répertoire est maintenant 256 Mo plus grand qu'avant.

$ df -h / données


Pour développer / étendre le système de fichiers BTRFS monté sur le /données Répertoire de l'espace disque maximal disponible (en Dispositif), exécutez la commande suivante:

$ sudo btrfs Système de fichiers redimensionner max / data


L'illustration ci-dessous montre que tout l'espace disque disponible de la Dispositif est ajouté au pool de systèmes de fichiers BTRFS. Alors le Dispositif est maintenant de 0 octet de taille.

$ sudo btrfs Utilisation / données du périphérique


Le système de fichiers BTRFS monté sur le /données Le répertoire est maintenant 10 Go en taille.

$ df -h / données

Redimensionner une partition BTRFS

Vous pouvez redimensionner une partition qui est ajoutée à un système de fichiers BTRFS hors ligne (lorsque le système de fichiers BTRFS n'est pas monté).

AVERTISSEMENT: Soyez prudent lorsque vous redimensionnez une partition qui est ajoutée à un système de fichiers BTRFS car vous pouvez perdre des données importantes de la partition. Prenez toujours une sauvegarde avant de redimensionner.

Comme vous pouvez le voir, le système de fichiers BTRFS que nous avons créé dans cet article a une partition de disque (sdb1) ajouté à lui. La partition est de 10 Go de taille.

$ sudo btrfs Utilisation / données du périphérique


Comme indiqué dans l'image ci-dessous, la taille de la partition SDB1 est de 10 Go.

$ df -h / données


Avant de redimensionner la partition, décalez le système de fichiers BTRFS du /données Répertoire avec la commande suivante:

$ sudo umount / data


Le nom du disque qui contient la partition SDB1 est SDB.

$ sudo lsblk -e7


Ouvrir le disque SDB avec un programme de partitionnement de disque comme fdisk comme suit:

$ sudo fdisk / dev / sdb

Tapez p et presser <Entrer> Pour répertorier toutes les partitions existantes du périphérique de stockage SDB.

Comme vous pouvez le voir ci-dessous, j'ai deux partitions, SDB1 et SDB2, sur le disque SDB. Redimensions la première partition (sdb1).


Pour redimensionner une partition, vous devez supprimer la partition, puis l'ajouter à nouveau. Donc, vous devez vous souvenir du numéro de secteur de démarrage de la partition.

Par exemple, le numéro de secteur de démarrage de la première partition, sdb1, est 2048, Comme vous pouvez le voir dans la capture d'écran ci-dessous.


Pour supprimer une partition, tapez d et presser <Entrer>.


Pour supprimer la première partition (sdb1), tapez 1, et presser <Entrer>. La partition sdb1 devrais être retiré.


Pour recréer la même partition, tapez n et presser <Entrer>.


Tapez 1 Comme le numéro de partition et appuyez sur <Entrer>.


Tapez 2048 Comme le premier numéro de secteur et appuyez sur <Entrer>.


Je veux démontrer le processus de rétrécissement de la partition. Donc, je vais créer une partition plus petite qu'avant.

Tapez +9g (pour créer une partition de 9 Go) et appuyez sur <Entrer>.


Nous voudrions garder la signature de partition, alors tapez N et presser <Entrer>.


La partition doit être créée.


Pour enregistrer les modifications, tapez w et presser <Entrer>.


Maintenant, montez le système de fichiers BTRFS sur le /données Répertoire comme suit:

$ sudo mont / dev / sdb1 / data


Redimensionner le système de fichiers BTRFS qui est monté sur le /données Répertoire pour les modifications pour prendre effet.

$ sudo btrfs Système de fichiers redimensionner max / data


Vous pouvez voir sur l'image ci-dessous que la taille du sdb1 La partition ajoutée au système de fichiers BTRFS est réduite à 9 Go (à partir de 10 Go).


Vous pouvez confirmer le changement de taille de partition avec le df Commande aussi.

$ df -h / données


Nous pouvons développer / étendre une partition qui est ajoutée au système de fichiers BTRFS de la même manière. Voyons comment faire ça.

Démontez le système de fichiers BTRFS qui est monté sur le /données Répertoire comme suit:

$ sudo umount / data


Ouvrir le disque SDB avec un programme de partitionnement de disque comme fdisk comme suit:

$ sudo fdisk / dev / sdb


Maintenant, la première partition sdb1 est 9 Go en taille.


Le numéro de secteur de démarrage de la première partition, SDB1, est 2048.


Pour supprimer la première partition, tapez d et presser <Entrer>.


Tapez 1 Comme le numéro de partition et appuyez sur <Entrer>. La première partition sdb1 devrais être retiré.


Pour recréer la première partition sdb1, Tapez N et presse <Entrer>.


Tapez 1 Comme le numéro de partition et appuyez sur <Entrer>.


Tapez 2048 Comme le premier numéro de secteur et appuyez sur <Entrer>.


J'augmenterai la taille de partition de 500 Mo. Ainsi, la nouvelle taille de partition devrait être 9.5 Go.

Tapez +9.5G et presse .


Comme nous voudrions conserver la signature du système de fichiers, tapons N et presser <Entrer>.


La première partition, sdb1, devrait être recréé, et sa taille a augmenté.


Pour enregistrer les modifications, tapez w et presser <Entrer>.


Monter la partition BTRFS sdb1 au /données Répertoire comme suit:

$ sudo mont / dev / sdb1 / data


Redimensionner le système de fichiers BTRFS qui est monté sur le /données Répertoire pour les modifications pour prendre effet.

$ sudo btrfs Système de fichiers redimensionner max / data


Comme vous pouvez le voir, la partition (sdb1) La taille a augmenté à 9.5 Go (à partir de 9 Go).

$ sudo btrfs Utilisation / données du périphérique


Vous pouvez confirmer la taille de partition avec le df Commande aussi.

$ df -h / données

Redimensionner un système de fichiers BTRFS multi-appareils

BTRFS est un système de fichiers multi-appareils. Cela signifie que vous pouvez ajouter plusieurs périphériques de stockage ou partitions à un seul système de fichiers BTRFS. Dans cette section, je vais vous montrer comment redimensionner un système de fichiers BTRFS qui a plusieurs périphériques de stockage ou partitions qui y sont ajoutés. Alors, commençons.

À l'heure actuelle, le système de fichiers BTRFS qui est monté sur le /données Le répertoire est 10 Go en taille.

$ df -h / données


La partition sdb1 (qui a le ID 1) est la seule partition ajoutée au système de fichiers BTRFS.

$ sudo btrfs Utilisation / données du périphérique


Vous pouvez ajouter une autre partition (disons, sdb2) au système de fichiers btrfs, qui est monté sur le /données Répertoire avec la commande suivante:

$ sudo btrfs ajout / dev / sdb2 / data


La partition nouvellement ajoutée, sdb2, du système de fichiers BTRFS, qui est monté sur le /données Le répertoire a l'ID 2, comme vous pouvez le voir dans la capture d'écran ci-dessous.

$ sudo btrfs Utilisation / données du périphérique


Comme vous pouvez le voir, la taille du système de fichiers BTRFS, qui est montée sur le /données la partition, a augmenté. L'espace disque du sdb2 La partition est ajoutée au système de fichiers BTRFS.

$ df -h / données


Pour redimensionner un système de fichiers BTRFS qui a plusieurs périphériques de stockage ajoutés, vous devez spécifier la partition du système de fichiers BTRFS que vous souhaitez redimensionner. Pour spécifier la partition pour redimensionner un système de fichiers BTRFS, vous devez utiliser l'ID de partition.

$ sudo btrfs Utilisation / données du périphérique


Par exemple, pour rétrécir la partition avec le ID 1 par 2 Go du système de fichiers BTRFS monté sur le /données Répertoire, vous pouvez exécuter la commande suivante:

$ sudo btrfs Système de fichiers redimensionner 1: -2g / data


Le 2 Go de l'espace disque est retiré de la partition sdb1 du système de fichiers BTRFS monté sur le /données annuaire.

$ sudo btrfs Utilisation / données du périphérique


Comme vous pouvez le voir dans l'illustration, le système de fichiers BTRFS est redimensionné (rétréci) à 18 Go à partir de 20 Go.

$ df -h / données


De la même manière, vous pouvez réduire la partition du système de fichiers BTRFS sdb2 en utilisant l'ID de partition 2.

$ sudo btrfs Utilisation / données du périphérique


Pour rétrécir la partition avec le ID 2 par 1 Go du système de fichiers BTRFS monté sur le /données Répertoire, vous pouvez exécuter la commande suivante:

$ sudo btrfs Système de fichiers redimensionner 2: -1g / data


Tu peux voir ça 1 Go de l'espace disque est retiré de la partition sdb2 du système de fichiers BTRFS monté sur le /données annuaire.

$ sudo btrfs Utilisation / données du périphérique


Le système de fichiers BTRFS est redimensionné (rétréci) à 17 Go à partir de 18 Go, comme indiqué dans l'image ci-dessous.

$ df -h / données


Pour étendre la partition avec le ID 1 par 1 Go du système de fichiers BTRFS monté sur le /données Répertoire, vous pouvez exécuter la commande suivante:

$ sudo btrfs Système de fichiers redimensionner 1: + 1g / data


Comme tu peux le voir, 1 Go de l'espace disque de la partition sdb1 est ajouté au pool de systèmes de fichiers BTRFS.

$ sudo btrfs Utilisation / données du périphérique


Maintenant, le système de fichiers BTRFS est redimensionné (étendu) à 18 Go de 17 Go.

$ df -h / données


Pour étendre la partition avec le ID 2 par 1 Go du système de fichiers BTRFS monté sur le répertoire / de données, vous pouvez exécuter la commande suivante:

$ sudo btrfs Système de fichiers Redimensip 2: + 1g / data


Tu peux voir ça 1 Go de l'espace disque de la partition sdb2 est ajouté au pool de systèmes de fichiers BTRFS.

$ sudo btrfs Utilisation / données du périphérique


Le système de fichiers BTRFS est maintenant redimensionné (étendu) à 19 Go à partir de 18 Go.

$ df -h / données

Conclusion

Dans cet article, je vous ai montré comment redimensionner un système de fichiers BTRFS et les partitions ajoutées à un système de fichiers BTRFS. Ainsi que la façon dont vous pouvez rétrécir ou développer / étendre un système de fichiers BTRFS et les partitions ajoutées à un système de fichiers BTRFS.