Что лучше ntfs или ext3
Если вы только переходите с Windows, то, наверное, уже привыкли, что вам доступна только одна файловая система - NTFS и выбирать просто нет из чего. Но в Linux ситуация совсем другая. Здесь существует огромное множество файловых систем и постоянно создаются новые.
В сегодняшней небольшой статье мы постараемся разобраться какую файловую систему выбрать для Linux, и какие вообще доступны варианты.
Выбор файловой системы для Linux
Все файловые системы можно разделить на два типа: это обычные файловые системы и файловые системы следующего поколения. К обычным файловым системам относится используемая в большинстве дистрибутивов Ext4, она имеет все необходимые для полноценной работы возможности, но не более того.
Файловые системы следующего поколения - это BtrFS, ZFS и другие им подобные. Кроме стандартных возможностей они добавляют такие интересные вещи как дедупликация данных, управление томами, размещение файловой системы на нескольких физических дисках, контрольные суммы для данных, прозрачное сжатие и шифрование, снимки состояния, а также многое другое. Несмотря на все эти преимущества, новые файловые системы ещё не всегда стабильны и не поддерживаются не во всех дистрибутивах, а многие из их возможностей просто не нужны обычным пользователям.
Если кратко отвечать на вопрос, какую файловую систему выбрать для Linux - то ответ - Ext4. Она разработана очень давно, но зато очень стабильна и проверена временем. Она используется по умолчанию во многих дистрибутивов, а её лимитов хватит с головой, как для домашних пользователей, так и для большинства серверов. Но эта файловая система относится к обычным. Если вы не хотите её использовать дальше мы рассмотрим несколько альтернатив, доступных для выбора в установщике Ubuntu.
1. Ext
Про семейство файловых систем Ext я больше не буду говорить в этой статье. Про всё можно подробно прочитать в статье Файловая система Ext4. Там рассказана история развития этой файловой системы, а также её плюсы и минусы. Для установки Linux лучше всего подойдёт файловая система Ext4 из-за её стабильности и огромному количеству руководств по настройке в интернете.
2. XFS
Файловая система XFS разработана в Silicon Graphics в 1994 году для операционной системы SGI IRX. Расшифровывается как 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? Напишите в комментариях!
Нет похожих записей
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.
Всем привет. Недавно я задался вопросом как организовать обмен файлами между операционными системами. Предположим, я хочу установить сразу три основные ос на своём ноутбуке: линукс, виндовз и хакинтош. Каждая ос предназначается для своих задач: Линукс — для работы и программирования, винда — для игр и хак — просто для разных экспериментов.
Поскольку я создаю обучающие видео ролики о линуксе, мне удобнее работать именно на нём. Но монтировать хочется попробовать в «финальном вырезе». Уж очень мне приглянулась идея магнитной ленты времени.
Так вот, задача стоит такая: нужен раздел на системном накопителе, причём с такой файловой системой, которая поддерживается на чтение и запись всеми перечисленными операционками. На этом разделе будут храниться скачанные из интернета файлы и меж-операционные проекты.
Как такая задача решалась мной раньше? Раньше я использовал только винду с линуксом, поэтому задачи обмена с apple os не возникало. Конечно, хотелось использовать открытую и родную фс для линукса — ext4. Но на винде её смонтировать непросто. Нужно устанавливать бесплатный (но проприетарный) Paragon ExtFS for Windows. И ладно, если бы это работало, но к сожалению данное ПО повреждает вам раздел с линуксом. Напоролся пару раз, и всякое желание пользоваться этим по пропало.
А вот виндовая фс под линуксом читается и пишется без проблем. Нужно всего лишь установить ntfs-3g драйвер. Он работает в юзерспейсе. Файловая система проприетарная, но решение работает.
Теперь же я хочу использовать ещё и хакинтош, и хочется разобраться какие ещё есть варианты для решения этой задачи, кроме ntfs.
На самом деле вариантов немного. Давайте разберёмся, какие есть файловые системы, и какие из них являются более или менее универсальными.
Fat32 — всем известная древняя фс, является самой универсальной в плане переносимости, но и самой убогой в плане ограничений. Была разработана давно, не поддерживает файлы размером более 4 Гб. Проприетарная. Для моих задач не подходит.
Ntfs — родная фс для винды, проприетарщина. Линукс, как я уже писал выше, её поддерживает с помощью стороннего драйвера (ntfs-3g). Мак нативно её не понимает, хотя можно доустановить соответствующее по. Есть несколько вариантов, как платных, так и бесплатных. Ни один из них мне не нравится. ntfs-3g работает в userspace (с медленной скоростью), а платные решения — платные.
Hfs+ — одна из худших фс, когда либо созданных. Родная для мак ос, но нисколько не универсальная. Можно примонтировать на линуксе, а для винды опять же есть платные решения — в пролёте.
Ext4 — одна из правильных фс, родная для линукс. Но в плане монтирования в неродных ос — опять проблемы. За платные решения для хакинтоша и для винды опять просят денег. Есть и бесплатные решения, к примеру ext2fsd, но этот драйвер не умеет писать в ext4. В пролёте.
Udf — одна из правильных фс, поддерживается нативно всеми ос. Эта фс была бы лучшим вариантом, если бы не компания apple. Изначально udf создавалась для оптических носителей, но она может быть спокойно использована на обычном жёстком магнитном диске. НО! Из-за того, что яблочники не реализовали поддержку этой фс с раздела, вся задумка отменяется. Даже последняя мак ос Х поддерживает данную фс только если всё блочное устройство не имеет таблицы разделов. На гитхабе есть скрипт format-udf, который может подготовить носитель специальным образом: в начальном блоке данных прописывается mbr, говорящий что раздел начинается прямо там же где и сам mbr. Т.е. накопитель как бы одновременно и с таблицей разделов (то что понимает винда), и вроде как и без таблицы разделов. Этот способ предполагает что носитель будет внешний, а мне нужно сделать exchange раздел именно на внутреннем накопителе. Так что данный вариант тоже в пролёте.
exFat — проприетарщина, но нативно работает как в винде, так и в маке. Это очень хорошо. А что в линуксе?
Эта фс использовалась для sd карт на андроидах, а там у нас линукс ядро. Производители реализовали драйвер exfat для linux ядра и никому его не показывали. Но некто в интернете слил на гитхаб их код. Было понятно, что это воровство, и в таком виде код в ядро попасть не мог. Однако, в этом коде сообщество нашло куски gpl кода, что разумеется, требовало раскрытия всех исходников, т.е. это было уже воровство у сообщества со стороны компании samsung. Через некоторое время самсунг выпустили этот код под gpl лицензией.Спрашивается, а почему тогда данный драйвер не поддерживается из коробки? Потому что его нет в ядре. Мердж этого кода (пусть и gpl-ного) в mainline — это по сути троян от мелких (из-за патентов). Торвальдс это понимает, и, понятное дело, ядро не отравит.
В линуксе монтировать exfat можно либо с помощью exfat-fuse драйвера, либо с помощью exfat-nofuse. Конечно, лучше nofuse, так как он будет работать быстрее. Но его придётся собирать каждый раз при обновлении ядра. Благо, для автоматизации этой задачи есть механизм dkms.
Подведём итог
Я останавливаюсь на exfat. Да, проприетарщина, но ничего не поделаешь. Зато всё нативно работает, и “танцы с бубном” отсутствуют: во всех трех операционных системах есть нативная поддержка и возможность поставить эту фс именно на раздел. Ограничения в 4 Гб нет. И в целом, это решение достаточно простое.
Надеюсь, вы узнали что-то новое для себя и выберите подходящий вариант исходя из ваших нужд.
Апдейт 4 февраля 2020:
Оказывается раздел с exfat невозможно ни растянуть, ни сжать. Причём даже на самой винде. Не учёл этот момент при выборе решения. Если нужно изменить размер раздела — придётся только бекапить данные в другое место и пересоздавать раздел уже с нужным размером.
С UDF в этом плане дела не лучше. Вот здесь лежит табличка, описывающая возможности по работе с разделами в gparted.
Именно файловые системы определяют способ хранения информации в виде привычных нам файлов, а также насколько быстро будет осуществляться доступ к данным и с какими ограничениями столкнутся пользователи.
Существует больше 30 файловых систем (ФС), большая часть которых имеет специфическое применение. Например, ФС под названием XFS создана исключительно для операционной системы IRIX, а DTFS — это файловая система, специализирующаяся на сжатии данных.
Если говорить относительно обычных пользователей ПК на Windows, MacOS и Linux, то для них список можно сократить до нескольких самых распространенных.
FAT32
Файловая система, разработанная компанией Microsoft на замену FAT16. Структурно вся область диска в FAT32 делится на кластеры размером от 512 байт до 32 Кбайт. Представьте себе тетрадь в клеточку. Каждая клетка — это кластер, в который может быть записан файл или его часть. Таким образом, большие файлы состоят из цепочки кластеров, которые совсем не обязательно будут располагаться друг за другом.
Не будем погружаться в технические дебри и расскажем о том, что больше всего интересует обычных пользователей — плюсы и минусы FAT32.
Главное и пока неоспоримое достоинство этой файловой системы — ее универсальность. FAT32 работает практически со всеми операционными системами Windows, а также без проблем распознается linux, MacOS, операционными системами игровых приставок и даже Android (если в смартфоне предусмотрена поддержка OTG).
Именно поэтому флеш-накопители чаще всего форматируют в FAT32, чтобы не иметь проблем с совместимостью на различных устройствах. С завода больше 90% всех флешек поставляется с этой ФС. Параллельно к плюсам относится высокая скорость работы с малыми и средними файлами (десятки/сотни мегабайт) и нетребовательность к объему ОЗУ.
Однако почтенный возраст FAT32 (больше 24 лет, что по меркам IT-индустрии просто огромный срок) накладывает ряд неприятных ограничений.
Несмотря на то, что размер тома с технической точки зрения может доходить до 8 ТиБ (тебибайт), что составляет около 8,7 ТБ, по факту в операционных системах Windows из-за встроенного ограничения вы не сможете создать том больше 32 ГБ. Соответственно, разметить большие жесткие диски, по крайней мере в Windows, в FAT32 не получится. Возникнут проблемы и с флешками на 64 ГБ.
Другое, более существенное ограничение — размер одного файла не может превышать 4 ГБ. Учитывая, что бэкапы, фильмы в высоком разрешении и архивы с различной информацией весят больше этого предела, ограничение доставляет массу неудобств.
exFAT
Одна из самых последних «новинок», созданная в 2008 году как расширенная версия FAT32 (extended FAT). Майкрософт решила взять лучшее и избавиться от самых неприятных недостатков.
exFAT ориентирована сугубо на переносные накопители — флешки, SD-карты и съемные жесткие диски. Размер кластера был увеличен до 32 мегабайт, благодаря чему размер файла теперь достигает целых 16 эксабайт (1 эксабайт = 1 048 576 ТБ). Задел на будущее у exFAT довольно внушительный.
Параллельно разработчики избавились от ограничения на размер тома, ввели поддержку прав доступа и минимизировали количество перезаписей, что особенно актуально для flash-памяти, ячейки памяти которой имеют ограниченное количество циклов записи, после чего выходят из строя.
Ощутимый минус только один — незначительная потеря совместимости. exFAT поддерживает Windows XP SP2 и более новые ОС. Соответственно, Windows 2000, NT и все, что старше, остается «за бортом». Усложнение структуры также привело к большим затратам вычислительной мощности компьютера. Однако на фоне современных процессоров с их потенциалом этим недостатком можно пренебречь.
New Technology File System разработали еще в 1993 году, однако, как и FAT32, используют по сей день. Сходство с FAT проявляется и в том, что, пространство делится на кластеры заданного размера. Однако высокую гибкость NTFS обеспечивает именно структура.
Первые 12% диска выделяются под MFT-зону — специальное служебное пространство, где хранится различная информация для работы всей ФС. Эта зона никогда не фрагментируется. В отличие от FAT используется бинарная структура.
NTFS обладает множеством достоинств. Максимальный размер тома на практике — 256 ТБ. Размера файла также хватит с запасом — около 16 ТБ. Помимо этого, за счет функции журналирования NTFS — отказоустойчивая система. Проще говоря, ФС либо выполняет действие до конца, либо откатывает все до состояния, когда действие еще не было совершено. Промежуточных «ошибочных» состояний практически не бывает. Имеется встроенное сжатие, средства разграничения прав объектов и шифрование данных.
К главному минусу NTFS относится низкая совместимость — не поддерживается все, что ниже Windows NT. Это не столь печально, но вот на MacOS и Linux записывать файлы на диски с NTFS не получится — только чтение. Игровые консоли Playstation и Xbox 360 также с этой файловой системой не работают.
Например, в PS4 можно отформатировать внешний жесткий диск, но только в формате самой приставки для обеспечения совместимости.
Таким образом, благодаря своему функционалу и поддержке больших объемов пространства NTFS — это отличный вариант для накопителей HDD и SSD. Несмотря на это, вы вполне можете создать на NTFS и флешку, но скорость ее работы по сравнению с FAT будет ниже.
Сравнительная таблица
Три приведенных файловых системы являются самыми популярными и наиболее совместимыми среди всех. Для удобства приведем основные параметры в общую таблицу.
Рядовому пользователю компьютерных электронных устройств редко, но приходится сталкиваться с таким понятием, как «выбор файловой системы». Чаще всего это происходит при необходимости форматирования внешних накопителей (флешек, microSD), установке операционных систем, восстановлении данных на проблемных носителях, в том числе жестких дисках. Пользователям Windows предлагается выбрать тип файловой системы, FAT32 или NTFS, и способ форматирования (быстрое/глубокое). Дополнительно можно установить размер кластера. При использовании ОС Linux и macOS названия файловых систем могут отличаться.
Возникает логичный вопрос: что такое файловая система и в чем ее предназначение? В данной статье дадим ответы на основные вопросы касательно наиболее распространенных ФС.
Что такое файловая система
Обычно вся информация записывается, хранится и обрабатывается на различных цифровых носителях в виде файлов. Далее, в зависимости от типа файла, кодируется в виде знакомых расширений – *exe, *doc, *pdf и т.д., происходит их открытие и обработка в соответствующем программном обеспечении. Мало кто задумывается, каким образом происходит хранение и обработка цифрового массива в целом на соответствующем носителе.
Операционная система воспринимает физический диск хранения информации как набор кластеров размером 512 байт и больше. Драйверы файловой системы организуют кластеры в файлы и каталоги, которые также являются файлами, содержащими список других файлов в этом каталоге. Эти же драйверы отслеживают, какие из кластеров в настоящее время используются, какие свободны, какие помечены как неисправные.
Запись файлов большого объема приводит к необходимости фрагментации, когда файлы не сохраняются как целые единицы, а делятся на фрагменты. Каждый фрагмент записывается в отдельные кластеры, состоящие из ячеек (размер ячейки составляет один байт). Информация о всех фрагментах, как части одного файла, хранится в файловой системе.
Файловая система связывает носитель информации (хранилище) с прикладным программным обеспечением, организуя доступ к конкретным файлам при помощи функционала взаимодействия программ A PI. Программа, при обращении к файлу, располагает данными только о его имени, размере и атрибутах. Всю остальную информацию, касающуюся типа носителя, на котором записан файл, и структуры хранения данных, она получает от драйвера файловой системы.
На физическом уровне драйверы ФС оптимизируют запись и считывание отдельных частей файлов для ускоренной обработки запросов, фрагментации и «склеивания» хранящейся в ячейках информации. Данный алгоритм получил распространение в большинстве популярных файловых систем на концептуальном уровне в виде иерархической структуры представления метаданных (B-trees). Технология снижает количество самых длительных дисковых операций – позиционирования головок при чтении произвольных блоков. Это позволяет не только ускорить обработку запросов, но и продлить срок службы HDD. В случае с твердотельными накопителями, где принцип записи, хранения и считывания информации отличается от применяемого в жестких дисках, ситуация с выбором оптимальной файловой системы имеет свои нюансы.
Основные функции файловых систем
Файловая система отвечает за оптимальное логическое распределение информационных данных на конкретном физическом носителе. Драйвер ФС организует взаимодействие между хранилищем, операционной системой и прикладным программным обеспечением. Правильный выбор файловой системы для конкретных пользовательских задач влияет на скорость обработки данных, принципы распределения и другие функциональные возможности, необходимые для стабильной работы любых компьютерных систем. Иными словами, это совокупность условий и правил, определяющих способ организации файлов на носителях информации.
Основными функциями файловой системы являются:
- размещение и упорядочивание на носителе данных в виде файлов;
- определение максимально поддерживаемого объема данных на носителе информации;
- создание, чтение и удаление файлов;
- назначение и изменение атрибутов файлов (размер, время создания и изменения, владелец и создатель файла, доступен только для чтения, скрытый файл, временный файл, архивный, исполняемый, максимальная длина имени файла и т.п.);
- определение структуры файла;
- поиск файлов;
- организация каталогов для логической организации файлов;
- защита файлов при системном сбое;
- защита файлов от несанкционированного доступа и изменения их содержимого.
Задачи файловой системы
Функционал файловой системы нацелен на решение следующих задач:
- присвоение имен файлам;
- программный интерфейс работы с файлами для приложений;
- отображение логической модели файловой системы на физическую организацию хранилища данных;
- поддержка устойчивости файловой системы к сбоям питания, ошибкам аппаратных и программных средств;
- содержание параметров файла, необходимых для правильного взаимодействия с другими объектами системы (ядро, приложения и пр.).
В многопользовательских системах реализуется задача защиты файлов от несанкционированного доступа, обеспечение совместной работы. При открытии файла одним из пользователей для других этот же файл временно будет доступен в режиме «только чтение».
Вся информация о файлах хранится в особых областях раздела (томах). Структура справочников зависит от типа файловой системы. Справочник файлов позволяет ассоциировать числовые идентификаторы уникальных файлов и дополнительную информацию о них с непосредственным содержимым файла, хранящимся в другой области раздела.
Операционные системы и типы файловых систем
Существует три основных вида операционных систем, используемых для управления любыми информационными устройствами: Windows компании Microsoft, macOS разработки Apple и операционные системы с открытым исходным кодом на базе Linux. Все они, для взаимодействия с физическими носителями, используют различные типы файловых систем, многие из которых дружат только со «своей» операционкой. В большинстве случаев они являются предустановленными, рядовые пользователи редко создают новые дисковые разделы и еще реже задумываются об их настройках.
В случае с Windows все выглядит достаточно просто: NTFS на всех дисковых разделах и FAT32 (или NTFS) на флешках. Если установлен NAS (сервер для хранения данных на файловом уровне), и в нем используется какая-то другая файловая система, то практически никто не обращает на это внимания. К нему просто подключаются по сети и качают файлы.
На мобильных гаджетах с ОС Android чаще всего установлена ФС версии ext4 во внутренней памяти и FAT32 на карточках microSD. Владельцы продукции Apple зачастую вообще не имеют представления, какая файловая система используется на их устройствах – HFS+, HFSX, APFS, WTFS или другая. Для них существуют лишь красивые значки папок и файлов в графическом интерфейсе.
Более богатый выбор у линуксоидов. Но здесь настройка и использование определенного типа файловой системы требует хотя бы минимальных навыков программирования. Тем более, мало кто задумывается, можно ли использовать в определенной ОС «неродную» файловую систему. И зачем вообще это нужно.
Рассмотрим более подробно виды файловых систем в зависимости от их предпочтительного использования с определенной операционной системой.
Файловые системы Windows
Исходный код файловой системы, получившей название FAT, был разработан по личной договоренности владельца Microsoft Билла Гейтса с первым наемным сотрудником компании Марком Макдональдом в 1977 году. Основной задачей FAT была работа с данными в операционной системе Microsoft 8080/Z80 на базе платформы MDOS/MIDAS. Файловая система FAT претерпела несколько модификаций – FAT12, FAT16 и, наконец, FAT32, которая используется сейчас в большинстве внешних накопителей. Основным отличием каждой версии является преодоление ограниченного объема доступной для хранения информации. В дальнейшем были разработаны еще две более совершенные системы обработки и хранения данных – NTFS и ReFS.
FAT (таблица распределения файлов)
Числа в FAT12, FAT16 и FAT32 обозначают количество бит, используемых для перечисления блока файловой системы. FAT32 является фактическим стандартом и устанавливается на большинстве видов сменных носителей по умолчанию. Одной из особенностей этой версии ФС является возможность применения не только на современных моделях компьютеров, но и в устаревших устройствах и консолях, снабженных разъемом USB.
Пространство FAT32 логически разделено на три сопредельные области:
- зарезервированный сектор для служебных структур;
- табличная форма указателей;
- непосредственная зона записи содержимого файлов.
К недостатком стандарта FAT32 относится ограничение размера файлов на диске до 4 Гб и всего раздела в пределах 8 Тб. По этой причине данная файловая система чаще всего используется в USB-накопителях и других внешних носителях информации. Для установки последней версии ОС Microsoft Windows 10 на внутреннем носителе потребуется более продвинутая файловая система.
С целью устранения ограничений, присущих FAT32, корпорация Microsoft разработала обновленную версию файловой системы exFAT (расширенная таблица размещения файлов). Новая ФС очень схожа со своим предшественником, но позволяет пользователям хранить файлы намного большего размера, чем четыре гигабайта. В exFAT значительно снижено число перезаписей секторов, ответственных за непосредственное хранение информации. Функция очень важна для твердотельных накопителей ввиду необратимого изнашивания ячеек после определенного количества операций записи. Продукт exFAT совместим с операционными системами Mac, Android и Windows. Для Linux понадобится вспомогательное программное обеспечение.
NTFS (файловая система новой технологии)
Стандарт NTFS разработан с целью устранения недостатков, присущих более ранним версиям ФС. Впервые он был реализован в Windows NT в 1995 году, и в настоящее время является основной файловой системой для Windows. Система NTFS расширила допустимый предел размера файлов до шестнадцати гигабайт, поддерживает разделы диска до 16 Эб (эксабайт, 10 18 байт ). Использование системы шифрования Encryption File System (метод «прозрачного шифрования») осуществляет разграничение доступа к данным для различных пользователей, предотвращает несанкционированный доступ к содержимому файла. Файловая система позволяет использовать расширенные имена файлов, включая поддержку многоязычности в стандарте юникода UTF, в том числе в формате кириллицы. Встроенное приложение проверки жесткого диска или внешнего накопителя на ошибки файловой системы chkdsk повышает надежность работы харда, но отрицательно влияет на производительность.
ReFS (Resilient File System)
Последняя разработка Microsoft, доступная для серверов Windows 8 и 10. Архитектура файловой системы в основном организована в виде B + -tree. Файловая система ReFS обладает высокой отказоустойчивостью благодаря реализации новых функций:
- Copy-on-Write (CoW) – никакие метаданные не изменяются без копирования;
- данные записываются на новое дисковое пространство, а не поверх существующих файлов;
- при модификации метаданных новая копия хранится в свободном дисковом пространстве, затем система создает ссылку из старых метаданных на новую версию.
Все это позволяет повысить надежность хранения файлов, обеспечивает быстрое и легкое восстановление данных.
Файловые системы macOS
Для операционной системы macOS компания Apple использует собственные разработки файловых систем:
- HFS+, которая является усовершенствованной версией HFS, ранее применяемой на компьютерах Macintosh, и ее более соверешенный аналог APFS. Стандарт HFS+ используется во всех устройствах под управлением продуктов Apple, включая компьютеры Mac, iPod, а также Apple X Server.
- Кластерная файловая система Apple Xsan, созданная из файловых систем StorNext и CentraVision, используется в расширенных серверных продуктах. Эта файловая система хранит файлы и папки, информацию Finder о просмотре каталогов, положениях окна и т.д.
Файловые системы Linux
В отличие от ОС Windows и macOS, ограничивающих выбор файловой системы предустановленными вариантами, Linux предоставляет возможность использования нескольких ФС, каждая из которых оптимизирована для решения определенных задач. Файловые системы в Linux используются не только для работы с файлами на диске, но и для хранения данных в оперативной памяти или доступа к конфигурации ядра во время работы системы. Все они включены в ядро и могут использоваться в качестве корневой файловой системы.
Основные файловые системы, используемые в дистрибутивах Linux:
Ext2, Ext3, Ext4 или Extended Filesystem – стандартная файловая система, первоначально разработанная еще для Minix. Содержит максимальное количество функций и является наиболее стабильной в связи с редкими изменениями кодовой базы. Начиная с ext3 в системе используется функция журналирования. Сегодня версия ext4 присутствует во всех дистрибутивах Linux.
JFS или Journaled File System разработана в IBM в качестве альтернативы для файловых систем ext. Сейчас она используется там, где необходима высокая стабильность и минимальное потребление ресурсов (в первую очередь в многопроцессорных компьютерах). В журнале хранятся только метаданные, что позволяет восстанавливать старые версии файлов после сбоев.
ReiserFS также разработана в качестве альтернативы ext3, поддерживает только Linux. Динамический размер блока позволяет упаковывать несколько небольших файлов в один блок, что предотвращает фрагментацию и улучшает работу с небольшими файлами. Недостатком является риск потери данных при отключении энергии.
XFS рассчитана на файлы большого размера, поддерживает диски до 2 терабайт. Преимуществом системы является высокая скорость работы с большими файлами, отложенное выделение места, увеличение разделов на лету, незначительный размер служебной информации. К недостаткам относится невозможность уменьшения размера, сложность восстановления данных и риск потери файлов при аварийном отключении питания.
Btrfs или B-Tree File System легко администрируется, обладает высокой отказоустойчивостью и производительностью. Используется как файловая система по умолчанию в OpenSUSE и SUSE Linux.
Другие ФС, такие как NTFS, FAT, HFS, могут использоваться в Linux, но корневая файловая система на них не устанавливается, поскольку они для этого не предназначены.
Дополнительные файловые системы
В операционных системах семейства Unix BSD (созданы на базе Linux) и Sun Solaris чаще всего используются различные версии ФС UFS (Unix File System), известной также под названием FFS (Fast File System). В современных компьютерных технологиях данные файловые системы могут быть заменены на альтернативные: ZFS для Solaris, JFS и ее производные для Unix.
Кластерные файловые системы включают поддержку распределенных хранилищ, расширяемость и модульность. К ним относятся:
- ZFS – «Zettabyte File System» разработана для распределенных хранилищ Sun Solaris OS;
- Apple Xsan – эволюция компании Apple в CentraVision и более поздних разработках StorNext;
- VMFS (Файловая система виртуальных машин) разработана компанией VMware для VMware ESX Server;
- GFS – Red Hat Linux именуется как «глобальная файловая система» для Linux;
- JFS1 – оригинальный (устаревший) дизайн файловой системы IBM JFS, используемой в старых системах хранения AIX.
Практический пример использования файловых систем
Владельцы мобильных гаджетов для хранения большого объема информации используют дополнительные твердотельные накопители microSD (HC), по умолчанию отформатированные в стандарте FAT32. Это является основным препятствием для установки на них приложений и переноса данных из внутренней памяти. Чтобы решить эту проблему, необходимо создать на карточке раздел с ext3 или ext4. На него можно перенести все файловые атрибуты (включая владельца и права доступа), чтобы любое приложение могло работать так, словно запустилось из внутренней памяти.
Операционная система Windows не умеет делать на флешках больше одного раздела. С этой задачей легко справится Linux, который можно запустить, например, в виртуальной среде. Второй вариант - использование специальной утилиты для работы с логической разметкой, такой как MiniTool Partition Wizard Free . Обнаружив на карточке дополнительный первичный раздел с ext3/ext4, приложение Андроид Link2SD и аналогичные ему предложат куда больше вариантов.
Флешки и карты памяти быстро умирают как раз из-за того, что любое изменение в FAT32 вызывает перезапись одних и тех же секторов. Гораздо лучше использовать на флеш-картах NTFS с ее устойчивой к сбоям таблицей $MFT. Небольшие файлы могут храниться прямо в главной файловой таблице, а расширения и копии записываются в разные области флеш-памяти. Благодаря индексации на NTFS поиск выполняется быстрее. Аналогичных примеров оптимизации работы с различными накопителями за счет правильного использования возможностей файловых систем существует множество.
Надеюсь, краткий обзор основных ФС поможет решить практические задачи в части правильного выбора и настройки ваших компьютерных устройств в повседневной практике.
Решил получше разобраться в файловых системах Linux. Взял мануал к Мандриве (она у меня стоит), почитал, оценил. Все вроде понятно написано, но в принципе, как человек до недавнего времени, работавший только с NTFS & FAT32, я так и не понял, преимущества ФС, применяемых в Linux, перед ФС винды.
Включив поисковик и посмотрев, результаты, я пришел к выводу, что NTFS лучше работает на форумах сторонников Вынь, а EXT3 - на форумах сторонников Linux. Причем, нормальной аргументации я нигде не нашел. А узнать объективные преимущества и недостатки при сравнении обеих хотелось бы. Никто не встречался с каким-нибудь хорошим описанием, или по опыту, может пользовал обе системы?
И еще вопрос: часто попутно встречал, что ReiserFS намного лучше , чем EXT3. Так ли это в действительности, лучше ли ставить Linux на ReiserFS, или нет? Или, к примеру, одни каталоги ставить на первой ФС, другие на второй?
Reiser хороша для работы с кучей маленьких файлов, коих в моей слаке вагон и маленькая тележка Посему весь хард под райзером и не парюсь. Ext пробовал уже очень давно. Я тоже под Reiserfs работаю. Первое, что прочитал о ФС Линукса, было вот здесь. И еще вопрос: часто попутно встречал, что ReiserFS намного лучше , чем EXT3.Войны-войны. Рискну сказать, что EXT3 надёжнее, но и заметно медлительнее. Но зато после краха ReiserFS восстановить с неё что либо тяжело - по крайней мере это касается корня той ФС по отношению к именам файлов.
С крахом Рейзера сталкивался уже не раз, чего не могу сказать про ext3 и даже ext2. С тех пор решил, что нафиг мне этот гимор с восстановлением копий или переустановкой системы, лучше пусть чуть помедленне, но надёжнее.
Лично я размечаю примерно так:
/tmp
/usr/portage
/var/tmp
всё остальное и на ext3 или даже ext2 замечательно работает, ну может ещё XFS для home, т.к. как там куча мультимедиа.
> serzh-zНу почему войны? Если Linux дает такие возможности в выборе ФС, то просто глупо этим не воспользоваться. Посему и интересуюсь, как лучше сделать. > serzh-z
Ну почему войны? Если Linux дает такие возможности в выборе ФС, то просто глупо этим не воспользоваться. Посему и интересуюсь, как лучше сделать.
пользоваться возможностью выбора - можно и нужно
а вот спорить, "кто доблестней, Кох или Вагнер" - бессмысленно
каждая из нативных линуксовых ФС имеет а) свои предпочтительные области применения и б) своих приверженцев У меня первой ФС была Ext3 за пол года два раза падала, попробовал ReizerFS скорость работы увеличилась, заметно на глаз. За
1 год система ни разу не упала а повод был.
З.Ы. уже больше года как купил себе UPS и нервы берегу
А какая тебе аргументация нужна? Запчасти от Жигулей лучше подходят к Жигулям, а к Запорожцу - как-то не очень. (Poor Fred @ Jul 19 2006, в 06:51) писал(а): А какая тебе аргументация нужна?
У меня есть логический диск под виндой. Размер около 23 гигов. На нем: текстовые документы, музыка в мп3, граф. изображения, фильмы, иногда DVD/CD-образы. Так как вся эта информация может использоваться и в винде и в Linux, я бы хотел пересадить его под Linux, для полноценной работы из под него. Но мне интересно знать, что я выиграю, а что потеряю от этого. Ну, в плане скорости, надежности, восстанавливаемости и т.д.
(aeroslav @ Jul 19 2006, в 10:36) писал(а): Но мне интересно знать, что я выиграю, а что потеряю от этого. Ну, в плане скорости, надежности, восстанавливаемости и т.д.по моему глубокому убеждения, полноценной поддержки NTFS в Linux не будет никогда. Потому что если сейчас таковую встроят - через пару лет MS'ники добавят в нее новых фич, и все начнется сначала.
FAT в Linux поддерживается хорошо - но при переходе на него Вы теряете все - и скорость, и надежность,и возможность разграничения доступа
так что если Вам нужен более-менее равноправный доступ из обеих ОС, остается Ext2/Ext3
не знаю, как с журналированием, но срадства работы с ext2 из винды вроде бы уже достаточно развиты Если надо только читать под Windows, то подойдет плагин от Total Commander'a, который читает ext2(3)fs и reiserfs 1.3 (aeroslav @ Jul 19 2006, в 10:36) писал(а): У меня есть логический диск под виндой.
[поскипано]
Так как вся эта информация может использоваться и в винде и в Linux
FAT32 на отдельном разделе спасет отца русской демократии. Т.к. это пока единственная система одинаково хорошо, стабильно и безгиморно поддерживаемая и в винде и в во всем остальном. (alv @ Jul 19 2006, в 09:55) писал(а): полноценной поддержки NTFS в Linux не будет никогда
Согласен. Но когда я работаю в Linux, то для меня это некритично. Доступ к фильмам, музыке, графике есть, и нормально. А если надо документ отработать, то перетягиваю его в Linux, а в винду через флэшку отправляю. Также предполагаю работать и из винды, если диск в ЕХТ переведу. А FAT не рассматриваю вообще, хватает только того, что он файло больше 4 гиг не поддерживает.
но срадства работы с ext2 из винды вроде бы уже достаточно развитыВидел пока только чтение <_<
но срадства работы с ext2 из винды вроде бы уже достаточно развитыВидел пока только чтение <_<
неужели не прикрутили?
вроде слышал я про плагины к фару и TC, которые рейзер читают, а ext2 - записывают
если не прав - миль пардон, тогда по совету Снейка - fat единственный вариант, если нужна запись с обеих сторон Про плагин не знаю, а тот драйвер, который есть, только читает, или я уже отстал от жизни. Хотя у меня сейчас линух на нтфс пишет вроде как, и винда вроде загрузилась, тч пока все нормально. А с фатом не все хорошо, тк у него размер файла ограничен 4 Гб, те образ двд уже не записать. а тот драйвер, который есть, только читает, или я уже отстал от жизни. Второе. Этот "читающий" драйвер и пишет отлично (кстати, к скорости работы ext под виндой нет абсолютно никаких нареканий), и даже позволяет удобно монтировать/демонтировать ext-разделы через виндовые оснастки MMC. даже позволяет удобно монтировать/демонтировать ext-разделы через виндовые оснастки MMC.
это да, иногда удобно.
А с записью - попробую, не знал, спасибо.
Плагин к тоталу только читает ЕХТ, проверено. Про reiserfs не знаю, ввиду отсутствия оного у меня. А FAT не подходит однозначно. И запись с обеих сторон не нужна, в смысле необязательна. Посему и выбирается из двух вариантов: или NTFS под вынь, или EXT под Linux. Смысл этой темы каков: в чем я выиграю, а в чем проиграю при переходе на EXT/ReiserFS по сравнению с тем, что диск остался бы в NTFS? Смысл этой темы каков: в чем я выиграю, а в чем проиграю при переходе на EXT/ReiserFS по сравнению с тем, что диск остался бы в NTFS?интересный вопрос.
м.б. Вы, как заинтересованное лицо, его и изучите, с тестами и цифрами?
а потом опишете впечатления?
а то многие из здесь присутствующих, подобно Вашему покорному слуге, про NTFS забыли даже то, чего никогда не знали Смотрите, под чем будете больше работать. Если под Виндой, то держите данные на ntfs. Недавно вышли драйверы ntfs с поддержкой на запись, ntfs-3g называются. Пока это бета версия, однако, как утверждается на сайте, тестировался на большом количестве файлов. Вчера поставил, запись произвел. Вроде, работает. Можно сделать отдельный раздел в vFat, который использовать для переноса данных (чтобы с флешкой не заморачиваться). Если будете больше работать под Линуксом, то держите все в ext3 и поставьте на Винду дрова для чтения/записи ext3. Я использую эти. Работали нормально. Работали - потому что я уже давно из-под Винды ничего не записывал. ntfs-3g пока тоже работает, проблем не было.
Решил сегодня проверить какая ось быстрее работает с диском. Как оказалось винда здорово тормозит.
Копирование 300 Mb файла:
Lin ext3 > ext3 35 секунд
Win ntfs > ntfs 59 секунд
Даже не знаю почему так. У меня первой ФС была Ext3 за пол года два раза падала, попробовал ReizerFS скорость работы увеличилась, заметно на глаз. За
1 год система ни разу не упала а повод был.
З.Ы. уже больше года как купил себе UPS и нервы берегу
Я ни разу не видел, как после сбоя что-либо просто удавалось восстановить с рейзера. Екст3, напротив, более надежная система. Рейзер имеет смысл устанавливать тем, у кого много маленьких файлов, например, на почтовом сервере, а экст - для тех, у кого и маленьких и больших поровну. У меня стоит ЕХТ3, за год не раз выключали ток, но у меня ничего не слетало, разве что не сохранялись изменения в файлах. Просто УПС покупать - денег жалко.
ЗЫ: Если слетала, криво настраивал.
Для обмена файлами между виндами и Линуксом лучше использовать фат, поскольку никто не может гарантировать, что "плагин к тотал командеру" будет без багов и не потрет половину линуксовых файлов. Можно создать большой фат раздел, и скидывать на него файлы из Линукса, потом читать в винде и наоборот. Здесь я позволю себе дать небольшой совет относительно фата: Лучше монтировать его непосредственно пред записью или чтением файла, а после вышеуказанного отмонтировать. Из сооброжений безопасности.
Читайте также: