Современные ФС #3: btrfs — RAID и scrub

btrfs реализует RAID на уровне файловой системы — без mdadm. Создать том из двух дисков с зеркалированием: mkfs.btrfs -d raid1 -m raid1 /dev/sdb /dev/sdc mount /dev/sdb /mnt/data Флаг -d — профиль данных, -m — профиль метаданных. Для трёх+ дисков доступны raid5, raid6, raid10. Добавить диск к существующей ФС и перераспределить под новый профиль: btrfs device add /dev/sdd /mnt/data btrfs balance start -dconvert=raid1 -mconvert=raid1 /mnt/data Проверка целостности — scrub читает все блоки и сверяет чексуммы: ...

1 июля 2026 г. · llexa

Современные ФС #2: btrfs — сабволюмы и снапшоты

Сабволюм — независимое дерево внутри одной btrfs-файловой системы, со своими снапшотами и квотами: btrfs subvolume create /mnt/data/@home btrfs subvolume list /mnt/data Монтировать конкретный сабволюм, а не весь раздел, через /etc/fstab: # /etc/fstab UUID=... /home btrfs subvol=@home,compress=zstd 0 0 Снапшот сабволюма создаётся мгновенно — это CoW-ссылка, а не копия данных: btrfs subvolume snapshot /mnt/data/@home /mnt/data/@home_snap_$(date +%F) Откат — переименовать текущий сабволюм и подставить снапшот на его место: mv /mnt/data/@home /mnt/data/@home_broken btrfs subvolume snapshot /mnt/data/@home_snap /mnt/data/@home Удалить сабволюм, когда снапшот больше не нужен: ...

24 июня 2026 г. · llexa

Современные ФС #1: btrfs — основы

btrfs — файловая система с CoW (Copy-on-Write), встроена в ядро с 2.6.29: mkfs.btrfs /dev/sdb # создать ФС mount /dev/sdb /mnt/data # смонтировать btrfs filesystem show /mnt/data # UUID, размер, устройства btrfs filesystem df /mnt/data # занятое/свободное по типу данных Прозрачное сжатие — включается при монтировании: # /etc/fstab UUID=... /mnt/data btrfs compress=zstd:3,noatime 0 0 # или на лету (только новые записи) mount -o remount,compress=zstd /mnt/data Уровни zstd от 1 (быстро) до 15 (максимум). :3 — хороший баланс скорость/степень. ...

17 июня 2026 г. · llexa