Btrfs
btrfs — файловая система для Linux, основанная на структурах Б-деревьев и работающая по принципу «копирование при записи» (copy-on-write).
Содержание
- 1 Работа с файловой системой
- 1.1 Как посмотреть информацию о системе?
- 1.2 Как изменить метку?
- 1.3 Как изменить размер?
- 1.4 Как определить какой уровень RAID используется?
- 1.5 Как изменить уровень RAID?
- 1.6 Как установить операционную систему на раздел с ненулевым уровнем RAID?
- 1.7 Как изменить метод сжатия файлов
- 1.8 Как задать метод сжатия новых или изменённых файлов?
- 2 Работа с подразделами
- 3 Работа с несколькими устройствами
- 4 Ссылки
Работа с файловой системой[править]
Как посмотреть информацию о системе?[править]
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
Как изменить размер?[править]
btrfs filesystem resize {новый размер} {точка монтирования}
Например,
btrfs filesystem resize max /mnt
Как определить какой уровень RAID используется?[править]
btrfs filesystem df {точка монтирования}
Например,
btrfs filesystem df /mnt
Как изменить уровень RAID?[править]
Делается с помощью перебалансировки данных:
btrfs balance start -dconvert={уровень RAID для данных} -mconvert={уровень RAID для метаданных} {точка монтирования}
Например,
btrfs balance start -dconvert=raid1 -mconvert=raid1 /mnt
Как установить операционную систему на раздел с ненулевым уровнем RAID?[править]
Перед разметкой разделов выполнить
btrfs dev scan
Как изменить метод сжатия файлов[править]
Делается с помощью дефрагментации данных:
btrfs filesystem defragment -c{метод сжатия} {файл или директория} [{файл или директория}]
Например,
btrfs filesystem defragment -clzo /home /mnt
Как задать метод сжатия новых или изменённых файлов?[править]
Нужно задать свойство:
btrfs property set {файл или директория} compression {метод сжатия}
Например,
btrfs property set /mnt compression zlib
или
btrfs property set /mnt compression ""
Работа с подразделами[править]
Как посмотреть какие подразделы доступны?[править]
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
Как примонтировать корневой раздел?[править]
mount {устройство} {точка монтирования} -o subvolid=5
Например
mount /dev/sda1 /mnt -o subvolid=5
Как вернуть корневой раздел для подключения по-умолчанию?[править]
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