79

Установка Debian на subvolume BTRFS

Всем привет, на связи Уханов. Сегодня поговорим об установке Debian Linux на subvolume BTRFS. ранее я уже я уже показывал как это делать на Arch Linux, но тут дела обстоят немного иначе.

Начало установки

Загружаемся с установочного носителя и выбираем пункт Expert install. Он находится в подменю Advanced options.

Процесс установки подробно описывать не буду, так как там ничего сложного нет. Продолжаем установку до пункта разметка дисков.

Разметка дисков

Выбираем ручное разбиение дисков. Так как у нас UEFI система, то создаём таблицу разделов GPT. Создаём первый раздел на 500 мб и выбираем в качестве файловой системы “системный раздел EFI”. Создаём раздел подкачки. На оставшемся месте создаём раздел и выбираем файловую систему BTRFS. Записываем изменения.

Создание Subvolume

Теперь нам надо перейти в новую консоль и поправить тома. Нажимаем CTRL+ALT+F2, нажимаем Enter. мы провалились в консоль 2.

Нам надо посмотреть что куда примонтировано.

mount

Отмонтируем примонтированные тома

umount /dev/sda1 umount /dev/sda3

Теперь монтируем основной раздел и проваливаемся в него

mount /dev/sda3 /mnt cd /mnt

Осмотримся

ls

Видим subvolume @rootfs. Это и есть наш корневой каталог. Создадим требуемые subvolume для остальных каталогов, которые хотим выделить из корня..

btrfs subvolume create @home btrfs subvolume create @var btrfs subvolume create @.snapshots

Теперь нам надо знать их subvolid. Посмотреть можно командой:

btrfs subvolume list .

Теперь монтируем корневой subolume в /target

mount -o rw,noatime,compress=lzo,space_cache,subvolid=256 /dev/sda3 /target

Создадим на нём точки монтирования остальных томов

mkdir -p /target/boot/efi mkdir -p /target/home mkdir -p /target/var mkdir -p /target/.snapshots

Монтируем всю эту музыку

mount /dev/sda1 /target/boot/efi

mount -o rw,noatime,compress=lzo,space_cache,subvolid=258 /dev/sda3 /target/home

mount -o rw,noatime,compress=lzo,space_cache,subvolid=259 /dev/sda3 /target/var

mount -o rw,noatime,compress=lzo,space_cache,subvolid=260 /dev/sda3 /target/.snapshots

Теперь идём править fstab, чтобы это всё коректно смонтировалось при загрузке

nano /target/etc/fstab

Находим строчку монтирования корневого раздела, переводим курсор туда и вырезаем строку комбинацией ctrl+k. Строчка пропала, а теперь вставляем её комбинацией ctrl+u столько раз, сколько subvolume надо монтировать. В моём случае 4.

Теперь правим точки монтирования и параметры монтирования по аналогии с тем, как мы их монтировали ранее. Там есть параметр subvol, удобнее его сменить на subvolid и указать номер subvolid.

Должно получиться как-то так:

Завершение установки

Нажимаем CTRL+ALT+F1 и продолжаем установку.

Устанавливаем и перезагружаемся. На этом всё.

Оригинал как всегда в моём блоге.

GNU/Linux

1.2K поста15.6K подписчика

Правила сообщества

Все дистрибутивы хороши.

Будьте людьми.

Вы смотрите срез комментариев. Показать все
1
Автор поста оценил этот комментарий

В статье, как по мне нехватает описания типа "я делаю это для того-то". Но по факту получается мало того, что сначала обычным установщиком диск на разделы распиливаешь, так потом в отдельном разделе создаешь отдельную файловую систему, еще и со сжатием.


На выходе получаем раздел внутри раздела, который постоянно жрет CPU, т.к. сжатие нужно обрабатывать.


Я уже молчу про то, что на скриншоте fstab'a (который нагляднее смотрелся текстом вместе с выводом команды blkid для понимания где что), есть еще и корневой раздел, который не находтся на subvolume, судя по ходу описания статьи.


Т.е. нужно вынести часть директорий для относительно быстрого бэкапирования? Снимок большого раздела ФС сделано никогда нормально не выйдет, т.к. постоянно будет дельта данных, а за 1 тик процессора слепок ФС не сделаешь. Автор @mfc166, чем тебе обычный rsync  файлов не угодил для бэкапов?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

В статье, как по мне нехватает описания типа "я делаю это для того-то"

Я исходил из того, что человек знает что такое subvolume и зачем это надо.

На выходе получаем раздел внутри раздела, который постоянно жрет CPU, т.к. сжатие нужно обрабатывать.

Это не раздел внутри раздела. Subvolume ближе к каталогам. Сжатие почти не сказывается на производительности, по своему опыту сужу. Да и опции я привел для примера. Собственно можно и default+subvolid оставить.


корневой раздел, который не находтся на subvolume, судя по ходу описания статьи

Корень лежит в subvolume @rootfs. Поправил текст, чтобы этот момент был понятнее.

Автор @mfc166, чем тебе обычный rsync файлов не угодил для бэкапов?

Для бекапов его использую, но в моём применении снимки удобнее.

Спасибо  за критику.

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку