Ext3 или ext4


Linux - файловые системы ext3 и ext4

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

История расширенной файловой системы (ext) начинается с самых ранних дней Linux. В свое время эта файловая система позволила устранить ограничение на размер файла в 2 ГБ, но была чрезвычайно подвержена фрагментации. Поэтому вскоре после выпуска первой расширенной файловой системы была разработана ее вторая версия (ext2), устраняющая ряд дополнительных ограничений (например, максимальный размер файла был увеличен до 4 ТБ). Файловая система ext2 быстро стала общепринятым стандартом Linux, но продолжала развиваться вместе с развитием этой операционной системы. Таким образом, на сегодняшний день мы имеем еще две версии расширенной файловой системы – третью (ext3) и четвертую (ext4).

Обратите внимание на то, что все команды в листингах этой статьи начинаются с символов $ или#, которые имеют в командном интерпретаторе Linux определенные значения. Символ $ в командной строке означает, что пользователь работает с обычными правами, тогда как символ # означает, что пользователь имеет привилегии учетной записи root (т. е. является администратором). Когда вы встречаете в листингах команду, начинающуюся с символа #, то для ее выполнения у вас должен быть доступ к команде sudo или к учетной записи пользователя root, позволяющей выполнить команду напрямую.

Содержание

  • Дисковые файловые системы Linux
    • Эволюция расширенной файловой системы
  • Как хранятся данные в расширенной файловой системе Linux
    • Директории
    • Суперблок
  • Просмотр статуса файловой системы
    • Команды du и df
    • Команда fsck
    • Команда iostat
    • Команда sar
  • Оптимизация и тонкая настройка файловой системы
    • Настройка с помощью tune2fs
    • Монтирование с использованием специальных опций
    • Настройка параметров ядра
  • Фрагментация

Дисковые файловые системы Linux

По большей части в этой статье обсуждается работа с семейством расширенных файловых систем Linux (ext). Однако среди прочих файловых систем Linux поддерживает и множество дисковых файловых систем, например, XFS, ReiserFS, Btrfs (B-tree File System) и JFS (IBM Journaled File System). В зависимости от задач, выполняемых на вашем компьютере и в вашей рабочей среде, какие-то из этих файловых систем могут оказаться более подходящими, чем расширенная файловая система. Тем не менее знакомство с расширенной файловой системой является хорошей отправной точкой, поскольку в большинстве дистрибутивов Linux по умолчанию используется файловая система ext3 или ext4.

Файловая система ext3 является результатом дальнейшего развития более ранней файловой системы ext2 и широко используется в настоящее время. Одним из важных принципиальных отличий ext3 от ext2 является наличие журналирования. Файловая система ext3 обратно совместима с ext2, поэтому для перехода с ext2 на ext3 нет необходимости повторно разбивать диск на разделы. Обычно для этого достаточно запустить команду  tune2fs –j с привилегиями пользователя root. Например, если файловая система ext2 используется на втором разделе первого жесткого диска, то для ее преобразования в ext3 достаточно запустить команду tune2fs -j /dev/sda2.

Помимо журналирования, в ext3 реализован и ряд других улучшений по сравнению с ext2, например, повышенная скорость и надежность. Не обладая возможностями журналирования, файловая система ext2 страдала из-за «грязных» перезагрузок операционной системы (например, в случае непредвиденного отключения электропитания или краха системы). Во время загрузки компьютера каждую файловую систему ext2 нужно было проверять перед ее монтированием. Учитывая современные объемы файловых систем, время проверки целостности в большинстве случаев оказывается неприемлемым, поскольку этот долгий процесс существенно снижает доступность системы. В журналируемых файловых системах (как, например, NTFS) данные записываются на диск и помечаются либо как целостные, либо как нецелостные. Поэтому при «грязной» перезагрузке проверяются только те файлы, помеченные как нецелостные, что устраняет необходимость проверки всей файловой системы. В ext3 предусмотрено три режима журналирования:

  • Journal. Полное журналирование данных. Записываются не только метаданные, но и сами данные. Это самый медленный режим.
  • Ordered. Формально записываются только метаданные, но этот способ может устранять повреждения, связанные с отложенной записью, поскольку сначала выполняется запись в блоки данных.
  • Writeback. Журналируются только метаданные, но не сами данные. Это самый быстрый режим.

Последней версией расширенной файловой системы на сегодняшней день является файловая система ext4, обратно совместимая с ext2 и ext3. По сравнению с ext3 в ext4 реализован ряд улучшений, в основном касающихся скорости и надежности. Файловая система ext4 имеется в Linux с версией ядра 2.6.28 и выше.

В таблице 1 показаны некоторые основные характеристики наиболее распространенных файловых систем Linux, которые помогут вам планировать схемы разделов или преобразовывать существующие разделы.

Эволюция расширенной файловой системы

Файловая система
Extended file system (приблизительно с 1991 г.) Самая ранняя файловая система Linux. Недостатком этой файловой системы является чрезмерная фрагментация.
Ext2 (приблизительно с 1993 г.) Эта файловая система обладает высокой надежностью, но в ней отсутствует журналирование. После внезапной перезагрузки или сбоя системы для всей файловой системы запускается командаfsck.
Ext3 (приблизительно с 2001 г.) Эта файловая система может содержать 32 000 поддиректорий, поддерживает журналирование и обратно совместима с файловой системой ext2.
Ext4 (приблизительно с 2008 г.) Эта файловая система может содержать 64 000 поддиректорий, позволяет полностью отключить журналирование (в отличие от ext3) и обратно совместима с файловыми системами ext2 и ext3.

Как хранятся данные в расширенной файловой системе Linux

В файловой системе Linux хранятся два типа данных. Первый тип – это пользовательские данные (обычные файлы и директории, с которыми работают пользователи). Файлы также могут быть четырех типов: обычные файлы, ссылки, именованные каналы (FIFO) и сокеты.

Возможно, вы слышали выражение «В Linux все является файлами или процессами». Это выражение подразумевает тот факт, что в Linux отсутствует концепция системного реестра. Вместо этого все объекты хранятся в виде одного из четырех типов файлов. Другой тип данных, хранящихся в файловой системе – это метаданные, являющиеся индексными дескрипторами (index node) и обычно называемые inode. Индексные дескрипторы являются способом индексации атрибутов файлов в Linux. Каждый файл имеет свой inode, который обычно содержит следующую информацию:

  • Размер файла.
  • Владельцы файла (пользователь и группа).
  • Файловые разрешения.
  • Количество жестких и мягких ссылок.
  • Время последнего доступа и изменения файла.
  • Информацию о списке контроля доступа (ACL).
  • Любые дополнительные атрибуты, определенные для файла (например, признак неизменяемости).

