Jak vytvářet snímky pomocí BtrFS na Linuxu

Přejete si vytvořit snímky dat na vašem počítači se systémem Linux pro případ, že by se něco smazalo? Se souborovým systémem BtrFS můžete. Než budete moci vytvořit snímek BtrFS, musíte mít v systému Linux blokové zařízení, které používá systém souborů BtrFS. Pokud chcete změnit stávající disk na disk BtrFS pro různá data, postupujte podle pokynů níže. Chcete místo toho používat BtrFS jako svůj kořenový souborový systém? Ujistěte se, že jste během instalačního procesu vybrali „vlastní instalaci“ a jako souborový systém vyberte BtrFS.

Kromě toho, že uživatel musí mít blokové zařízení se systémem souborů BtrFS naformátovaným, musí také nainstalovat btrfs-progs balík.

Poznámka: Možná budete muset spustit příkaz lsblk, abyste zjistili, které blokové zařízení se má formátovat.

BtrFS na Linuxu

Chcete-li disk naformátovat, nejprve na něm zálohujte všechna data a poté otevřete terminál. V terminálu získáte root pomocí: sudo -s. S přístupem root použijte příkaz mkfs k vytvoření nového systému souborů na zařízení. V tomto příkladu použijeme /dev/sdd1

mkfs.btrfs -f /dev/sdd1

Odstraňování problémů

Disk po naformátování na BtrFS nefunguje? Možná budete muset vytvořit novou tabulku oddílů. Jak na to:

parted /dev/sdd
mklabel gpt
mkpart primary btrfs 1MiB 100%

Ukončete dělený nástroj pomocí:

quit

Poté znovu spusťte příkaz format.

mkfs.btrfs -f /dev/sdd1

Vytvářejte snímky pomocí BtrFS

Před pořízením snímků budete muset vytvořit několik dílčích svazků. Hlavním souborovým systémem Linuxu je BtrFS? Přeskočte tento krok a přejděte přímo k nastavení dílčích svazků. Tuto část procesu dodržujte pouze v případě, že používáte sekundární disk se systémem souborů BtrFS, budete jej muset připojit. V tomto příkladu bude pevný disk /dev/sdd.

sudo -s 
mkdir /btrfs
mount -t btrfs /dev/sdd1 /btrfs

Hlavní složka BtrFS byla vytvořena, připojena a je připravena k použití. Je čas vytvořit podsvazek. Co je podsvazek? Je to speciální funkce dodávaná se systémem souborů BtrFS, která umožňuje vytvořeným svazkům fungovat podobně jako blokové zařízení (například /dev/sda1 atd.).

Realita je taková, že to ve skutečnosti nejsou bloková zařízení. Místo toho jsou to luxusní adresáře, které využívají technologii zvanou „name spaces“. Aniž by to bylo příliš komplikované, BtrFS využívá tuto technologii jmenného prostoru k tomu, aby uživatelům umožnil vytvořit spoustu jednotlivých, připojitelných dílčích svazků, které fungují a chovají se podobně jako bloková zařízení.

Chcete-li vytvořit svůj vlastní podsvazek, postupujte takto. V tomto příkladu si ukážeme základní strukturu subvolume, která začíná v hlavní složce /btrfs. Mějte na paměti, že můžete vytvářet své vlastní svazky, kdekoli chcete, pokud se to děje na souborovém systému BtrFS.

Nejprve získejte kořenový obal. Tyto příkazy lze provádět s právy sudo, ale vzhledem k tomu, že interakce se souborovým systémem (jako root) může být únavná, je nejlepší rovnou získat root. Použijte sudo -s nebo se přihlaste do root pomocí su. Potom proveďte:

btrfs subvolume create /btrfs/vol_a

První příkaz vytvoří podsvazek BtrFS pod /mnt/btrfs na našem ukázkovém disku /dev/sdd1. Pokud byste chtěli, můžete se zde zastavit a použít to jako svazek k uložení všech důležitých dat. Případně můžete vytvořit dílčí podsvazky (kolik chcete). Chcete-li vytvořit svazek ve svazku, postupujte takto:

btrfs subvolume create /btrfs/vol_a/vol_b

Chcete-li vytvořit snímek, nejprve přesuňte/zkopírujte všechna důležitá data do podsvazku. Například:

cp -R ~/Documents /btrfs/vol_a/

pak použijte souborový systém k vytvoření snímku.

btrfs subvolume snapshot /btrfs/vol_a/ /btrfs/vol_a/backup_1

Poznámka: „backup_1“ nahraďte jakkoli, jak chcete snímek nazvat. Jasně je označte, abyste je mohli později seřadit.

Obnovte jakýkoli snímek pomocí: mv /btrfs/vol_a/ /mnt/btrfs/vol_a/backup_1

Montáž dílčích svazků jako blokových zařízení

Součástí skvělé věci na podsvazcích je možnost je všechny jednotlivě připojit jako nezávislá zařízení. Chcete-li to provést, nejprve vypište všechny známé svazky pomocí příkazu btrfs.

btrfs subvolume list /btrfs

Projděte seznam a najděte ID číslo podsvazku a poté jej připojte pomocí příkazu mount. Poté jej odpojte, jakmile získáte ID.

mount -o subvolid=XXX /dev/sdX /btrfs

Nahraďte XXX ID a /dev/sdX jednotkou, kde je svazek, který se má připojit. Jen mějte na paměti, že nemůžete připojit podsvazek ke stejnému oddílu jako oddíl nejvyšší úrovně. Místo toho připojte k jinému oddílu nebo disku naformátovanému BtrFS. Například:

mount -o subvolid=38 /dev/sdc1 /btrfs

Subvol 38 je umístěn na /dev/sdd1, ale /dev/sdc1 je také BtrFS, takže tam lze připojit snímky. To není nutné provádět na jednotlivých discích. Místo toho jej můžete připojit do /dev/sdc2 atd.

Nastavte výchozí dílčí objem

Nastavení výchozího dílčího objemu BtrFS je užitečné, protože usnadňuje interakci s ním. Chcete-li nastavit výchozí hodnotu, nejprve pomocí příkazu subvolume list vyhledejte ID. Vezměte ID a zapojte ho do příkazu set-default:

btrfs subvolume set-default XXX /btrfs

Chcete-li se zbavit výchozího nastavení, které jste nastavili, použijte stejný příkaz, s tím rozdílem, že namísto použití ID svazku ze seznamu podsvazků použijte číslo 0. Tím jej vrátíte zpět na tovární nastavení a poté budete moci volně používat ostatní podsvazky jako výchozí.

btrfs subvolume set-default 0 /btrfs

Smazat dílčí svazek

Pokud se kdykoli budete chtít svazku zbavit, můžete jej odstranit pomocí BtrFS. Prosím, neodstraňujte podsvazek ručně z pevného disku pomocí příkazů jako „rmdir“ nebo „rm -rf“. Je lepší použít nástroje souborového systému BtrFS.

Chcete-li odstranit svazek, postupujte takto:

btrfs subvolume delete /btrfs/volume-name