Tworzenie migawek systemu Linux za pomocą Btrfs lub LVM snapshots – szybkie rollbacki i ochrona przed błędami
💽 Tworzenie migawek systemu Linux za pomocą Btrfs lub LVM snapshots – szybkie rollbacki i ochrona przed błędami
Migawki (snapshots) to jedna z najpotężniejszych funkcji nowoczesnych systemów plików i menedżerów wolumenów. Pozwalają one błyskawicznie zapisać stan systemu lub danych, a w razie problemów (np. błędnej aktualizacji, skryptu, czy zmian konfiguracji) – łatwo przywrócić wcześniejszy stan.
W tym poradniku pokażę, jak tworzyć i przywracać migawki w dwóch popularnych rozwiązaniach:
Btrfs– nowoczesny system plików,LVM– klasyczny menedżer wolumenów logicznych.
🧱 Czym są migawki?
Migawka to stan systemu plików lub wolumenu z określonego momentu w czasie.
📌 Kluczowe cechy:
- zapisują tylko zmiany względem oryginału (copy-on-write),
- są błyskawiczne (praktycznie natychmiastowe),
- pozwalają na szybki rollback lub testowanie zmian.
📁 Migawki Btrfs – nowoczesne i elastyczne
📦 Krok 1: Sprawdź, czy masz partycję Btrfs
df -T
Przykład:
/dev/sda1 btrfs 50G ...
Jeśli nie masz partycji Btrfs – potrzebna będzie reinstalacja lub osobny dysk z Btrfs.

🏗️ Krok 2: Tworzenie subwolumenów (jeśli nie istnieją)
Subwolumeny umożliwiają tworzenie migawek:
sudo btrfs subvolume create /@root
sudo btrfs subvolume create /@home
Przenieś zawartość systemu do subwolumenów i zaktualizuj fstab.
📸 Krok 3: Tworzenie migawki
sudo btrfs subvolume snapshot /@root /@snapshots/root-$(date +%Y-%m-%d)
To utworzy migawkę całego systemu /@root.
🔄 Krok 4: Przywracanie migawki
Usuń stare dane i zamień migawkę na główny subwolumen:
sudo mv /@root /@root-old
sudo btrfs subvolume snapshot /@snapshots/root-2025-08-05 /@root
🧰 Migawki LVM – klasyczne, ale bardzo przydatne
✅ Krok 1: Sprawdź strukturę LVM
sudo lvs
Przykład:
LV VG Attr LSize ...
root ubuntu -wi-ao---- 20.00g
🖼️ Krok 2: Tworzenie migawki
sudo lvcreate --size 1G --snapshot --name root_snap /dev/ubuntu/root
Migawka o nazwie root_snap została utworzona. Można teraz testować zmiany.
📌 Migawka musi mieć wystarczający rozmiar na zapis różnic!
🗑️ Krok 3: Usunięcie migawki
Po udanym teście/usunięciu błędu:
sudo lvremove /dev/ubuntu/root_snap
♻️ Krok 4: Przywrócenie migawki
Jeśli coś poszło nie tak:
sudo lvconvert --merge /dev/ubuntu/root_snap
sudo reboot
System uruchomi się z przywróconą migawką.
🚨 Uwaga – użycie migawki nie = backup
Migawki są tymczasowe i przy restarcie lub awarii dysku mogą zniknąć.
📌 Używaj ich jako punktów przywracania, ale nie jako pełnoprawnej kopii zapasowej.
✅ Kiedy używać migawek?
- Przed aktualizacjami systemu
- Przed instalacją nowego oprogramowania
- Przed edycją ważnych konfiguracji
- Do testów lub rollbacków
🧪 Pro tip: automatyczne migawki przed apt upgrade
Jeśli używasz Btrfs lub LVM, możesz stworzyć hook lub systemd.timer, który automatycznie wykona migawkę systemu przed aktualizacją pakietów.
📋 Podsumowanie
| Technologia | Plusy | Minusy |
|---|---|---|
| Btrfs | bardzo szybkie migawki, snapshoty katalogów, zintegrowane z systemem | potrzebna partycja Btrfs |
| LVM | możliwy rollback całych wolumenów, dobre do backupów | snapshoty mają ograniczoną trwałość, zużywają miejsce |






