wiki/HowtoBTRFS.md

134 lines
3.2 KiB
Markdown
Raw Normal View History

2017-04-24 10:20:14 +02:00
---
title: Howto BTRFS
categories: tips system
...
2016-12-29 11:25:39 +01:00
2017-04-24 10:20:14 +02:00
* site officiel : <https://btrfs.wiki.kernel.org/index.php/Main_Page>
2016-12-29 11:25:39 +01:00
2017-04-24 10:20:14 +02:00
[Btrfs (B-tree file system, prononcé ButterFS)](https://btrfs.wiki.kernel.org/index.php/Main_Page) est un système de fichiers des années 2010 fondé sur le Copy-On-Write (copie sur écriture en français) sous licence GNU GPL, développé conjointement par Oracle, Red Hat, Fujitsu, Intel, SUSE, STRATO AG (en) et autres. En 2012, alors qu'il n'était pas encore considéré comme tout-à-fait stable, un effort intense de développement et de test est fourni par la communauté afin de faire de Btrfs le successeur de ext4 et ext3, systèmes de fichiers habituels des distributions Linux. OpenSuse 13.2 propose dès son lancement Btrfs par défaut pour la partition racine afin d'assurer la sécurité et laisse le choix entre ext4 et XFS (plus rapide) pour /home.
2016-12-29 11:25:39 +01:00
Btrfs offre les fonctionnalités suivantes absentes d'autres systèmes de fichiers :
- Instantané (snapshots)
- somme de contrôle
Ces caractéristiques sont importantes pour les systèmes Linux, serveurs comme postes clients, car les tailles de stockage comme les configurations tendent à augmenter et à se complexifier.
2017-04-24 10:20:14 +02:00
## Installation
2016-12-29 11:25:39 +01:00
~~~
2017-01-14 00:06:38 +01:00
# apt install btrfs-tools
2016-12-29 11:25:39 +01:00
~~~
2017-04-24 10:20:14 +02:00
## Utilisation de base
Formater une partition
2017-01-03 11:20:35 +01:00
2016-12-29 11:25:39 +01:00
~~~
mkfs.btrfs /dev/sda9
~~~
2017-04-24 10:20:14 +02:00
Montage persistent
2017-01-03 11:20:35 +01:00
2016-12-29 11:25:39 +01:00
~~~
echo "/dev/sda9 /backup btrfs defaults 0 0" >> /etc/fstab
mount /backup
~~~
2017-04-24 10:20:14 +02:00
Création de subvolumes
2017-01-03 11:20:35 +01:00
2016-12-29 11:25:39 +01:00
~~~
btrfs subvolume create /backup/aaa
btrfs subvolume create /backup/bbb
~~~
2017-04-24 10:20:14 +02:00
Liste des subvolumes disponibles
2017-01-03 11:20:35 +01:00
2016-12-29 11:25:39 +01:00
~~~
btrfs subvolume list /backup/
~~~
2017-04-24 10:20:14 +02:00
Créer un snapshot
2017-01-03 11:20:35 +01:00
2016-12-29 11:25:39 +01:00
~~~
btrfs subvolume snapshot /backup/aaa /backup/bbb/snapshot1
~~~
2017-04-24 10:20:14 +02:00
Supprimer un subvolume (et snapshot)
2017-01-03 11:20:35 +01:00
2016-12-29 11:25:39 +01:00
~~~
btrfs subvolume delete /bbb/bbb/snapshot1
~~~
2017-04-24 10:20:14 +02:00
Lister les propriétés d'un subvolume
~~~
btrfs property list -ts /path/to/subvolume
~~~
Passer un subvolume en RW
~~~
btrfs property set -ts /path/to/subvolume ro false
~~~
Passer un subvolume en RO
~~~
btrfs property set -ts /path/to/subvolume ro true
~~~
### Manipulations d'un subvolume
Pour déplacer un subvolume, il faut créer un snapshot en read-only du subvolume que l'on souhaite déplacer/renommer puis supprimer l'original.
~~~
btrfs sub snap -r /path/to/subvolume /path/to/snapshot
btrfs subvolume delete /path/to/subvolume
~~~
On passera ensuite le volume en read/write
~~~
btrfs property set -ts /path/to/snapshot ro false
~~~
2017-04-24 10:40:18 +02:00
### Envoyer un subvolume
Pour transférer un subvolume vers un autre serveur, il faut créer un snapshot en read-only du subvolume en question.
~~~
btrfs sub snap -r /path/to/subvolume /path/to/snapshot-RO
~~~
On peut ensuite envoyer le volume via SSH
~~~
btrfs send /path/to/snapshot-RO | ssh root@192.0.2.1 "btrfs receive /path/to/remote-snapshot"
~~~
2017-04-24 10:20:14 +02:00
## Maintenance
Vérifier l'intégrité d'un subvolume
2016-12-29 11:25:39 +01:00
~~~
btrfs scrub start /backup/
btrfs scrub status /backup/
~~~
2017-04-24 10:20:14 +02:00
Vérification plus poussé sur une partition non montée
2017-01-03 11:20:35 +01:00
2016-12-29 11:25:39 +01:00
~~~
btrfs check -p /dev/sda9
~~~
Voir si la partition a présenté des erreurs
2017-01-03 11:20:35 +01:00
2016-12-29 11:25:39 +01:00
~~~
btrfs dev stats /backup
~~~
2017-04-24 10:20:14 +02:00
## Liens
* [Wikipédia BTRFS](https://fr.wikipedia.org/wiki/Btrfs)
* [Debian BTRFS](https://wiki.debian.org/Btrfs)