btrfs: énormes métadonnées allouées


14

J'ai un disque SSD de 256 Go sur lequel j'ai converti mon FS racine ext4 en btrfs. J'ai effacé le sous-volume de sauvegarde ext4, activé la compression et défragmenté de manière récursive pour l'activer sur tous les fichiers.

btrfs fi df / a une sortie qui m'inquiète cependant:

Data: total=148.00GB, used=106.11GB
System: total=32.00MB, used=16.00KB
Metadata: total=65.00GB, used=2.04GB

Si je comprends bien la sortie, 65 Go (1/4 de mon disque!) Sont réservés aux métadonnées et non disponibles pour le stockage de fichiers. Si cela est correct, ce serait un énorme gaspillage de mon espace disque. Est-ce que je comprends bien? La partie de mon disque allouée aux métadonnées peut-elle être redimensionnée?

Réponses:


16

Tout d’abord, assurez-vous que votre noyau et l’espace utilisateur BTRFS sont à jour.

Selon la FAQ BTRFS , vous ne pouvez pas redimensionner la taille du bloc de métadonnées. Vous pouvez toutefois essayer d’exécuter btrfs balance start -m <point de montage>, ce qui réallouera les métadonnées sur l’ensemble du disque et, éventuellement, libérera de l’espace non alloué.

Si cela ne fonctionne pas, vous devrez peut-être sauvegarder vos données et recréer le système de fichiers. (Jetez un coup d'oeil à ceci pour plus d'informations.)


Merci d'avoir répondu. Le noyau est 3.11.2, btrfs-tools est v0.20-rc1, donc je ne pense pas être obsolète ici. J'ai essayé d'exécuter une balance, mais j'ai ensuite rencontré le bogue suivant: spinics.net/lists/linux-btrfs/msg26977.html et je n'ai pas envie de compiler un noyau plus récent juste pour cela. : P Ce que je me demande, c'est si ces 65 Go sont le bloc de métadonnées qui ne peut pas être redimensionné, ou si ce terme fait référence à autre chose. Sinon, je ne comprends vraiment pas comment le bloc de métadonnées a été créé avec cette taille.
— Gnurou

Malheureusement, je ne suis qu'un utilisateur de btrfs et non un expert, mon aide est donc limitée. Dans tous les cas, il est possible qu'il y ait une faille dans le processus de conversion depuis ext4.
— hololeap

11
Ainsi, le correctif nécessaire a été intégré au noyau stable et j’ai essayé ce que vous aviez suggéré. L'équilibrage a en effet réduit la quantité de zone réservée pour les méta-données à 3 Go, et l'espace revendiqué apparaît maintenant sous la forme d'espace libre dans 'df'. Notez qu'il n'est pas nécessaire de rééquilibrer l'intégralité du disque, vous pouvez utiliser btrfs balance start -m <point de montage> pour rééquilibrer uniquement les métadonnées, ce qui est beaucoup plus rapide. Merci pour la réponse perspicace!
— Gnurou

Heureux d'avoir pu aider!
— hololeap

"vous ne pouvez pas redimensionner la taille du bloc de métadonnées". Cela n’est pas pertinent pour cette question - la FAQ parle de la taille de l’unité d’allocation, pas de la quantité d’espace alloué pour les métadonnées.
— Vladimir Panteleev

1

Cela diminuera la taille des métadonnées.

sudo btrfs balance start -v -musage=0 /path
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.