Як створити знімки за допомогою BtrFS на Linux

Чи бажаєте створювати резервні копії вашої інформації на комп’ютері з Linux, щоб уникнути втрати важливих даних? Файлова система BtrFS надає таку можливість. Перш ніж почати створювати знімки, вам потрібно мати блоковий пристрій, що використовує BtrFS. Якщо ви хочете перетворити наявний диск у BtrFS, скористайтеся інструкціями нижче. Якщо ж ви бажаєте встановити BtrFS як кореневу файлову систему, оберіть “користувацьку інсталяцію” під час встановлення Linux та виберіть BtrFS як файлову систему.

Крім того, необхідно встановити пакет btrfs-progs.

Зауваження: Для визначення блокового пристрою, який необхідно відформатувати, може знадобитися команда lsblk.

Налаштування BtrFS на Linux

Перед форматуванням диска, створіть резервну копію всіх даних на ньому. Потім відкрийте термінал і отримайте права root за допомогою команди: sudo -s. З правами root, використайте команду mkfs для створення нової файлової системи. У цьому прикладі ми використаємо /dev/sdd1.

mkfs.btrfs -f /dev/sdd1

Вирішення проблем з форматуванням

Якщо після форматування диск не працює, можливо, потрібно створити нову таблицю розділів. Ось як це зробити:

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

Щоб вийти з parted, введіть:

quit

Після цього знову виконайте команду форматування:

mkfs.btrfs -f /dev/sdd1

Створення знімків з BtrFS

Перед тим, як робити знімки, потрібно створити підтоми. Якщо ваша основна файлова система Linux є BtrFS, пропустіть цей крок та перейдіть до налаштування підтомів. Якщо ви використовуєте вторинний диск з BtrFS, його потрібно змонтувати. У цьому прикладі жорсткий диск – /dev/sdd.

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

Тепер основна папка BtrFS готова до роботи. Настав час створити підтоми. Підтом – це особлива функція BtrFS, яка дозволяє створювати томи, що працюють подібно до блокових пристроїв. Насправді це не блокові пристрої, а вдосконалені каталоги, що використовують технологію “просторів імен”. BtrFS використовує цю технологію для створення безлічі індивідуальних підтомів, які можна монтувати і які поводяться як блокові пристрої.

Щоб створити підтом, виконайте наступні дії. Ми покажемо базову структуру, що починається з головної папки /btrfs. Пам’ятайте, що ви можете створювати підтоми в будь-якому місці файлової системи BtrFS.

Спочатку перейдіть до оболонки root. Команди можна виконувати з sudo, але взаємодія з файловою системою як root може бути простішою. Використайте sudo -s або su. Потім виконайте:

btrfs subvolume create /btrfs/vol_a

Ця команда створює підтом BtrFS у /mnt/btrfs (у нашому прикладі). Можна зупинитися на цьому кроці та використовувати його для зберігання важливих даних. Також можна створювати додаткові томи. Щоб створити том в іншому томі, виконайте:

btrfs subvolume create /btrfs/vol_a/vol_b

Щоб створити знімок, спочатку скопіюйте всі важливі дані до підтому. Наприклад:

cp -R ~/Documents /btrfs/vol_a/

Потім скористайтеся файловою системою для створення знімка:

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

Примітка: Замініть “backup_1” на власну назву знімка. Позначайте їх чітко для зручності пошуку.

Для відновлення знімка виконайте: mv /btrfs/vol_a/ /mnt/btrfs/vol_a/backup_1

Монтування підтомів як блокових пристроїв

Однією з переваг підтомів є можливість монтувати їх окремо. Для цього спочатку перегляньте список підтомів:

btrfs subvolume list /btrfs

Знайдіть ідентифікатор підтому і змонтуйте його за допомогою команди mount. Після отримання ідентифікатора відключіть його.

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

Замініть XXX на ідентифікатор, а /dev/sdX на диск, де знаходиться том. Не можна підключити підтом до того самого розділу, що і розділ верхнього рівня. Змонтуйте його до іншого BtrFS розділу або диска. Наприклад:

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

Підтом 38 знаходиться на /dev/sdd1, але /dev/sdc1 також є BtrFS, тому туди можна монтувати знімки. Це не обов’язково робити на окремих дисках. Ви можете змонтувати його на /dev/sdc2 тощо.

Встановлення підтому за замовчуванням

Встановлення підтому за замовчуванням спрощує взаємодію з ним. Для цього спочатку знайдіть ідентифікатор за допомогою subvolume list. Потім встановіть його за замовчуванням:

btrfs subvolume set-default XXX /btrfs

Щоб скасувати встановлення за замовчуванням, використовуйте ту саму команду, але замість ідентифікатора підтому вкажіть число 0. Це поверне налаштування до заводських, і ви зможете вільно використовувати інші підтоми за замовчуванням.

btrfs subvolume set-default 0 /btrfs

Видалення підтому

Якщо потрібно видалити том, використовуйте інструменти BtrFS, а не команди на зразок rmdir або rm -rf.

Для видалення тома, виконайте:

btrfs subvolume delete /btrfs/volume-name