LINUX.ORG.RU

Fedora 33 Test Week — Btrfs

 , ,


0

3

Проект Fedora анонсировал проведение «Test Week» (недели тестирования). Мероприятие продлится с 31 августа по 07 сентября 2020 года.

В рамках «Test Week» все желающие приглашаются протестировать следующий релиз Fedora 33 и отправить результаты разработчикам дистрибутива.

Для тестирования необходимо установить систему и выполнить несколько стандартных операций. Затем необходимо отчитаться о результатах через специальную форму.

Согласно wiki мероприятия, тестирование допускается проводить в виртуальной машине. Для тестирования доступны сборки архитектур x86 и aarch64.

Основной акцент предстоящей недели сделан на Btrfs. В Fedora 33 эта файловая система будет предлагаться установщиком по умолчанию. В предыдущих версиях Fedora по умолчанию предлагалась файловая система ext4.

В числе особенностей Btrfs по сравнению с ext4, стоит отметить следующие:

  • Copy-on-write. В случае с файловой системой ext4, новые данные записываются поверх старых. Btrfs позволяет записывать новые данные, оставляя старые данные в неприкосновенности. Благодаря этому появляется возможность восстановить систему или данные в случае сбоя.

  • Snapshots. Эта технология позволяет сделать “снимок” файловой системы для последующего отката изменений.

  • Subvolumes. Файловая система Btrfs может быть разбита на так называемые subvolumes (субтома).

  • Поддержка компрессии, что позволяет не только сжимать файлы, но так же снизить число обращений к диску.

Анонс:
https://fedoramagazine.org/contribute-at-the-fedora-test-week-for-Btrfs/

Русскоязычная поддержка: в Matrix-чате #russianfedora:matrix.org

>>> Подробности

Ответ на: комментарий от Midael

Идея в раннем предотвращении bit rot - чтоб в корявые данные не попадали в бекапы итп. Как только проблема с железкой - сразу стоп машина.

Да нет же, просто будет ошибка I/O при чтении испорченного файла. Если есть избыточность, то экстент восстановится из здоровой копии.

anonymous ()
Ответ на: комментарий от gutaper

c ext2 пишешь поди?

ext4, а что? Её я тоже – форматнул и забыл.

dimgel ★★★ ()
Ответ на: комментарий от GAMer

Это-то понятно, неясно, почему IBM/RH позволяют такое творить в своём тестовом полигоне. Всё таки думают когда-то поддерживать её?

потому что они не конкурируют с фейсбуком, а стратегические партнеры. IBM выгодно, если фейсы протестируют свои патчи, а потом купять сервера и накатят свою версию ядра, которые им поддерживать не придется. в фейсбуке своя большая команда. alpha это называется коммьюнити, чтобы не отбить у тебя желание тестировать. типа твои интересы и твое мнение очень важно для нас.

p.s.

systemd, который нужен в первую очередь фейсбуку, активнее всего там патчится и тестируется, включили в RHEL.

crypt ★★★★★ ()
Ответ на: комментарий от crypt

верится с трудом, что фб купит серверы у межделмаша, скорее интерес ибм в том, что у фб очень большая инсталляционная база и это нынешний «кровавый ынтерпрайз», к которому будут стремится уже настоящие клиенты

cobold ★★★ ()
Ответ на: комментарий от cobold

может, и не купят, но то, что у них сотрудничество по разным направлениям, это факт.

crypt ★★★★★ ()
Ответ на: комментарий от cross_platform

Если данные, важные для системы, находятся в процессе перезаписи (например, при обновлении) и в этот момент произошло отключение электричества.

ну да. помидора ведёт себя как винда теперь. «подождите, система обновляется, не выключайте компьютер».

samy_volosaty ★★★★★ ()
Ответ на: комментарий от Midael

Наоборот, при первой же проблеме она «падает» не давая дальше работать до починки. Идея в раннем предотвращении bit rot - чтоб в корявые данные не попадали в бекапы итп. Как только проблема с железкой - сразу стоп машина. Отсюда репутация нестабильной фс.

Ну или по крайней мере так это рассказывали в devel списке федоры те, кто продвигает этот проект.

Как оно на деле, скоро узнаем

На деле тут есть две разные ситуации, и ты их смешиваешь.

С одной стороны, за счёт CoW-архитектуры btrfs умеет вычислять и хранить чексуммы всех хранимых данных (и метаданных), с помощью чего достигается устойчивость к bit rot (определённому типу повреждений данных, который возникает из-за проблем с железом на физическом уровне).

Если при этом используется RAID или дублирование, то btrfs может исправлять повреждения — если нет, то лишь обнаруживать. Btrfs по умолчанию дублирует метаданные (mkfs.btrfs -m dup) — но лишь на HDD. Считается, что SSD слишком умные и высока вероятность того, что данные, записанные в одно время, попадут примерно в одно место флеша, вне зависимости от LBA, и никакой реальной защиты от реальных проблем с железом это не принесёт.

С другой стороны, ввиду той же самой CoW-архитектуры btrfs гораздо менее устойчива к другому типу повреждений данных — а именно, потерянным записям (которые возникают за счёт багов в софте или в прошивках).

За счёт того, что в btrfs метаданные не имеют фиксированного местоположения, а организованы в B-дерево, потеря или повреждение даже одного узла в середине дерева — это очень плохо и скорее всего приведёт к полной или почти полной нечитаемости ФС, в то время как в традиционных ФС с фиксированным расположением метаданных потеря нескольких килобайт испортит только те файлы, которые на эти несколько килобайт непосредственно легли.

И первое, и второе — это две стороны одной монетки.

intelfx ★★★★★ ()
Последнее исправление: intelfx (всего исправлений: 5)
Ответ на: комментарий от intelfx

за счёт CoW-архитектуры btrfs умеет вычислять и хранить чексуммы всех хранимых данных (и метаданных)

для вычисления и хранения чексумм CoW-архитектура не нужна.

anonymous ()
Ответ на: комментарий от anonymous

для вычисления и хранения чексумм CoW-архитектура не нужна

А вот и нет.

Как ты собрался атомарно перезаписывать данные вместе с чексуммами?

intelfx ★★★★★ ()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от intelfx

Как ты собрался атомарно перезаписывать данные вместе с чексуммами?

В одной транзакции. Если ты, конечно, слышал про такое слово…

anonymous ()
Ответ на: комментарий от anonymous

Как ты собрался атомарно перезаписывать данные вместе с чексуммами?

В одной транзакции. Если ты, конечно, слышал про такое слово…

А если бы ты не только «слышал про такое слово», но ещё бы осилил понять его значение, то знал бы, что транзакция — это абстрактная сущность. С точки зрения блочных устройств никаких транзакций не существует.

(В CoW-системах транзакционность достигается за счёт атомарной перезаписи корня дерева хранения.)

Повторяю вопрос: как конкретно ты собрался атомарно перезаписывать данные вместе с чексуммами?

intelfx ★★★★★ ()
Ответ на: комментарий от intelfx

Это вам не соплярис, где на каждый чих нужна своя фича™.

Кто бы говорил.

Создаёшь подтом, на нём образ, пихаешь его в loop, готово. Что ещё нужно?

Как минимум, нужно еще зарезервировать необходимое количество места, ибо у тома - сюрприз! - есть такое свойство, что он должен быть в состоянии записать/перезаписать каждый блок. Снапшоты тома ситуацию с резервированием места усложняют. Объяснять почему?

Иначе у тебя может получиться что-то типа китайской флэшки на 16 гигов, на которую можно записать только 2.

Не, можно конечно сказать, что все твои тома sparse и утереться.

anonymous ()
Ответ на: комментарий от anonymous

Как минимум, нужно еще зарезервировать необходимое количество места

man fallocate

Снапшоты тома ситуацию с резервированием места усложняют.

