Файловая система btrfs: вводные соображения

Алексей Федорчук

Хайку, танки, БТРы
Почти Владимир Шинкарёв

Казалось бы, ZFS, интегрировав в себе файловую систему и систему управления разделами и томами, поставила точку в длинной истории тех и других. Если не затрагивать серверного сегмента, то обеспечиваемая ею лёгкость администрирования устройств хранения данных и быстродействие файловых операций неожиданно сделало анахронизмом все прочие системы этого назначения — в тех ОС, для которых она разрабатывалась (Solaris, OpenSolaris и его клоны) и на которые она портирована (FreeBSD и, по слухам, NetBSD).

Одна беда — на некоторые ОС она не может быть портирована в принципе, из-за лицензионных соображений. В число таких ОС попадает и Linux, несколько более популрный, нежели все перечисленные выше, вместе взятые: непосредственная интеграция ZFS в ядро невозможна из-за несовместимости лицензии. Конечно, предприимчивые пользователи Linux (уж чего-чего, а предприимчивости записным линуксоидам не занимать стать) немедленно прикрутили её через FUSE (Filesystem in Userspace — файловая система в пользовательском пространстве). Однако, исходя из общих соображений, представляется очевидным, что это не то.

Linux-мир не мог не ответить на наглое бесчинство компании Sun, выпустившей ZFS под лицензией CDDL. И таким ответом стала файловая система btrfs Крисом Мейсоном (Chris Mason) под эгидой компании Oracle, при участии волонтёров от FOSS-сообщества и распространяемая на условиях GPL. Работа над btrfs была начата в середине 2007 года, а уже к концу 2008 года был обещан её первый стабильный релиз, что было бы беспрецедентным случаем в области разработки файловых систем.

Чуда не произошло — и в ушедшем году btrfs в стабильной форме мы не увидели. Однако начало наступившего года было всё же ознаменовано радостными событиями: выходом в свет версии 0.17 — раз, её инкорпорацией в пре-релизное ядро linux-2.6.29-rc1 — два, и обещанием включить её поддержку в релиз ядра — три.

Волею обстоятельств личного характера во время Всенародного Рождественского запоя в ночь с 25-го на 14-е мне пришлось отложить до лучших времён и FreeBSD, и OpenSolaris, обратившись к Linux’у. Благо выход бета версии Zenwalk 5.4 дал к тому хороший повод. А поскольку после длительного общения с ZFS все «действующие» Linux’овые файловые системы оставляли чувство глубокого неудовлетворения, находящаяся в предродовой стадии ext4 не обещала ничего принципиально нового, завершения работы над файловой системой tux3 можно ждать разве что к турецкой Пасхе, взоры невольно обратились к btrfs. Тем более, что в ней были обещаны практически все особенности, делающие ZFS такой привлекательной для конечного пользователя — разве что кроме возможности вскипятить мировой океан.

Пацан решил — пацан сделал. После комплекса предварительных мероприятий btrfs была водружена на один из разделов одного из моих винчестеров и в первом приближении опробована в работе — пока в сугубо тестовом режиме. Благоприятный итог первого знакомства дал основание его расширить и углУбить. В результате чего вниманию читателей предлагается серия разрозненных заметок, посвященных этому углублению и расширению, которые будут сочиняться по ходу процесса.

А пока — источники информации:

  • Btrfs — официальный сайт проекта, содержащий ссылки на документацию (FAQ, руководство по быстрому старту и так далее) и исходники системы и утилит для работы с ней; как легко догадаться, на английском языке.
  • Btrfs — русскоязычное описание основных особенностей.

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

Файловая система btrfs: вводные соображения: 7 комментариев

  1. Почитал список возможностей, на официальной вики проекта, и что то оно мне не сильно напомнило ZFS, как впрочем и более развернутое описание в статье Андрея Пешеходова, конечно любопытно было бы посмотреть как реализованы все планы может и правда так же удобно, но пока этого не видно, так же например в zfs больше понравилась наглядность команд, например создание пула zpoll create …, а в Btrfs либо какие то не очень наглядные сокращения, либо ключи.
    А так будем ждать реализации, а потом уж можно будет с чем то сравнивать, вон в той же ZFS пока хватает проблем, даже с тем что запланировано давно, но в принципе уже вроде юзабельно, я вот решил десктоп перевести чтоб потренироваться, и ощутить все плюсы и минусы :)

  2. > тех ОС, для которых она разрабатывалась (Solaris, OpenSolaris и его клоны) и на которые она портирована (FreeBSD и, по слухам, NetBSD).
    Также ожидается включение поддержки ZFS в Mac OS X

    >В число таких ОС попадает и Linux, несколько более популрный, нежели все перечисленные выше, вместе взятые

    Популярнее чем BSD+Solaris+OpenSolaris+Mac OS — может стоит стать скромнее?!

    >Linux-мир не мог не ответить на наглое бесчинство компании Sun, выпустившей ZFS под лицензией CDDL.
    Нужно просто быть гибче, зато сейчас Linu-мир придумывает велосипед вместо использования готового продукта.

  3. Btrfs будет лучше чем ZFS.Это нормально, Sun сам себя тут нагрел своим CDDLом.Вместо того чтобы развивать их систему или прогибаться, мастера своего дела поступили так как и должны были сделать — сделали свою ФС.Еще лучше и под удобной им лицензией.Достаточно описание посмотреть — все лучшее из разных файловых систем, включая и ZFS есть в дизайне btrfs.Обратное неверно.Дальнейшее понятно.

    Мои ставки: sun сам себя нагрел а btrfs будет забойной штукой.Ну а бсд и макось которые готовый проект не смогли прикрутить за время за которое линуксоиды с нуля накатали свое и лучше — вообще анегдот ходячий.

  4. За цикл статей спасибо кстати.Хорошо пишете.Так держать.

  5. Btrfs будет лучше ZFS.Это нормально, Sun сам себя тут нагрел с CDDL.Вместо того чтобы развивать их систему или прогибаться, мастера своего дела поступили так как и должны были сделать — сделали свою ФС.Еще лучше и под удобной им лицензией.Достаточно описание посмотреть — все лучшее из разных файловых систем, включая и ZFS есть в дизайне btrfs.Обратное неверно.Дальнейшее понятно.

    Мои ставки: sun сам себя нагрел а btrfs будет забойной штукой.Ну а бсд и макось…хм…вижу несколько сценариев развития, ни один из них любителям этих ОС не понравится.

    P.S. извиняюсь если дуп, комент что-то не появился.

  6. > Нужно просто быть гибче, зато сейчас Linu-мир придумывает велосипед вместо использования готового продукта.
    Зато сделали еще лучше.Посмотрите на дизайн btrfs и потенциальные возможности.Они в конечном итоге были правы, IMHO.

  7. Не хочу огорчать любителей zfs но btrfs взял все лучшее и из ее дизайна.Но заодно и из других дизайнов.А лицензия — сан сам выбор сделал.Результат логичен и предсказуем.

Обсуждение закрыто.