Установка Debian на подтом Btrfs

Установка и настройка системы Debian

Установка Debian на подтом Btrfs

Сообщение Sunderland93 » 03 апр 2015, 08:00

Внимание: после недавних обновлений, система отказывается загружаться по данной инструкции. Решение простое - при разметке диска, вынести /boot на отдельный раздел с файловой системой ext2 (можно и ext4) и всё будет работать.
1) Установка Debian.
Ставим Debian как обычно. Никаких дополнительных настроек. Все настройки Btrfs будут выполнены после установки системы. Также не станем делать отдельный раздел для /home, так как мы будем создавать /home на подтоме Btrfs.
2) Настройка подтомов Btrfs.
Когда установка системы закончилась, загружаемся с заранее подготовленной флешки с SystemRescueCD (или любым другим). После этого монтируем файловые системы Debian:
Код: выделить все
# mkdir /mnt/rootfs/
# mount /dev/sda3 /mnt/rootfs/

Создаём подтом "@"
Код: выделить все
# btrfs subvol create /mnt/rootfs/@

Для проверки созданного подтома:
Код: выделить все
# btrfs subvolume list /mnt/rootfs/
ID 268 gen 4624 top level 5 path @

Затем переносим все данные на созданные подтома:
Код: выделить все
# cd /mnt/rootfs
# ls -1 | egrep -v '@|home' | while read d; do mv "$d" @/; done

Создаём подтом для "/home"
Код: выделить все
# btrfs subvol create /mnt/rootfs/@home

После этого переносим содержимое "/home" на созданный подтом и создаём точку монтирования:
Код: выделить все
# mv home/* @home/
# rmdir home
# mkdir @/home

Затем убедимся, что все данные находятся в нужных подтомах:
Код: выделить все
# ls -l /mnt/rootfs/
total 0
drwxr-xr-x 1 root root 204 Jul 16 02:26 @
drwxr-xr-x 1 root root 14 Jul 16 18:51 @home

и
Код: выделить все
# btrfs subvolume list /mnt/rootfs/
ID 268 gen 4624 top level 5 path @
ID 426 gen 5355 top level 5 path @home

Далее необходимо внести изменения в /etc/fstab (в /mnt/rootfs/@/etc/fstab) и добавить конфигурацию точки монтирования /home. Выглядит это так:
Код: выделить все
/dev/sda3  /home  btrfs  noatime,subvol=@home  0  0

Для того чтобы можно было загружаться в Debian, нужно временно установить подтом "@" по умолчанию:
Код: выделить все
# btrfs subvolume set-default 268 /mnt/rootfs/

268 это ID @ , смотрите список подтомов выше.
Теперь пришло время для перезагрузки обратно в Debian.

3) Настройка GRUB 2.
Теперь нужно изменить подтом по умолчанию обратно на том верхнего уровня. В противном случае, настройки GRUB слетят при следующем обновлении (update-grub). Подтом верхнего уровня всегда имеет ID 5. Сначала надо смонтировать его:
Код: выделить все
# mkdir /mnt/rootfs/
# mount -o subvolid=5 /dev/sda3 /mnt/rootfs/

Теперь можно изменить подтом по умолчанию:
Код: выделить все
# btrfs subvolume set-default 5 /mnt/rootfs/

Готово, можно обновить конфигурацию GRUB. “update-grub” корректно обнаруживает, что система использует подтом "@" и соответственно обновляет /boot/grub/grub.cfg. Вот почему нельзя продолжать использовать подтом "@" по умолчанию (c ID 268), а не том верхнего уровня. "/boot/grub/grub.cfg" имел бы конфигурацию "linux /@/boot/vmlinuz", но нет другого подтома "@" в подтоме "@", и таким образом путь будет неверным.
Обновляем конфигурацию GRUB:
Код: выделить все
# update-grub

Убедимся что /boot/grub/grub.cfg обновился:
Код: выделить все
# grep '/@/' /boot/grub/grub.cfg
if loadfont /@/usr/share/grub/unicode.pf2 ; then
  set locale_dir=($root)/@/boot/grub/locale
if background_image /@/usr/share/images/desktop-base/joy-grub.png; then
        linux   /@/boot/vmlinuz-3.9-1-amd64 root=UUID=4577942d-0841-42e9-a2f3-3d04b91ff2d5 ro rootflags=subvol=@  i915.i915_enable_rc6=1 i915.lvds_downclock=1 pcie_aspm=force cgroup_enable=memory quiet
        initrd  /@/boot/initrd.img-3.9-1-amd64
        linux   /@/boot/vmlinuz-3.9-1-amd64 root=UUID=4577942d-0841-42e9-a2f3-3d04b91ff2d5 ro single rootflags=subvol=@
        initrd  /@/boot/initrd.img-3.9-1-amd64

Теперь нужно переустановить GRUB с измененной конфигурацией, в противном случае он не сможет найти необходимые файлы на новых местах:
Код: выделить все
# grub-install /dev/sda