Кто говорил про снапшоты?

intelfx ★★★★★ ()
Ответ на: комментарий от anonymous

Не знаю насчёт лечиться… Но то, что ему для начала выучиться надо - это точно. Однако, для этого, как минимум придётся не хамить преподавателям и экзаменаторам. Что-то мне посдказывает, что это не его случай…

anonymous ()
Ответ на: комментарий от intelfx

Ты не в курсе, хоть какие-то подвижки есть с raid5/6? Был же патч несколько лет назад, который вроде был предназначен решить проблему write hole.

Пожалуй единственное, что меня на zfs держит. А так бекапы есть, использовался бы себе без гемора эту fs.

gutaper ★★★★ ()
Ответ на: комментарий от gutaper

Nы не в курсе, хоть какие-то подвижки есть с raid5/6? Был же патч несколько лет назад, который вроде был предназначен решить проблему write hole.

Нет. Вообще, такое ощущение, что на RAID5/6 все забили.

Но я должен заметить, что write hole — это далеко не самая большая проблема RAID5/6 в btrfs. Страшную сказку на ночь читать сюда:

    Name: parity-raid-write-hole

        Report: numerous, it's probably the most famous btrfs raid5 bug,
        and the one inexperienced users blame most often for data losses.

        Impact:  negligible.  It occurs orders of magnitude less often
        and destroys orders of magnitude less data each time it occurs
        compared to the above bugs.

        Workaround:  Don't worry about write hole yet.  The other bugs
	will ruin your day first.
intelfx ★★★★★ ()
Последнее исправление: intelfx (всего исправлений: 4)
Ответ на: комментарий от intelfx

Вот спасибо. Теперь хоть понятно, что нефиг ждать. Придется таки собирать себе в сусе паке с zfs

gutaper ★★★★ ()
Ответ на: комментарий от intelfx

Как минимум, нужно еще зарезервировать необходимое количество места

man fallocate

О, вот ты и про fallocate вспомнил. А вдруг забудешь, когда будешь создавать?

Кто говорил про снапшоты?

То есть снапшоты в такой ситуации тебе принципиально неинтересны? Или когда когда оно тебе понадобиться, будешь на коленке колхозить «на каждый чих свою фичу™.»

И да, я таки не понял - ты дотумкал бестолковкой, чем снапшоты усложняют жизнь в плане резервирования места для блочного устройства?

anonymous ()
Ответ на: комментарий от anonymous

О, вот ты и про fallocate вспомнил.

Я — и не забывал.

А вдруг забудешь, когда будешь создавать?

А вдруг забыть можно много чего. Предполагается, что «оператор ЭВМ» знает что делает.

То есть снапшоты в такой ситуации тебе принципиально неинтересны?

Интересны. Но речь шла не про них, а про сравнение с zvol.

дотумкал бестолковкой

Хамить в другом месте будешь.

intelfx ★★★★★ ()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от anonymous

В ext4 есть чексумы

Только метаданных. И это плюс-минус принципиальное ограничение. Ответ на вопрос «почему» остаётся в качестве упражнения читателю.

intelfx ★★★★★ ()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от intelfx

А вдруг забыть можно много чего. Предполагается, что «оператор ЭВМ» знает что делает.

ну-ну.

Интересны. Но речь шла не про них, а про сравнение с zvol.

А это как раз и имеет прямое отношение к сравнению к zvol. Но ты до этого так и не дотумкал. Неужели ты в нее только ешь?

anonymous ()
Ответ на: комментарий от intelfx

В CoW-системах транзакционность достигается за счёт атомарной перезаписи корня дерева хранения.

Транзакционные модели не опираются на «корни и деревья» - это всё внутренние детали имплементации. «Транзакционность» от них не зависит. Есть транзакционные системы без всяких корней и деревьев. Подучиться всё же надо ;)

anonymous ()
Ответ на: комментарий от anonymous

Транзакционные модели не опираются на «корни и деревья» - это всё внутренние детали имплементации.

