Логотип

Bcachefs 1.33 — самое масштабное обновление с полной поддержкой Reconcile

Bcachefs 1.33 — самое масштабное обновление с полной поддержкой Reconcile

Проект Bcachefs только что выпустил версию 1.33 с «самой крупной новой функцией за последние ~2 года» для этой современной файловой системы Linux с копированием при записи, которая поддерживает шифрование, моментальные снимки, сжатие и многое другое, а также предлагает расширенные функции, способные конкурировать с такими файловыми системами, как Btrfs или ZFS.

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

Как мы сообщали ранее, в Bcachefs происходит масштабный переход в плане распространения и поддержки. В середине 2025 года Линус Торвальдс исключил Bcachefs из официального ядра Linux 6.17 после публичного спора с ведущим разработчиком Кентом Оверстритом.

С выходом ядра Linux 6.18 неделю назад основной код Bcachefs был полностью удалён из дерева ядра. Чтобы сохранить Bcachefs и возможность его использования, Оверстрит решил распространять Bcachefs как модуль DKMS, а не как часть встроенной в ядро файловой системы.

В новой версии 1.33 появилось множество улучшений, среди которых наиболее важными являются следующие:

  • Переименованный и переработанный механизм «согласования» (ранее «rebalance_v2»), который теперь обрабатывает как пользовательские данные, так и метаданные, реагирует на изменения в устройстве или конфигурации и автоматически повторно реплицирует поврежденные данные или метаданные без ручного вмешательства.
  • Новая индексация и планирование задач по согласованию, в том числе высокоприоритетная обработка поврежденных экстентов и особый подход к вращающимся дискам (HDD), позволяющий избежать ненужных операций ввода-вывода.
  • Некоторые старые команды, такие как data rereplicate или data job drop_extra_replicas, устарели. Их заменяют новые команды, такие как reconcile status и reconcile wait.
  • Основные улучшения серверной части: асинхронное объединение узлов B-дерева, очищенные точки трассировки и счетчики, улучшенное протоколирование ошибок (с четким различием между программными и жесткими ошибками) и улучшенные отчеты о ходе выполнения этапов восстановления.
  • Новые доступные пользователю параметры монтирования и файловой системы, такие как mount_trusts_udev для проверки устройства и writeback_timeout для управления временем обратной записи, что дает администраторам более точный контроль.
  • Работайте над долгосрочной модернизацией кодовой базы, чтобы подготовиться к переходу на Rust в будущем. Удалите множество путей обработки ошибок в стиле «goto» и создайте более чистую и удобную в сопровождении структуру кодовой базы.
Читать  Как подключить общий ресурс Windows на Linux с помощью CIFS

 

Для получения дополнительной информации см. объявление.

Редактор: AndreyEx

Рейтинг: 5 (1 голос)
Если статья понравилась, то поделитесь ей в социальных сетях:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Это может быть вам интересно


Загрузка...

Спасибо!

Теперь редакторы в курсе.

Прокрутить страницу до начала