Btrfs

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Type Système de fichiers Copy-on-Write
Origine Oracle, Red Hat (noyau Linux)
Points forts Snapshots, sommes de contrôle, compression native, sous-volumes
Outils btrfs, mkfs.btrfs, btrfs-convert
Voir aussi Ext4 · ZFS · Fstab

Btrfs (B-tree FS) est un système de fichiers Copy-on-Write pour Linux, développé notamment par Oracle et Red Hat, longtemps présenté comme un successeur possible d'Ext4. Son intérêt tient moins aux performances brutes qu'à la richesse de ses fonctionnalités d'administration.

Principales caractéristiques :

  • Création de snapshots
  • Vérification de l'intégrité des données par sommes de contrôle
  • Compression native (lzo, zlib)
  • Sauvegarde incrémentale intégrée au système de fichiers
  • Défragmentation à chaud
  • Gestion de sous-volumes

Btrfs est particulièrement adapté à la gestion d'un très grand nombre de petits fichiers, avec un gain en place et en performance par rapport à ext3/ext4.

Installation et création

yum install btrfs-progs.x86_64
mkfs.btrfs /dev/rootvg/varlv

Exemple d'entrée dans /etc/fstab :

/dev/rootvg/varlv  /var  btrfs  defaults,compress-force=zlib,autodefrag,noatime,nodiratime,nodev,nosuid  1  2

Options de compression disponibles : compress=lzo, compress=zlib.

Migration depuis ext4

umount /dev/test/ext4
btrfs-convert /dev/test/ext4

Administration des sous-volumes

btrfs subvolume create <nom-du-sous-volume>
btrfs subvolume delete <nom-du-sous-volume>

Snapshots

btrfs subvolume snapshot <sous-volume> <snapshot>

Pour restaurer, effectuer un mv du snapshot vers l'emplacement d'origine.

Snapshots automatiques (fréquence en minutes, nombre de snapshots conservés en rotation) :

btrfs autosnap enable -m 30 -c 10 <sous-volume>
btrfs au fslimit -n <pourcentage-espace-occupe> <sous-volume>

Défragmentation

btrfs device scan
btrfs filesystem defragment ~/stuff

Redimensionnement

btrfs filesystem resize +2g /mybtrfs1
btrfs filesystem resize -4g /mybtrfs2

Gestion des erreurs

En cas de problème sur la taille des métadonnées :

btrfs filesystem df /mntpoint
btrfs balance start /mntpoint

Voir aussi

  • Ext4 — système de fichiers journalisé classique sous Linux
  • ZFS — autre système de fichiers avancé avec Copy-on-Write
  • Fstab — déclaration des points de montage