Файловая система ext2 ext3 ext4

Файловая система ext2 ext3 ext4

Отличительными особенностями является скорость работы с файлами, безопасность и параметры (такие как размер блока), существующие по умолчанию и задаваемые при создании FS. Возможно, самой важной характеристикой является наличие журнала. В системный журнал записываются данные или метаданные (только заголовки) по которым информацию можно восстановить в случае сбоя.

Файловая система может создаваться на любом устройстве: на диске или системной партиции.

Файловая система EXT2

EXT2 является в настоящее время устаревшей файловой системой, которая практически не используется в современных инсталяциях. основной недостаток — отсутствие журналирования что, соответственно, делает невозможным восстановление данных в случае сбоя. По прежнему применяется на портативных носителях информации, таких как USB. Журнал для них не требуется, поскольку занимает определенное пространство.

Также гарантирует максимальную скорость работы.

  • для EXT2 максимальный размер файла -2 TB
  • максимальный размер всех файлов — 32 TB

Файловая система EXT3

Вытеснила EXT2, главной особенностью является появление журнала, является полностью обратно совместимой с EXT2 (EXT2 можно свободно конвертировать в EXT3). Сейчас встречается также редко, практически всегда используется EXT4.

Журнал — специальная область в памяти, в которую записывается информация обо всех изменениях

  • для EXT3 максимальный размер файла -2 TB
  • максимальный размер всех файлов — 32 TB
  • в каждом каталоге может быть до 32 000 подкаталогов

При журналировании может быть три опции (указываются при создании файловой системы):

  • journal – в журнал метаданные, а также сама информация
  • ordered – опция по умолчанию, сохраняются только метаданные и после записи на диск
  • writeback – также сохраняются только метаданные, можно выбрать сохранять их до записи на диск или после

Файловая система EXT4

Современная версия extended file system, чаще всего применяется именно она

  • максимальный размер файла -2 TB 16 TB
  • максимальный размер всех файлов — 1 EB (exabyte). 1 EB = 1024 PB (petabyte). 1 PB = 1024 TB (terabyte).
  • в каждом каталоге может быть до 64 000 подкаталогов

В EXT4 ведение журнала можно выключить установив опцию data при монтировании в off

EXT как основная файловая система Linux и практика работы

Файловая система создается командой mk2fs

Нужная опция журналирования указывается при монтировании, например:

mount /dev/vdc /mnt/1 -t ext3 -o data=journal

Конвертирование из EXT2 Eв XT3

ReiserFS

ReiserFS (и современная реализация Reiser4 с поддержкой SELinux) отличается хорошей производительностью и очень продуктивна — особенно при работе с большим количеством мелких файлов. ReiserFS не выделяет inode-ы для каждого мелкого файла обрабатывая их вместе, также ReiserFS использует журнал с несколькими доступными опциями. В настоящее время файловая система поддерживается разработчиками из России.

Создать FS для устройства можно командой

XFS – журналируемая файловая система. Использует оперативную память для хранения информации, поэтому возможны потери данных — например, при отключении электропитания.

Чтобы использовать XFS в Ubuntu потребуется установить пакеты xfsprogs и xfsdump

Файловая система Linux, также существующая в Windows среде. Используется когда нужно организовать совместный досутп к определенным дискам и разделам клиентов с разными ОС. В других случаях использовать не рекомендуется поскольку при работе в Linux возможны сложности.

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

Second Extended File System (дословно: «вторая расширенная файловая система»), сокращённо ext2 (иногда ext2fs) — файловая система ядра Linux. Была разработана Реми Кардом ( англ. ) взамен существующей тогда ext. По скорости и производительности работы она может служить эталоном в тестах производительности файловых систем. Так, в тестах на скорость последовательного чтения и записи, проведённых The Dell TechCenter, файловая система ext2 обгоняет ext3 и уступает лишь более современной ext4 в тесте на чтение. [1]

Главный недостаток ext2 (и одна из причин демонстрации столь высокой производительности) заключается в том, что она не является журналируемой файловой системой. Он был устранён в файловой системе ext3 — следующей версии Extended File System, полностью совместимой с ext2. Но для ssd это скорее плюс, поскольку продлевает жизнь накопителя. Это основная причина, почему EXT2 до сих пор поддерживается в Anaconda и Ubiquity.

