Какую файловую систему выбрать для Linux
Если вы только переходите с Windows, то, наверное, уже привыкли, что вам доступна только одна файловая система — NTFS и выбирать просто нет из чего. Но в Linux ситуация совсем другая. Здесь существует огромное множество файловых систем и постоянно создаются новые.
В сегодняшней небольшой статье мы постараемся разобраться какую файловую систему выбрать для Linux, и какие вообще доступны варианты.
Выбор файловой системы для Linux
Все файловые системы можно разделить на два типа: это обычные файловые системы и файловые системы следующего поколения. К обычным файловым системам относится используемая в большинстве дистрибутивов Ext4, она имеет все необходимые для полноценной работы возможности, но не более того.
Файловые системы следующего поколения — это BtrFS, ZFS и другие им подобные. Кроме стандартных возможностей они добавляют такие интересные вещи как дедупликация данных, управление томами, размещение файловой системы на нескольких физических дисках, контрольные суммы для данных, прозрачное сжатие и шифрование, снимки состояния, а также многое другое. Несмотря на все эти преимущества, новые файловые системы ещё не всегда стабильны и не поддерживаются не во всех дистрибутивах, а многие из их возможностей просто не нужны обычным пользователям.
Если кратко отвечать на вопрос, какую файловую систему выбрать для Linux — то ответ — Ext4. Она разработана очень давно, но зато очень стабильна и проверена временем. Она используется по умолчанию во многих дистрибутивов, а её лимитов хватит с головой, как для домашних пользователей, так и для большинства серверов. Но эта файловая система относится к обычным. Если вы не хотите её использовать дальше мы рассмотрим несколько альтернатив, доступных для выбора в установщике Ubuntu.
1. Ext
Про семейство файловых систем Ext я больше не буду говорить в этой статье. Про всё можно подробно прочитать в статье Файловая система Ext4. Там рассказана история развития этой файловой системы, а также её плюсы и минусы. Для установки Linux лучше всего подойдёт файловая система Ext4 из-за её стабильности и огромному количеству руководств по настройке в интернете.
2. XFS
Файловая система XFS разработана в Silicon Graphics в 1994 году для операционной системы SGI IRIX. Расшифровывается как eXtended File System. Для Linux она была портирована в 2001 и немного позже её начали использовать в Red Hat Enterprice Linux в качестве файловой системы по умолчанию. Хотя эту файловую можно отнести к обычным, она изначально была рассчитана на работу с большими дисками. Она очень похожа на Ext4, тоже поддерживает журналирование и не подвержена фрагментации, но её можно только увеличить, уменьшить раздел с этой файловой системой нельзя. Ещё XFS показывает хорошую производительность при работе с большими файлами, но медленее работает с большим количеством маленьких файлов по сравнению с другими файловыми системами.
3. JFS
Файловая система JFS или Journaled File System разработана компанией IBM для системы IBM AIX в 1990 году, а чуть позже она была портирована и для Linux. В отличие от Ext3, в которой был добавлен журнал для сохранения целостности файловой системы, JFS была изначально журналируемой. В журнале сохраняются только метаданные. Файловая система одинаково быстро работает с как с большими, так и с маленькими файлами, а ещё её также как и XFS нельзя уменьшить, только увеличить. Несмотря на то, что эта файловая система доступна в большинстве дистрибутивов, её редко используют, а значит и её разработка и выявление багов идет медленнее.
4. BtrFS
Мы добрались к первой файловой системе следующего поколения. Это B—Tree File System. Её разработал Крис Масон во время своей работы в компании Oracle в 2006 году. Она поддерживает множество интересных возможностей, таких как управление томами, снимки состояния, прозрачное сжатие и дефрагментацию в реальном времени. Файловая система разрабатывалась как качественная и новая альтернатива для файловых систем семейства Ext. Даже основной разработчик Ext4 Теодор Цо считает, что за Btrfs или подобной ей файловой системой будущее, а Ext4 рано или поздно останется в прошлом. Сейчас BtrFS используется по умолчанию в SUSE Linux, как в серверной, так и обычной редакции. Она уже считается стабильной, но многие всё ещё боятся её использовать.
5. ReiserFS
Файловую систему ReiserFS разработал Ганс Рейзер специально для Linux в 2001 году. В неё было включено множество возможностей недоступных для Ext4. Как и в Ext4 здесь есть журналирование либо только метаданных, либо вместе с данными. Поддерживается управление томами, есть возможность добавить кэширующий быстрый диск. ReiserFS — очень быстрая и умеет упаковывать несколько файлов в один блок, чтобы уменьшить использование памяти. Однако, разработка этой файловой системы была заброшена после того, как Ганс Райзер сел в тюрьму в 2008. Версия файловой системы Raiser4 всё ещё не попала в ядро, поэтому для использования на перспективу лучше выбрать Btrfs.
6. ZFS
ZFS была разработана для Solaris компанией Sun Microsystems и сейчас она принадлежит Oracle в 2005 году. Немного позже она была портирована для Linux и начиная с Ubuntu 16.04 доступна в установщике для использования в качестве корневой файловой системы. Она похожа на BtrFS, потому что поддерживает управление томами, контрольные суммы для всех данных, прозрачное сжатия и прозрачное шифрование. Её тоже можно отнести к файловым системам следующего поколения. По архитектуре, это 128 битная файловая система, в то же время как Ext4 — 64 битная. Поэтому лимиты у неё очень большие и в обозримом будущем мы к ним даже не приблизимся. Но Линус Торвальдс, создатель ядра Linux не советует использовать ZFS.
Выводы
Ещё в списке файловых систем установщика есть Swap и FAT, но обе эти файловые системы нельзя использовать для корневого раздела Linux. Первая используется для раздела подкачки и не предназначена для хранения файлов, а вторая — это старая файловая система от Microsoft, не поддерживающая многих необходимых атрибутов и возможностей.
Есть и другие файловые системы, например F2FS, разработанная специально для SSD, но они используются ещё реже. Для себя я вижу два варианта — это либо Btrfs, потому что она активно развивается, разработана для Linux и разработчики SUSE ей доверяют, а также Ext4, потому что очень стабильна и проверена временем. А какую файловую систему для Linux используете вы? Какие лучшие файловые системы Linux? Напишите в комментариях!
6 лучших файловых систем для установки Linux
Какую файловую систему следует выбрать при установке нового дистрибутива Linux? Давайте посмотрим на некоторые из лучших вариантов.
Выбор правильной файловой системы для вашего компьютера может быть трудным процессом. Легко задаться вопросом: почему файловые системы вообще имеют значение? Существует ли определенная файловая система, которая лучше всего подходит для установки Linux?
Как оказалось, есть две файловые системы, которые выделяются как лучшие варианты общего назначения для установки Linux.
Лучшая файловая система общего назначения для Linux
Двумя лучшими файловыми системами для установки Linux являются ext4 и Btrfs. Хотя эти две файловые системы во многом похожи, между Btrfs и ext4 есть несколько ключевых различий, о которых вам следует знать.
1. доб4
ext4 — это файловая система по умолчанию, используемая для большинства установок Linux. Впервые он был выпущен в 2008 году и является преемником ext3. Как давно используемая файловая система, ext4 примечательна тем, что доказала свою надежность, возможности и высокую производительность.
Одним из основных преимуществ ext4 является то, что это журналируемая файловая система, то есть она отслеживает расположение файлов на диске и регистрирует изменения, внесенные на диск. ext4 чрезвычайно эффективен и надежен, и каждая новая версия предлагает существенные улучшения производительности и возможностей.
2. БТРФ
Btrfs — это файловая система с открытым исходным кодом, которая служит одной из самых популярных альтернатив ext4. Хотя Btrfs не имеет такой же истории надежности, он привлек своих энтузиастов благодаря своему интересному набору функций.
Наиболее заметным аспектом Btrfs является его подход копирования при записи (COW), который включает копирование данных в альтернативное место на диске перед их изменением. Благодаря подходу COW Btrfs значительно сводит к минимуму риск повреждения данных.
Это не единственная интересная вещь о Btrfs. Он также выполняет контрольные суммы блоков данных и метаданных, что служит еще одной превентивной мерой против повреждения данных. Хотя с точки зрения эффективности он не может сравниться с ext4, Btrfs сам по себе является грозным благодаря своей впечатляющей функциональности.
И ext4, и Btrfs заслуживают рассмотрения в качестве файловой системы для вашей новой установки Linux. ext4 лучше подходит для большинства пользователей общего назначения, в то время как опытные пользователи могут обнаружить, что одна или две функции в Btrfs оправдывают его немного более низкую производительность.
Другие файловые системы Linux для рассмотрения
Конечно, Btrfs и ext4 — не единственные файловые системы, из которых вам нужно выбирать при установке нового дистрибутива Linux. Хотя такие параметры, как XFS и ZFS, не так известны, в некоторых случаях вам следует подумать о том, чтобы сделать их предпочтительной файловой системой.
3. ЗФС
Из всех нишевых файловых систем одной из самых интересных является файловая система Z (ZFS). Впервые созданная в 2001 году, ZFS является недавним соперником, который включает в себя интересную функцию: хранилище в пуле. В то время как в большинстве файловых систем используется отдельный файловый менеджер, в этой объединенной системе хранения эти два компонента объединены.
Это отличная функция, если у вас несколько жестких дисков, потому что вы сможете объединить их емкость в единой файловой системе.
Кроме того, ZFS включает в себя многие из тех же функций, что и Btrfs (включая COW, моментальные снимки и проверку контрольной суммы данных), что позволяет вам быть уверенным в том, что ваши данные действительны и не повреждены.
4. Райзер4
Хотя Reiser4 не является особенно популярной файловой системой, некоторые ее функции заслуживают упоминания. Reiser4 отличается эффективным ведением журналов и небольшим хранилищем файлов. Он также включает в себя атомарность, свойство, которое позволяет полностью или совсем не выполнять изменения файла и предотвращает возникновение повреждений из-за частично завершенных изменений.
Главный недостаток Reiser4 — негативная репутация его основателя. Reiser4 активно поддерживается и по сей день, но неудачная история, связанная с его именем, и трудности в разработке, с которыми он столкнулся в результате, вынудили его занять небольшую нишу.
5. XFS
Как и ZFS, XFS не является особенно распространенной файловой системой, но у нее есть несколько интересных особенностей, которые отличают ее от ext4 и других файловых систем.
Его внутреннее разделение на группы распределения позволяет выполнять несколько операций ввода-вывода одновременно, что делает его отличным вариантом, когда несколько процессоров или ядер работают параллельно. Он также включает xfsdump и xfsrestore, полезные утилиты для резервного копирования и восстановления файлов.
6. СПД
Последняя файловая система, которую вы должны использовать для новой установки Linux, — это JFS. Как и ext4, JFS — это журналируемая файловая система, но она записывает только метаданные и имеет несколько более высокую скорость записи за счет тщательности восстановления файлов.
Хотя JFS может понравиться вам, если вы ищете быструю файловую систему, ее подход к ведению журнала делает ее плохо подходящей для систем, обрабатывающих важные данные.
Теперь вы можете легко установить Linux
С современным изобилием типов файловых систем у пользователей есть невероятное количество вариантов, и тип файловой системы — не единственное, что вы можете выбрать.
Также важно выяснить, какой дистрибутив Linux лучше всего соответствует вашим потребностям. Сочетая правильный дистрибутив и файловую систему, вы сможете спроектировать и использовать идеальную систему всего за одну простую установку.
Структура и типы файловых систем в Linux
Файловая система (file system, ФС) — важная составляющая любой операционной системы (ОС), отвечающая за организацию, хранение, чтение, запись файлов. От ФС зависит физическая и логическая структура файлов, политика создания и управления ими, максимальный размер файла и длина его имени. Linux поддерживает множество разных file system, включая FAT, FAT32, NTFS из Windows. Но использовать рекомендуем «родные» системы: Ext3, Ext4, ReiserFS, XFS, Btrfs и пр. Особенно если вы намерены работать с облачной инфраструктурой.
Организация файловой системы Linux
Linux позволяет установить отдельную ФС для каждого раздела. Выбранная система определяет, как быстро будет выполняться работа с файлами, запись и чтение информации. Как в оперативной памяти будет храниться информация (и будет ли она вообще храниться), каким образом можно вносить изменения в конфигурацию ядра ОС — это тоже зависит от ФС.
File system Linux — пространство раздела, состоящее из кратных размеру сектора блоков. Обмен данными производится через VFS или с помощью драйверов. VFS (virtual file system) — это слой абстракции, необходимый для взаимодействия между ядром и софтом. VFS позволяет не думать о специфике работы той или иной ФС. Драйверы ФС обеспечивают взаимодействие между оборудованием (железом) и приложениями.
File system Linux организована следующим образом
Такая архитектура позволяет обеспечивать поддержку добавляемой ФС без вмешательства в ядро ОС. Ядро Linux поддерживает более 100 типов файловых систем, причём не только современных, но и старых. Чтобы увидеть список ФС, поддерживаемых ядром, откройте /proc/filesystems.
Структура и иерархия файловой системы Linux
В Linux имеется своя особая структура каталогов, политика распределения файлов конфигурации, исполняемых и временных файлов. Здесь работает логика, отличная от Windows.
Ключевое отличие в том, что обычно в линуксе программа не сохраняется в одной папке. Она распределяется по корневой файловой системе. По сути, file system в Linux начинается с директории «/» (которая называется корнем — от слова root) и разрастается в директории /sbin, /dev, /lib, /log, /boot и т.д. Получается древовидная иерархическая структура, в которой абсолютный путь к любой сущности начинается с корневой директории. Если файл лежит в /home/user/work, то структура каталогов идет по цепочке root->home->user->work.
Иерархичность линуксовых систем часто определяется стандартом FHS, который описывает, какая информация должна находится в том или ином месте «дерева». Ещё одной особенностью линкусовой файловой системы является её целостность. Это значит, что любые изменения, вносимые в файл, не влияют на другие файлы, которые не связаны с ним. Командой fsck вы можете проверить целостность ФС в Linux.
Аренда облачного сервера для разработки, хостинга, обученияПодробнее
Типы ФС Linux
Пользователи могут использовать одну или несколько файловых систем, зашитых в линуксовый дистрибутив. Так как от них зависит метод работы с файлами, конфигурацией ядра и особенности хранения информации в оперативной памяти, то выбирать file system нужно исходя из текущих задач, учитывая сильные и слабые стороны доступных ФС.
Выделяют два типа таких систем, журналируемые и не журналируемые. Определить тип можно при помощи команды file -s. ФС первого типа ведут логи, фиксируя в отдельном файле информацию о действиях пользователя и план проверки системы. За счёт логирования система получается более устойчивой к сбоям. ФС второго типа не имеют логов. Они обладают хорошим быстродействием, но более уязвимы, так как не обеспечивают сохранность данных.
Если вы работали с линуксом, то file system из списка ниже вам наверняка знакомы:
Особые файловые системы
Можно привести и другие разновидности файловых систем. Например, линуксоидам известны специальные ФС. Они используются для обеспечения доступа пользователю или приложениям к настройкам ядра ОС. Среди специальных файловых систем выделяют:
- tmpfs. Записывает данные в оперативную память, создавая блочное устройство требуемого размера, которое затем подключают к папке.
- procfs. Отвечает за хранение информации о системных процессах и ядре.
- sysfs. Управляет настройками ядра ОС.
Бывают ситуации, когда наличие ФС в ядре системы не требуется. В этом случае можно использовать модуль FUSE (filesystem in userspace), который создаёт виртуальную файловую систему. Существует несколько видов виртуальных ФС с разным функционалом:
- EncFS. Шифрует файлы и сохраняет их в выбранную директорию.
- Aufs. Объединяет несколько file system в одну. Умеет делать то же самое с папками.
- NFS. Может удалённо монтировать ФС.
- ZFS. Создана для операционной системы Solaris. Отсутствие фрагментации, управление снапшотами, меняющийся размер блоков обеспечивают высокий уровень привлекательности этой ФС.
Отметим, что в этой статье даются базовые сведения о файловых системах Linux, а типов ФС существует намного больше. Если вам требуется более детальная информация о типах ФС и их отличиях, рекомендуем обратиться к документации.
Типы файловых систем Linux
Linux поддерживает множество файловых систем, таких как ext4, ZFS, XFS, Btrfs, Reiser4 и другие.
Различные типы файловых систем решают разные проблемы, и их использование зависит от приложения.
Что такое файловая система Linux
Почти каждый бит данных и программ, необходимых для загрузки системы Linux и поддержания ее работы, сохраняется в файловой системе. Например, сама операционная система, компиляторы, прикладные программы, разделяемые библиотеки, файлы конфигурации, файлы журналов, точки монтирования мультимедиа и т.д.
Файловые системы работают в фоновом режиме. Как и остальная часть ядра операционной системы, они практически невидимы при повседневном использовании.
Файловая система Linux обычно представляет собой встроенный уровень операционной системы Linux, используемый для управления данными хранилища. Он контролирует, как данные хранятся и извлекаются. Он управляет именем файла, размером файла, датой создания и другой информацией о файле.
Файловая система ext4
В 1992 году была запущена файловая Extended File System или ext специально для операционной системы Linux. Она уходит своими корнями в операционную систему Minix. В 1993 году было выпущено обновление под названием Extended File System 2 или ext2, которое в течение многих лет было файловой системой по умолчанию во многих дистрибутивах Linux. К 2001 году ext2 была обновлена до ext3, которая ввела журналирование для защиты от повреждений в случае сбоев или сбоев питания.
Ext4 была представлена в 2008 году и является файловой системой Linux по умолчанию с 2010 года. Она была разработана как прогрессивная версия файловой системы ext3 и преодолевает ряд ограничений в ext3. Она имеет значительные преимущества перед своим предшественником, такие как улучшенный дизайн, лучшая производительность, надежность и новые функции.
В настоящее время ext4 является файловой системой по умолчанию в большинстве дистрибутивов Linux. Она может поддерживать файлы и файловые системы размером до 16 терабайт. Она также поддерживает неограниченное количество подкаталогов (файловая система ext3 поддерживает только до 32 000). Кроме того, ext4 обратно совместима с ext3 и ext2, что позволяет монтировать эти старые версии с драйвером ext4.
Есть причина, по которой ext4 является выбором по умолчанию для большинства дистрибутивов Linux. Она опробована, протестирована, стабильна, отлично работает и широко поддерживается. Если вам нужна стабильность, ext4 — лучшая файловая система Linux для вас.
Однако несмотря на все свои функции, ext4 не поддерживает прозрачное сжатие, прозрачное шифрование или дедупликацию данных.
Файловая система XFS
XFS — это высокомасштабируемая файловая система, разработанная Silicon Graphics и впервые развернутая в операционной системе IRIX на базе Unix в 1994 году. Это файловая система с журналированием которая отслеживает изменения в журнале перед фиксацией изменений в основной файловой системе. Преимущество заключается в гарантированной целостности файловой системы и ускоренном восстановлении в случае сбоев питания или сбоев системы.
Первоначально XFS была создана для поддержки чрезвычайно больших файловых систем с размерами до 16 эксабайт и размером файлов до 8 эксабайт. Она имеет долгую историю работы на больших серверах и массивах хранения.
Одной из примечательных особенностей XFS является гарантированная скорость ввода-вывода. Это позволяет приложениям зарезервировать пропускную способность. Файловая система рассчитывает доступную производительность и корректирует свою работу в соответствии с существующими резервированиями.
XFS имеет репутацию системы, работающей в средах, требующих высокой производительности и масштабируемости, и поэтому регулярно оценивается как одна из самых производительных файловых систем в больших системах с корпоративными рабочими нагрузками.
Сегодня XFS поддерживается большинством дистрибутивов Linux и теперь стала файловой системой по умолчанию в Red Hat Enterprise Linux, Oracle Linux, CentOS и многих других дистрибутивах.
Лучшие варианты использования файловой системы XFS
У вас большой сервер? У вас большие требования к хранилищу или у вас есть локальный медленный диск SATA?
Если и ваш сервер, и ваше устройство хранения большие и нет необходимости уменьшать размер файловой системы, XFS, вероятно, будет лучшим выбором. XFS — отличная файловая система, которая хорошо масштабируется для больших серверов. Но даже с меньшими массивами хранения XFS работает очень хорошо, когда средние размеры файлов велики, например, размером в сотни мегабайт.
Файловая система btrfs
Btrfs — это файловая система Linux общего назначения нового поколения, которая предлагает уникальные функции, такие как расширенное интегрированное управление устройствами, масштабируемость и надежность. Он распространяется под лицензией GPL и открыт для внесения вклада кем угодно. Для файловой системы используются разные имена, в том числе «Butter FS», «B-tree FS» и «Better FS».
Разработка Btrfs началась в Oracle в 2007 году. Она была объединена с основным ядром Linux в начале 2009 года и дебютировала в версии Linux 2.6.29.
Btrfs не является преемником файловой системы ext4 по умолчанию, используемой в большинстве дистрибутивов Linux, но предлагает лучшую масштабируемость и надежность. Btrfs — это файловая система с копированием при записи (Copy-on-Write — CoW), предназначенная для устранения различных недостатков в текущих файловых системах Linux. Основное внимание уделяется отказоустойчивости, самовосстановлению и простоте администрирования.
Btrfs может поддерживать до 16 эксбибайт раздела и файл того же размера. Если вас смущают цифры, все, что вам нужно знать, это то, что Btrfs может поддерживать до шестнадцати раз больше данных Ext4.
Как работает Copy-on-Write и зачем вам это нужно
В традиционной файловой системе при изменении файла данные считываются, изменяются, а затем записываются обратно в то же место. В файловой системе с копией при записи он считывает данные, изменяет их и записывает в новое место. Это предотвращает потерю данных во время транзакции чтения-изменения-записи, поскольку данные всегда находятся на диске.
Поскольку вы не «перенаправляете» до тех пор, пока новый блок не будет полностью записан, если пропадет питание или выйдет из строя в середине записи, вы получите либо старый блок, либо новый блок, но не наполовину записанный поврежденный блокировать. Таким образом, вам не нужно проверять файловые системы при запуске, и вы снижаете риск повреждения данных.
Вы можете сделать снимок файловой системы в любой момент, создав запись снимка в метаданных с текущим набором указателей. Это защищает старые блоки от последующего сбора мусора и позволяет файловой системе представить том в том виде, в котором он был во время моментального снимка. Другими словами, у вас есть возможность мгновенного отката. Вы даже можете клонировать этот том, чтобы сделать его доступным для записи на основе снимка.
Особенности Btrfs
- Copy-on-Write и создание снепшотов — Сделайте инкрементное резервное копирование безболезненным даже из файловой системы в процессе работы или виртуальной машины (VM).
- Контрольные суммы на уровне файла — метаданные для каждого файла включают контрольную сумму, которая используется для обнаружения и исправления ошибок.
- Сжатие — файлы можно сжимать и распаковывать «на лету», что увеличивает скорость чтения.
- Автоматическая дефрагментация — файловые системы настраиваются фоновым потоком, пока они используются.
- Подтомы — файловые системы могут совместно использовать единый пул пространства вместо того, чтобы помещаться в свои собственные разделы.
- RAID — Btrfs выполняет свои собственные реализации RAID, поэтому LVM или mdadm не требуются для наличия RAID. В настоящее время поддерживаются RAID 0, 1 и 10. RAID 5 и 6 считаются нестабильными.
- Разделы необязательны — хотя Btrfs может работать с разделами, он может напрямую использовать необработанные устройства ( /dev/ ).
- Дедупликация данных — поддержка дедупликации данных ограничена; однако дедупликация со временем станет стандартной функцией Btrfs. Это позволяет Btrfs экономить место, сравнивая файлы через двоичные файлы diff.
Хотя это правда, что Btrfs все еще считается экспериментальным и в настоящее время находится в активной разработке, время, когда Btrfs станет файловой системой по умолчанию для систем Linux, приближается. Некоторые дистрибутивы Linux уже начали переходить на него в своих текущих выпусках.
Файловая система ZFS
ZFS (Zettabyte File System) остается одной из наиболее технически продвинутых и полнофункциональных файловых систем с момента ее появления в октябре 2005 года. Это локальная файловая система (например, ext4) и менеджер логических томов (например, LVM), созданные Sun Microsystems. ZFS публиковалась под лицензией с открытым исходным кодом, пока Oracle не купила Sun Microsystems и не закрыла лицензию.
Вы можете думать о ZFS как о диспетчере томов и как о RAID-массиве одновременно, что позволяет добавлять дополнительные диски к вашему тому ZFS, что позволяет одновременно добавить дополнительное пространство в вашу файловую систему. В дополнение к этому ZFS обладает некоторыми другими функциями, которых нет в традиционных RAID.
ZFS сильно зависит от памяти, поэтому для запуска вам потребуется не менее 8 ГБ. На практике используйте столько, сколько можете получить в соответствии с вашим аппаратным обеспечением или бюджетом.
ZFS обычно используется сборщиками данных, пользователями NAS и другими гиками, которые предпочитают полагаться на собственную избыточную систему хранения, а не на облако. Это отличная файловая система для управления несколькими дисками с данными, которая может соперничать с некоторыми из лучших конфигураций RAID.
ZFS похожа на другие подходы к управлению хранилищем, но в некотором смысле радикально отличается. ZFS обычно не использует Linux Logical Volume Manager (LVM) или разделы диска, и обычно удобно удалять разделы и структуры LVM перед подготовкой носителя для zpool.
Zpool — это аналог LVM. Zpool охватывает одно или несколько устройств хранения, а члены zpool могут быть нескольких различных типов. Основные элементы хранения — одиночные устройства, зеркала и raidz. Все эти элементы хранения называются vdevs.
ZFS может обеспечить целостность хранилища намного лучше, чем любой RAID-контроллер, поскольку он досконально знает структуру файловой системы. Безопасность данных — важная особенность конструкции ZFS. Все блоки, записанные в zpool, тщательно проверяются контрольной суммой для обеспечения согласованности и правильности данных.
Для использования на сервере, где вы хотите почти полностью исключить любую возможность потери данных и стабильности, вы можете изучить ZFS.
Возможности ZFS
- Бесконечная масштабируемость. Что ж, технически она не бесконечна, но это 128-битная файловая система, способная управлять зеттабайтами (одним миллиардом терабайт) данных. Поэтому независимо от того, сколько у вас места на жестком диске, ZFS подойдет для управления им.
- Максимальная целостность. Все, что вы делаете внутри ZFS, использует контрольную сумму для обеспечения целостности файла. Вы можете быть уверены, что ваши файлы и их резервные копии не испытают скрытого повреждения данных. Кроме того, пока ZFS незаметно проверяет целостность ваших данных, она будет выполнять автоматическое восстановление в любое время.
- Объединение дисков. Создатели ZFS хотят, чтобы вы думали об этом как о том, как ваш компьютер использует оперативную память. Когда вам нужно больше памяти на вашем компьютере, вы вставляете другую карту, и все готово. Точно так же с ZFS, когда вам нужно больше места на жестком диске, вы вставляете другой жесткий диск, и все готово. Не нужно тратить время на разбиение на разделы, форматирование, инициализацию или что-то еще с вашими дисками. Если вам нужен «пул» хранилища большего размера, просто добавьте диски.
- RAID. ZFS поддерживает множество различных уровней RAID, обеспечивая при этом производительность, сравнимую с производительностью аппаратных RAID-контроллеров. Это позволяет сэкономить деньги, упростить настройку и получить доступ к превосходным уровням RAID, которые были улучшены в ZFS.
Файловая система Reiser4
ReiserFS — это файловая система общего назначения с журналированием, первоначально разработанная и реализованная командой Namesys во главе с Хансом Райзером. Представленная в версии 2.4.1 ядра Linux, это была первая файловая система с журналированием, включенная в стандартное ядро.
За исключением обновлений безопасности и исправлений критических ошибок, Namesys прекратила разработку ReiserFS. Reiser4 является преемницей файловой системы ReiserFS. Добавилось шифрование, улучшил производительность и многое другое.
Reiser4 обеспечивает наиболее эффективное использование дискового пространства среди всех файловых систем во всех сценариях и рабочих нагрузках. ReiserFS предлагает преимущества перед другими файловыми системами, особенно когда дело доходит до обработки большого количества небольших файлов. Она поддерживает ведение журнала для быстрого восстановления в случае возникновения проблем. Структура файловой системы основана на деревьях. Кроме того, Reiser4 потребляет немного больше ресурсов ЦП, чем другие файловые системы.
Reiser4 обладает уникальной способностью оптимизировать дисковое пространство, занимаемое небольшими файлами (менее одного блока). Они полностью хранятся в своем индексном дескрипторе, без выделения блоков в области данных.
Помимо реализации традиционных функций файловой системы Linux, reiser4 предоставляет пользователям ряд дополнительных возможностей: прозрачное сжатие и шифрование файлов, полное ведение журнала данных, а также практически неограниченную (с помощью архитектуры подключаемых модулей) расширяемость.
Однако в настоящее время нет поддержки прямого ввода-вывода (началась работа по реализации), квот и POSIX ACL.