Btrfs (B-tree file system) — нова файлова система для Linux, створена з метою реалізації додаткових функцій, які б покращили відмовостійкість, спростили адміністрування і ремонтні роботи.[2] Btrfs зберігає інформацію у вигляді Б-дерева і працює за принципом «копіювання під час запису». Розробка файлової системи почалася в 2007 році в корпорації Oracle, а в серпні 2008 року вихідний код був опублікований під загальною публічною ліцензією GNU (GPL).

Btrfs
Розробник Oracle Corporation, Fujitsu[1] і Red Hat[1]
Структура
Обмеження
Можливості

Можливості ред.

Ядро Linux 4.7.6, що випущено 30 вересня 2016 р., та версія btrfs-progs 4.7.3 реалізують такі можливості btrfs:

  • Файли розміром до 16 ЕіБ (практично ліміт становить 8 ЕіБ через Linux VFS)
  • Ефективне використання простору в разі пакування невеликих файлів
  • Ефективна індексація каталогів
  • Знімки стану (англ. snapshots) тільки для читання та можливість записувати в знімки
  • Підтоми (один або більше окремо монтованих коренів усередині одного фізичного розділу)
  • Контрольні суми для даних і метаданих (CRC-32C)
  • Прозора компресія (zlib або LZO)
  • Гаряче додавання і видалення блочних пристроїв
  • Гаряче балансування (переміщення об'єктів між блочними пристроями для балансування навантажень)
  • Скидання блоків (покращує вирівнювання зносу блоків на SSD накопичувачах з підтримкою TRIM, також дозволяє вивільняти незадіяний простір на деяких віртуальних пристроях)
  • Ефективне додаткове резервне копіювання
  • Фоновий процес для пошуку і виправлення помилок файлів з резервними копіями
  • Гаряча дефрагментація файлової системи
  • Холодна перевірка файлової системи
  • Конвертація з ext3/4 на btrfs, і в разі необхідності відкат до початкового стану (завдяки тому, що перед конвертацією робиться знімок стану)
  • Сіяння файлової системи (оригінальна файлова система і пристрої, на яких вона розташована, включаються в режимі «тільки читання» як стартова точка для нової файлової системи)
  • Підтримка квот для залежних підтомів
  • Надсилання та отримання змін в підтомах
  • Гаряче збільшення і зменшення розміру розділу
  • Клонування файлів («копіювання під час запису» для окремо взятих файлів, або діапазону їх байтів)
  • Дедуплікація даних (відбувається після запису)

Також планується реалізація таких можливостей:

  • Гаряча перевірка файлової системи
  • Об'єктні рівні з відзеркаленням та чергуванням
  • Альтернативні контрольні суми
  • Дедуплікація даних (відбувається під час запису)
  • Інші методи компресій
  • Гаряче відстежування та пересилання даних до швидших пристроїв

Виноски ред.

  1. а б https://web.archive.org/web/20180216205624/http://thread.gmane.org/gmane.comp.file-systems.btrfs/34607
  2. Btrfs Wiki: Main Page (англійською) . Архів оригіналу за 28 червня 2012. Процитовано 8 березня 2012.

Посилання ред.