Принято решение использовать в Fedora 16 по умолчанию файловую систему Btrfs
На последнем заседании управляющего комитета проекта Fedora принято решение перейти начиная со следующего релиза Fedora 16 к использованию по умолчанию файловой системы Btrfs с сохранением LVM в качестве менеджера логических разделов (использование встроенного в Btrfs менеджера томов пока не утверждено). Таким образом Fedora Linux станет первым дистрибутивом, полностью перешедшим на Btrfs - проекты Ubuntu и MeeGo пока только планируют такой переход. Релиз Fedora 16 запланирован на 25 октября. Если необходимый уровень стабильности и функциональности не будет достигнут до заморозки перед релизом Fedora 16, разработчики имеют возможность отложить миграцию на Btrfs до следующего выпуска, как это было в случае с интеграцией systemd.
Напомним, что в настоящий момент в Fedora Linux уже присутствует опциональная возможность установки с использованием файловой системы Btrfs, а также полная поддержка управления логическими разделами и подразделами Btrfs. В состав дистрибутива интегрирован плагин yum-plugin-fs-snapshot, позволяющий использовать снапшоты Btrfs для возврата системы в первоначальное состояние после неудачной установки пакетов или обновления. По оценке разработчиков Fedora Linux файловая система Btrfs работает уже достаточно стабильно, а все ранее высказываемые замечания учтены, например, обеспечена поддержка Btrfs в загрузчике GRUB и подготовлена утилита btrfsck для восстановления содержимого Btrfs-разделов после сбоя. Дополнительно в инсталлятор планируется добавить поддержку преобразования в Btrfs существующих разделов Ext3 и Ext4, задействовать возможности по создания RAID и сжатию хранимых данных.
Некоторые полезные возможности Btrfs:
- Расширенные возможности по обеспечению целостности данных: функция определения и автовосстановления ошибок, через поддержку copy-on-write режима работы с данными и метаданными (транзакционная файловая система, в которой данные не перезаписываются); для всех блоков данных и метаданных дополнительно хранятся контрольные суммы; проверка целостности ФС на лету; возможность продолжения работы даже при частичном повреждении данных;
- Встроенная поддержка хранения данных в сжатом виде;
- Поддержка доступных на запись снапшотов, которые можно использовать для фоновой автоматической установки обновлений, с последующим мгновенным переключением в обновленное окружение и возможностью отката изменений;
- Высокая производительность при работе с файлами небольшого размера (одно обращение к диску вместо трех, минимальный расход дискового пространства для хранения небольших файлов и индексов директорий);
- Встроенные механизмы для динамического распределения inode и предотвращения фрагментации;
- Наличие специального режима для оптимальной работы на SSD-накопителях;
- Максимальное число файлов - 2^64, максимальный размер раздела - 18 эксабайт;
- Двойное индексирование дерева каталогов: Btree и TEA hash;
- Подразделы (несколько корней в одной ФС)
- Быстрая проверка и восстановление ошибок.
- Функции зеркалирования (Raid0, Raid1 и Raid10) и разнесение на несколько дисков на уровне объектов;
- Возможность изменение размера ФС на лету, без остановки работы (включая возможность уменьшения размера).
Из других запланированных для Fedora 16 улучшений можно отметить:
- Возобновление поддержки работы в качестве корневого домена системы виртуализации Xen (Dom0). Начиная с Fedora 8 стандартное Linux-ядро Fedora поддерживает только работу в роли гостевой системы (domU) и не может выступать в роли Xen-хоста (Dom0);
- Уход от использования HAL (Hardware Abstraction Layer) в пользу udev в сочетании с udisks (DeviceKit-disks, взаимодействие с блочными устройствами) и upower (DeviceKit-power, управление питанием);
- Обеспечение поддержки Sheepdog, распределенного хранилища для инфраструктуры виртуальных серверов на базе QEMU/KVM;
- Интеграция Aeolus Conductor, web-интерфейса и набора утилит для создания окружений и управления их работой в различных cloud-системах (EC2, RHEV-M, Rackspace);
- Портирование существующих скриптов инициализации sysVinit в форму сервис-файлов systemd;
- Подготовка готового для использования в облачных конфигурациях пакета с кластерной файловой системой GlusterFS;
- Обновление версии пакета Blender 2.57;
- Интеграция CloudStack, платформы для развертывания, настройки и поддержания приватной, гибридной или публичной cloud-инфраструктуры;
- Переход на Glasgow Haskell Compiler (ghc) 7.0.3 и Haskell Platform 2011.2.0.1;