4) Последний штрих.
Добавим в /etc/fstab опцию монтирования "subvol=@" к "/"
Код: выделить все
UUID=4577942d-0841-42e9-a2f3-3d04b91ff2d5  /  btrfs noatime,subvol=@,compress=lzo  0  0

Перезагрузиться и готово.

5) Снапшоты и откаты системы.
Делать снимки состояния (снапшоты) и откатываться на них легко:
Код: выделить все
# mount /dev/sda3 /mnt/rootfs/
# cd /mnt/rootfs/
# btrfs subvolume snapshot @ @_snapshot

Если надо загрузиться с "@_snapshot" вместо "@" нужно просто переименовать подтома:
Код: выделить все
# cd /mnt/rootfs/
# mv @ @_old
# mv @_snapshot @

Перезагрузка, и используется вновь созданный подтом (снапшот). Если @_old не нужен, его можно просто удалить:
Код: выделить все
# mount /dev/sda3 /mnt/rootfs/
# cd /mnt/rootfs/
# btrfs subvolume delete @_old


Источник http://blog.kourim.net/installing-debian-on-btrfs-subvolume
Sunderland93
 
Стаж: 47 лет 10 месяцев 23 дня

Установка Debian на подтом Btrfs

Спонсор

Спонсор
 

Re: Установка Debian на подтом Btrfs

Сообщение ALEXX » 03 апр 2015, 12:08

Я на Wiki почитал немного... Хотелось бы конкретики. Почему именно Btrfs? Чем она хороша? Примеры, недостатки?
Аватар пользователя
ALEXX
Администратор
Администратор
 
Сообщений: 1136
Фото: 34
Стаж: 2 года 11 месяцев 2 дня
Откуда: Королёв
Благодарил (а): 325 раз.
Поблагодарили: 186 раз.

Re: Установка Debian на подтом Btrfs

Сообщение Sunderland93 » 03 апр 2015, 14:20

hotmax писал(а):

Я на Wiki почитал немного... Хотелось бы конкретики. Почему именно Btrfs? Чем она хороша? Примеры, недостатки?

Более производительна, позволяет легко присоединять тома и отдельные диски к общей иерархии (как в LVM), имеет систему снимков состояния (снапшотов), разделы являются подтомами (subvolumes), которые отображаются как директории. Данные занимают ощутимо меньше места, поддерживается сжатие. Лучше подходит для SSD. Это пока всё, что я знаю. Сам недавно начал изучать.
Sunderland93
 
Стаж: 47 лет 10 месяцев 23 дня

Re: Установка Debian на подтом Btrfs

Сообщение Sunderland93 » 03 апр 2015, 14:22

Ext4 можно легко сконвертировать в Btrfs, и при необходимости - вернуть всё как было.
Sunderland93
 
Стаж: 47 лет 10 месяцев 23 дня

Re: Установка Debian на подтом Btrfs

Сообщение Oleg65 » 03 апр 2015, 17:11

Снова вопрос: в чем ее преимущества перед Reiser? Или перед другими ФС? Только в том, что она когда-нибудь станет стабильной? Тесты нагугленные - все разные, есть кто за и есть кто против. В ОК Вы мне так ничем и не аргументировали.
Вот из Викепедии:
"Btrfs включена в основную ветвь ядра Linux начиная с версии 2.6.29-rc,[7] но остаётся экспериментальной и не готова для промышленного использования. В июне 2010 года разработчики не рекомендовали использовать данную ФС ни для чего кроме тестирования, так как, по словам одного из разработчиков, она «могла съесть ваши данные» (англ. may eat your data).[11] Проведённая ресурсом Phoronix оценка производительности показала, что Btrfs с включённым режимом хранения данных в сжатом виде иногда опережает по производительности ФС Ext4..."
В разделе Недостатки:
" При большом количестве перезаписей случайных фрагментов файлов возникает фрагментация (из-за copy-on-write)[20]"
Так в чем же ее прелесть?
Аватар пользователя
Oleg65
Местный говорун
Местный говорун
 
Сообщений: 789
Стаж: 2 года 10 месяцев 5 дней
Откуда: г.Коломна Моск.обл.
Благодарил (а): 55 раз.
Поблагодарили: 180 раз.

Re: Установка Debian на подтом Btrfs

Сообщение Sunderland93 » 03 апр 2015, 17:32

Oleg65 писал(а):

Снова вопрос: в чем ее преимущества перед Reiser? Или перед другими ФС? Только в том, что она когда-нибудь станет стабильной? Тесты нагугленные - все разные, есть кто за и есть кто против. В ОК Вы мне так ничем и не аргументировали.
Вот из Викепедии:
"Btrfs включена в основную ветвь ядра Linux начиная с версии 2.6.29-rc,[7] но остаётся экспериментальной и не готова для промышленного использования. В июне 2010 года разработчики не рекомендовали использовать данную ФС ни для чего кроме тестирования, так как, по словам одного из разработчиков, она «могла съесть ваши данные» (англ. may eat your data).[11] Проведённая ресурсом Phoronix оценка производительности показала, что Btrfs с включённым режимом хранения данных в сжатом виде иногда опережает по производительности ФС Ext4..."
В разделе Недостатки:
" При большом количестве перезаписей случайных фрагментов файлов возникает фрагментация (из-за copy-on-write)[20]"
Так в чем же ее прелесть?

