В новой версии:
- Стабилизирована и объявлена готовой к повсеместному использованию поддержка кодов коррекции ошибок, позволяющих восстанавливать повреждённые данные по аналогии с RAID 5/6. Реализация основана на кодировании
Рида-Соломона, способном исправить до N ошибок в страйпе (stripe) при наличии N избыточных блоков. Обеспечено автоматическое восстановление деградировавших страйпов. Добавлена возможность применения кодов восстановления в конфигурациях с накопителями разного размера. - Добавлена поддержка находящегося в разработке ядра Linux 7.0.
- Реализованы новые команды «subvolume list» для вывода подразделов с фильтрацией и сортировкой; «subvolume list-snapshots» для показа снапшотов в древовидной форме’; «subvolume reflink-option-propagate» для применения параметров ввода-вывода файла, таких как сжатие, контрольная сумма, количество реплик и список целевых устройств, к экстентам файла.
- Стабилизирована операция раскрутки (rewind) журнала.
- Обеспечено автоматическое восстановление при использовании устройств с некорректной поддержкой команд для сброса прокэшированных операций записи на накопитель (flush и FUA).
- Ускорено восстановление после некорректного завершения работы.
- Повышена производительность ФС, охватывающих несколько устройств.
- Запускаемые в пространстве пользователя утилиты bcachefs переписаны на языке Rust.
В будущем планируется переписать на Rust и компоненты ФС, работающие на уровне ядра.
Началась работа по использованию инструментария Verus для формальной верификации кода на Rust.
Проектом Bcachefs развивается файловая система, нацеленная на сочетание расширенной функциональности, свойственной Btrfs и ZFS, и уровня производительности, надёжности и масштабируемости, характерного для XFS. Bcachefs поддерживает такие возможности, как включение в раздел нескольких устройств, многослойные раскладки накопителей (нижний слой с часто используемыми данными на базе быстрых SSD, а верхний слой с менее востребованными данными из жестких дисков), репликация (RAID 1/10), кэширование, прозрачное сжатие данных (режимы LZ4, gzip и ZSTD), срезы состояния (снапшоты), верификация целостности по контрольным суммам, коды коррекции ошибок, хранение информации в зашифрованном виде (используются ChaCha20 и Poly1305).
Источник: http://www.opennet.ru/opennews/art.shtml?num=65003
