Какую файловую систему Linux следует использовать?

Опубликовано: 2022-01-29

При форматировании разделов на ПК с Linux вы увидите множество вариантов файловой системы. Эти варианты не должны быть подавляющими. Если вы не уверены, какую файловую систему Linux использовать, есть простой ответ.

Быстрый ответ: используйте Ext4, если вы не уверены

Через мгновение мы углубимся в суть и пройдемся по различиям между различными файловыми системами, но если вы не уверены: используйте Ext4.

Ext4 не просто так является файловой системой по умолчанию в большинстве дистрибутивов Linux. Это улучшенная версия старой файловой системы Ext3. Это не самая передовая файловая система, но это хорошо: это означает, что Ext4 надежна и стабильна.

В будущем дистрибутивы Linux будут постепенно переходить на BtrFS. BtrFS все еще находится на переднем крае и активно развивается, поэтому вам следует избегать ее использования в производственных системах. Риск повреждения данных или других проблем не стоит потенциального повышения скорости.

СВЯЗАННЫЕ: В чем разница между FAT32, exFAT и NTFS?

Однако обратите внимание, что этот совет «использовать Ext4» применим только к системным разделам Linux и другим разделам на диске, доступ к которым имеет только Linux. Если вы форматируете внешний диск, которым хотите поделиться с другими операционными системами, вам не следует использовать Ext4, потому что Windows, macOS и другие устройства не могут читать файловые системы Ext4. Вы захотите использовать exFAT или FAT32 при форматировании внешнего диска в Linux.

Реклама

Если вы настраиваете разделы на своем основном загрузочном диске Linux, вы также захотите создать раздел подкачки размером не менее нескольких ГБ при настройке этих разделов. Этот раздел используется для «пространства подкачки». Это похоже на файл подкачки в Windows. Linux подкачивает память в пространство подкачки, когда его ОЗУ заполнено. Этот раздел должен быть отформатирован как «подкачка», а не с определенной файловой системой.

Что такое журналирование?

Одна вещь, которую вы заметите при выборе между файловыми системами, это то, что некоторые из них помечены как «журналируемые» файловые системы, а некоторые нет. Это важно.

Ведение журнала предназначено для предотвращения повреждения данных при сбоях и внезапном отключении питания. Допустим, ваша система находится на полпути к записи файла на диск и внезапно теряет питание. Без журнала ваш компьютер не знал бы, был ли файл полностью записан на диск. Файл останется на диске поврежденным.

С журналом ваш компьютер отметит, что он собирается записать определенный файл на диск в журнале, запишет этот файл на диск, а затем удалит это задание из журнала. Если во время записи файла отключилось питание, Linux проверит журнал файловой системы при загрузке и возобновит любые частично завершенные задания. Это предотвращает потерю данных и повреждение файлов.

Журналирование немного снижает производительность записи на диск, но оно того стоит на настольном компьютере или ноутбуке. Это не так много накладных расходов, как вы думаете. Полный файл не записывается в журнал. Вместо этого в журнал записываются только метаданные файла, индексный дескриптор или местоположение на диске, прежде чем они будут записаны на диск.

Каждая современная файловая система поддерживает ведение журнала, и вы захотите использовать файловую систему, поддерживающую ведение журнала, при настройке настольного компьютера или ноутбука.

Реклама

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

В чем разница между всеми этими файловыми системами Linux?

В то время как Microsoft разрабатывает Windows, а Apple контролирует macOS, Linux — это проект с открытым исходным кодом, разработанный сообществом. Любой (или любая компания), обладающий навыками и временем, может создать новую файловую систему Linux. Это одна из причин, почему существует так много вариантов. Вот отличия:

  • Ext означает «Расширенная файловая система» и была первой, созданной специально для Linux. Он претерпел четыре основных изменения. «Ext» — это первая версия файловой системы, представленная в 1992 году. Это было серьезное обновление по сравнению с файловой системой Minix, использовавшейся в то время, но в ней отсутствуют важные функции. Многие дистрибутивы Linux больше не поддерживают Ext.
  • Ext2 не является журналируемой файловой системой. На момент своего появления это была первая файловая система, поддерживающая расширенные атрибуты файлов и диски емкостью 2 терабайта. Отсутствие журнала в Ext2 означает, что он меньше записывает на диск, что делает его полезным для флэш-памяти, такой как USB-накопители. Однако файловые системы, такие как exFAT и FAT32, также не используют журналирование и более совместимы с различными операционными системами, поэтому мы рекомендуем вам избегать Ext2, если вы не знаете, что она вам нужна по какой-то причине.
  • Ext3 — это просто Ext2 с журналированием. Ext3 был разработан с учетом обратной совместимости с Ext2, что позволяет преобразовывать разделы между Ext2 и Ext3 без какого-либо форматирования. Он существует дольше, чем Ext4, но Ext4 существует с 2008 года и широко тестируется. На данный момент вам лучше использовать Ext4.
  • Ext4 также был разработан с учетом обратной совместимости. Вы можете смонтировать файловую систему Ext4 как Ext3 или файловую систему Ext2 или Ext3 как Ext4. Он включает в себя новые функции, которые уменьшают фрагментацию файлов, позволяют работать с большими томами и файлами, а также используют отложенное выделение для увеличения срока службы флэш-памяти. Это самая современная версия файловой системы Ext, которая используется по умолчанию в большинстве дистрибутивов Linux.

  • BtrFS , произносится как «Butter» или «Better» FS, изначально была разработана Oracle. Это означает «Файловая система B-Tree» и позволяет создавать пулы дисков, моментальные снимки «на лету», прозрачное сжатие и онлайн-дефрагментацию. Он разделяет ряд тех же идей, что и в ReiserFS, файловой системе, которую некоторые дистрибутивы Linux использовали по умолчанию. BtrFS разработан, чтобы полностью отказаться от файловых систем серии Ext. Тед Тсо, сопровождающий файловой системы Ext4, считает Ext4 краткосрочным решением и считает, что BtrFS — это путь вперед. Ожидайте, что BtrFS станет по умолчанию в дистрибутивах Linux для корпоративных серверов и потребительских настольных компьютеров в ближайшие несколько лет, поскольку она будет дополнительно протестирована.
  • ReiserFS была большим шагом вперед для файловых систем Linux, когда она была представлена ​​в 2001 году, и она включала множество новых функций, которые Ext никогда не сможет реализовать. В 2004 году ReiserFS был заменен на Reiser4, в котором были улучшены многие функции, которые были неполными или отсутствовали в первоначальном выпуске. Но разработка Reiser4 застопорилась после того, как главный разработчик Ханс Райзер был отправлен в тюрьму в 2008 году. в основном ядре линукса и вряд ли туда попадет. BtrFS — лучший долгосрочный выбор.

    СВЯЗАННЫЕ С: Как установить и использовать ZFS в Ubuntu (и почему вы этого хотите)

  • ZFS была разработана Sun Microsystems для Solaris и теперь принадлежит Oracle. ZFS поддерживает множество расширенных функций, включая создание пулов дисков, моментальные снимки и динамическое чередование дисков — BtrFS по умолчанию привнесет многие из этих функций в Linux. У каждого файла есть контрольная сумма, поэтому ZFS может определить, поврежден файл или нет. ZFS с открытым исходным кодом Sun находится под лицензией Sun CDDL, что означает, что ее нельзя включить в ядро ​​Linux. Однако вы можете установить поддержку ZFS в любом дистрибутиве Linux. Ubuntu теперь также предлагает официальную поддержку ZFS, начиная с Ubuntu 16.04. Ubuntu по умолчанию использует ZFS для контейнеров.
  • XFS была разработана Silicon Graphics в 1994 году для операционной системы SGI IRX и была перенесена на Linux в 2001 году. В чем-то она похожа на Ext4, так как также использует отложенное выделение для облегчения фрагментации файлов и не позволяет монтировать моментальные снимки. Его можно увеличивать, но не уменьшать на лету. XFS имеет хорошую производительность при работе с большими файлами, но хуже, чем другие файловые системы, при работе с большим количеством маленьких файлов. Это может быть полезно для определенных типов серверов, которым в первую очередь нужно работать с большими файлами.
  • JFS , или «Журналируемая файловая система», была разработана IBM для операционной системы IBM AIX в 1990 году и позже перенесена на Linux. Он может похвастаться низкой загрузкой ЦП и хорошей производительностью как для больших, так и для маленьких файлов. Размер разделов JFS можно динамически изменять, но не уменьшать. Он был очень хорошо спланирован и поддерживается почти во всех основных дистрибутивах, однако его производственное тестирование на серверах Linux не так обширно, как Ext, поскольку он был разработан для AIX. Ext4 используется чаще и более широко тестируется.
  • Swap — это опция при форматировании диска, но не фактическая файловая система. Он используется как виртуальная память и не имеет структуры файловой системы. Вы не можете смонтировать его, чтобы просмотреть его содержимое. Подкачка используется ядром Linux как «временное пространство» для временного хранения данных, которые не помещаются в ОЗУ. Он также используется для спящего режима. В то время как Windows хранит свой файл подкачки как файл на своем основном системном разделе, Linux просто резервирует отдельный пустой раздел для пространства подкачки.

СВЯЗАННЫЕ: В чем разница между FAT32, exFAT и NTFS?

  • FAT16 , FAT32 и exFAT : файловые системы Microsoft FAT часто используются при форматировании диска в Linux. В этих файловых системах нет журнала, поэтому они идеально подходят для внешних USB-накопителей. Они являются стандартом де-факто, который может прочитать любая операционная система — Windows, macOS, Linux и другие устройства. Это делает их идеальной файловой системой для форматирования внешнего диска, который вы захотите использовать с другими операционными системами. FAT32 старше. exFAT — идеальный вариант, так как поддерживает файлы размером более 4 ГБ и разделы размером более 8 ТБ, в отличие от FAT32.

Существуют и другие файловые системы Linux, в том числе файловые системы, разработанные специально для флэш-памяти во встроенных устройствах и на SD-картах. Но это параметры, которые вы чаще всего будете видеть при использовании Linux.

СВЯЗАННЫЕ С: Лучшие ноутбуки с Linux для разработчиков и энтузиастов