Файловые системы контролируют, где и как ваши данные хранятся и извлекаются с устройства хранения. У пользователей Windows и macOS мало причин беспокоиться о файловых системах, поскольку NTFS и HFS + являются единственным выбором файловых систем, которые у них есть, соответственно.
Пользователи Linux имеют возможность гибко выбирать файловую систему, используемую их машиной, поскольку ядро поддерживает множество из них. Ext4 является опцией по умолчанию для пользователей Linux. Тем не менее, существует еще одна файловая система под названием Btrfs, которую вы могли бы использовать.
Поскольку часть сообщества Linux настаивает на принятии Btrfs в качестве файловой системы по умолчанию, важно понимать функциональные возможности, преимущества и недостатки обоих.
Мы расскажем вам все, что вам нужно знать в этом посте.
Что такое файловая система Ext4?
Первая версия расширенной файловой системы (Ext4) вышла в октябре 2008 года и улучшила свою предшественницу Ext3. Многие дистрибутивы Linux начали использовать Ext4 в качестве файловой системы по умолчанию после ее запуска.
Ext4 - это журнальная файловая система, которая просто означает, что она “записывает” расположение файлов на диске и отслеживает изменения на диске.
Интересно, что первая версия файловой системы Ext4, Расширенная файловая система (“Ext”), вышла в 1992 году для ОС Minix. Позже он был разработан для Linux.
Что такое файловая система Btrfs?
В отличие от файловой системы Ext4, файловая система B-Tree является файловой системой копирования при записи. Это означает, что когда файл дублируется на Btrfs, он не создает другую копию файла. Вместо этого файл разделяется между оригиналом и фантомным файлом “копии”.
С другой стороны, если пользователь хочет изменить экстент данных (непрерывную область хранения), экстент копируется в другое место, а затем изменяется. Таким образом, Btrfs может предотвратить потерю данных в случае потери питания.
Однако файловая система также имеет тенденцию фрагментировать большие файлы, что означает, что вам нужно будет периодически дефрагментировать диск.
Его название происходит от B-деревьев, которые файловая система использует для хранения внутренних файловых структур. Oracle впервые разработала Btrfs в 2007 году, но такие компании, как Facebook и Redhat, с тех пор внесли свой вклад в ее развитие.
Разработчики создали Btrfs, чтобы иметь файловую систему с функциями, такими как моментальные снимки и контрольные суммы.
Особенности файловой системы Btrfs
Некоторые из самых известных функций Btrfs включают:
1. Поддержка хранения массивных файлов
Btrfs может хранить файлы размером до 2 ^ 64 байт, что равно 16 эксбибайтам. Чтобы помочь понять, насколько это велико, вы можете думать об этом так:
Петабайт равен тысяче терабайт, а эксбибайт - 1153 петабайтам. Таким образом, теоретически файловая система Btrfs может управлять 18446,7 петабайтами данных.
2. Эффективное хранение
Поскольку Btrfs предоставляет хранилище на основе экстентов, накладные расходы в метаданных каждого файла значительно сокращаются. Это позволяет Btrfs более эффективно управлять хранилищем и производительностью диска.
Файловая система также обеспечивает эффективное хранение небольших файлов, упаковывая небольшие файлы в виде метаданных.
3. Поддержка RAID
Btrfs поставляется с поддержкой RAID 0, 1 и 10, что позволяет удалять и зеркалировать данные.
4. Простая дефрагментация и изменение размера
Пользователи могут выполнять дефрагментацию и изменение размера разделов, когда файловая система Btrfs находится в сети.
5. Динамическое распределение индексов
Выделяя индексы для файлов по мере необходимости, Btrfs предотвращает истощение индексов и сохраняет их в случае, если пользователь имеет большое количество небольших файлов на диске.
6. Поддержка моментальных снимков
Одна из лучших вещей в Btrfs - это поддержка моментальных снимков. Создание моментального снимка вашей файловой системы легко, и вы можете восстановить данные на диске в другом месте в случае повреждения данных без особых хлопот.
7. Поддержка контрольной суммы
В отличие от многих других файловых систем, Btrfs поддерживает контрольные суммы, которые представляют собой небольшие блоки данных, которые снижают вероятность повреждения данных. Эти блоки данных хранятся в файловой системе и постоянно проверяются на наличие ошибок и повреждения данных.
8. Оптимизированная поддержка SSD
SSD стали вариантом хранения данных для пользователей компьютеров в последнее десятилетие. Эти диски обеспечивают скорость и стабильность и удивительно надежны. Btrfs повышает производительность твердотельных накопителей за счет оптимизации производительности чтения и записи. Это также увеличивает срок службы SSD.
Сравнение файловых систем Ext4 и Btrfs
Противопоставление ключевых особенностей двух файловых систем - правильный способ понять, какая из них объективно лучше:
#1 Тип файловой системы
В то время как Ext4 - это файловая система ведения журнала, Btrfs - это файловая система CoW(с копированием при записи).
#2 Количество поддерживаемых устройств
Использование одной файловой системы на нескольких устройствах делает диски более надежными, а также может предложить большую емкость. Btrfs поставляется с поддержкой RAID, что позволяет напрямую управлять несколькими устройствами на уровне файловой системы.
С другой стороны, Ext4 не поддерживает несколько устройств. Однако вы можете использовать сторонние менеджеры томов для распространения файловой системы на несколько дисков и устройств.
#3 Дедупликация
Дедупликация - это функция файловой системы, которая автоматически удаляет дубликаты данных с диска. Btrfs реализует эту функцию путем замены идентичных блоков данных логическими ссылками на одну и ту же копию блока данных. Таким образом, файловая система хранит пользователю много места.
Напротив, Ext4 не поставляется с функцией дедупликации.
#4 Сжатие
Btrfs поставляется с алгоритмами сжатия в файловой системе, что позволяет сжимать данные на уровне файловой системы прямо при записи в систему. Ext4 не поставляется со встроенной поддержкой сжатия.
#5 Максимальный размер файла и раздела
Ext4 может обрабатывать один exbibyte данных, что равно более миллиона терабайт данных. Файловая система может обрабатывать максимальный размер файла 16TiB.
На Ext4 вы можете создать максимум 2 ^ 232 файла. Напротив, в Btrfs вы можете создать максимум 2 ^ 264 файла. Кроме того, Btrfs может поддерживать раздел размером 16 EiB.
#6 Поддержка контрольной суммы
Ext4 никоим образом не гарантирует целостность данных. С другой стороны, Btrfs использует контрольную сумму, чтобы гарантировать, что данные не будут повреждены.
#7 Поддержка моментальных снимков
Поскольку Btrfs поддерживает CoW, пользователи могут легко создавать снимки файлов, доступные только для чтения. Ext4 не имеет этой функции и не позволяет создавать моментальные снимки.
#8 Суб-распределение блоков
Это функция, в которой большие файлы хранятся в блоках таким образом, чтобы пространство в конце блока использовалось как можно больше. Он включает в себя хранение частей другого файлового блока для экономии места.
Используя суб-распределение блоков, файловая система упаковывает часть блоков внутри других блоков, повышая производительность и эффективность.
Ext4 не имеет функций суб-распределения блоков.
Заключение
Файловая система Ext4 была принята в качестве файловой системы по умолчанию более десяти лет и зарекомендовала себя как надежная и стабильная файловая система. Помимо того, что она подходит для ежедневного использования, она достаточно эффективна, чтобы сохранить ваши данные в безопасности в большинстве случаев .
Годы тестирования и исправления ошибок делают её надежным вариантом, который трудно не рекомендовать. Однако она не поддерживает современные функции, такие как сжатие и дедупликация.
С другой стороны, Btrfs может обрабатывать до шестнадцати раз больше данных, чем Ext4. Хотя это мало что значит для среднего пользователя, это может быть полезно для предприятий. Такие функции, как CoW, контрольные суммы и моментальные снимки, на первый взгляд кажутся достойным для обновления.
Однако Btrfs нестабильна. Многие пользователи Btrfs жалуются, что разделы повреждаются – что по своей сути делает ext4 более надежным, чем Btrfs.
Кроме того, Ext4 может передавать файлы быстрее, чем Btrfs, что делает её более полезной для среднего пользователя.
Если вы выбираете между ними, начните с ext4, пока они не устранят проблемы с Btrfs .
Смотрите другие статьи на нашем канале .
Вы думаете о переходе на Linux?
Два рабочих стола Linux для новых пользователей.
Как вручную добавить репозитории в Linux.
Вы также можете оставить свое мнение об этом посте в разделе комментариев.