Chcete si zabezpečit svá data v Linuxu pomocí snímků, pro případ nechtěného smazání? Souborový systém Btrfs vám to umožní. Než začnete, ujistěte se, že máte v systému Linux blokové zařízení s formátováním Btrfs. Pokud máte disk, který chcete převést na Btrfs, postupujte podle následujících instrukcí. Chcete použít Btrfs jako kořenový systém? Během instalace zvolte „vlastní instalaci“ a jako souborový systém vyberte Btrfs.
Kromě toho, že musíte mít blokové zařízení s naformátovaným systémem souborů Btrfs, potřebujete také nainstalovat balíček btrfs-progs.
Poznámka: Pro zjištění, které blokové zařízení chcete formátovat, můžete použít příkaz lsblk.
Btrfs v Linuxu
Před formátováním disku si zálohujte všechna data. Poté otevřete terminál a získejte přístup roota pomocí sudo -s. S právy roota použijte příkaz mkfs pro vytvoření nového souborového systému. V tomto příkladu použijeme /dev/sdd1:
mkfs.btrfs -f /dev/sdd1
Řešení problémů
Disk po naformátování na Btrfs nefunguje správně? Možná bude nutné vytvořit novou tabulku oddílů. Postup je následující:
parted /dev/sdd mklabel gpt mkpart primary btrfs 1MiB 100%
Ukončete nástroj parted:
quit
Poté spusťte znovu příkaz pro formátování:
mkfs.btrfs -f /dev/sdd1
Tvorba snímků s Btrfs
Před vytvořením snímků musíte vytvořit několik subsvazků. Používáte Btrfs jako svůj hlavní systém? Pak tento krok přeskočte a přejděte rovnou k nastavení subsvazků. Tento postup použijte jen v případě, že pracujete s sekundárním diskem s Btrfs, který musíte připojit. V tomto případě je disk /dev/sdd.
sudo -s mkdir /btrfs mount -t btrfs /dev/sdd1 /btrfs
Hlavní složka Btrfs je vytvořena, připojena a připravena k použití. Nyní je čas vytvořit subsvazek. Co to je? Jedná se o funkci Btrfs, která umožňuje vytvořeným svazkům chovat se podobně jako bloková zařízení (např. /dev/sda1).
Ve skutečnosti to nejsou bloková zařízení, ale speciální adresáře využívající technologii „name spaces“. Zjednodušeně řečeno, Btrfs tuto technologii využívá k vytváření mnoha jednotlivých připojitelných subsvazků, které fungují podobně jako bloková zařízení.
Chcete-li vytvořit subsvazek, postupujte takto. Ukážeme si základní strukturu subsvazku, začínající v hlavní složce /btrfs. Svazky můžete vytvářet kdekoli v systému souborů Btrfs.

Nejprve získejte roota. Tyto příkazy lze provádět s právy sudo, ale je lepší získat roota přímo (sudo -s nebo su). Poté proveďte:
btrfs subvolume create /btrfs/vol_a
První příkaz vytvoří subsvazek Btrfs pod /mnt/btrfs na disku /dev/sdd1. Můžete zde skončit a použít ho k ukládání dat. Případně můžete vytvořit i další subsvazky. Pro vytvoření subsvazku v jiném subsvazku použijte:
btrfs subvolume create /btrfs/vol_a/vol_b
Pro vytvoření snímku zkopírujte všechna data do subsvazku. Například:
cp -R ~/Documents /btrfs/vol_a/
a potom pomocí systému souborů vytvořte snímek.

btrfs subvolume snapshot /btrfs/vol_a/ /btrfs/vol_a/backup_1
Poznámka: Název „backup_1“ můžete nahradit libovolným názvem. Pojmenujte snímky jasně, abyste se v nich později vyznali.
Pro obnovu snímku použijte: mv /btrfs/vol_a/ /mnt/btrfs/vol_a/backup_1
Připojení subsvazků jako blokových zařízení
Subsvazky můžete připojovat jednotlivě jako nezávislá zařízení. Pro zobrazení všech známých svazků použijte:

btrfs subvolume list /btrfs
Projděte seznam, najděte ID subsvazku a připojte ho pomocí příkazu mount. Po získání ID ho odpojte.
mount -o subvolid=XXX /dev/sdX /btrfs
Nahraďte XXX ID a /dev/sdX jednotkou, kde se svazek nachází. Subsvazek nemůžete připojit ke stejnému oddílu jako oddíl nejvyšší úrovně, ale k jinému oddílu nebo disku s formátem Btrfs. Například:
mount -o subvolid=38 /dev/sdc1 /btrfs
Subsvazek s ID 38 je na /dev/sdd1, ale /dev/sdc1 je také Btrfs, takže je možné k němu připojovat snímky. Toto není nutné provádět na samostatných discích, můžete je připojit i do /dev/sdc2, atd.
Nastavení výchozího subsvazku
Nastavení výchozího subsvazku usnadňuje interakci s ním. Pro nalezení ID použijte subvolume list a poté ho použijte v příkazu set-default:
btrfs subvolume set-default XXX /btrfs
Pro zrušení výchozího nastavení použijte stejný příkaz, ale místo ID svazku použijte číslo 0. Tím se vrátíte do továrního nastavení a poté můžete libovolně používat ostatní subsvazky jako výchozí.
btrfs subvolume set-default 0 /btrfs
Smazání subsvazku
Pokud se budete chtít zbavit svazku, použijte nástroje souborového systému Btrfs, neodstraňujte ho ručně pomocí příkazů jako rmdir nebo rm -rf.
Pro smazání svazku použijte:
btrfs subvolume delete /btrfs/volume-name