Моя цель: вкратце и популярно рассказать о преимуществах и недостатках двух основных файловых систем Linux — Ext4и Btrfs.
В операционной системе Linux Моя цель: вкратце и популярно рассказать о преимуществах и недостатках двух основных файловых систем Linux — ext4и Btrfs.
В операционной системе Linux доступно множество файловых систем на любой вкус.
В большинстве дистрибутивов Linux Ext4 используется как файловая система по умолчанию.
- Как работает файловая система?
Друзья, если вы незнакомы с основами работы файловых систем, скажу об этом несколько слов? чтобы вы смогли лучше понять, в чем разница Btrfs vs Ext4. Файловые системы используются для того, чтобы контролировать способ записи данных на диск, обеспечить доступ к этим данным, а также хранят информацию — метаданные - о файлах. Фактически, все данные в файловой системе делятся на две части - это метаданные и данные пользователя. Это не просто pапрограммировать, но файловые системы постоянно cовершенствуются. Постоянно дорабатывается новая функциональность, и они становятся более эффективными. - Ext4 vs Btrfs
Файловая система Ext4 - это улучшенная версия Ext3, которая, в свою очередь, не что иное, как переработанная Ext2. Ext4 - очень стабильная файловая система, которая была выбрана по умолчанию в большинстве дистрибутивов Linux. Но её код уже порядочно устарел. Кроме того, пользователи Linux хотят новых возможностей и функций, которых нет в Ext4, но они есть в других файловых системах, например, в Btrfs и XFS. Сюда относятся запись добавлением, снапшоты, подразделы, увеличенный объем данных и количество файлов, а также многое другое. Дальше кратко рассмотрим каждую из предложенных файловых систем, чтобы вы смогли выбрать, какая файловая система - Btrfs или Ext4 - лучше именно для вас. - Файловая система Ext4
Максимальный размер раздела: 50-100 Тб.
- Максимальный размер файла: 16 Тб.
- Максимальное количество файлов: 4 млрд.
- Максимальная длина имени: 255 символов.
- Количество вложенных каталогов: не ограничено.
Изначально в Linux использовалась файловая система операционной системы Minix, но она имела много ограничений, поэтому в 1992 году Реми Кард начал работать над файловой системой Ext. Тогда эта файловая система могла использоваться на разделах до двух гигабайт, а максимальный размер имени файла уже был 255 символов.
Спустя немного времени вышла Ext2, в которой было много улучшений, и максимальный размер раздела был увеличен до нескольких терабайт, но у файловой системы была ещё одна проблема - при любом сбое питания был огромный риск потерять все данные. Если во время сбоя записывались какие-либо данные, то файловая система переходила в неопределённое состояние, что могло привести к потере данных, вообще не связанных с записываемыми данными.
Чтобы исправить эту проблему, Стефан Твидл начал работать над Ext3, которая была принята в состав ядра в 2001 году. Для решения такой проблемы все популярные на тот момент файловые системы использовали журналирование. Каждая транзакция записывалась в журнал, а для самой файловой системы применялась только после того, как данные будут полностью записаны на диск. При следующей загрузке файловая система определяла проблему и просто откатывалась к предыдущему состоянию по журналу.
Современная файловая система Ext4 была анонсирована Теодором Цо в 2006 году. Здесь снова были увеличены лимиты, но при этом была сохранена обратная совместимость с Ext3. Файловая система может оперировать с разделами размером 1 000 000 терабайт или один экзабайт, однако делать этого не стоит. При создании разделов размером больше 50-100 терабайт возникают проблемы масштабирования из-за необходимости сохранять очень большие адреса блоков. Ещё один недостаток Ext4 - это отсутствие поддержки выявления повреждения данных из-за выхода из строя аппаратного обеспечения и отсутствие поддержки менеджера томов. Таким образом.
Плюсы Ext4:
- Очень стабильная, проверенная временем файловая система;
- Поддерживается во всех дистрибутивах по умолчанию;
- Продолжает развиваться и улучшаться;
- Поддерживает прозрачное шифрование;
Минусы Ext4:
- Не поддерживает менеджер томов;
- Реальный максимальный объем раздела намного меньше одного экзабайта;
- Не поддерживает новые модные технологии вроде шифрования и сжатия на лету, copy-on-write, дедупликацию, снапшоты и многое другое.
- Файловая система Btrfs
- Максимальный размер раздела: 16 экзабайт.
- Максимальный размер файла: 16 экзабайт.
- Максимальное количество файлов: 2 в 64 степени.
- Максимальная длина имени: 255 символов.
- Количество вложенных каталогов: не ограничено.
Btrfs - это новая файловая система, разработанная с нуля. Расшифровывается как B-Tree Filesystem. Она была анонсирована Крисом Масоном в 2006 году во время его работы в Oracle. Btrfs поддерживает управление несколькими томами на одном разделе, контрольные суммы для блоков (crc), асинхронную репликацию, прозрачное сжатие, а также многие другие возможности современных файловых систем.
В наши дни её уже можно считать стабильной и использовать в качестве основной файловой системы для Linux. Её можно использовать в качестве альтернативы Ext4 как файловую систему для одного раздела, но такие дополнительные функции, как менеджер томов, топография из нескольких дисков и управление снапшотами, лучше не использовать. Они могут вызывать проблемы с производительностью или даже потерю данных. Но опять же, лучше определить экспериментально, подходит ли такая конфигурация для Вашего случая.
Btrfs уже давно полноценно добавлена в ядро и некоторые дистрибутивы поддерживают её выбор на этапе установки. Возможно, для серьезных Enterprise систем эта файловая система ещё не подходит, но для домашнего использования она вполне готова.
Преимущества Btrfs:
- БОльшие лимиты и хорошая масштабируемость по сравнению с Ext4.
- Поддержка большинства возможностей современных файловых систем, таких как менеджер томов, сжатие на лету, дедупликация, copy-on-write, снапшоты и многое другое.
- Поддержка проверки контрольных сумм (crc), что позволяет точно обнаружить повреждение данных из-за аппаратных проблем.
Минусы Btrfs:
- Файловая система относительно новая и совсем недавно она стала считаться стабильной. Использование новых возможностей может привести к повреждению данных.
- Отсутствие шифрования на лету.
Так что же лучше использовать? До сих пор Ext4 была победителем, несмотря на идентичную производительность. Но почему? Ответ - удобство и популярность. Ext4 - по-прежнему отличная файловая система для рабочих станций и настольных компьютеров. Она поставляется по умолчанию, а потому пользователь получит её, просто установив ОС. Кроме того, Ext4 поддерживает разделы до 100 терабайт и файлы до 16 терабайт, а это по-прежнему очень много. Обычным пользователям столько точно не надо.
Btrfs предлагает бОльшие объемы - до 16 экзабайт - как для разделов так и для файлов, а также повышение отказоустойчивости и много дополнительных и очень интересных возможностей. Она уже интегрирована в ядро, однако её ещё многие боятся.
Даже если скорость передачи данных не очень важна, есть такая характеристика, как скорость работы с файлами. В Btrfs есть много полезных функций: копирование при записи, контрольные суммы, снимки, очистка, самовосстановление данных, дедупликация, а также другие интересные улучшения, которые обеспечивают сохранность данных. Для обычного хранения данных Btrfs лучше подходит чем Ext4, но как будет на самом деле покажет время. Что использовать - Btrfs или Ext4 - это только дело вашего вкуса.
На данный момент Ext4 - лучший выбор для обычных пользователей, так как она распространяется как файловая система по умолчанию, а также она быстрее Btrfs при передаче файлов. Btrfs, безусловно, стоит попробовать, но полностью заменять ею ext4 еще рано.
В заключение: я постарался коротко и понятно дать сравнительную характеристику Btrfs и Ext4, привел преимущества и недостатки каждой из них. Думаю, и то, и другое выявляется в процессе долгой эксплуатации при оперировании большими объемами данных. Удачи Вам, уважаемый подписчик, в Выших изысканиях наилучшей фаловой системы для хранения Ваших данных.
***
Если вы не подписались на канал – подписывайтесь! Вы узнаете много интересного и полезного.
Вам понравилось, оказалось полезным? Ставьте, пожалуйста, "лайк"!