Читайте также:  Nimh или li lon

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

Содержание

История [ править | править код ]

На заре развития Linux использовала файловую систему ОС Minix. Она была довольно стабильна, но оставалась 16-разрядной и, как следствие, имела жёсткое ограничение в 64 Мегабайта на раздел. Также присутствовало ограничение на максимальную длину имени файла: оно составляло 14 символов. Эти и другие ограничения послужили стимулом к разработке «расширенной файловой системы» (англ. Extended File System ), решавшей две главные проблемы Minix. Новая файловая система была представлена в апреле 1992 года. Ext расширила ограничения на размер файла до 2 гигабайт [2] и установила предельную длину имени файла в 255 байт.

Тем не менее, оставалось ещё много нерешённых проблем: не было поддержки раздельного доступа, временных меток модификации данных. Именно эти проблемы послужили инициативой для создания следующей версии расширенной файловой системы ext2 (англ. Second Extended File System ), разработанной в январе 1993 года. В ext2 были также реализованы соответствующие стандарту POSIX списки контроля доступа ACL и расширенные атрибуты файлов.

Логическая организация файловой системы ext2 [ править | править код ]

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

Все типы файлов имеют символьные имена. В иерархически организованных файловых системах обычно используются три типа имен: простые, составные и относительные. Не является исключением и ext2. Ограничения на простое имя состоят в том, что его длина не должна превышать 255 байт, а также в имени не должны присутствовать символ NUL и слеш. Ограничения на символ NUL связаны с представлением строк в языке Си, а на символ слеш — с тем, что он используются как разделительный символ между каталогами.

Полное имя представляет собой цепочку простых символьных имен всех каталогов, через которые проходит путь от корня до данного файла. В файловой системе ext2 файл может входить в несколько каталогов, а значит, иметь несколько полных имен; здесь справедливо соответствие «один файл — много полных имен». В любом случае полное имя однозначно определяет файл.

Атрибутами файловой системы ext2 являются:

  • тип и права доступа к файлу,
  • владелец, группа доступа,
  • информация о разрешённых операциях (ACL),
  • время создания, дата последнего доступа, дата последнего изменения и время последнего удаления,
  • размер файла,
  • спецификация файла:
  • обычный файл,
  • каталог,
  • файл байт-ориентированного устройства,
  • файл блочно-ориентированного устройства,
  • именованный канал,
  • символическая ссылка,
  • число занимаемых блоков,
  • другие.
  • Атрибуты файлов хранятся не в каталогах, как это сделано в ряде простых файловых систем, а в специальных таблицах. В результате каталог имеет очень простую структуру, состоящую всего из двух частей: номера индексного дескриптора и имени файла.

    Внутренняя организация файловой системы ext2 [ править | править код ]

    Структура дискового раздела [ править | править код ]

    Как и в любой файловой системе UNIX, в составе ext2 можно выделить следующие составляющие:

    Всё пространство раздела диска разбивается на блоки фиксированного размера, кратные размеру сектора: 1024, 2048, 4096 или 8192 байт. Размер блока указывается при создании файловой системы на разделе диска. Меньший размер блока позволяет сэкономить место на жёстком диске, но также ограничивает максимальный размер файловой системы. Все блоки имеют порядковые номера. С целью уменьшения фрагментации и количества перемещений головок жёсткого диска при чтении больших массивов данных блоки объединяются в группы блоков.

    Базовым понятием файловой системы является индексный дескриптор, или inode (англ. information node ). Это специальная структура, которая содержит информацию об атрибутах и физическом расположении файла. Индексные дескрипторы объединены в таблицу, которая содержится в начале каждой группы блоков.

    Читайте также:  Сколько телевизоров можно подключить к одной антенне

    Суперблок [ править | править код ]

    Суперблок — основной элемент файловой системы ext2. Он содержит общую информацию о файловой системе:

    • общее число блоков и индексных дескрипторов в файловой системе,
    • число свободных блоков и индексных дескрипторов в файловой системе,
    • размер блока файловой системы,
    • количество блоков и индексных дескрипторов в группе блоков,
    • размер индексного дескриптора,
    • идентификатор файловой системы (магическое число 0xEF53 для семейства файловых систем ext),
    • дата последней проверки файловой системы,
    • количество произведённых монтирований,
    • флаг состояния файловой системы [3] .

    Суперблок находится в 1024 байтах от начала раздела. В следующем блоке после суперблока располагается глобальная дескрипторная таблица — описание групп блоков, представляющее собой массив, содержащий общую информацию обо всех группах блоков раздела.

    От целостности суперблока напрямую зависит работоспособность файловой системы. Операционная система создаёт несколько резервных копий суперблока на случай повреждения раздела. С помощью флага состояния операционная система определяет текущее состояние файловой системы. Если файловая система монтируется на чтение, то флаг состояния будет указывать, что файловая система целостна (состояние «clean»). Если файловая система монтируется на чтение и запись, то в флаг состояния заносится информация о том, что файловая система используется (состояние «not clean»), а после размонтирования файловой системы флаг состояния снова должен указывать на целостность файловой системы [3] . Флаг состояния помогает определять возможные повреждения файловой системы. Например, если питание компьютера было неожиданно отключено, то флаг состояния будет указывать на некорректное завершение работы с файловой системой. При следующей загрузке компьютера операционная система должна будет проверить файловую систему на ошибки, если флаг состояния не указывает на целостность файловой системы.

    Группы блоков [ править | править код ]

    Все блоки раздела ext2 объединяются в группы блоков. Для каждой группы создаётся отдельная запись в глобальной дескрипторной таблице, в которой хранятся основные параметры:

    • номер блока в битовой карте блоков,
    • номер блока в битовой карте inode,
    • номер блока в таблице inode,
    • число свободных блоков в группе,
    • число индексных дескрипторов, содержащих каталоги.

    Битовая карта блоков — это структура, каждый бит которой показывает, отведён ли соответствующий ему блок какому-либо файлу. Если бит равен 1, то блок занят. Аналогичную функцию выполняет битовая карта индексных дескрипторов, которая показывает, какие именно индексные дескрипторы заняты, а какие нет. Ядро Linux, используя число индексных дескрипторов, содержащих каталоги, пытается равномерно распределить inode каталогов по группам, а inode файлов старается по возможности переместить в группу с родительским каталогом. Все оставшееся место, обозначенное в таблице как данные, отводится для хранения файлов.

    Каталоги [ править | править код ]

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

    Подобная организация каталога позволяет хранить в нём длинные имена файлов без потери места на диске.

    Когда операционная система пытается найти расположение файла (или каталога) на диске, она по очереди загружает в память содержимое каждого каталога, указанного в пути к файлу (или каталогу), чтобы по имени найти индексный дескриптор следующего каталога, указанного в пути [3] . Обход каталогов продолжается, пока необходимый файл или каталог не будет найден.

    Система адресации данных [ править | править код ]

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

    Файловая система ext2 использует следующую схему адресации блоков файла. Для хранения адреса файла выделено 15 полей, каждое из которых состоит из 4 байт. Если файл умещается в 12 блоков, то номера соответствующих кластеров непосредственно перечисляются в первых двенадцати полях адреса. Если размер файла превышает 12 блоков, то следующее поле содержит адрес кластера, в котором могут быть расположены номера следующих блоков файла. Таким образом, 13-е поле используется для косвенной адресации.

    Читайте также:  Sony xperia сброс графического ключа

    При максимальном размере блока в 4096 байт кластер, соответствующий 13-му полю, может содержать до 1024 номеров следующих блоков файла. Если размер файла превышает 12+1024 блоков, то используется 14-е поле, в котором находится адрес кластера, содержащего 1024 номеров кластеров, каждый из которых ссылается на 1024 блока файла. Здесь применяется уже двойная косвенная адресация. И наконец, если файл включает более 12+1024+1048576 блоков, то используется последнее 15-е поле для тройной косвенной адресации.

    Данная система адресации позволяет при максимальном размере блока в 4096 байт иметь файлы, размер которых превышает 2 TB.

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

    К сожалению, поддержка разделов ОС Linux в Windows не предусмотрена. А зря. Как мне кажется, это могло бы стать красивым жестом со стороны Microsoft.

    Суть проблемы заключается в том, что Windows использует файловую систему NTFS, а Linux обладает своим способом организации файлов, extended file system, последняя версия которого имеет порядковый номер 4.

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

    Итак на стороне Windows все как обычно легко и просто решается установкой стороннего софта.

    Сегодня я расскажу о нескольких интересных небольших, а, главное, бесплатных программах, которые включают поддержку файловых систем ext2, ext3, ext4 в Windows.

    Explore2fs (только чтение)

    DiskInternals Linux reader (только чтение)

    Ext2 IFS (чтение и запись)

    Ext2 FSD (как чтение, так и запись)

    Ext2Read (как чтение, так и запись)

    LTOOLS (чтение и запись)

    Explore2fs

    Explore2fs – утилита с графическим интерфейсом, позволяющая просматривать разделы ext2 и ext3. Работает на всех версиях Windows. К сожалению, возможность записи на разделы Linux отсутствует.

    DiskInternals Linux reader

    DiskInternals Linux reader – утилита, работающая под Windows и позволяющая читать файлы с разделов ext2/ext3. Как и предыдущая программа, не может записывать на разделы Linux.

    Ext2 IFS

    Ext2 IFS поддерживает Windows NT4.0/2000/XP/2003/Vista/2008 версий x86 и x64 и позволяет просматривать содержимое разделов Linux ext2, а также может производить запись на них. Утилита устанавливает системный драйвер ext2fs.sys, который расширяет возможности Windows и включает полную поддержку ext2 в ней: разделам ext2 присваиваются буквы дисков, а файлы и папки на них отображаются в диалогах всех приложений, например, в проводнике.

    Ext2 FSD

    Ext2 FSD – бесплатный драйвер для систем Windows (2K/XP/VISTA/7 версий x86 и x64). Как и предыдущая утилита, которая по своей сути тоже является драйвером, включает полную поддержку файловой системы ext2 в Windows.

    LTOOLS

    LTOOLS – набор утилит командной строки, позволяющий читать и записывать данные на/с разделов Linux ext2, ext3 и ReiserFS (стандартные файловые системы Linux) с машины под управлением DOS или Windows.

    Существует версия программы с графической оболочкой (написана на Java) – LTOOLSgui, а также версия с графической оболочкой, написанной на .Net.

    Ext2Read

    На десерт как всегда самое вкусное.

    Ext2Read – утилита, устроенная по типу файл менеджера, которая позволяет как просматривать, так и осуществлять запись на разделы ext2/ext3/ext4. Поддерживает LVM2 и, что отличает ее от других программ этого обзора, файловую систему ext4. Встроена поддержка рекурсивного копирования директорий.

    А вот и второй десерт. Вначале было сказано, что неплохим жестом со стороны Microsoft было бы включить поддержку Linux разделов в Windows по умолчанию.

    Жест все же был сделан на 20-летие Linux. Смотрите сами.

    На этом все. Спасибо за внимание. Пойду отбиваться от майских жуков. Их этой весной ооочень много. 🙂

    Ссылка на основную публикацию
    Установить цену номенклатуры в 1с розница
    Дата публикации 30.01.2019 В программе "1С:Бухгалтерии 8" (ред. 3.0) можно установить цены номенклатуры (товаров, работ, услуг) для их автоматической подстановки...
    Трагедия не вызывала в слушателях недоумения
    ОКЛИК//ОТКЛИК Составляют гнездо пар с паронимами окликаться//откликаться. ОКЛИК. Возглас, которым окликают кого-либо, привлекают чьё-либо внимание, останавливают. Оклик: громкий, резкий, ласковый,...
    Транзит или транспортер т4
    Всем доброго друзья!Помогите объективно выбрать из двух кандидатов лучший(надежный/крепкий) по вашему мнению пассажирский фургон.Мерседес Т1 или фольксваген транспортер Т4 ?...
    Установить ярлык алиса на рабочий стол
    Алиса – относительно новый голосовой помощник от компании Яндекс, который не только понимает русский язык, но и практически идеально на...
    Adblock detector