Btrfs

Материал из K.Wiki
Перейти к: навигация, поиск

btrfs — файловая система для Linux, основанная на структурах Б-деревьев и работающая по принципу «копирование при записи» (copy-on-write).

Работа с файловой системой

Как посмотреть информацию о системе?

# btrfs filesystem show {точка монтирования или устройство}

Например,

# btrfs filesystem show /mnt
# btrfs filesystem show /dev/sda

Как изменить метку?

# btrfs filesystem label {точка монтирования или устройство} {новая метка}

Например,

# btrfs filesystem label /mnt NewBtrfsLabel
# btrfs filesystem label /dev/sda NewBtrfsLabel

Как определить какой уровень RAID используется?

# btrfs fi df {точка монтирования}

Например,

# btrfs fi df /mnt

Как изменить уровень RAID?

Делается с помощью перебалансировки данных:

# btrfs balance start -dconvert={уровень RAID для данных} -mconvert={уровень RAID для метаданных} {точка монтирования}

Например,

# btrfs balance start -dconvert=raid1 -mconvert=raid1 /mnt

Работа с подразделами

Как посмотреть какие подразделы доступны?

# btrfs subvolume list {точка монтирования}

Будет выведен список разделов с информацией о них: ID, gen, top, path.

Например,

# btrfs subvolume list /mnt

Как добавить подраздел?

# btrfs subvolume create [{точка монтирования}/]{имя подраздела}

Если {точка монтирования} не указана, будет использована текущая директория.

Например,

# btrfs subvolume create /mnt/@NewSubvolume
# btrfs subvolume create @NewSubvolume

Как добавить снимок?

Снимок - это подраздел, разделяющий данные с другим. Данные копируются только тогда, когда происходит их изменение.

# btrfs subvolume snapshot [-r] {точка монтирования исходного подраздела} [{точка монтирования}/]{имя снимка}

Если {точка монтирования} не указана, будет использована текущая директория. Флаг r служит для создания снимка, доступного только для чтения.

Например,

# btrfs subvolume snapshot -r /mnt/@subvolume /mnt/snapshot

Как назначить подраздел, который подключается по-умолчанию?

# btrfs subvolume set-default {id} {точка монтирования}

Например,

# btrfs subvolume set-default 257 /mnt

Как вернуть корневой раздел для подключения по-умолчанию?

# btrfs subvolume set-default 5 {точка монтирования}

Работа с несколькими устройствами

Как подключить устройство к файловой системе?

# btrfs device add {устройство} [{еще устройство}..] {точка монтирования}

Устройство будет добавлено к файловой системе, но распределение данных зависит от используемого уровня RAID. Вообще говоря, нужно выполнить балансировку для переноса метаданных на новое подключенное устройство:

# btrfs filesystem balance {точка монтирования}

Это также перераспределит данные.

Например,

# btrfs device add /dev/sda /dev/sdb1 /mnt
# btrfs filesystem balance /mnt

Как отключить устройство от файловой системы?

# btrfs device delete {устройство} [{еще устройство}..] {точка монтирования}

Все файлы будут перераспределены между оставшимися устройствами согласно используемому уровню RAID.

Например,

# btrfs device delete /dev/sda /dev/sdb1 /mnt

Ссылки