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

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

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

Первые файловые системы были неиерархическими, т. е. не поддерживают каталоги. Ясно, что работать с такой файловой системой, мягко говоря,  неудобно. Затем появились иерархические файловые системы, с которыми
знаком каждый пользователь. Корневой каталог иерархической файловой системы может содержать файлы и подкаталоги первого уровня (например,  каталог Windows — является каталогом первого уровня относительно корневого каталога). В свою очередь, каталоги первого уровня могут содержать файлы и подкаталоги второго уровня и т. д.

Со временем росли требования к надежности файловых систем. Вы можете себе представить, что будет, если из-за сбоя системы «уйдет в историю» годовой отчет о работе фирмы? В развитых странах, где весь бухгалтерский учет ведется с помощью компьютера, фактически это означает банкротство фирмы. Пусть не сразу, но через некоторое время. Поэтому разработчики файловых систем стараются сделать файловые системы более надежными. Для повышения надежности появилась, например, вторая копия таблицы размещения файлов, расположенная физически в «конце» диска; чистый бит (clean bit). С копией таблицы размещения файлов все ясно — если оригинал недоступен (поврежден), то по копии можно еще восстановить данные. «Чистый» бит используется для проверки корректности завершения работы компьютера. Что происходит при корректном завершении работы компьютера? Наверное, вы уже догадались, о чем я? Правильно, происходит синхронизация дисков и буферов записи — содержимое буферов записи окончательно записывается на диск. А если работа компьютера была завершена некорректно, например, как у нас часто бывает, отключили свет из-за долгов вашего соседа? Хорошо, если операционная система успела синхронизировать буферы записи с диском. То есть все данные были успешно записаны на диск. А может случиться следующая неприятная ситуация. Программа записывает данные на диск. Сначала они помещаются в буфер записи, а программа получает «ответ» от операционной системы, что все данные успешно сохранены. Но они еще физически не записаны на диск, они находятся в буфере записи. Выключают свет... Содержимое буферов записи пропадает вместе с электропитанием. Выходит, что часть данных вообще не была записана на диск. Еще хуже, когда питание пропадает в момент записи данных на диск — тогда вы можете потерять файл навсегда. И самый плохой случай — питание пропало во время записи метаданных (служебных данных файловой системы) — тогда возможно повреждение целостности самой файловой системы. Напугал? Лучший совет — покупайте источник бесперебойного питания — я уже со счета сбился, сколько раз он мне помогал.

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

Следующий шаг в развитии файловых систем — это так называемые журна-лируемые файловые системы. Журналируемая файловая система более устойчива к сбоям, чем обычные файловые системы. Перед тем, как что-то сделать, журналируемая система создает план действий, например, записать такие-то данные в файл filel.txt, прочитать данные из файла file2.txt, удалить file3.txt и т. д. План действий записывается в специальный файл, который называется журналом — отсюда и название данного типа файловых систем. Если операция (например, запись в файл filel.txt) выполнена успешно, файловая система вычеркивает эту операцию из журнала. Представим, что электричество опять куда-то делось. При включении питания (когда оно все-таки появится) будет выполнена проверка диска (как обычно). Вот только проверяться будут не все файлы, а только те, которые есть в журнале. Это вполне логично — если файл занесен в журнал, то на момент сбоя с ним должно что-то произойти, поэтому нет необходимости проверять остальные файлы, которые не указаны в журнале. Благодаря журналу существенно повышается надежность файловой системы.

Итак, журнал — это хорошо, поэтому при установке Linux нужно выбирать журналируемую файловую систему.

При установке Linux есть возможность выбрать файловую систему. Но какую выбрать? Вот в чем вопрос. Ведь большинство современных дистрибутивов в качестве корневой файловой системы предлагают: ext2, ext3 (по умолчанию), XFS, ReiserFS, JFS.

Попробуем сделать выбор. Родной для Linux является файловая система ext, но она давно устарела и ее заменила ext2. Сейчас уже и exl2 считается устаревшей. На ее смену пришла файловая система ext3. ext3 — это журналируемая версия ext2, т. е. ext3 обратно совместима с ext2. В любом случае ext2 нас не устраивает только потому, что она обычная, а не журналируемая.

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

Кроме файловых систем ext*, в качестве корневой файловой системы Linux может использовать следующие файловые системы: XFS, ReiserFS, JFS.

Примечание: В предыдущем абзаце я выделил, что указанные файловые системы могут использоваться именно в качестве корневой файловой системы. Linux поддерживает много разных файловых систем — FAT, FAT32, NTFS, HPFS и т. д. Но не каждая файловая система может использоваться в качестве корневой.

Файловую системы XFS целесообразно использован,, если вы обрабатываете видео в реальном времени, поскольку скорость ввода/вывода достигает 7 Гбайт/с. Также данная файловая система позволяет использовать размер блока от 512 байтов до 64 Кбайт. Ясно, что если часто приходится работать с огромными файлами (например, видеофайлами), то лучше установить наибольший размер блока. А если у вас много маленьких файлов, то рекомендуется установить наименьший размер блока — так вы можете сэкономить дисковое пространство.

Файловая система ReiserFS отличается тем, что позволяет хранить в одном блоке несколько файлов, и это позволяет еще больше сэкономить место на диске. Другие файловые системы этого не позволяют. Представьте, что у вас много файлов небольшого размера, скажем по 512 байтов. Стандартный размер блока файловой системы ext3 — 1024 байта (1 Кбайт). Выходит, что на каждый маленький файл впустую тратится 512 байтов. Если маленьких файлов много, то потери в дисковом пространстве могут быть очень большими.

Однако за все нужно платить: ReiserFS довольно неповоротлива и часто нуждается в дефрагментации. Если ReiserFS фрагментирована, то по скорости ввода/вывода она напоминает нерасторопную черепашку. Кстати, стабильностью работы ReiserFS тоже не блещет. Поэтому ReiserFS — не лучший выбор. Уж лучше выбрать XFS с наименьшим размером блока.

Файловая система JFS довольно специфична, поскольку первоначально она разрабатывалась компанией IBM для серверов. Ее производительность и надежность на высоте (кстати, по скорости ввода/вывода она опережает XFS). Размер блока— от 512 до 4096 байтов. Но есть у нее небольшой недостаток — размер журнала достигает 40% от размера всей файловой системы. Это плата за ее надежность. Для сервера JFS — лучший выбор, а вот для домашнего компьютера я бы выбрал ext3 или XFS.

Желательно оставить комментарий, также можно поставить трэкбек со своего блога или сайта.

Написать сообщение

Яндекс.Метрика