Btrfs

Порівняння файлових систем Btrfs та Ext4

Порівняння файлових систем Btrfs та Ext4
Існує багато файлових систем для Linux. Найпоширеніші - Ext4, Btrfs, XFS, ZFS тощо. Кожна з файлових систем має свої варіанти використання, плюси та мінуси. Можливо, вам важко вирішити, яку файлову систему використовувати.

У цій статті я порівняю файлову систему Ext4 та Btrfs. Отже, якщо вам важко вирішити, використовувати файлову систему Ext4 або файлову систему Btrfs, тоді

Вступ до файлових систем Ext4 та Btrfs:

Файлова система Ext4: Ext4 - це четверта версія файлової системи Ext (Extended). Він є наступником файлової системи Ext3. Перша версія файлової системи Ext була випущена в 1992 році для операційної системи Minix. Пізніше він був перенесений на операційні системи Linux. Файлова система Ext4 була випущена в 2008 році. Ext4 - це файлова система, що реєструється.

Файлова система Btrfs: Btrfs або файлова система B-Tree - це сучасна файлова система Copy-on-Write (CoW). Він новий у порівнянні з файловою системою Ext. Він був розроблений для операційних систем Linux корпорації Oracle у 2007 році. У листопаді 2013 року файлову систему Btrfs було оголошено стабільною для ядра Linux.

Порівняння функцій файлових систем Ext4 та Btrfs:

Файлова система Ext4 та Btrfs була розроблена для вирішення різних типів проблем. Отже, мета проектування файлової системи Ext4 була іншою, ніж файлова система Btrfs. І все-таки це файлові системи. Вони мають певну подібність, яку ми можемо порівняти.

i. Максимальний розмір розділу: Файлова система Ext4 підтримує розміри розділів до 1 EiB.

Файлова система Btrfs підтримує розміри розділів до 16 EiB.

ii. Максимальний розмір файлу: Файлова система Ext4 підтримує розміри файлів до 16 Тб (для стандартного розміру блоку 4 Кб).

Файлова система Btrfs підтримує розміри файлів до 16 EiB.

iii. Максимальна довжина імені файлу: Файлова система Ext4 підтримує довгі імена файлів довжиною до 255 символів (255 байт).

Файлова система Btrfs також підтримує довгі імена файлів довжиною до 255 символів (255 байт).

iv. Дозволені символи в каталозі та іменах файлів: Файлова система Ext4 дозволяє будь-які символи, крім / і НУЛЬ (\ 0) символів в іменах каталогів та файлів.

ПРИМІТКА: Ви не можете створити файл або каталог із цим іменем. і ... у файловій системі Ext4 або Btrfs.

v. Максимальна довжина шляху: Файлова система Ext4 не має обмежень щодо довжини шляху до файлу чи каталогу. Отже, ви можете створювати дуже глибокі структури каталогів і зберігати там свої файли.

Те саме стосується файлової системи Btrfs.

vi. Максимальна кількість файлів: Ви можете створити максимум 232 (= 4 294 967 296 ~ = 4 мільярди) файлів у файловій системі Ext4.

Ви можете створювати максимум 264 (= 18,446,744,073,709,551,616 ~ = 18 квінтильйонів) файлів у файловій системі Btrfs.

vii. Метод розподілу inode: Інод - це структура даних файлової системи, яка використовується для опису файлу або каталогу. Отже, для каталогу або файлу потрібен 1 inode. 2 каталоги або 2 файли потребуватимуть 2 inode.

У файловій системі Ext4 ви визначаєте кількість інодів, які файлова система може підтримувати під час створення файлової системи. Ви не можете змінити його після створення файлової системи. Якщо ви створюєте занадто багато маленьких файлів, у вас може залишитися вільне місце на диску у вашій файловій системі, але ви не зможете створювати нові файли / каталоги, якщо у вас немає вільних inode. Це велике обмеження файлової системи Ext4.