Естественно — это был пример таковой системы.

«Транзакционность» от них не зависит. Есть транзакционные системы без всяких корней и деревьев.

О чём я тебе и написал в самом начале. Только вот незадача, транзакционность сама по себе — это абстракция. Вопрос был задан конкретный, и отвечать на него «с помощью транзакций» — всё равно что сказать «с помощью компьютера». Бессмысленный ответ, хотя в принципе достойный анонимного хамоватого ыксперта.

Подучиться всё же надо ;)

…тебе? Хорошая идея, да.

intelfx ★★★★★ ()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от anonymous

А это как раз и имеет прямое отношение к сравнению к zvol. Но ты до этого так и не дотумкал.

И всё? Так много пафоса — тупо про zfs’ные reservations?

Уверен, на qgroups можно соорудить нечто подобное.

Неужели ты в нее только ешь?

Кто бы говорил.

intelfx ★★★★★ ()
Ответ на: комментарий от darkenshvein

FACEPALM
Столько всего прочитал, и везде говорилось, что значит это уже давно стейбл, а все глюки были лет сто назад… Блин, так не хочется назад на ехт4.

Strannik-j ★★ ()

Судя по тегу testday, предыдущий такой testday проводился в 2014 году. Хотя до этого они проводились регулярно. Почему же их не было 6 лет? Неужели разработчикам Fedora Linux всё это время было не до того - они улучшали Systemd и GNOME3? Да и юзеры наверняка бы не откликнулись, потому что Systemd будут пользоваться только фанаты, коих нет.

ZenitharChampion ★★★★★ ()
Ответ на: комментарий от cross_platform

Позвольте вопрос? Вам никогда не доводилось читать на форумах, как люди после обновления грузятся в чёрный экран или не могут загрузиться вообще? Вот для этих случаев, в частности, и предусмотрены решения, вроде Btrfs snapshots.

Где можно почитать о таких решениях «под ключ»? Связку всех инструментов на основе btrf, которые позволят восстанавливать систему?

Im_not_a_robot ★★★★★ ()
Ответ на: комментарий от Im_not_a_robot

А нигде, нет их.

Если только у openSUSE что-нибудь.

Я потихоньку костыляю своё, но с моими темпами, кажется, допишу аккурат к моменту, как бтрфс выкинут из ядра за древностью.

intelfx ★★★★★ ()
Ответ на: комментарий от cross_platform

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

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

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

Кому нужна стабильность держит RAID, что-то не слышал что-бы датацентры обмазывались btrfs.

shpinog ★★ ()
Последнее исправление: shpinog (всего исправлений: 1)
Ответ на: комментарий от cross_platform

Позвольте вопрос? Вам никогда не доводилось читать на форумах, как люди после обновления грузятся в чёрный экран или не могут загрузиться вообще? Вот для этих случаев, в частности, и предусмотрены решения, вроде Btrfs snapshots.

Это ССЗБ. Можно просто в загрузчике держать отдельную запись для восстановления, мб 200-300 со всеми инструментами. Это крайние случаи, которые происходят в 99% из-за рукожопного синдрома.

Но нет, надо целую фс замутить для этого. Я как бы не против бтрфс и новых фс в прицепе. Просто фанбои бтрфс считают долгом навязывать своё поделие везде и доказывать его нужность.

shpinog ★★ ()
Последнее исправление: shpinog (всего исправлений: 1)
Ответ на: комментарий от Im_not_a_robot

Где можно почитать о таких решениях «под ключ»?

Штатные комманды btrfs - это и есть решение под ключ. Создал snapshot, обновил систему, если система не загрузилась, грузитесь в snapshot.