В листинге 1 приведен пример использования команды stat, позволяющей получить информацию, хранящуюся в inode.
Листинг 1. Использование команды stat

 
 $ stat /etc/services 
 File: `/etc/services'
 Size: 362031 Blocks: 728 IO Block: 4096 regular file
 Device: fd00h/64768d Inode: 1638437 Links: 1
 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
 Access: 2011-12-19 00:01:25.000000000 -0600
 Modify: 2006-02-23 07:09:23.000000000 -0600
 Change: 2011-09-18 17:29:37.000000000 -0500

 

В листинге 1 команда была выполнена для файла /etc/services. В результате ее выполнения мы получили в наглядном виде всю информацию индексного дескриптора и файловые атрибуты.

Директории

При работе в командной строке Linux вы будете видеть файловые папки, часто называемые директориями. Директории служат для тех же целей, что и папки Windows или папки графического интерфейса Linux. Но в действительности директории – это всего лишь пустые файлы для упорядочения других файлов или даже директорий.

Все директории упорядочены в иерархическую структуру, начинающуюся с корневой директории (/). В действительности это лишь логическое упорядочение, поскольку не все директории располагаются в одном разделе файловой системы. Фактически, если вы монтируете сетевую файловую систему (например, NFS), точка монтирования будет располагаться где-то в этой иерархической структуре ниже корневой директории. В этом заключается существенное отличие от Windows, где вы привыкли к тому, что диск C обычно содержит дисковую файловую систему, а последующие файловые системы (подключенные сетевые ресурсы, дисководы CD-ROM и USB-накопители) смонтированы в виде отдельных дисков — D, E, F и так далее.

Суперблок

На самом верхнем уровне вся информация о самой файловой системе хранится в т. н. суперблоке. Хотя работа с суперблоком может не представлять особого интереса, понимание концепции использования команды dump2fs может помочь вам получить полное представление о концепциях хранения данных в файловой системе.

В листинге 2 приведен пример, в котором мы получаем информацию о разделе, расположенном на устройстве /dev/sda1 (в нашем случае это раздел /boot). В конструкции grep -i superblock мы используем команду grep без учета регистра для вывода информации, содержащей строку superblock.
Листинг 2. Использование dumpe2fs для получения информации суперблока

 
 # dumpe2fs /dev/sda1 | grep -i superblock 
 Primary superblock at 1, Group descriptors at 2-2
 Backup superblock at 8193, Group descriptors at 8194-8194
 Backup superblock at 24577, Group descriptors at 24578-24578
 Backup superblock at 40961, Group descriptors at 40962-40962
 Backup superblock at 57345, Group descriptors at 57346-57346
 Backup superblock at 73729, Group descriptors at 73730-73730

Просмотр статуса файловой системы

Естественно, вам захочется настроить базовые параметры файловой системы, такие как распределение дискового пространства, контрольные точки безопасности и заданный уровень производительности. В арсенале GNU имеется множество инструментов для работы с файловой системой. Наиболее распространенные команды – это dfdufsck иfdisk, а также iostat и sar (эти команды не столь популярны, но не менее полезны).

Команды du и df

Команды df и du используются для получения информации об использовании диска и свободном дисковом пространстве. Команда du -csh /var показывает размер файлов в директории /var. Если необходимо получить информацию о вложенных поддиректориях директории /var, то нужно выполнить команду du -h.

# du -csh /var 
 73M /var
 73M total

Команда df -h выводит информацию об использовании файловыми системами дискового пространства для всех точек монтирования в удобочитаемом (-h) формате:

# df -h 
 File System Size Used Avail Use% Mounted on
 /dev/mapper/VolGroup00-LogVol00 37G 3.2G 32G 10% /
 /dev/sda1 99M 12M 82M 13% /boot
 tmpfs 506M 0 506M 0% /dev/shm

Команда fsck

Команда fsck используется для проверки файловой системы и при необходимости ее восстановления. Например, если вам необходимо проверить на наличие ошибок раздел, расположенный на устройстве /dev/sda2, то введите команду fsck /dev/sda:

# umount /var
 # fsck /var
 fsck from util-linux-ng 2.17.2
 e2fsck 1.41.12 (17-May-2010)
 /dev/sda3: clean, 702/192000 files, 52661/768000 blocks

 

Примечание. Эту команду следует запускать на несмонтированной файловой системе.

В вышеприведенных примерах все задачи выполнялись в однопользовательском режиме. Раздел /var, расположенный на устройстве /dev/sda3, сначала был демонтирован. Команда fsck не обнаружила каких-либо ошибок, в противном случае она попыталась бы исправить их.

Команда iostat

Команда iostat выводит статистику дисковых операций ввода/вывода.

$ iostat
 Linux 2.6.18-164.el5 (DemoServer) 12/19/2011
 
 avg-cpu: %user %nice %system %iowait %steal %idle
 0.25 1.74 1.26 2.89 0.00 93.86
 
 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
 sda 10.69 351.52 227.60 1759192 1139038
 sda1 0.06 0.45 0.00 2254 22
 sda2 10.62 351.01 227.60 1756658 1139016
 dm-0 40. 06 350.72 227.60 1755178 1139016
 dm-1 0.02 0.18 0.00 920 0
 hdc 0.00 0.03 0.00 144 0
 fd0 0.00 0.00 0.00 16 0

 

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

Команда sar

Команда sar выводит значения системных счетчиков, подобно программе Performance Monitor операционной системы Windows. Команду sar можно использовать для отображения прошлых значений или для вывода счетчиков в реальном времени:

$ sar 4 5
 Linux 2.6.18-164.el5 (DemoServer) 12/19/2011
 
 12:20:20 AM CPU %user %nice %system %iowait %steal %idle
 12:20:24 AM all 0.00 0.00 0.00 0.00 0.00 100.00
 12:20:28 AM all 0.00 0.00 1.01 0.00 0.00 98.99
 12:20:32 AM all 0.00 0.00 0.50 0.00 0.00 99.50
 12:20:36 AM all 0.00 0.00 0.00 0.00 0.00 100.00
 12:20:40 AM all 0.25 0.00 1.01 0.00 0.00 98.74
 Average: all 0.05 0.00 0.50 0.00 0.00 99.45

 

В этом примере команда sar выводит пять значений счетчиков, обновляемых через каждые 4 секунды.

Оптимизация и тонкая настройка файловой системы

Одной из ответственных задач системного администратора является обеспечение доступа к данным пользователей за определенное время. Так же, как и в операционной системе Windows, наблюдение за производительностью системы является в Linux одной из главных задач. Как и производительность сети, производительность дисковой подсистемы чтения/записи может стать узким местом в системе, поэтому она требует оптимизации и тонкой настройки.

Для настройки файловой системы можно использовать следующие методы:

  • Применить инструмент tune2fs.
  • Изменить точки монтирования в файле /etc/fstab.
  • Изменить параметры ядра.

Настройка с помощью tune2fs

Утилита командной строки tune2fs используется для настройки параметров жесткого диска. Например, если у вас имеются директории большого объема на разделе с файловой системой ext3, то можно ускорить обращения к ним с помощью хешированных b-деревьев, для чего используется переключатель tune2fs dir_index:

# tune2fs -O dir_index /dev/sda5

 

Команду tune2fs следует запускать с привилегиями пользователя root. Переключатель -O определяет опцию для указанного раздела.

Монтирование с использованием специальных опций

Процесс, после которого файловая система становится доступной для использования, называется монтированием файловой системы. На практике для этого используется команда mount. Когда вы включаете компьютер с Linux, то система должна знать, как монтировать доступные файловые системы. Для этих целей служит файл /etc/fstab. Как и любые другие конфигурационные файлы Linux, этот файл можно редактировать с помощью любого текстового редактора, например, viили vim. Внутри файла /etc/fstab указаны точки монтирования различных файловых систем. При настройке параметров монтирования используется четвертый столбец. Например, чтобы отключить аудит времени последнего доступа к файлам для определенной файловой системы (что потенциально может повысить производительность), можно добавить опциюnoatime. Если у вас имеется файловая система, в которую пользователи не должны записывать данные (например, если в ней хранятся архивы), то можно смонтировать ее с опцией ro («только для чтения»).

Для изменения параметров монтирования в файле /etc/fstab используйте следующую командную строку:

UUID=97ee2cc4-8a26-41e9-9da1 /archives ext4 defaults,ro,noatime 1 2

 

Все изменения, которые вы вносите в файл /etc/fstab, вступают в силу после перезагрузки компьютера. Чтобы применить их без перезагрузки, можно демонтировать и повторно смонтировать затрагиваемую файловую систему с помощью командыmount:

# mount -o remount /archives

 

Если раздел можно демонтировать в текущей рабочей среде, то команда mount -o remount позволит избежать перезагрузки системы после изменения файла /etc/fstab.

Настройка параметров ядра

Для просмотра и изменения параметров ядра используется команда sysctl. Чтобы получить список параметров, относящихся к файловой системе, и их текущие значения, выполните команду sysclt -a | grep fs, как показано в листинге 3.
Листинг 3. Просмотр параметров ядра, относящихся к файловой системе

 
 # sysctl -a | grep fs. | less 
 ....
 fs.quota.warnings = 1
 fs.quota.syncs = 23
 fs.quota.free_dquots = 0
 fs.quota.allocated_dquots = 0
 fs.quota.cache_hits = 0
 fs.quota.writes = 0
 fs.quota.reads = 0
 fs.quota.drops = 0
 fs.quota.lookups = 0
 fs.suid_dumpable = 0
 fs.inotify.max_queued_events = 16384
 fs.inotify.max_user_watches = 8192
 fs.inotify.max_user_instances = 128
 fs.aio-max-nr = 65536
 fs.aio-nr = 0
 fs.lease-break-time = 45
 fs.dir-notify-enable = 1
 fs.leases-enable = 1
 fs.overflowgid = 65534
 fs.overflowuid = 65534
 fs. dentry-state = 26674 23765 45 0 0 0
 fs.file-max = 102263
 .........

 

В листинге 3 показан фрагмент списка параметров ядра, относящихся к файловой системе и отфильтрованных с помощью команды grep. Изменить эти параметры можно с помощью команды sysclt -w. Например, если ваш сервер обрабатывает большое количество мелких файлов и на нем постоянно возникают ошибки с сообщением «running out of file handles» (недостаточно обработчиков файлов), то можно увеличить максимальное число дескрипторов открытых файлов с помощью команды sysclt -w file-max=xxxxxx, где xxxxxx – необходимое максимальное количество обработчиков.

Любые изменения, сделанные с помощью sysctl, работают до первой перезагрузки. Чтобы эти изменения действовали после перезагрузки, необходимо открыть файл /etc/sysconf в любом текстовом редакторе и внести изменения в него. В этом файле содержатся не все параметры ядра, поэтому если вы не нашли в нем нужный параметр, то просто добавьте его вместе с нужным значением.

Фрагментация

Обычно дефрагментацию диска выполняют при его фрагментации более 20%. При создании расширенной файловой системы около 5% дискового пространства резервируется для системных задач во избежание необходимости дефрагментации. Если говорить кратко, то в обычных условиях вам не нужно беспокоиться о выполнении дефрагментации. Тем не менее это не означает, что современное поколение расширенных файловых систем совершенно не подвержено фрагментации. Если вы подозреваете, что файл фрагментирован, это можно проверить с помощью команды filefrag. Опция -v позволяет получить более подробную информацию.

Файловая система ext4, ее сравнение, совместимость с ext3, а также переход c ext3 на ext4 « *Unix,*Linux &Laquo; Интересные Заметки « skleroznik.in.ua

Поддержка ext4 появилась в ядре Linux версии 2.6.28. Если сравнивать эту файловую систему с ext3, то производительность и надежность новой файловой системы существенно увеличена. Максимальный размер раздела доведен до 1014 петабайт (1 эксбибайт). Максимальный размер файла — более 2 Тбайт.

Сравнение ext3 и ext4

1) Увеличенный размер файла и файловой системы (Для ext3 максимальный размер файловой системы составляет 32 Тбайт, а файла — 2 Тбайт, но на практике ограничения были более жесткими. Так, в зависимости от архитектуры, максимальный размер тома составлял до 2 Тбайт, а максимальный размер файла -до 16 Гбайт.
В случае с ext4 максимальный размер тома составляет 1 эксбибайт (EiB) — это 260 байт. Максимальный размер файла составляет 16 Тбайт. Такие объемы информации пока не нужны обычным пользователям, однако весьма пригодятся на серверах, работающих с большими дисковыми массивами)

2)Экстенты (Основной недостаток ext3 — ее метод выделения места на диске. Дисковые ресурсы выделялись с помощью битовых карт свободного места, а такой способ не отличается ни скоростью, ни масштабируемостью. Получилось, что ext3 более эффективна для небольших файлов, но совсем не подходит для хранения больших файлов.
Для улучшения выделения ресурсов и более эффективной организации данных в ext4 были введены экстенты. Экстент — это способ представления непрерывной последовательности блоков памяти. Благодаря использованию экстентов сокращается количество метаданных (служебных данных файловой системы), поскольку вместо информации о том, где находится каждый блок памяти, экстент содержит информацию о том, где находится большой список непрерывных блоков памяти.Для эффективного представления маленьких файлов в экстентах применяется уровневый подход, а для больших файлов используются деревья экстентов. Например, один индексный дескриптор может ссылаться на четыре экстента, каждый из которых может ссылаться на другие индексные дескрипторы и т. д. Такая структура является мощным механизмом представления больших файлов, а также более защищена и устойчива к сбоям)

3) Отложенное выделение пространства (Файловая система ext4 может отложить выделение дискового пространства до последнего момента, что увеличивает производительность системы)

4) Контрольные суммы журналов (Контрольные суммы журналов повышают надежность файловой системы)

5) Большее количество каталогов (В ext3 могло быть максимум 32 000 каталогов, в ext4 количество каталогов не ограничивается)

6) Дефрагментация «налету» (Файловая система ext3 не особо склонна к фрагментации, но все же такое неприятное явление имеется. В ext4 производится дефрагментация «на лету», что позволяет повысить производительность системы в целом)

7) Наносекундные временные метки (В большинстве файловых систем временные метки (timestamp) устанавливаются с точностью до секунды, в ext4 точность повышена до наносекунды. Также ext4 поддерживает временные метки до 25 апреля 2514 года, в отличие от ext3 (18 января 2038 г.))

Совместимость с ext3

Файловая система ext4 является прямо и обратно совместимой с ext3, однако Все же существуют некоторые ограничения. Предположим, что у нас на диске имеется файловая система ext4. Ее можно смонтировать и как ext3, и как ext4 (это и есть прямая совместимость) — и тут ограничений никаких нет. А вот с обратной совместимостью не все так безоблачно — если файловую систему ext4 смонтировать как ext3, то она будет работать без экстентов, что снизит ее производительность.

Переход на ext4

Если вы при установке системы выбрали файловую систему ext3, то перейти на ext4 можно без потери данных> и в любой удобный для вас момент. Откройте терминал и введите команду:

sudo tune2fs -О extents,uninit_bg,dir_index /dеv/имя_устройства

На момент ввода этой команды устройство должно быть размонтировано.

ВНИМАНИЕ!

Если нужно преобразовать в ext4 корневую файловую систему, то данную команду нужно вводить с LiveCD, поддерживающего ext4.

После этого проверим файловую систему:

sudo fsck -pf /dev/имя_устройства

Затем смонтируем файловую систему так:

mount -t ext4 /dev/имя_устройства /точка_монтирования
mount -t ext4 /dev/disk/by-uuid/UUID-устройства /точка_монтирования

Если раздел автоматически монтируется через /etc/fstab, не забудьте исправить файловую систему на ext4:

UUID=UUID-раздела /точка ext4 defaults,errors=remount-ro,relatime
О 1

Если вы изменили тип файловой системы корневого раздела, тогда необходимо отредактировать файл /boot/grub/menu.lst и добавить опцию rootfstype=ext4 в список параметров ядра, например:
title Linux
root (hdO,l)
kernel /boot/vmlinuz-2. 6.28.1 root=UUID=879f797c-944d-4c28-a720-249730705714 ro quiet splash rootfstype=ext4
initrd /boot/initrd.img-2.6.28.1
quiet

Источник http://ipmnet.ru/~sadilina/Fedora/1.html

Запись опубликована в рубрике *Unix,*Linux. Добавьте в закладки постоянную ссылку.

Какой из них вы должны использовать?

Ext2 vs Ext3 vs Ext4 : какую файловую систему следует использовать? Этот вопрос поставил в тупик очень многих людей. Если вы тоже пытаетесь в этом разобраться, то этот пост о Мастере разделов MiniTool — то, что вам нужно.

Расширенная файловая система, также известная как Ext, является первой файловой системой, разработанной специально для ядра Linux. Он был реализован в апреле 1992 г. и был направлен на преодоление определенных ограничений файловой системы MINIX. Использование виртуальной файловой системы (VFS) помогает Ext обрабатывать файловые системы размером до 2 ГБ.

Однако файловая система Ext имеет некоторые недостатки, такие как фрагментация и неизменяемость инодов. Итак, вторая расширенная файловая система (Ext2) была выпущена в 1993 году. С тех пор файловые системы Ext3 и Ext4 выходят одна за другой. Три типа расширенных файловых систем также являются распространенными файловыми системами Linux. В чем разница между ними? Давайте продолжим Ext2 против Ext3 против Ext4.

Ext2, Ext3 и Ext4

Ext2, Ext3 и Ext4 — все это расширенные файловые системы, созданные для Linux. Но у них есть различия во многих аспектах, таких как ограничение размера файла, размер индексного дескриптора по умолчанию, ведение журнала и так далее. Теперь мы подробно рассмотрим различия между Ext4, Ext3 и Ext 2.

Ext2

Ext2 — вторая расширенная файловая система, первоначально разработанная французским программным обеспечением в 1993 году. Как первая коммерческая файловая система для Linux, Ext2 преодолевает некоторые ограничения Ext. Максимальный размер отдельного файла может составлять до 2 ТБ, а размер файловой системы может составлять от 4 ТБ до 32 ТБ в зависимости от размера блока.

Это самая простая и переносимая файловая система в нескольких дистрибутивах Linux, включая Debian и Red Hat Linux. Кроме того, Ext2 является подходящей файловой системой для флэш-накопителей, таких как SD-карты и USB-накопители, поскольку ей не нужно вести журнал, что позволяет минимизировать количество операций записи и повысить производительность.

Что ж, файловая система Ext2 имеет некоторые недостатки. Он был разработан для хранения данных в блоках одинакового размера на носителе, что позволяет тратить в среднем половину размера блока на каждый файл. Например, при размере блока 1024 байта для каждого файла размером 1025 байт требуется 2 блока, тогда более половины размера блока тратится впустую.

По сравнению с Ext3 и Ext4, Ext2 не имеет функции ведения журнала, которая может свести к минимуму повреждение данных в случае отключения питания. Здесь мы резюмируем его плюсы и минусы следующим образом: 918

Минусы:

  • Размер блока отходов
  • Без журналирования

Теперь у вас должно быть общее представление о Ext2. В чем разница между Ext3 и Ext4? Давайте продолжим читать следующий контекст.

Ext3

Ext3 обозначает третью расширенную файловую систему, представленную в ноябре 2001 г. в Linux 2.4.15. Это журналируемая файловая система, которую можно использовать во многих популярных дистрибутивах Linux. По сравнению с Ext2 основным преимуществом Ext3 является ведение журнала, в котором можно отслеживать все изменения, что повышает надежность и снижает вероятность повреждения файловой системы из-за сбоев системы или сбоев питания.

Еще одним важным преимуществом является то, что Ext3 позволяет выполнять обновление с Ext2 на месте без необходимости резервного копирования и восстановления данных. Файловые системы Ext2 и Ext3 используют e2fsporgs в качестве стандартного набора утилит, что упрощает преобразование между ними. Как преемник Ext2, Ext3 был разработан с некоторыми новыми функциями, включая журнал, онлайн-рост файловой системы и индексирование HTree для больших каталогов.

Согласно опросу, Ext3 потребляет меньше ресурсов процессора, чем другие файловые системы Linux, такие как Ext4 и XFS. Сравнивая Ext4 и Ext3, многие эксперты обнаружили, что Ext3 безопаснее из-за его относительной простоты и более широкой базы тестирования. При значительном повреждении данных файловые системы Ext2 и Ext3 более возможны и легко восстанавливают данные из-за их избыточности данных по сравнению с Ext4.

Однако в Ext3 отсутствуют расширенные функции файловой системы, такие как отображение блокировки экстентов, динамическое размещение inode и дефрагментация.

Плюсы:

  • Отдельный размер файла: От 16 ГБ до 2 ТБ
  • Размер файловой системы тома: от 4 ТБ до 32 ТБ
  • Максимальная длина имени файла: 255 байт (символов)
  • Максимальное количество файлов: переменная
  • Имена файлов : поддерживает почти все символы, кроме NULL('\0') и '/'
  • Доступны три типа ведения журнала : Журнал, Заказ и обратная запись
  • Преобразование файловой системы: преобразует файл Ext2 в файл Ext3 без резервного копирования и восстановления
  • Отметка времени: Секунда
  • Предварительное размещение: Внутриядерное резервирование
  • Распределение нескольких блоков: базовый

Минусы:

  • Особенность: Отсутствуют некоторые расширенные функции, такие как экстенты, динамическое размещение инодов и блочное подраспределение.
  • Undeletes: Поскольку драйвер Ext3 удаляет файлы, стирая индексные дескрипторы файлов, восстановить удаленные файлы сложно.
  • Нет контрольной суммы в журнале при записи в журнал на накопитель с дополнительным кешем.
  • Снимки не поддерживаются

Далее мы сравним Ext4, Ext3 и Ext2.

Ext4

Ext4 также является журналируемой файловой системой, представляющей собой ряд обратно совместимых расширений для Ext3. Это файловая система для большинства дистрибутивов Linux. Кроме того, Ext4 поддерживается некоторыми другими операционными системами, в том числе Windows (чтение и запись с ext2fsd), FreeBSD (версия 12.0 и выше), macOS (только чтение с ext4fuse и полная версия с ExtFS) и KolibriOS (только чтение).

Первоначально он был включен в ядро ​​​​Linux версии 2.6.19 с целью расширить пределы хранилища и повысить производительность. По сравнению с Ext2 и Ext3, файловая система Ext может поддерживать размер тома до 1 ЭБ и размер одного файла до 16 ТБ при стандартном размере блока 4 КБ.

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

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

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

Плюсы:

  • Отдельный размер файла: От 16 ГБ до 16 ТБ
  • Размер файловой системы тома: от 4 ТБ до 1 ЭБ
  • Максимальная длина имени файла: 255 байт (символов)
  • Максимальное количество файлов: 4 миллиарда
  • Имена файлов: Поддерживает почти все символы, кроме NULL('\0') и '/'
  • Преобразование файловой системы: Файловую систему Ext3 можно преобразовать в Ext4
  • Расширенные функции: Экстенты, индексация каталогов, отложенное размещение и дефрагментация
  • Подкаталог: Без ограничений
  • Отметка времени: Наносекунда
  • Предварительное выделение: для файлов экстентов
  • Распределение нескольких блоков: расширенный

Минусы:

  • Безопасность данных : не поддерживает удаление безопасности
  • Снимок: сложнее создать согласованный снимок приложения на разных томах
  • Дисковое пространство: использует немного больше дисковых ресурсов

В чем разница между Ext3 и Ext4? Прочитав приведенную выше информацию, я полагаю, что вы уже знаете ответ.

Какой из них следует использовать

Ext2, Ext3 или Ext4: какой из них следует использовать? Многих до сих пор волнует этот вопрос. Если вы не уверены, идеальным выбором будет файловая система Ext4. В настоящее время Ext4 является файловой системой по умолчанию для большинства дистрибутивов Linux, включая Debian и Ubuntu. Она обеспечивает большую гибкость для хранения больших файлов и может похвастаться более продвинутыми функциями, чем две другие расширенные файловые системы.

Основная рекомендация: Как получить доступ к файлам Linux из Windows 10 [Полное руководство]

Кроме того, Ext4 был разработан с учетом обратной совместимости. Если вы все еще хотите использовать Ext2 или Ext3, вы можете смонтировать файловую систему Ext4 как Ext3 или смонтировать файловую систему Ext2/Ext3 как Ext4. Он имеет больше преимуществ по сравнению с Ext2 и Ext3 по сравнению с Ext2 и Ext3 по сравнению с уменьшением фрагментации файлов, увеличением срока службы флэш-памяти и хранением больших файлов.

Чтобы помочь вам интуитивно сравнить Ext4, Ext3 и Ext2, мы нарисовали следующую форму:

Бонус: как создать файловую систему Ext2/Ext3/Ext4 в Windows

Есть много пользователей, которые хотят иметь двойную загрузку Windows и Linux или создать Linux USB с постоянным хранилищем. В это время вам может понадобиться создать раздел Ext2/Ext3/Ext4 в системе Windows. Как это сделать? Настоятельно рекомендуется использовать MiniTool Partition Wizard.

Это универсальный менеджер разделов, который поддерживает множество файловых систем, включая FAT16/32, NTFS, exFAT и Ext2/3/4, Linux Swap. С помощью этого мощного инструмента вы можете форматировать жесткий диск, преобразовывать NTFS в FAT, преобразовывать MBR в GPT, восстанавливать потерянные данные, переносить ОС на SSD/HD, восстанавливать MBR и т. д.

Шаг 1. Нажмите кнопки ниже, чтобы загрузить мастер создания разделов MiniTool и запустить его.

Скачать бесплатно

Шаг 2. В главном интерфейсе выберите нераспределенное пространство и нажмите Создать раздел на левой панели.

Шаг 3. Во всплывающем окне выберите Ext2/3/4 из раскрывающегося меню File System , а затем вы можете указать его Метка раздела , Буква диска , Размер кластера , Размер раздела и Расположение в зависимости от ваших потребностей. Затем нажмите OK , чтобы сохранить изменения.

Шаг 3. Щелкните Применить , чтобы выполнить эту операцию.

В этом посте всесторонне анализируются различия между Ext2, Ext3 и Ext4. Вы тоже пытаетесь разобраться? Этот пост то, что вам нужно. Нажмите, чтобы твитнуть

Ваше мнение

Вот и подходит к концу этот пост. Теперь вы должны были знать разницу между Ext4, Ext3 и Ext2. Если вы не уверены, какой из них выбрать, мы рекомендуем вам использовать Ext4. Вы также можете использовать MiniTool Partition Wizard для создания раздела Ext2/3/4 в Windows.

Если у вас есть идеи по этому поводу, поделитесь ими в комментариях. Кроме того, вы можете отправить нам электронное письмо через [email protected] , если возникнут трудности с использованием программного обеспечения MiniTool.

Часто задаваемые вопросы о Ext2, Ext3 и Ext4

Файловая система Ext4 лучше, чем Ext3?

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

Может ли Windows читать Ext4?

Для чтения Ext4 в Windows вы можете использовать Ext2Fsd. Это драйвер файловой системы Windows для Ext2/3/4. С помощью этого драйвера вы можете читать файловые системы Linux изначально через букву диска, к которой может получить доступ любая программа.

Может ли Android использовать Ext4?

Да, это так. Внутренняя память на большинстве Android-устройств поддерживает Ext3/4/Fat32. Поскольку Android основан на Linux, файловая система которого по умолчанию — Ext4, вы можете использовать Ext4 на Android.

  • Facebook
  • Твиттер
  • Линкедин
  • Реддит

В чем разница между ext3 и ext4 с точки зрения обычного пользователя

спросил

Изменено 8 месяцев назад

Просмотрено 171 тысяч раз

Каковы большие различия между ext3 и ext4 с точки зрения обычного пользователя? Я слышал, что придерживаться ext3 разумнее. Это правда?

РЕДАКТИРОВАТЬ : Одна вещь, которую я хочу отметить, это то, что я являюсь пользователем двух ОС (Windows и Ubuntu), поэтому невозможность подключить диск (ext4) из Windows является для меня большим минусом. Но ext3 имеет эту привилегию.

  • ext4
  • ext3

Несколько лет назад я бы посоветовал придерживаться ext3 , но сейчас ext4 лучше. Недавний (16 мая 2011 г.) обзор от thegeekstuff.com резюмирует это довольно хорошо:

  • Поддерживает огромный размер отдельных файлов и общий размер файловой системы.
  • Максимальный размер отдельного файла может быть от 16 ГБ до 16 ТБ
  • Общий максимальный размер файловой системы ext4 составляет 1 ЭБ (экзабайт). 1 ЭБ = 1024 ПБ (петабайт). 1 ПБ = 1024 ТБ (терабайт).
  • Каталог может содержать не более 64 000 подкаталогов (в отличие от 32 000 в ext3)
  • Вы также можете смонтировать существующую ext3 fs как ext4 fs (без необходимости ее обновления).
  • В ext4 представлено несколько других новых функций: многоблочное выделение, отложенное выделение, контрольная сумма журнала, быстрая fsck и т. д. Все, что вам нужно знать, это то, что эти новые функции улучшили производительность и надежность файловой системы по сравнению с ext3.
  • В ext4 у вас также есть возможность отключить функцию ведения журнала.

Очень хорошее сравнение с 2009 годом.на linuxologist.com есть график производительности записи с 4 ГБ:

, а также другая информация о ext4.

У меня самого с ext4 проблем не было.

Если вам нужно разделить раздел с Windows, вам понадобится ext3 . Я сам отказался от Windows, поэтому у меня все настроено на ext4 и я использую USB-накопитель для передачи данных на компьютер с Windows (в основном на работе).

Для настройки можно сделать следующее:

 / доб.4 менять /домашняя доб.4 /datapartiton_with_windows ext3 

Затем вы можете сделать последний раздел общим для обеих ОС.


Learn more

Только новые статьи

Введите свой e-mail

Видео-курс

Blender для новичков

Ваше имя:Ваш E-Mail: