Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| btrfs [Le 06/01/2021, 15:34] – [Les sous-volumes] 89.87.22.0 | btrfs [Le 14/04/2026, 07:11] (Version actuelle) – màj liens internes krodelabestiole | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| {{tag> | {{tag> | ||
| - | ---- | ||
| - | ====== Le système de fichiers | + | ====== Le système de fichiers |
| - | Btrfs ([[https:// | + | **[[wpfr> |
| - | Officiellement, | + | |
| Les fonctionnalités principales sont les suivantes : | Les fonctionnalités principales sont les suivantes : | ||
| Ligne 18: | Ligne 16: | ||
| * conscient des SSD (stockage flash) (TRIM / Élimination de la notification blocs libres pour réutilisation) et optimisations (par exemple en évitant des optimisations de recherche inutiles, l' | * conscient des SSD (stockage flash) (TRIM / Élimination de la notification blocs libres pour réutilisation) et optimisations (par exemple en évitant des optimisations de recherche inutiles, l' | ||
| | | ||
| - | |||
| ===== Installation ===== | ===== Installation ===== | ||
| - | Il est conseillé de faire un essai sur une partition de test ! Vous pouvez par exemple formater une clé USB vide et vous familiariser avec les commandes de BTRFS avant de l' | ||
| - | Si vous choisissez | + | Il est conseillé |
| - | Pour pouvoir | + | |
| - | Si c'est trop virtuel, essayer | + | Si vous choisissez de déplacer des données sur votre partition **Btrfs**, commencez par effectuer une [[: |
| + | Pour pouvoir formater une partition en **Btrfs** [[: | ||
| <code bash> | <code bash> | ||
| =====Utilisation===== | =====Utilisation===== | ||
| + | |||
| ==== Créer une nouvelle partition ou formater une partition existante ==== | ==== Créer une nouvelle partition ou formater une partition existante ==== | ||
| - | Utilisez simplement le [[gnome-disk-utility|gestionnaire de disque d' | ||
| - | < | ||
| - | //où sdaX est la partition que vous souhaitez formater.// | ||
| - | ==== Convertir une partition ext4 vers BTRFS ==== | + | Utilisez simplement le [[: |
| + | < | ||
| + | où '' | ||
| + | |||
| + | ==== Utiliser la partition existante ==== | ||
| + | |||
| + | Pour utiliser la partition, il est nécessaire de la [[: | ||
| + | |||
| + | Un exemple en ligne de commande | ||
| + | <code bash> | ||
| + | sudo mount -v /dev/sdaN / | ||
| + | |||
| + | ==== Convertir une partition ext4 vers Btrfs ==== | ||
| Utiliser la commande : | Utiliser la commande : | ||
| - | < | + | < |
| - | <note important> | + | |
| + | ==== Convertir une structure Btrfs vers un autre système de fichiers ==== | ||
| + | |||
| + | Utiliser la commande : | ||
| + | < | ||
| + | L' | ||
| + | <code bash> | ||
| + | sudo btrfs restore / | ||
| + | time sudo btrfs restore /dev/sda28 -vvv -s -S -x -m -i -c --path-regex '^/(|Rugby2019(|/ | ||
| ===== Utilisation des fonctions avancées ===== | ===== Utilisation des fonctions avancées ===== | ||
| - | Nous allons maintenant voir quelques unes des fonctions de BTRFS qui le rendent intéressant par rapport à des systèmes de fichiers comme EXT4. | + | Nous allons maintenant voir quelques unes des fonctions de **Btrfs** |
| ==== Les sous-volumes ==== | ==== Les sous-volumes ==== | ||
| + | |||
| Un sous-volume est une branche du système de fichiers qui se comporte comme un sous-système de fichiers. il apparaît comme un répertoire. | Un sous-volume est une branche du système de fichiers qui se comporte comme un sous-système de fichiers. il apparaît comme un répertoire. | ||
| === Créer un sous-volume === | === Créer un sous-volume === | ||
| + | |||
| < | < | ||
| - | pour créer un sous-volume intitulé //test// (en supposant que vous êtes quelque part dans votre système de fichiers | + | pour créer un sous-volume intitulé //test// (en supposant que vous êtes quelque part dans votre [[:système de fichiers]] **Btrfs**) |
| === Supprimer un sous-volume === | === Supprimer un sous-volume === | ||
| + | |||
| < | < | ||
| - | |||
| ==== Les snapshots ==== | ==== Les snapshots ==== | ||
| - | Un snapshot, ou [[points_de_restauration_pour_un_systeme_linux|point de restauration]], | ||
| - | Une fois créé, un snapshot se comporte comme un dossier ordinaire de votre système de fichiers : vous pouvez le copier, le déplacer vers un support externe, le renommer... | + | Un // |
| + | |||
| + | Une fois créé, un //snapshot// se comporte comme un dossier ordinaire de votre système de fichiers : vous pouvez le copier, le déplacer vers un support externe, le renommer... | ||
| === Prendre un snapshot === | === Prendre un snapshot === | ||
| - | Pour créer un snapshot du système de fichiers entier en ligne de commande : | + | Pour créer un //snapshot// du système de fichiers entier en ligne de commande : |
| < | < | ||
| Cette commande va prendre un snaphsot du sous-volume (répertoire) test. Cette version figée de votre répertoire sera accessible à travers le répertoire " | Cette commande va prendre un snaphsot du sous-volume (répertoire) test. Cette version figée de votre répertoire sera accessible à travers le répertoire " | ||
| - | Le logiciel [[timeshift|timeshift]] permet aussi de prendre un **point de restauration** (// | + | Le logiciel [[:Timeshift]] permet aussi de prendre un **point de restauration** (// |
| - | ===Restaurer un snapshot === | + | === Restaurer un snapshot === |
| - | Utilisez simplement la commande " | + | |
| + | Utilisez simplement la commande " | ||
| + | |||
| + | ==== Compression ==== | ||
| - | ====La compression==== | ||
| Ceci permet de compresser les données lorsqu' | Ceci permet de compresser les données lorsqu' | ||
| * zlib (par défaut) | * zlib (par défaut) | ||
| * lzo : plus rapide et prend moins de charge CPU, mais compresse moins | * lzo : plus rapide et prend moins de charge CPU, mais compresse moins | ||
| - | Pour ceci, il faut [[: | + | Pour ceci, il faut [[: |
| - | < | + | < |
| proc /proc proc nodev, | proc /proc proc nodev, | ||
| # / was on /dev/sda2 during installation | # / was on /dev/sda2 during installation | ||
| Ligne 87: | Ligne 108: | ||
| Pour compresser en lzo, tapez < | Pour compresser en lzo, tapez < | ||
| - | ====Le RAID de disques==== | + | ===== RAID ===== |
| - | === Voir le type de raid actuel === | + | |
| - | Commande pour visualiser le raid en cours | + | |
| - | < | + | |
| - | Data, RAID5: total=168.00GiB, | + | |
| - | System, RAID5: total=64.00MiB, | + | |
| - | Metadata, RAID5: total=2.00GiB, used=319.66MiB | + | |
| - | GlobalReserve, | + | |
| - | === Créer le raid de disques === | + | FIXME il n'y a pas de disque |
| - | Création d'un raid 1 avec un disque | + | Notons que le mot **disques** dans ce chapitre fait référence au disque physique lui-même ou à une [[: |
| - | < | + | |
| - | === Vérifier le raid de disques | + | ==== Types de RAID ==== |
| - | Voir la synthèse de système RAID BTRFS : | + | |
| - | <code bash> | + | |
| - | Overall: | + | |
| - | Device size: | + | |
| - | Device allocated: | + | |
| - | Device unallocated: | + | |
| - | </code> ou <code bash>btrfs fi usage volume_btrfs< | + | * **single** : Une seule copie des informations. 100% de l’espace disque est utilisé. Le second disque ne sera utilisé que lorsque le premier est rempli. Le troisième que lorsque les deux premiers seront remplis. |
| + | * **dup** : Chaque disque contient les données en double. | ||
| + | * **RAID0** : Une seule copie des informations. 100% de l’espace disque est utilisé. Tous les disques seront utilisés simultanément. | ||
| + | * **RAID1** : Copie en double. 50% de l’espace disque est utilisé. Un disque peut tomber en panne. | ||
| + | * **RAID1C3** : Copie en triple. 33% de l’espace disque est utilisé. deux disques peuvent tomber en panne. | ||
| + | * **RAID1C4** : Copie en quadruple. 25% de l’espace disque est utilisé. trois disques peuvent tomber en panne. | ||
| + | * **RAID10** : Mélange de RAID1 et RAID0. | ||
| + | * **RAID5** : Une copie et une copie de parité distribuée. Un disque peut tomber en panne. L’espace disque utilisable est 100(n-1)/n %. //n// étant le nombre de disques. | ||
| + | * **RAID6** : Une copie et deux copies de parité distribuées. deux disques peuvent tomber en panne. L’espace disque utilisable est 100(n-2)/n %. //n// étant le nombre de disques. | ||
| + | Pour les explications détaillées, | ||
| - | Pour vérifier | + | Notons que si les disques ne possèdent pas la même taille, |
| - | <code bash> | + | |
| - | [/ | + | |
| - | [/ | + | |
| - | [/ | + | |
| - | [/ | + | |
| - | [/dev/sdc].flush_io_errs | + | |
| - | </ | + | ==== Créer le tableau RAID ==== |
| + | |||
| + | Quelques exemples: | ||
| + | |||
| + | Création d'un RAID 1 avec un disque de spare | ||
| + | <code bash> | ||
| + | Création d'un RAID 5 en utilisant des partitions | ||
| + | <code bash> | ||
| + | |||
| + | <note important> | ||
| + | |||
| + | Une conséquence importante: Au montage, il est possible de ne pas indiquer un disque qui contient ces données. Le message d' | ||
| + | |||
| + | ==== Monter un RAID pour utilisation ==== | ||
| + | |||
| + | Voir le début du document expliquant comment monter une partition. il est possible d' | ||
| + | |||
| + | Si les noms des éléments constituants le RAID sont oubliés et qu'il n'y a qu'un seul RAID **Btrfs** de défini, il est possible de lancer cette commande | ||
| + | <code bash> | ||
| + | Mounted /dev/sda28 at / | ||
| + | |||
| + | ==== Voir le type de RAID actuel ==== | ||
| + | |||
| + | Commande pour visualiser le RAID en cours | ||
| + | < | ||
| + | |||
| + | FIXME ? | ||
| + | <code bash> | ||
| + | |||
| + | ==== Vérifier le RAID de disques ==== | ||
| + | |||
| + | Voir la synthèse de système RAID **Btrfs** : | ||
| + | <code bash> | ||
| + | ou <code bash> | ||
| + | |||
| + | FIXME ? | ||
| + | <code bash> | ||
| + | |||
| + | Pour vérifier l' | ||
| + | <code bash> | ||
| + | |||
| + | FIXME ? | ||
| + | <code bash> | ||
| + | ou | ||
| + | <code bash> | ||
| Pour voir l' | Pour voir l' | ||
| - | <code bash> | + | <code bash> |
| - | Label: none uuid: c5f42f5d-7802-4f4f-bee6-3c8e0994bbe8 | + | ou |
| - | Total devices 3 FS bytes used 146.43GiB | + | <code bash> |
| - | devid 1 size 465.76GiB used 100.00GiB path /dev/sdb | + | |
| - | devid 3 size 465.76GiB used 100.01GiB path /dev/sdd | + | |
| - | *** Some devices missing | + | |
| - | </ | + | |
| Pour voir le détail des disques de votre RAID BTRFS passez la commande : | Pour voir le détail des disques de votre RAID BTRFS passez la commande : | ||
| - | <code bash> | + | <code bash> |
| - | /dev/sdb, ID: 1 | + | <code bash> |
| - | | + | |
| - | | + | |
| - | | + | |
| - | | + | |
| - | | + | |
| - | /dev/sdc, ID: 2 | + | ==== Augmenter/Diminuer le système de fichier du RAID ==== |
| - | | + | |
| - | | + | |
| - | ... | + | |
| - | </ | + | |
| - | === Augmenter/ | + | Visualiser l' |
| - | Visualiser l' | + | |
| <code bash> | <code bash> | ||
| Resize '/ | Resize '/ | ||
| - | Diminuer la taille du système de fichier sur le raid | + | Diminuer la taille du système de fichier sur le RAID |
| <code bash> | <code bash> | ||
| Resize '/ | Resize '/ | ||
| + | ==== Réparer le RAID ==== | ||
| - | === Réparer le raid de disques === | ||
| Voir l' | Voir l' | ||
| - | <code bash> | + | <code bash> |
| - | [/ | + | |
| - | [/ | + | |
| - | [/ | + | |
| - | [/ | + | |
| - | [/ | + | |
| - | [/ | + | |
| - | [/ | + | |
| - | [/ | + | |
| - | [/ | + | |
| <code bash> | <code bash> | ||
| Ligne 182: | Ligne 213: | ||
| sudo btrfs balance start -dconvert=raid1 -mconvert=raid1 /home | sudo btrfs balance start -dconvert=raid1 -mconvert=raid1 /home | ||
| </ | </ | ||
| - | ===== Liens ===== | ||
| + | ===== Voir aussi ===== | ||
| + | |||
| + | * [[:système de fichiers|Systèmes de fichiers]] | ||
| + | * Un complément fort utile : https:// | ||
| * Le [[https:// | * Le [[https:// | ||
| - | * **ANGLAIS** [[https:// | + | * **(//en//)** [[https:// |