У файловій системі Btrfs розподіл inode є гнучким. Файлова система може додавати стільки інодів, скільки потрібно. Отже, у вас ніколи не залишиться без інодів.

viii. Підтримка контрольної суми / ECC: Файлова система Ext4 не зберігає контрольну суму даних, що зберігаються у файловій системі.

Файлова система Btrfs зберігає crc32c контрольну суму даних, що зберігаються у файловій системі. Отже, у разі будь-якого пошкодження даних файлова система Btrfs може його виявити та відновити пошкоджений файл.

ix. Підтримка журналу та копіювання на запис: Файлова система Ext4 - це файлова система ведення журналу. Він не підтримує копіювання на запис (CoW).

Файлова система Btrfs - це файлова система Copy-on-Write (CoW), і вона не має жодної підтримки журналу.

х. Знімок файлової системи: Файлова система Ext4 не може робити знімки файлової системи.

Файлова система Btrfs може робити знімки. Ви можете робити знімки, доступні лише для читання, та знімки, доступні для запису.

ПРИМІТКА: Знімок файлової системи - важлива особливість. Використовуючи цю функцію, ви можете зробити знімок вашої файлової системи, перш ніж випробувати щось ризиковане. Якщо все піде не так, як планувалося, ви можете повернутися до раннього стану, коли все працювало. Це вбудована функція файлової системи Btrfs. Для цього у файловій системі Btrfs вам не потрібні будь-які сторонні інструменти / програмне забезпечення.

xi. Шифрування на рівні файлової системи: Файлова система Ext4 має експериментальну підтримку шифрування на рівні файлової системи.

Файлова система Btrfs не підтримує шифрування на рівні файлової системи.

xii. Дедуплікація на рівні файлової системи: Файлова система Ext4 не підтримує дедуплікацію.

Файлова система Btrfs підтримує дедуплікацію на рівні файлової системи. Для цього вам не потрібні будь-які сторонні інструменти / програмне забезпечення.

ПРИМІТКА: Депуляризація - це спосіб усунення / видалення повторюваних копій даних із файлової системи та збереження у файловій системі лише однієї копії даних (унікальних даних). Цей прийом використовується для економії місця на диску.

xiii. Підтримка декількох пристроїв: Файлова система Btrfs підтримує кілька пристроїв і має вбудовану підтримку RAID. Файлова система Btrfs має вбудований менеджер логічних томів (LVM), який використовується для додавання декількох пристроїв зберігання даних або розділів до однієї файлової системи Btrfs. Одна файлова система Btrfs може охоплювати кілька дисків і розділів.

Файлова система Ext4 не підтримує кілька пристроїв. Ви не можете охопити одну файлову систему Ext4 на кількох дисках або розділах. Щоб поєднати кілька пристроїв зберігання даних та розділи у файловій системі Ext4, вам слід використовувати сторонні менеджери логічного тому LVM 2. Щоб налаштувати RAID, вам слід використовувати сторонні інструменти, такі як DM-RAID або MDADM.

xiv. Стиснення на рівні файлової системи: Файлова система Ext4 не має вбудованої підтримки стиснення на рівні файлової системи.

Файлова система Btrfs має вбудовану підтримку стиснення на рівні файлової системи. Він може стиснути один каталог або один файл або всю файлову систему, щоб заощадити місце на диску.

xv. Можливості автономної зміни файлової системи: Файлова система Ext4 підтримує розширення (збільшення розміру файлової системи) та зменшення (зменшення розміру файлової системи) в режимі офлайн.

Файлова система Btrfs також підтримує зростання та зменшення файлової системи в автономному режимі.

xvi. Можливості зміни розміру онлайн-файлової системи: Файлова система Ext4 має підтримку зростання в Інтернеті (збільшуйте розмір файлової системи при монтажі). Але він не підтримує онлайн-зменшення файлової системи (зменшуйте розмір файлової системи при монтажі).

Ви можете збільшувати (збільшувати розмір файлової системи) та зменшувати (зменшувати розмір файлової системи) файлові системи Btrfs онлайн (коли встановлено).

xvii. Розріджені файли: Функція розрідженого файлу економить місце на диску, коли в файловій системі зберігаються невеликі файли (менші за розмір блоку). Файлова система Ext4 та Btrfs підтримує розріджені файли.

xviii. Блокувати додатковий розподіл: Файлова система Ext4 не підтримує перерозподіл блоків.

Файлова система Btrfs підтримує перерозподіл блоків.

ПРИМІТКА: Коли файлова система зберігає великі файли у файловій системі, великий файл розбивається на блоки, а блоки зберігаються у файловій системі. Останній блок файлу не займає весь блок. Цей останній блок називається хвостовим блоком. Таким же чином, коли зберігається багато маленьких файлів, вони не займають весь блок. Отже, витрачається багато дискового простору. Блоковий розподіл - це спосіб зберігання частин іншого файлового блоку в хвостовому блоці (останній блок іншого файлу, який не займав весь блок) та збереження дискового простору.

xix. Упаковка хвоста: Файлова система Ext4 не підтримує упаковку хвоста.

Файлова система Btrfs підтримує упаковку хвоста.

ПРИМІТКА: Хвостопакування є частиною перерозподілу блоків. Як я вже обговорював, маленькі файли не займають цілого файлового блоку. Отже, для ефективного зберігання невеликих файлів (i.e. програмні вихідні коди) у файловій системі, хвіст малого файлу використовується для зберігання інших малих файлів. Упаковка хвостів покращує продуктивність файлової системи та економить багато місця на диску у файловій системі, де багато невеликих файлів (тобто.e. програмні вихідні коди) зберігаються.

хх. Файлова система на основі обсягу: Як файлові системи Ext4, так і Btrfs є файловими системами на основі екстенту.

ПРИМІТКА: Екстент - це суміжна область запам'ятовуючого пристрою, яка зарезервована для файлу у файловій системі. Файлові системи, що базуються на обсязі, зберігають великі файли у суміжній області зберігання. Це покращує продуктивність файлової системи та підвищує ефективність зберігання.

xxi. Змінний розмір блоку файлу: Файлова система Ext4 підтримує фіксований розмір блоку. Розмір блоку встановлюється перед створенням файлової системи. Після створення файлової системи розмір блоку змінити не можна.

Файлова система Btrfs підтримує змінний розмір блоку. Файлова система може визначити найкращий можливий розмір блоку для зберігання файлу у файловій системі залежно від розміру файлу. Ця функція може заощадити багато місця на диску.

xxii. Розподіл на змиві: Як файлова система Ext4, так і файлова система Btrfs підтримує функцію розподілу на змиві.

ПРИМІТКА: Файлова система виділяє трохи буферного простору в пам’яті комп’ютера. Коли є запити на запис на диск, файлова система не записує блоки даних безпосередньо на запам'ятовуючий пристрій. Натомість файлова система зберігає блоки даних у буферній пам'яті. Коли буферна пам'ять заповнена, файлова система записує всі очікувані блоки даних одночасно на пристрій зберігання. Це зменшує використання центрального процесора, прискорює запис на диск і зменшує фрагментацію диска.

xxiii. Підтримка TRIM: І Ext4, і файлова система Btrfs підтримують TRIM. Це дуже важлива функція для накопичувачів SSD.

ПРИМІТКА: Коли ви видаляєте файл із SSD, команда TRIM повідомляє SSD-накопичувач про сторінки (файлові блоки), які більше не потрібні. SSD стирає непотрібні сторінки (файлові блоки) із флеш-сховища і готує сторінки (файлові блоки) до зберігання нових даних. Без підтримки TRIM швидкість запису на твердотільний диск буде повільнішою, оскільки він заповнюється новими даними.

