Zunächst erstellen wir das gewünschte Layout im Standard-Subvolume:
btrfs subvolume snapshot / /rootfs
mkdir /snapshots
Beachten Sie, dass /rootfs
dies unser neues Root-Dateisystem ist. Nehmen Sie nach diesem Schritt keine Änderungen am aktuellen vor.
Bearbeiten /rootfs/etc/fstab
, damit das System das neue Rootfs-Subvolume als Root-Dateisystem verwendet. Dazu müssen Sie es ändern, um die subvol=rootfs
Option einzuschließen.
mounten Sie unser neues Root-Dateisystem, mounten Sie die relevanten Dateisysteme (dev, sys, proc, booten, falls vorhanden), chrooten Sie darauf und aktualisieren Sie grub:
mount -o subvol=rootfs /dev/sdXX /media/temporary
cd /media/temporary
mount -o bind /dev dev
mount -o bind /sys sys
mount -o bind /proc proc
mount -o bind /boot boot
chroot .
update-grub
exit
Das ist es. Starten Sie neu und Ihr Root-Dateisystem sollte das Rootfs-Subvolume sein. Wenn dies erfolgreich war, sollte es kein / snapshots-Verzeichnis geben. Sie können jetzt den Inhalt des alten Root-Dateisystems im Standard-Subvolume löschen.
Wenn Sie möchten, können Sie einen permanenten Einhängepunkt für das Standard-Subvolume festlegen:
mkdir /media/btrfs/root
Dann können Sie mount -o subvolid=0 /dev/sdXX /media/btrfs/root
Ihre Snapshots / Subvolumes erstellen.
btrfs subvolume set-default ID /
.ID
kann mit `btrfs subvolume list /subvol=/rootfs
(beachte das/
),fstab
da dies der 'richtige' Weg zu sein scheint, wie im (btrfs wiki) [ btrfs.wiki.kernel.org/index.php/Mount_options] beschrieben .subvol=/rootfs
ist, dass jedes Programm, das Ihr Layout nicht kennt (z. B. Distributoren), stattdessen das Standard-Subvolume mounten wird. Wenn das Programm erwartet, dass das Dateisystem wie ein Linux-Dateisystem aussieht, wenn es fehlschlägt oder schlimmer ist, füllen Sie Ihr Standard-Subvolume mit Dingen, die Sie dort nicht wollenfstab
Konfiguration des Bootloaders überprüfen oder booten würden .