Disposition plate
Lorsque vous effectuez une installation standard d'Ubuntu en utilisant BTRFS sur une partition, l'installateur crée et monte deux sous-volumes: @ (situé à /) et @Accueil (situé à / à domicile). Ceux-ci sont montés au démarrage via / etc / fstab. C'est ce qu'on appelle une disposition plate et rend les instantanés faciles à gérer.
Instantanés et recul
En supposant la configuration BTRFS standard d'Ubuntu, montez la partition de votre système à / mnt:
$ sudo mont / dev / sdx / mnt.
Vous y verrez vos deux sous-volumes:
Le système de fichiers racine entier est contenu à l'intérieur @. Pour prendre un instantané de @ appelé @.instantané, Nous faisons:
Pour retour en arriere Un sous-volume, déplacez / renommer simplement l'ancien sous-volume, puis déplacer / renommer l'instantané que vous souhaitez utiliser sur l'emplacement de l'ancien sous-volume:
$ sudo mv / mnt / @ / mnt / @.cassé
$ sudo mv / mnt / @.instantané / mnt / @
Après un redémarrage, vous utiliserez l'instantané que vous avez pris.
Remarque avant le redémarrage: / etc / fstab a des entrées pour @ et @à la maison comme ça:
"
UUID = xxxxx / btrfs Mount_Options, subvol = @ 0 0
UUid = xxxxx / home btrfs Mount_Options, subvol = @ home 0 0
"
Si vos entrées / etc.
"
UUID = xxxxx / btrfs Mount_Options, subvol = @, subvolid = xxxx 0 0
"
Un ID de sous-volume est un identifiant unique pour un sous-volume. Lorsque vous remplacez un sous-volume, le sous-volume répertorié dans ce point de montage peut avoir le même nom, Mais il aura une pièce d'identité différente. Si l'ID est différent de celui dans / etc / fstab, il ne montera pas. Il est sûr d'utiliser uniquement des noms lors du montage de sous-volumes dans / etc / fstab tant que vos sous-volumes sont nommés de manière unique.
Mariadb
Lorsque vous utilisez MARIADB, vos fichiers de base de données vivront dans «/ var / lib / mariadb."En créant un nouveau sous-volume pour ces données, vous protégez votre base de données contre la touche dans un recul du système lorsque vous retournez @ à un état précédent.
Tout d'abord, montez vos BTRF de haut niveau:
$ sudo mont / dev / sdx / mnt
Créez le nouveau sous-volume:
$ sudo btrfs subvolume Create / mnt / @ Mariadb
Puis montez-le:
$ sudo mont -o subvol = @ mariaDb / dev / sdx / var / lib / mariadb
Ajoutez cette entrée à votre FSTAB et installez la base de données:
$ sudo vim / etc / fstab
"
UUID = xxxxx / var / lib / mariaDb btrfs Mount_options, subvol = @ mariaDb 0 0
"
$ sudo apt installer mariadb-server
Kvm
De même, isolez toutes les machines KVM en un seul sous-volume à «/ var / lib / libvirt / machines:»
$ sudo btrfs subvolume Create / mnt / @ kvm
$ sudo mont -o subvol = @ kvm / dev / sdx / var / lib / libvirt / machines
$ sudo vim / etc / fstab
"
UUID = xxxx / var / lib / libvirt / machines btrfs mont_options, subvol = @ kvm 0 0
"
Si vous avez déjà des données dans votre machine virtuelle et vos répertoires de base de données, vous pouvez les sauvegarder, remplacer le répertoire d'origine par le sous-volume que vous avez fait, puis restaurer les données de la sauvegarde. N'oubliez pas de résoudre les autorisations si nécessaire car tous les sous-volumes nouvellement créés appartiennent à Root:
$ sudo chown -r mysql: mysql / var / lib / mariadb
Conclusion
Maintenant, quand vous devez retourner @ À un état précédent, votre base de données et vos machines virtuelles seront conservées dans des sous-volumes distincts. Les possibilités de disposition des sous-volumes sont infinies, et ce que j'ai démontré ici n'est qu'une façon d'utiliser les BTRF pour protéger et préserver vos données. Quel que soit votre cas d'utilisation, la flexibilité des sous-volumes BTRFS peut améliorer les fonctionnalités de votre serveur ou de votre poste de travail.