Btrfs установка и использование
lsblk — подсветить все разделы чтобы определиться, что монтировать.
Так как Btrfs не может содержать swap-файл, необходимо заранее позаботиться о разделе с подкачкой, если он вам нужен.
Создаём файловую систему на разделе. Для разделов от 1ГБ и меньше, чтобы более эффективно использовать пространство, рекомендуется передать ключ -M к параметрам mkfs.btrfs .
При желании можно задать лэйбл ключом -L.
Затем создадим два подтома под корень и домашние каталоги пользователей.
Для того, чтобы монтировать подтом подобно обычному разделу диска, команде mount нужно указывать опцию subvol.
Монтируем корень. Сжатие zstd, или lzo.
Создаём директорию и монтируем в неё наш будущий каталог пользователей.
Дальше действуем по вики, т.е. выбираем зеркала и ставим базовую систему. При генерации initramfs mkinitcpio будет ругаться на отсутствие fsck.btrfs — это нормальное явление. Уберём этот хук fsck из конфига, т.к. для Btrfs он не требуется.
Вот данная строка в файле.
И ещё момент по поводу загрузчика, не знаю как другие, а grub точно умеет грузиться с Btrfs, так что выбрать лучше именно его. Так же не забудьте установить пакет btrfs-progs и позаботиться о бэкапах.
Использование btrfs #
Каталоги абсолютно идентичны, и пока мы не начнём изменять файлы, снимки места не занимают.
Откат: грузимся с live CD, монтируем корень ФС и переименовываем подтома. Так же подтома можно переименовать прямо в рабочей системе, если загрузка удачна.
Либо грузимся как обычно, а в меню grub указываем подтом с бэкапом rootflags=subvol=backup .
Копирование при записи (CoW). Если использовать команду cp с ключом —reflink=auto , то копия файла не будет занимать место на диске. И впоследствии, допустим, при изменении скопированного файла, записываться на диск будут только изменённые блоки.
“Онлайн” — проверка ФС. При которой осуществляется чтение всех данных/метаданных с перепроверкой контрольных сумм, при наличии ошибок обнаружение их и исправление по возможности.
Если опустить ключ -B , процесс уйдёт в фон, и о ходе выполнения можно будет узнать командой.
Рекомендуется проводить проверку регулярно (еженедельно). “Оффлайн” — проверка ФС (на отмонтированном разделе). При отсутствии ошибок утилита возвратит 0.
Установка из существующей системы или с live usb #
lsblk — подсветить все разделы что бы определиться что монтировать.
Так как Btrfs не может содержать swap-файл, необходимо заранее позаботиться о разделе с подкачкой, если он вам нужен.
Внимание! это отформатирует весь ваш диск, с потерей данных! В данном примере установка идет на весь диск, а не разделы, если вам нужен swap учтите этот момент.
Создадим два подтома под root @ и домашний каталог пользователя @home .
Создаём директорию и монтируем в неё наш будущий каталог пользователей.
Устанавливаем базовые пакеты.
Создаем директорию и монтируем boot, если нужно.
Начиная с ядра 5.0 можно создать swap-файл, swap-файл должен располагаться целиком на одном устройстве, создаваться с отключенным COW и сжатием.
Выберем локаль для системы.
Прописать в /etc/locale.conf .
/etc/locale.conf echo "LC_COLLATE=C" >> /etc/locale.conf
/etc/vconsole.conf echo "FONT=cyr-sun16" >> /etc/vconsole.conf
Создаём рам-диск mkinitcpio.
В /etc/mkinitcpio.conf , в разделе HOOKS, должен быть прописан хук keyboard keymap , убрать fsck .
В разделе MODULES нужно прописать свой драйвер видеокарты: i915 для Intel, radeon для AMD, nouveau для Nvidia.
Расскомментировать в /etc/pacman.conf .