Я не пользовался raiser4, и понятия не имею, но то что она практически не развивается сейчас (в отличии от Btrfs) вызывает только скептицизм. Я сравниваю Btrfs с Ext4, и вот тут всё далеко не в пользу второй. Да, ext4 обкатана и проверена временем, но основной разработчик Btrfs, который трудится в Oracle, считает её стабильной (ему виднее). Я тоже разные результаты и разные мнения встречал. У одних работает без сучка и задоринки, у других проблемы. Но положительных отзывов я видел больше. От себя могу добавить, что желательно пользоваться не слишком протухшими ядрами (минимум 3.16).

P.S. самой лучшей ФС очень многие считают ZFS. Думаю не без оснований. Но по лицензионным причинам, в ядро её не включают.
Sunderland93
 
Стаж: 47 лет 10 месяцев 23 дня

Re: Установка Debian на подтом Btrfs

Сообщение Oleg65 » 03 апр 2015, 18:11

Давайте по порядку: статьи 1 и 2 осторожно оптимистичны. Да, можно пользоваться, но страховаться надо. Если Вам не известно, то ReiserFS, ext, btrfs - являются журналируемыми ФС (отличаются способом журналирования) 3, 4. Выкладывая способ перехода на данную ФС - Вы не предупреждаете никого об опасности потери данных (что отличает ее от ext). Не приводите ее плюсов и минусов. Новичек увидев подобный пост будет введен в заблуждение, и, если у него упадет ФС - будет винить не ее, а конкретную ОС (отсюда и меряние дистрами только увеличится) и помочь поднять ее ему - будет очень сложно. Пожалуйста, выкладывайте сообщения о передовых технологиях более полно. Даже может быть надо на форум какую-то ветку "Эксперимент".
Аватар пользователя
Oleg65
Местный говорун
Местный говорун
 
Сообщений: 789
Стаж: 2 года 10 месяцев 5 дней
Откуда: г.Коломна Моск.обл.
Благодарил (а): 55 раз.
Поблагодарили: 180 раз.

Re: Установка Debian на подтом Btrfs

Сообщение Sunderland93 » 03 апр 2015, 18:28

Oleg65 писал(а):

Давайте по порядку: статьи 1 и 2 осторожно оптимистичны. Да, можно пользоваться, но страховаться надо. Если Вам не известно, то ReiserFS, ext, btrfs - являются журналируемыми ФС (отличаются способом журналирования) 3, 4. Выкладывая способ перехода на данную ФС - Вы не предупреждаете никого об опасности потери данных (что отличает ее от ext). Не приводите ее плюсов и минусов. Новичек увидев подобный пост будет введен в заблуждение, и, если у него упадет ФС - будет винить не ее, а конкретную ОС (отсюда и меряние дистрами только увеличится) и помочь поднять ее ему - будет очень сложно. Пожалуйста, выкладывайте сообщения о передовых технологиях более полно. Даже может быть надо на форум какую-то ветку "Эксперимент".

Btrfs журналируемая. Не все статьи пишутся для новичков. Новичку вообще не следует лезть в это дело. Раз по умолчанию предлагается Ext4 - то всё. Сейчас немного освобожусь и напишу статью о Btrfs уже ориентируясь на новичков.

P.S. данные можно потерять на любой ФС. Бэкапы никто не отменял. Но в случае с Btrfs, всё проще.
Sunderland93
 
Стаж: 47 лет 10 месяцев 23 дня

Re: Установка Debian на подтом Btrfs

Сообщение shursh » 03 апр 2015, 22:33

Прочитал всю ветку, и немного не понимаю - зачем эти эксперементы с ФС ?
Чем не устраивает, устанавливаемая по умолчанию ext4 ?
Изображение
Аватар пользователя
shursh
Уважаемый участник
Уважаемый участник
 
Сообщений: 302
Фото: 68
Стаж: 2 года 10 месяцев 4 дня
Откуда: Беларусь, Брест
Благодарил (а): 100 раз.
Поблагодарили: 90 раз.

Re: Установка Debian на подтом Btrfs

Сообщение Sunderland93 » 04 апр 2015, 07:15

shursh писал(а):

Прочитал всю ветку, и немного не понимаю - зачем эти эксперементы с ФС ?
Чем не устраивает, устанавливаемая по умолчанию ext4 ?

Морально устаревает (Ред Хат её выкинул уже из дефолта, как и SUSE), более медленная, чем Btrfs, для SSD необходима дополнительная настройка (для Btrfs достаточно опции -o ssd), нет штатной возможности отката, нет сжатия данных.
Sunderland93
 
Стаж: 47 лет 10 месяцев 23 дня

След.

Вернуться в Установка и обновление системы

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron