Tutoriel Linux

Btrfs : utworzyć migawkę przed ryzykowną aktualizacją

Débutant3 min de lecture

Aktualizacja jądra, sterowników lub pakietów może pozostawić komputer lub VM w stanie bezużytecznym. Jeśli twój system plików oparty jest na Btrfs, migawka zrobiona chwilę przed operacją zachowuje lokalny punkt powrotu, pod warunkiem, że celujesz w odpowiednią podobjętość.

Poniższa metoda tworzy kopię tylko do odczytu, a następnie sprawdza, czy naprawdę istnieje. Nie zastępuje to kopii zapasowej ani nie uruchamia automatycznej przywracania systemu.

Migawka przechowywania Linux przed aktualizacją
Migawka Btrfs zachowuje lokalny punkt powrotu przed aktualizacją.

Potwierdź, że system plików to podobjętość Btrfs

Nie uruchamiaj migawki tylko dlatego, że maszyna używa Btrfs gdziekolwiek. Należy sprawdzić system plików, który obsługuje /, a następnie zidentyfikować zamontowaną podobjętość. Na zdalnym serwerze utrzymuj otwartą sesję SSH przez cały czas weryfikacji.

findmnt -T / -o TARGET,SOURCE,FSTYPE,OPTIONS
sudo btrfs subvolume show /
sudo btrfs subvolume list -p /
sudo btrfs filesystem usage /

Pierwsza komenda powinna wyświetlić btrfs w kolumnie FSTYPE. btrfs subvolume show / potwierdza, że główny system plików odpowiada podobjętości. Zwróć również uwagę na niena użyte pamięci oraz wolne miejsce, ponieważ migawka najpierw dzieli istniejące bloki, a następnie zajmuje miejsce, gdy pliki się zmieniają.

Ta procedura dotyczy zamontowanej podobjętości Btrfs. Jeśli /home jest oddzielne, zrób osobną migawkę dla danych, które muszą podążać za ruchem wstecznym. Na maszynie skonfigurowanej z LVM, ext4 lub XFS, te komendy nie są odpowiednie.

Utwórz kopię przed aktualizacją

Wybierz katalog migawkowy zlokalizowany w tym samym systemie plików Btrfs. Przykład tworzy nazwę datowaną oraz kopię tylko do odczytu. Dostosuj ścieżkę, jeśli twoja dystrybucja lub narzędzie do migawków już używa dedykowanej lokalizacji.

sudo install -d -m 700 /@snapshots
sudo btrfs subvolume snapshot -r / /@snapshots/root-before-update-2026-09-02

Opcja -r chroni ten punkt powrotu przed niezamierzonymi zmianami. Poczekaj na zakończenie komendy przed uruchomieniem apt upgrade, dnf upgrade lub twojej zwykłej procedury. Dokumentacja Btrfs opisuje ten mechanizm migawki i właściwości podobjętości.

Zarezerwowałbym tę komendę dla zamontowanej głównej objętości, którą sprawdziłeś. Stworzenie migawki z niewłaściwej ścieżki daje poczucie bezpieczeństwa, a następnie nie przywraca systemu, który faktycznie został zmodyfikowany.

Sprawdź punkt powrotu po aktualizacji

Migawka ogłoszona przez terminal nie jest jeszcze wystarczającą weryfikacją. Wypisz ją, wyświetl jej właściwości, a następnie zrestartuj i sprawdź usługę lub aplikację dotkniętą aktualizacją.

sudo btrfs subvolume list /@snapshots
sudo btrfs subvolume show /@snapshots/root-before-update-2026-09-02
sudo btrfs property get -ts /@snapshots/root-before-update-2026-09-02 ro

Ostatnia komenda powinna wskazać ro=true. Zachowaj migawkę do momentu potwierdzenia rozruchu i dotkniętych usług. Gdy aktualizacja zostanie potwierdzona, możesz ją usunąć, aby odzyskać bloki, które nie są już współdzielone.

sudo btrfs subvolume delete /@snapshots/root-before-update-2026-09-02

Nie usuwaj kopii, której możesz jeszcze potrzebować do zdiagnozowania regresji. Jeśli maszyna nie chce się zrestartować, postępowanie zależy od bootloadera, układu podobjętości oraz narzędzia do zarządzania migawkami. Przygotuj tę procedurę przed incydentem, a nie z sesji ratunkowej.

Lokalna migawka nie chroni dysku

Migawka pozostaje na tym samym puli Btrfs. Awaria dysku, niedostępna zaszyfrowana objętość lub usunięcie puli mogą zniszczyć główny system plików i jego migawki. Aby odzyskać plik po incydencie sprzętowym, miej również kopię zapasową poza pulą. Nasza metoda na sprawdzenie przywracania BorgBackup uzupełnia tę weryfikację.

Wybór jest prosty: migawka do szybkiego powrotu po aktualizacji, oddzielna kopia zapasowa, aby przetrwać utratę magazynu. Oba odpowiadają różnym awariom.

Dla szczegółów dotyczących podobjętości i ich migawk, dokumentacja Btrfs pozostaje przydatnym źródłem przed zmianą organizacji istniejącego systemu.

sudo apt update && sudo apt upgrade