Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Голосование

Используете ли вы BTRFS?

Да
Нет, но теперь попробую
Нет

Автор Тема: BTRFS. Готова ли к использованию в 16.04?  (Прочитано 82142 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Дмитрий Бо

  • Погонщик серверов
  • Модератор раздела
  • Старожил
  • *
  • Сообщений: 3549
  • Я не техподдержка, я за порядком слежу
    • Просмотр профиля
Re: BTRFS. Готова ли к использованию в 16.04?
« Ответ #690 : 23 Января 2017, 10:23:31 »
Подскажите за disaster recovery. Есть два диска, надо соорудить их них один раздел (для хранения бэкапов). Варианты:
1. LVM. Если умирает один диск, то могут потеряться данные на всех LV. Так я не хочу.
2. btrfs. Как тут?
Если собрать их в -d single (не raid0), после смерти sdb файлы на sda останутся доступны? Сама ФС останется в RW? Есть ли команда "btrfs забудь про файлы на sdb, удали остатки файлов, которые частично хранились на sdb, просто продолжай работать"?
Нагуглил похожий вопрос, но там решилось само, без ответов. Сам с бтрфс не работал.

Оффлайн Pilot6

  • Старожил
  • *
  • Сообщений: 14037
  • Xubuntu 18.04
    • Просмотр профиля
Re: BTRFS. Готова ли к использованию в 16.04?
« Ответ #691 : 23 Января 2017, 11:34:47 »
Дмитрий Бо,
В btrfs на двух дисках мета-данные хранятся в режиме raid1. Поэтому при погибании одного из дисков файлы на другом потеряны не будут.

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

А сами файлы достать можно будет.

Но я бы не рекомендовал важные файлы хранить в single.
« Последнее редактирование: 23 Января 2017, 11:42:10 от Pilot6 »
Я в личке не консультирую. Вопросы задавайте на форуме.

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: BTRFS. Готова ли к использованию в 16.04?
« Ответ #692 : 23 Января 2017, 15:28:03 »
Pilot6,
надо золото ноут или компьютер.
Wars ~.o

Оффлайн Sly_tom_cat

  • Don't worry, be happy!
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 12130
  • Xubuntu 22.04
    • Просмотр профиля
    • Github
Re: BTRFS. Готова ли к использованию в 16.04?
« Ответ #693 : 23 Января 2017, 19:23:54 »
Дмитрий Бо, можно поэкспериментировать, конечно, но исходить в ожиданиях нужно из следующего:

По идее Pilot6 - отчасти истину говорит - метаданные то дублируются... только вот относительно режима - могут быть варианты.

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

Но это верно при том, что первичная btrfs создавалась на HDD. Если же речь про SSD (первый диск) то там и метаданные будут в single. И даже если вторым диском добавить hdd, то я не думаю, что режимы хранения чудесным образом поменяются.... и даже dup режима для метаданных не будет.

Чтобы метаданные были в RAID1, нужно будет после добавления второго диска явно провести балансировку с переводом типа хранения метаданных в режим RAID1, без этого сохранится тот режим хранения тот, котрый был задан на первом диске (а на одном диске может быть или single или dup - иного не дано).

Есть ли команда "btrfs забудь про файлы на sdb, удали остатки файлов, которые частично хранились на sdb, просто продолжай работать"?

Это в принципе команда: btrfs device remove missing или есть еще вариант монтирования с опцией degraded... но что после нее будет с данными - вот это и надо проверить экспериментально.
« Последнее редактирование: 23 Января 2017, 19:34:10 от Sly_tom_cat »
Индикатор для Yandex-Disk: https://forum.ubuntu.ru/index.php?topic=241992
UEFI-Boot - грузимся без загрузчика: https://help.ubuntu.ru/wiki/uefiboot

Оффлайн Pilot6

  • Старожил
  • *
  • Сообщений: 14037
  • Xubuntu 18.04
    • Просмотр профиля
Re: BTRFS. Готова ли к использованию в 16.04?
« Ответ #694 : 23 Января 2017, 19:25:05 »
Sly_tom_cat,
Ну это не суть что по умолчанию создается, а что нет. Более интересный вопрос, что будет если часть данных накроется, а метаданные сохранятся.
Я в личке не консультирую. Вопросы задавайте на форуме.

Оффлайн Sly_tom_cat

  • Don't worry, be happy!
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 12130
  • Xubuntu 22.04
    • Просмотр профиля
    • Github
Re: BTRFS. Готова ли к использованию в 16.04?
« Ответ #695 : 23 Января 2017, 19:27:56 »
Pilot6, ну так я с этого и начал - надо экспериментировать.

Однако не стоит исходить в своих ожиданиях из не совсем корректного представления о том, что будет после простого добавления диска (без перебалансировки с изменением типа хранения).

Кстати экспериментальная площадка у меня где-то была (на образах дисков через loop устройствах), будет время - я попробую поэкспериментировать... Но в принципе такую площадку каждый может сделать быстро и поставить свои эксперименты.
« Последнее редактирование: 23 Января 2017, 19:30:18 от Sly_tom_cat »
Индикатор для Yandex-Disk: https://forum.ubuntu.ru/index.php?topic=241992
UEFI-Boot - грузимся без загрузчика: https://help.ubuntu.ru/wiki/uefiboot

Оффлайн Pilot6

  • Старожил
  • *
  • Сообщений: 14037
  • Xubuntu 18.04
    • Просмотр профиля
Re: BTRFS. Готова ли к использованию в 16.04?
« Ответ #696 : 23 Января 2017, 19:30:54 »
Sly_tom_cat,
А никто не спрашивал про "простое добавление диска". ТС собирался на двух дисках сразу раздел создать. Но не будем офтопить про это. Сделать как надо никогда не поздно, пока не накрылось, даже если сразу dup будет.
Я в личке не консультирую. Вопросы задавайте на форуме.

Оффлайн Sly_tom_cat

  • Don't worry, be happy!
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 12130
  • Xubuntu 22.04
    • Просмотр профиля
    • Github
Re: BTRFS. Готова ли к использованию в 16.04?
« Ответ #697 : 23 Января 2017, 19:40:56 »
Если делать сразу из двух то можно вот такое получить (эксперимент на двух одинаковых дисковых образах):
sudo mkfs.btrfs img0 img1
btrfs-progs v4.4
See http://btrfs.wiki.kernel.org for more information.

Label:              (null)
UUID:               a61705d2-8f61-4dbb-8e42-c1a7ef10555d
Node size:          16384
Sector size:        4096
Filesystem size:    2.00GiB
Block group profiles:
  Data:             RAID0           212.75MiB
  Metadata:         RAID1           110.38MiB
  System:           RAID1            12.00MiB
SSD detected:       no
Incompat features:  extref, skinny-metadata
Number of devices:  2
Devices:
   ID        SIZE  PATH
    1     1.00GiB  img0
    2     1.00GiB  img1
Т.е. мы ничего не просили, а нам уже первый раид сбацали для метаданных, а данные - в нулевой раид сразу запихнули ...  :idiot2: т.е. одному диску хана - и всем данным - хана  :( :idiot2: :'(

Причем вот подсунул два разных по размеру файла - "те же яйца только вид сбоку":
sudo mkfs.btrfs img0 img2
btrfs-progs v4.4
See http://btrfs.wiki.kernel.org for more information.

Label:              (null)
UUID:               176a4f55-bff1-466b-9f84-7b3b93216069
Node size:          16384
Sector size:        4096
Filesystem size:    3.00GiB
Block group profiles:
  Data:             RAID0           315.12MiB
  Metadata:         RAID1           161.56MiB
  System:           RAID1            12.00MiB
SSD detected:       no
Incompat features:  extref, skinny-metadata
Number of devices:  2
Devices:
   ID        SIZE  PATH
    1     1.00GiB  img0
    2     2.00GiB  img2

Пользователь добавил сообщение 23 Января 2017, 19:42:23:
Другими словами - если из двух делать сразу то нужно еще явно типы хранения прописывать что бы данные были в single, а не в RAID0.
Индикатор для Yandex-Disk: https://forum.ubuntu.ru/index.php?topic=241992
UEFI-Boot - грузимся без загрузчика: https://help.ubuntu.ru/wiki/uefiboot

Оффлайн Pilot6

  • Старожил
  • *
  • Сообщений: 14037
  • Xubuntu 18.04
    • Просмотр профиля
Re: BTRFS. Готова ли к использованию в 16.04?
« Ответ #698 : 23 Января 2017, 20:00:43 »
Sly_tom_cat,
Ну если уже сделал, то сбалансируй в single данные и грохни один диск. Глянем что можно сделать.

Толко надо туда данных накидать, чтобы на обоих дисках были.
Я в личке не консультирую. Вопросы задавайте на форуме.

Оффлайн Sly_tom_cat

  • Don't worry, be happy!
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 12130
  • Xubuntu 22.04
    • Просмотр профиля
    • Github
Re: BTRFS. Готова ли к использованию в 16.04?
« Ответ #699 : 23 Января 2017, 20:05:41 »
Мне еще надо придумать какие данные туда залить, без данных я просто на образах поигрался с созданием (по умолчанию).

Для меня вот стало не совсем приятным сюрпризом что двайверок 4.4. собрал мне по умолчанию данные в RAID0 на двух дисках.... на сколько я помню, в прошлых версиях данные по умолчанию в single создавались... но могу конечно быть и не прав - давно экспериментировал я с этим.

ЗЫ пошел править статью... напишу что при создании btrfs на более чем одном устройстве лучше явно указать модель хранения данных/метаданных, а не надеятся на какие=-то дефолты ибо они из версию в версию могут и поменяться....
Индикатор для Yandex-Disk: https://forum.ubuntu.ru/index.php?topic=241992
UEFI-Boot - грузимся без загрузчика: https://help.ubuntu.ru/wiki/uefiboot

Оффлайн Pilot6

  • Старожил
  • *
  • Сообщений: 14037
  • Xubuntu 18.04
    • Просмотр профиля
Re: BTRFS. Готова ли к использованию в 16.04?
« Ответ #700 : 23 Января 2017, 20:09:00 »
на сколько я помню, в прошлых версиях данные по умолчанию в single создавались...
Мне тоже так казалось, поэтому и написал... С какого перепугу raid0 по умолчанию не понятно.
Я в личке не консультирую. Вопросы задавайте на форуме.

Оффлайн Sly_tom_cat

  • Don't worry, be happy!
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 12130
  • Xubuntu 22.04
    • Просмотр профиля
    • Github
Re: BTRFS. Готова ли к использованию в 16.04?
« Ответ #701 : 23 Января 2017, 20:22:55 »
С какого перепугу raid0 по умолчанию не понятно.
Ага :idiot2: еще более странен выбор RAID0 для данных при выборе RAID1 для метаданных и системных данных :uglystupid2:
Индикатор для Yandex-Disk: https://forum.ubuntu.ru/index.php?topic=241992
UEFI-Boot - грузимся без загрузчика: https://help.ubuntu.ru/wiki/uefiboot

Оффлайн Pilot6

  • Старожил
  • *
  • Сообщений: 14037
  • Xubuntu 18.04
    • Просмотр профиля
Re: BTRFS. Готова ли к использованию в 16.04?
« Ответ #702 : 23 Января 2017, 20:37:36 »
А закинуть проще всего исходники ядра. Там и объем приличный, и дофига разных файлов, и всегда понять легко что есть, а чего нет.
Я в личке не консультирую. Вопросы задавайте на форуме.

Оффлайн Sly_tom_cat

  • Don't worry, be happy!
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 12130
  • Xubuntu 22.04
    • Просмотр профиля
    • Github
Re: BTRFS. Готова ли к использованию в 16.04?
« Ответ #703 : 23 Января 2017, 20:47:09 »
Вообщем держите мой эксперимент (заранее извиняюсь за простынку):

Сделал из двух файлов по 1Гб btrfs с типами хранения: data: single, metadata: raid1, system: raid1.
Забил его более чем наполовину фотками и видосами с телефона:
$ ll
итого 1098672
drwxrwxrwx 1 root root       750 янв 23 20:30 ./
drwxrwxr-x 4 stc  stc         92 ноя 11 16:09 ../
-rw-r--r-- 1 stc  stc    3469303 июн 16  2013 IMG_20130616_140446826.jpg
-rw-r--r-- 1 stc  stc    2910487 июн 16  2013 IMG_20130616_160626809.jpg
-rw-r--r-- 1 stc  stc    3319447 июн 16  2013 IMG_20130616_160659160.jpg
-rw-r--r-- 1 stc  stc    3052087 июн 16  2013 IMG_20130616_164044061.jpg
-rw-r--r-- 1 stc  stc    1753079 июн 17  2013 IMG_20130617_124001331.jpg
-rw-r--r-- 1 stc  stc    2217783 ноя 23  2013 IMG_20131123_174929747.jpg
-rw-r--r-- 1 stc  stc    2377527 янв  5  2014 IMG_20140105_123655764.jpg
-rw-r--r-- 1 stc  stc    2355255 янв  5  2014 IMG_20140105_124246399.jpg
-rw-r--r-- 1 stc  stc    2228791 янв  5  2014 IMG_20140105_182451773.jpg
-rw-r--r-- 1 stc  stc    2350519 янв  5  2014 IMG_20140105_182748495.jpg
-rw-r--r-- 1 stc  stc    5885735 сен 21  2014 VID_20140921_194523.3gp
-rw-r--r-- 1 stc  stc  441913794 сен 21  2014 VID_20140921_194528.3gp
-rw-r--r-- 1 stc  stc  209257382 янв  2  2016 VID_20160102_131639.3gp
-rw-r--r-- 1 stc  stc  379657484 мар  1  2016 VID_20160229_214007.3gp
-rw-r--r-- 1 stc  stc   62245837 мар 20  2016 VID_20160320_120347.3gp
После чего получил такую картину:
$ sudo btrfs fi us .
Overall:
    Device size:    2.00GiB
    Device allocated:    1.81GiB
    Device unallocated: 193.00MiB
    Device missing:      0.00B
    Used: 1016.42MiB
    Free (estimated): 553.96MiB (min: 457.46MiB)
    Data ratio:       1.00
    Metadata ratio:       2.00
    Global reserve:   16.00MiB (used: 0.00B)

Data,single: Size:1.34GiB, Used:1014.04MiB
   /dev/loop0 624.00MiB
   /dev/loop1 751.00MiB

Metadata,RAID1: Size:208.00MiB, Used:1.17MiB
   /dev/loop0 208.00MiB
   /dev/loop1 208.00MiB

System,RAID1: Size:32.00MiB, Used:16.00KiB
   /dev/loop0   32.00MiB
   /dev/loop1   32.00MiB

Unallocated:
   /dev/loop0 160.00MiB
   /dev/loop1   33.00MiB
... размонтировал и грохнул /dev/loop1

$ sudo umount btrfs/
$ sudo losetup -a
/dev/loop0: [2053]:1074630723 (/home/stc/btrfs/img0)
/dev/loop1: [2053]:1075355094 (/home/stc/btrfs/img1)
$ sudo losetup -d /dev/loop1

Пробую монтировать:
$ sudo mount /dev/loop0 btrfs/
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
       missing codepage or helper program, or other error

       In some cases useful info is found in syslog - try
       dmesg | tail or so.
Облом (ожидаемо).
Пробую с опцией degraded
$ sudo mount -o degraded /dev/loop0 btrfs/
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
       missing codepage or helper program, or other error

       In some cases useful info is found in syslog - try
       dmesg | tail or so.
Опять облом, смотрю dmesg - там вполне понятное разъяснение:
$ dmesg | tail
[2161998.955869] BTRFS info (device loop0): found 3 extents
...
[2162289.245887] BTRFS: missing devices(1) exceeds the limit(0), writeable mount is not allowed
[2162289.279690] BTRFS: open_ctree failed
Монтирую с degraded и в режиме "Только для чтения"
$ sudo mount -o degraded,ro /dev/loop0 btrfs/
stc@stc-w:~/btrfs$
Ура! Есть контакт! Проверяю данные.
Из файлов открываются только выделенные зеленым - красные - кирдык :(
-rw-r--r-- 1 stc  stc    3469303 июн 16  2013 IMG_20130616_140446826.jpg
-rw-r--r-- 1 stc  stc    2910487 июн 16  2013 IMG_20130616_160626809.jpg
-rw-r--r-- 1 stc  stc    3319447 июн 16  2013 IMG_20130616_160659160.jpg
-rw-r--r-- 1 stc  stc    3052087 июн 16  2013 IMG_20130616_164044061.jpg
-rw-r--r-- 1 stc  stc    1753079 июн 17  2013 IMG_20130617_124001331.jpg
-rw-r--r-- 1 stc  stc    2217783 ноя 23  2013 IMG_20131123_174929747.jpg
-rw-r--r-- 1 stc  stc    2377527 янв  5  2014 IMG_20140105_123655764.jpg
-rw-r--r-- 1 stc  stc    2355255 янв  5  2014 IMG_20140105_124246399.jpg
-rw-r--r-- 1 stc  stc    2228791 янв  5  2014 IMG_20140105_182451773.jpg
-rw-r--r-- 1 stc  stc    2350519 янв  5  2014 IMG_20140105_182748495.jpg
-rw-r--r-- 1 stc  stc    5885735 сен 21  2014 VID_20140921_194523.3gp

-rw-r--r-- 1 stc  stc  441913794 сен 21  2014 VID_20140921_194528.3gp
-rw-r--r-- 1 stc  stc  209257382 янв  2  2016 VID_20160102_131639.3gp
-rw-r--r-- 1 stc  stc  379657484 мар  1  2016 VID_20160229_214007.3gp
-rw-r--r-- 1 stc  stc   62245837 мар 20  2016 VID_20160320_120347.3gp


В принципе, пропали те файлы, которые записывались последними. Но нужно учитывать, что это была запись на пустой диск! Т.е. в реальной ситуации такого явного деления на живые и неживые данны - вряд ли случится, скорее всего расброс будет более случайный.
« Последнее редактирование: 23 Января 2017, 20:53:56 от Sly_tom_cat »
Индикатор для Yandex-Disk: https://forum.ubuntu.ru/index.php?topic=241992
UEFI-Boot - грузимся без загрузчика: https://help.ubuntu.ru/wiki/uefiboot

Оффлайн Pilot6

  • Старожил
  • *
  • Сообщений: 14037
  • Xubuntu 18.04
    • Просмотр профиля
Re: BTRFS. Готова ли к использованию в 16.04?
« Ответ #704 : 23 Января 2017, 20:52:52 »
Ура! Есть контакт! Проверяю данные.
Из файлов открываются только выделенные зеленым - красные - кирдык
Ну ништяк значит. Это идеальный вариант. Живые файлы открываются.

Теперь вопрос как починить фс, чтобы грохнуть отсутствующие файлы.

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

 

Страница сгенерирована за 0.056 секунд. Запросов: 29.