- Поддерживаемые и рекомендуемые файловые системы в Linux
- Файловые системы Linux
- Рекомендуемые файловые системы
- Характеристики файловой системы
- Отдельные узловые (локальные) файловые системы
- ext2, ext3, ext4
- ReiserFS
- Btrfs
- Многоузловые (разделяемые / кластерные) файловые системы
- Raw Partitions
- Файловая система Oracle Cluster (OCFS)
- OCFS2
- Тестирование двенадцати файловых систем в Linux
- реклама
- реклама
- реклама
- реклама
- Обзор Ext4 vs Btrfs vs XFS
- Как работает файловая система?
- Обзор Ext4 vs Btrfs vs XFS
- Файловая система Ext4
- Файловая система Btrfs
- Файловая система XFS
- Заключение и выводы
Поддерживаемые и рекомендуемые файловые системы в Linux
Цель этой публикации – дать системным администраторам обзор и сравнение файловых систем, доступных в Linux.
Файловые системы Linux
Одной из наиболее интересных особенностей ОС Linux является разнообразие файловых систем.
Файловые системы могут быть определены и построены на основе разделов.
Файловые системы VFAT, ext2, ext3, ext4 и Reiser могут сосуществовать в одной и той же системе Linux, а также с несколькими файловыми системами и необработанными разделами.
Ваш выбор, будет основываться на поддержке, надежности, безопасности и производительности.
Oracle обычно не сертифицирует свои продукты в отношении файловых систем, но сертифицирует операционные системы.
Однако для некоторых дистрибутивов Linux Oracle может выбирать сертификаты для разных файловых систем.
В зависимости от версии Linux может включать в себя системы хранения ext2, ext3, ext4, btrfs и NFS (например, NetApp).
Рекомендуемые файловые системы
Для ОС Linux доступны различные файловые системы:
- Файловые системы ext2, ext3, ext4 являются надежными. ext2 была файловой системой по умолчанию в ядре 2.2. ext3 – это просто расширенная файловая система ext2 с функцией ведения журнала. ext3 является файловой системой по умолчанию для RHEL 3 и 4. ext4 был разработан как преемник ext3. Он предоставляет функции для больших файловых систем, производительности, повышенных ограничений и надежности.
- Файловая система Oracle Cluster (OCFS) – это общая файловая система, разработанная специально для Oracle Real Application Cluster (RAC). OCFS устраняет необходимость привязки файлов базы данных Oracle к логическим драйверам. Токи OCFS могут охватывать один общий диск или несколько разделяемых дисков для избыточности и повышения производительности.
- OCFS2 – это следующее поколение файловой системы Oracle Cluster для Linux. Это основанная на степени POSIX-совместимая файловая система. В отличие от предыдущего выпуска (OCFS), OCFS2 – это универсальная файловая система, которая может использоваться для общих домашних объектов Oracle, что упрощает управление установками Oracle Real Application Cluster (RAC).
- XFS разработан для высокой масштабируемости и обеспечивает почти собственную производительность ввода-вывода, даже если файловая система охватывает несколько устройств хранения данных
Таким образом, рекомендуемыми файловыми системами являются:
- Единый узел: любая файловая система, поддерживаемая поставщиком Linux. Обратите внимание, что любые проблемы с файловой системой должны решаться поставщиком Linux.
- Многоузловые (RAC): системы хранения данных OCFS, raw, NFS (например, NetApp).
Характеристики файловой системы
При выборе файловой системы производительность не является самым важным моментом.
Например, если существует риск того, что данные могут быть повреждены, потеряны или скомпрометированы, не следует использовать быструю файловую систему.
Oracle не поддерживает файлы в файловых системах, которые не имеют возможности сквозного кэширования.
Файловая система должна подтвердить операции записи.
Например, стандартная NFS основана на UDP, которая является сетевым протоколом, который не включает механизм подтверждения.
Одним из поставщиков, который предоставляет поддерживаемую сетевую файловую систему, является Network Appliance, и они используют модифицированный протокол NFS.
Существуют требования безопасности.
Oracle RDBMS и файлы базы данных требуют специальных разрешений для файлов, которые недоступны в некоторых файловых системах (например, VFAT). Если определенные права доступа к файлам не установлены должным образом, СУБД Oracle работает неправильно.
Файлы данных должны быть доступны только для владельца базы данных. Сервер базы данных должен иметь возможность контролировать все другие доступ к файлам и данным.
Журналирование – популярная характеристика.
Основное преимущество заключается в том, что изменения в файловой системе записываются в файл журнала.
Если сервер дал сбой или завершение работы без синхронизации диска, файл журнала может быть применен к файловой системе.
Проверки целостности и восстановление для таких файловых систем очень быстрые.
Это очень заметно при загрузке системы.
Команда fsck быстрее проверяет журналированные файловые системы по сравнению с файловыми система без журналов.
Отдельные узловые (локальные) файловые системы
Примечание: файловые системы НЕ ДОЛЖНЫ быть разделены между отдельными серверами.
ext2, ext3, ext4
– Файловые системы ext2, ext3 и ext4 тесно связаны.
– ext2 можно преобразовать в ext3.
– ext3 может быть установлена как файловая система ext2.
– ext3 – это журналированная файловая система.
– ext3 имеет несколько улучшений производительности по сравнению с ext2.
– ext3 может быть установлен как ext4.
– ext4 имеет все функции, предоставляемые ext3, и предоставляет функции для более крупных файловых систем, производительности, повышенных ограничений, надежности.
ReiserFS
– Это стандартная файловая система для Novell / SuSE Linux. В дистрибутивах RedHat он не установлен по умолчанию, но необходимые пакеты находятся на носителе распространения.
– ReiserFS в настоящее время находится в режиме обслуживания с SuSE / Novell.
Btrfs
– Из Btrfs wiki: Btrfs – это новая копия файловой системы write (CoW) для Linux, предназначенная для реализации расширенных функций, с уделением особого внимания отказоустойчивости, ремонту и простоте администрирования.
– Совместно разработанный в Oracle, Red Hat, Fujitsu, Intel, SUSE, STRATO и многих других, Btrfs лицензируется под лицензией GPL и открыт для участия от кого-либо.
Дополнительную информацию см. На странице https://btrfs.wiki.kernel.org.
XFS разработан для обеспечения высокой масштабируемости и обеспечивает почти собственную производительность ввода-вывода, даже если файловая система охватывает несколько устройств хранения. Дополнительную информацию см. В Файловой системе XFS в Oracle Linux.
Многоузловые (разделяемые / кластерные) файловые системы
Raw Partitions
– Считаются высокопроизводительным решением.
– Чтение и запись не используют буфер буфера ОС.
– Чтение и запись могут перемещать большие буферы, чем входы / выходы файловой системы.
– Требует более опытного администрирования.
Файловая система Oracle Cluster (OCFS)
– Oracle Cluster File System предназначена для использования с RAC. Oracle поддерживает OCFS для использования с файлами баз данных. OCFS не является журналируемой файловой системой, но имеет очень хорошие показатели производительности.
– Его производительность менее чем на 5% медленнее по сравнению с сырыми устройствами, а в большинстве тестов только на 2% медленнее.
– Начиная с версии OCFS. 1.0.14-1, OCFS поддерживают Async I / O.
OCFS2
OCFS2 – это следующее поколение файловой системы Oracle Cluster для Linux. Это основанная на степени POSIX-совместимая файловая система. В отличие от предыдущего выпуска (OCFS), OCFS2 – это универсальная файловая система, которая может использоваться для общих домашних объектов Oracle, что упрощает управление установками Oracle Real Application Cluster (RAC). Среди новых возможностей и преимуществ:
Источник
Тестирование двенадцати файловых систем в Linux
реклама
Введение
В прошлый раз мы тестировали производительность файловой системы ReFS в Windows 10. Там мы затронули некоторые ФС из мира Linux, которые показали достаточно вялые результаты, поскольку из-за ограничений Windows чтение и запись были недостаточно хорошо реализованы. На сей раз подобная несправедливость будет устранена, теперь роли меняются, и файловые системы NTFS, FAT32 и exFAT уже сами становятся гостями. Методика тестирования была усовершенствована, теперь все операции выполняются специальным скриптом, с точностью до миллисекунды замеряющим время, затраченное на определенную операцию. Кроме того был изменен набор данных, вместо поочередного копирования групп различных файлов проводится копирование сразу всех файлов разных типов. Также тестирование теперь не ограничивается только жестким диском, здесь были задействованы более актуальные в настоящее время твердотельные и flash накопители. На каждом из них для размещения тестовых данных был создан раздел объемом 4 Гб, вторым устройством для перемещения данных выступал созданный в оперативной памяти раздел объемом 2304 Мб с файловой системой TMPFS. Поскольку flash-память имеет ограниченное количество циклов перезаписи, то в оценке производительности на данном типе носителей участвовали только нежурналируемые файловые системы.
реклама
Тестовая система:
- Процессор: Xeon E5440 @ 3.4 ГГц
- GIGABYTE GA-P35-DS3L
- Оперативная память: 3584 МБ DDR2-800
- Жесткий диск: Seagate Barracuda 7200.10 3250410AS 250 ГБ
- Твердотельный накопитель: SanDisk SDSSDHII-120G-G25 120 ГБ
- MicroSD карта SanDisk Ultra 16 Гб UHS-I, поключенная с помощью адаптера MXT
- Ubuntu 16.04 x64 с последними обновлениями
Набор данных:
- 100 MP3 файлов — 681,3 Мб
- 880 JPEG изображений 268,8 Мб
- 4 видеоролика в формате MP4 — 492,7 Мб
- 1 ISO образ — 583 Мб
- Суммарный объем:
реклама
Краткая характеристика участников тестирования:
EXT2 — расширенная версия первой файловой системы EXT для ОС на ядре Linux.
EXT3 — журналируемая EXT2.
реклама
EXT4 — значительно расширенная по функционалу EXT3.
BTRFS — прогрессивная файловая система, использующая СУБД-подобную структуру , а также предлагающая множество современных опций.
F2FS — файловая система от Samsung, предназначенная для использования на flash-памяти.
ReiserFS — журналируемая ФС от компании Namesys, позволяющая изменять свой размер на лету без размонтирования.
XFS — высокопроизводительная 64-битная журналируемая файловая система, созданная компанией Silicon Graphics.
JFS — 64-битная журналируемая ФС, разработанная IBM с прицелом на высокую производительность, надёжность и масштабируемость для многопроцессорных компьютеров.
HFS+ — файловая система, использующаяся в macOS.
NTFS — ФС для Windows NT, выросшая из HPFS, совместной разработки IBM и Microsoft для OS/2.
FAT32 — усовершенствованная версия файловой системы FAT для DOS и Windows.
exFAT — расширенная версия FAT32, предназначенная для flash-накопителей.
Результаты тестов:
Итак, для начала запишем наши данные на жесткий диск с гораздо более быстрой оперативной памяти. Считывание происходит моментально, а вот скорость записи служит характеристикой быстродействия конкретной файловой системы для данного типа накопителя.
Новая файловая система F2FS демонстрирует отличный результат, опережая своих оппонентов. За ней следуют продвинутые журналируемые ФС, в основном использующиеся в NIX системах. Гости из Windows, а также устаревшие EXT2 и EXT3 заметно отстают.
Теперь проделаем тоже самое, но уже с быстрым твердотельным накопителем.
Разрыв между первым и замыкающим участниками заметно вырос. На сей раз в лидерах созданная профессионалами Sun Microsystems система XFS, которая показала результат близкий к максимальной пропускной способности интерфейса SATA-II. BTRFS, все еще считающая в некоторых аспектах не совсем стабильной, находится в нижней части списка. Работающая в пользовательском пространстве с помощью специального драйвера, NTFS показала почти в четверо более низкий результат, чем XFS.
А теперь данные будут переноситься наоборот с дисков в ОЗУ. Так как запись происходит очень быстро, то распределение файловых систем в диаграмме будет зависеть от их производительности при считывании.
Ситуация похожа на ту, которая была продемонстрирована в первом тесте. Но тут FAT32 поднялась сразу на семь позиций, а на ее место переехала BTRFS. Устаревшие EXT2 и EXT3 снова замыкают список.
Теперь очередь за SSD.
Видно, что разница сократилась, поскольку и твердотельный накопитель и оперативная память довольно быстрые устройства, и одно лишь это устраняет различные недостатки, присущие каждой их файловых систем. XFS выдала просто ошеломительный результат, практически уперевшись в пропускную способность SATA-II. Более усложненная BTRFS на второй позиции. Несмотря на прослойку в виде FUSE, NTFS заняла довольно почетное место.
Настала очередь flash-накопителей.
exFAT обошла F2FS в тесте записи примерно на 18%. EXT2, как и в предыдущих испытаниях, плетется в конце.
Ну и, наконец, чтение с flash-памяти.
FAT32 показывает, кто здесь царь. Несмотря на почтенный возраст, она и не собирается сдавать своих позиций. К сожалению максимальный размер файла в FAT32 ограничен четырьмя гигабайтами, что совершенно не подходит для тех же фильмов в высоком качестве. Однако, ее замена в лице exFAT отменяет данный изъян ценой всего лишь десятипроцентной потери производительности.
И ради интереса был проведен еще один тест с участием только RAM-дисков (копирование ISO-образа).
Заключение
Мир Linux открывает перед пользователями Windows множество граней, одной из которых является наличие гораздо большего количества различных файловых систем. Каждая из них имеет свои достоинства и недостатки, кто-то силен в одних ситуациях, кто-то в других. И в проведенном тестировании мы попытались выявить данное распределение сил.
В результате наших проверок выяснилось, что более новые и хорошо отлаженные файловые системы стремятся показать более высокую производительность. И наоборот, устаревшие системы уменьшают скорость выполнения операций чтения-записи. Но данное правило не всегда строго выполняется, так как характеристики конкретной файловой системы могут не всегда соответствовать определенным в текущий момент условиям использования, для которых подходит пусть менее передовая, но более подходящая система.
Разумеется в подавляющем большинстве случаев нет возможности менять файловую систему одномоментно с изменившимися критериями эксплуатации. Но в этом и не будет особой необходимости, если заранее оценить рабочее окружение и возможные сценарии использования и лишь затем принимать решение о выборе файловой системы.
Источник
Обзор Ext4 vs Btrfs vs XFS
Многие люди задумываются о выборе лучшей файловой системы для своего компьютера. У пользователей Windows и MacOS X небольшой выбор, им доступна только одна стандартная файловая система, это NTFS и HFS+. В операционной системе Linux все по-другому, здесь доступно множество файловых систем на любой вкус.
Очень широко в Linux используется Ext4, её можно считать файловой системой по умолчанию. Но есть несколько поводов попробовать что-то новое. Например, Btrfs vs XFS. Действительно ли она из них лучше других? Давайте сначала рассмотрим самые популярные файловые системы и особенности их работы, так сказать, сделаем небольшое сравнение.
Как работает файловая система?
Если вы незнакомы с основами работы файловых систем, скажу об этом несколько слов чтобы вы смогли лучше понять, в чем разница Btrfs vs Ext4 vs XFS. Файловые системы используются для того, чтобы контролировать способ записи данных на диск, доступ к этим данным, а также хранят информацию, метаданные о файлах. Фактически, все данные в файловой системе делятся на две части — это метаданные и данные пользователя. Это не просто запрограммировать, но файловые системы постоянно совершенствуются. Постоянно дорабатывается новая функциональность, и они становятся более эффективными.
Обзор Ext4 vs Btrfs vs XFS
Файловая система 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:
- Очень стабильная, проверенная временем файловая система;
- Поддерживается во всех дистрибутивах по умолчанию;
- Продолжает развиваться и улучшаться;
- Поддерживает прозрачное шифрование;
- Не поддерживает менеджер томов;
- Реальный максимальный объем раздела намного меньше одного экзабайта;
- Не поддерживает новые модные технологии вроде шифрования и сжатия на лету, copy-on-write, дедупликацию, снапшоты и многое другое.
Файловая система Btrfs
- Максимальный размер раздела: 16 экзабайт.
- Максимальный размер файла: 16 экзабайт.
- Максимальное количество файлов: 2 в 64 степени.
- Максимальная длина имени: 256 символов.
- Количество вложенных каталогов: не ограничено.
Btrfs — это новая файловая система, разработанная с нуля. Расшифровывается как B-Tree Filesystem. Она была анонсирована Крисом Масоном в 2006 году во время его работы в Oracle. Btrfs поддерживает управление несколькими томами на одном разделе, контрольные суммы для блоков, асинхронную репликацию, прозрачное сжатие, а также многие другие возможности современных файловых систем.
В наши дни её уже можно считать стабильной и использовать в качестве основой файловой системы для Linux. Её можно использовать в качестве альтернативы Ext4 как файловую систему для одного раздела, но такие дополнительные функции как менеджер томов, топография из нескольких дисков и управление снапшотами, лучше не использовать. Они могут вызывать проблемы с производительностью или даже потерю данных.
Btrfs уже давно полноценно добавлена в ядро и некоторые дистрибутивы поддерживают её выбор на этапе установки. Например, SUSE Linux использует её в качестве файловой системы по умолчанию с 2015 года. Зато Red Hat больше поддерживает Btrfs с 2017. Возможно для серьезных Enterprice систем эта файловая система ещё не подходит, зато для домашнего использования она вполне готова. Преимущества Btrfs:
- Большие лимиты и хорошая масштабируемость по сравнению с Ext4.
- Поддержка большинства возможностей современных файловых систем, таких как менеджер томов, сжатие на лету, дедупликация, copy-on-write, снапшоты и многое другое.
- Поддержка проверки контрольных сумм, что позволяет точно обнаружить повреждение данных из-за аппаратных проблем.
- Файловая система относительно новая и совсем недавно она считается стабильной. Использование новых возможностей может привести к повреждению данных.
- Отсутствие шифрования на лету.
Файловая система XFS
- Максимальный размер раздела: 8 экзабайт.
- Максимальный размер файла: 8 экзабайт.
- Максимальное количество файлов: 2 в 64 степени.
- Максимальная длина имени: 256 символов.
- Количество вложенных каталогов: не ограничено.
XFS считается расширенной файловой системой. Это высоко производительная 64-битная, журналируемая файловая система. Поддержка XFS была добавлена в ядро в 2002 году. А в 2009 она впервые была использована в Red Hat Enterprise Linux 5.4. Файловая система рассчитана на очень высокую производительность для больших файловых систем, а также может обеспечивать хорошую производительность для большого количества параллельных операций.
Тем не менее эта файловая система не завоевала большой популярности. Она очень стабильная и производительная, поэтому используется по умолчанию в RHEL 7 и уже в 8, однако в ней нет ничего такого, чего бы не было в Ext4. XFS явно не относится к файловым системам следующего поколения, как Btrfs. К тому же она имеет ограничения, которые могут мешать обычным пользователям. Плюсы XFS:
- Очень стабильная и производительная.
- Не поддерживает возможности файловых систем следующего поколения, такие как управление томами, сжатие, дедупликацию и другие возможности.
- Разделы с XFS можно только расширять, уменьшать нельзя.
Заключение и выводы
Показатель | Ext4 | XFS | Btrfs |
Дата выхода | 1992 | 2002 | 2006 |
Максимальный размер раздела | 50-100 Тб | 8 Эб | 16 Эб |
Максимальный размер файла | 16 Тб | 8 Эб | 16 Эб |
Максимальное количество файлов | 2 в 32 степени | 2 в 64 степени | 2 в 64 степени |
Максимальная длина имени | 255 | 255 | 255 |
Прозрачное шифрование | Да | Нет | Нет |
Прозрачное сжатие | Нет | Нет | Да |
Управление томами | Нет | Нет | Да |
Дедупликация | Нет | Нет | Да |
Уменьшение размера раздела | Да | Нет | Да |
Создание снапшотов | Нет | Нет | Да |
Copy-on-write | Нет | Да | Да |
Так что же лучше использовать? До сих пор Ext4 была победителем, несмотря на идентичную производительность. Но почему? Ответ — удобство и популярность. Ext4 — по-прежнему отличная файловая система для рабочих станций и настольных компьютеров. Она поставляется по умолчанию, а потому пользователь получит её просто установив ОС. Кроме того, Ext4 поддерживает разделы до 100 терабайт и файлы до 16 терабайт, а это по-прежнему очень много. Обычным пользователям столько точно не надо.
Btrfs предлагает большие объемы до 16 экзабайт как для разделов так и для файлов, а также повышение отказоустойчивости и много дополнительных и очень интересных возможностей. Она уже интегрирована в ядро, однако её ещё многие боятся, потому что файловая система относительно новая и пока не совсем понятно чего от неё ждать.
Даже если скорость передачи данных не очень важна, есть такая характеристика, как скорость работы с файлами. В Btrfs есть много полезных функций: копирование при записи, контрольные сумы, снимки, очистка, самовосстановление данных, дедупликация, а также другие интересные улучшения, которые обеспечивают сохранность данных. В ней только недостает функции ZFS — Z-RAID, так что RAID пока находиться на экспериментальной стадии. Для обычного хранения данных Btrfs лучше подходит чем Ext4, но как будет на самом деле покажет время. Что использовать Btrfs или Ext4 — это только дело вашего вкуса.
На данный момент Ext4 — лучший выбор для обычных пользователей, так как она распространяется как файловая система по умолчанию, а также она быстрее Btrfs при передаче файлов. Btrfs, безусловно, стоит попробовать, но полностью заменять ext4 еще рано, это можно будет сделать лишь через несколько лет. Забавно, то же самое, говорили и несколько лет назад, с тех пор много чего поменялось, но Btrfs все еще не считается стабильной. Если у вас есть другое мнение по этому поводу, оставляйте комментарии!
Кстати , если вы используете Windows и Linux на одной машине, вам может быть интересна моя статья: Подключение ext4 в Windows
Источник