Удобнее всего это реализовано в OpenSuse, где snapshot`ы добавляются в grub автоматически. В других дистрибутивах грузиться в snapshot можно менее автоматизированным способом.

cross_platform ()
Ответ на: комментарий от cross_platform

Штатные комманды btrfs - это и есть решение под ключ.

Создал snapshot, обновил систему, если система не загрузилась, грузитесь в snapshot.

Сдаётся мне, ты не понимаешь значение термина «под ключ».

«Под ключ» — это как в винде. Ты просто работаешь, а система сама в нужный момент создаёт снапшоты, подчищает старые, предлагает откатиться при обнаружении проблем или по запросу администратора (автоматически сохраняя при этом данные пользователя).

Штатными командами btrfs ничего из вышеперечисленного не достижимо.

intelfx ★★★★★ ()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от intelfx

«Под ключ» — это как в винде

Ого! Это что-то новенькое! Линуксойды стали ровняться на винду!

система сама в нужный момент создаёт снапшоты, подчищает старые

В OpenSuse всё именно так.

предлагает откатиться при обнаружении проблем

Как должно быть озвучено сие предложение? Вам звонят в дверь и на ваш вопрос «Кто там?» голос за дверью отвечает «Мы предлагаем вам откатиться, так как у вас проблемы». Как-то так?

cross_platform ()
Ответ на: комментарий от Strannik-j

ну так откатись. тупо копируй файло на внешний винт, mkfs.ext4
файло назад и новую метку в fstab
sudo blkid /dev/sdb5

darkenshvein ★★★★★ ()
Ответ на: комментарий от st4l1k

А правда, что атомарность апдейта обеспечивается милостью божьей? Типа таинство такое. Обычные операции могут привести к поломке, а как назвали апдейтом, так сразу все и наладилось?

AVL2 ★★★★★ ()
Ответ на: комментарий от cross_platform

Ого! Это что-то новенькое! Линуксойды стали ровняться на винду!

розенталь.pdf

А вообще — да. Не вижу в этом ничего зазорного. Ещё можно на макось равняться, говорят, там механика снимков и бэкапов очень хорошо проработана. Но я не пользовался.

В OpenSuse всё именно так.

И никогда не бывает так, что снимок снят в середине обновления или ещё каким-либо образом логически неконсистентен? Хорошо. Если правда так.

А с восстановлением что? Можно ли высокоуровневой командой загрузиться в снимок? А восстановить систему из снимка, сохранив при этом данные пользователя?

Как должно быть озвучено сие предложение? Вам звонят в дверь и на ваш вопрос «Кто там?» голос за дверью отвечает «Мы предлагаем вам откатиться, так как у вас проблемы». Как-то так?

Незачем паясничать.

В простейшем случае это должно выглядеть как принудительный показ меню граба с фокусом на подменю со снапшотами в случае N (N >= 1) сбоев загрузки подряд.

intelfx ★★★★★ ()
Ответ на: комментарий от intelfx

говорят, там

Да-да, конечно…

И никогда не бывает так, что снимок снят в середине обновления

Снимок деляется перед тем, как вы набрали zypper update. Это последовательные процедуры, а не параллельные. Вы набираете zypper update и snapper сначала делает снэпшот, а потом запускает обновление. Автоматика!

это должно выглядеть как принудительный показ меню граба с фокусом на подменю

Suse показывает меню со снэпшотами в меню grub.

cross_platform ()
Ответ на: комментарий от cross_platform

Надо заметить, что все это противоречит «Штатные комманды btrfs - это и есть решение под ключ» - все что связано со снаппером в зюзе штатным не является, тот же граб у них по настоящему ЖОСКО патченый.

Вопрос интеграции с загрузчиком в devel федоры тоже обсуждали, ужаснулись тем решениям, которые в зюзе сделаны, и решили пока отложить вопрос.

Midael ★★★★★ ()
Ответ на: комментарий от Midael

Надо заметить, что все это противоречит

Один «ключ» более «виндовенький»(Suse), другой «ключ» менее «виндовенький».

Suse, конечно, предлагает невероятно удобное решение. Что да, то да. Мне, зачастую, вообще кажется, что флагманом линукс являются они, а не RedHat.

cross_platform ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.