Переваги Ext4 перед Btrfs:

Файлова система Ext4 - це дуже стара файлова система. Він використовується в операційній системі Linux протягом тривалого, довгого часу. Через це файлова система Ext4 дуже стабільна. Файлова система Ext4 все ще залишається файловою системою за замовчуванням у багатьох популярних дистрибутивах Linux (тобто.e. Ubuntu / Debian). Якщо вам потрібно зберегти деякі дані як звичайний користувач Linux, ви можете тримати очі закритими та використовувати файлову систему Ext4. Файлова система Ext4 має підтримку ведення журналу. Отже, ваші файли повинні бути в безпеці, навіть коли відбувається збій живлення. Це хороша файлова система для щоденного використання.

Переваги Btrfs перед Ext4:

Файлова система Btrfs - це сучасна файлова система Copy-on-Write (CoW), розроблена для серверів зберігання великої ємності та високої продуктивності. Отже, він має безліч розширених функцій, яких у файлової системи Ext4 немає. Файлова система Ext4 була розроблена як проста локальна файлова система.

Основними особливостями файлової системи Btrfs, які корисні щоденним користувачам Linux, є:

  1. Вбудовані знімки рівня файлової системи.
  2. Підтримка декількох пристроїв.
  3. Вбудована підтримка RAID.
  4. Гнучке розподіл інодів.
  5. Оптимізація для зберігання менших файлів (розріджені файли, перерозподіл блоків, упаковка хвоста, змінний розмір блоку).
  6. Вбудована підтримка стиснення на рівні файлової системи.

Це функції файлової системи, для яких ви можете вибрати файлову систему Btrfs над файловою системою Ext4.

Висновок:

У цій статті я порівняв файлові системи Btrfs та Ext4. Я порівняв основні функції файлової системи Btrfs та Ext4. Ця стаття повинна допомогти вам вибрати Btrfs та файлову систему Ext4.

Список літератури:

  1. ext4 - Вікіпедія - https: // en.вікіпедія.org / wiki / Ext4
  2. Btrfs - Вікіпедія - https: // uk.вікіпедія.org / wiki / Btrfs
  3. kernel / git / torvalds / linux.git - Дерево джерела ядра Linux - https: // git.ядро.org / pub / scm / linux / kernel / git / torvalds / linux.git / коміт /?id = 4204617d142c0887e45fda2562cb5c58097b918e
  4. Порівняння файлових систем - Вікіпедія - https: // en.вікіпедія.org / wiki / Comparison_of_file_systems
  5. Дедуплікація даних - Вікіпедія - https: // en.вікіпедія.org / wiki / Data_deduplication
  6. Розріджений файл - Вікіпедія - https: // en.вікіпедія.org / wiki / Sparse_file
  7. Перерозподілити блок - Вікіпедія - https: // en.вікіпедія.org / wiki / Block_suballocation
  8. Обсяг (файлові системи) - Вікіпедія - https: // en.вікіпедія.org / wiki / Extent_ (файлові_системи)
  9. Виділити на змиві - Вікіпедія - https: // en.вікіпедія.org / wiki / Allocate-on-flush
  10. Обрізання (обчислення) - Вікіпедія - https: // en.вікіпедія.org / wiki / Trim_ (обчислення)
Як зафіксувати та транслювати ігровий сеанс на Linux
Раніше грати в ігри вважалося лише хобі, але з часом ігрова індустрія спостерігала величезний ріст з точки зору технологій та кількості гравців. Аудит...
Найкращі ігри для гри з відстеженням рук
Нещодавно Oculus Quest представив чудову ідею відстеження рук без контролерів. Завдяки постійно зростаючій кількості ігор та заходів, які виконують пі...
Як показати накладання екранного меню в повноекранному додатку та іграх для Linux
Гра у повноекранні ігри або використання додатків у повноекранному повноекранному режимі може відключити від відповідної системної інформації, видимої...