| Выбор файловой системы во время установки Linux |
|
Обычно данный вопрос рассматривается где-то в середине книги, но выбрать файловую систему важно еще при установке операционной системы, иначе потом (в случае если выбор сделан неправильно) придется переустановить ОС (точнее, это проще сделать, нежели пытаться изменить тип корневой файловой системы). Не нужно пренебрегать выбором файловой системы — ведь от правильного выбора зависит работа всей операционной системы в целом, поскольку файловая система является неотъемлемой частью операционной системы. На логическом уровне все данные на жестком диске представлены в виде огромной последовательности нулей и единичек. Попробуй-ка в ней разобраться. Порядок вносит файловая система. Она точно разграничивает, что одна часть нулей и единичек относится к этому файлу, а другая — к другому файлу. В начале файловой системы находится таблица размещения файлов, которая и хранит физические координаты частей файла— ведь файлы записываются непоследовательно, поэтому одна часть файла может быть физически записана в "начале" диска, а другая — в "конце". Первые файловые системы были неиерархическими, т. е. не поддерживали каталоги. Ясно, что работать с такой файловой системой, мягко говоря, неудобно. Затем появились иерархические файловые системы, с которыми знаком каждый пользователь. Корневой каталог иерархической файловой системы может содержать файлы и подкаталоги первого уровня (например, каталог Windows — является каталогом первого уровня относительно корневого каталога). В свою очередь, каталоги первого уровня могут содержать файлы и подкаталоги второго уровня и т. д. Со временем росли требования к надежности файловых систем. Вы можете себе представить, что будет, если из-за сбоя системы "уйдет в историю" годовой отчет о работе фирмы? В развитых странах, где весь бухгалтерский учет ведется с помощью компьютера, фактически это означает банкротство фирмы. Пусть не сразу, но через некоторое время. Поэтому разработчики файловых систем стараются сделать файловые системы более надежными. Для повышения надежности появилась, например, вторая копия таблицы размещения файлов, расположенная физически в "конце" диска; чистый бит (clean bit). С копией таблицы размещения файлов все ясно — если оригинал недоступен (поврежден), то по копии можно еще восстановить данные. "Чистый" бит используется для проверки корректности завершения работы компьютера. Что происходит при корректном завершении работы компьютера? Наверное, вы уже догадались, о чем я? Правильно, происходит синхронизация дисков и буферов записи — содержимое буферов записи окончательно записывается на диск. А если работа компьютера была завершена некорректно, например, как у нас часто бывает, отключили свет из-за долгов вашего соседа? Хорошо, если операционная система успела синхронизировать буферы записи с диском. То есть все данные были успешно записаны на диск. А может случиться следующая неприятная ситуация. Программа записывает данные на диск. Сначала они помещаются в буфер записи, а программа получает "ответ" от операционной системы, что все данные успешно сохранены. Но они еще физически не записаны на диск, они находятся в буфере записи. Выключают свет... Содержимое буферов записи пропадает вместе с электропитанием. Выходит, что часть данных вообще не была записана на диск. Еще хуже, когда питание пропадает в момент записи данных на диск — тогда вы можете потерять файл навсегда. И самый плохой случай — питание пропало во время записи метаданных (служебных данных файловой системы) — тогда возможно повреждение целостности самой файловой системы. Напугал? Лучший совет — покупайте источник бесперебойного питания — я уже со счета сбился, сколько раз он мне помогал. Если работа компьютера была завершена некорректно, чистый бит не был установлен. При запуске операционная система выполнит проверку всех разделов, для которых не установлен чистый бит. В большинстве случаев такая проверка позволяет исправить возникшую ошибку и уберечь файловую систему от потенциального разрушения. Следующий шаг в развитии файловых систем — это так называемые журна-пируемые файловые системы. Журналируемая файловая система более устойчива к сбоям, чем обычные файловые системы. Перед тем, как что-то сделать, журналируемая система создает план действий, например, записать такие-то данные в файл filel.txt, прочитать данные из файла file2.txt, удалить file3.txt и т. д. План действий записывается в специальный файл, который называется журналом — отсюда и название данного типа файловых систем. Если операция (например, запись в файл filel.txt) выполнена успешно, файловая система вычеркивает эту операцию из журнала. Представим, что электричество опять куда-то делось. При включении питания (когда оно все-таки появится) будет выполнена проверка диска (как обычно). Вот только проверяться будут не все файлы, а только те, которые есть в журнале. Это вполне логично — если файл занесен в журнал, то на момент сбоя с ним должно что-то произойти, поэтому нет необходимости проверять остальные файлы, которые не указаны в журнале. Благодаря журналу существенно повышается надежность файловой системы. Итак, журнал — это хорошо, поэтому при установке Linux нужно выбирать журналируемую файловую систему. При установке Linux есть возможность выбрать файловую систему. Но какую выбрать? Вот в чем вопрос. Ведь большинство современных дистрибутивов в качестве корневой файловой системы предлагают: ext2, ext3 (по умолчанию), XFS, ReiserFS, JFS. Попробуем сделать выбор. Родной для Linux является файловая система ext, но она давно устарела и ее заменила ext2. Сейчас уже и ext2 считается устаревшей. На ее смену пришла файловая система ext3. ext3 — это журналируе-мая версия ext2, т. е. ext3 обратно совместима с ext2. В любом случае ext2 нас не устраивает только потому, что она обычная, а не журналируемая. Возможно, к моменту выхода этой книги выйдет новая версия файловой системы ext — ext4. Если это произойдет, и вы купите дистрибутив, предлагающий установить файловую систему ext4, соглашайтесь. Разработчики обещают сделать ext4 еще более стабильной, а также, что новая файловая система будет обратно совместима с ext3 и ext2. Файловая система ReiserFS отличается тем, что позволяет хранить в одном блоке несколько файлов, и это позволяет еще больше сэкономить место на диске. Другие файловые системы этого не позволяют. Представьте, что у вас много файлов небольшого размера, скажем по 512 байтов. Стандартный размер блока файловой системы ext3 — 1024 байта (1 Кбайт). Выходит, что на каждый маленький файл впустую тратится 512 байтов. Если маленьких файлов много, то потери в дисковом пространстве могут быть очень большими. Однако за все нужно платить: ReiserFS довольно неповоротлива и часто нуждается в дефрагментации. Если ReiserFS фрагментирована, то по скорости ввода/вывода она напоминает нерасторопную черепашку. Кстати, стабильностью работы ReiserFS тоже не блещет. Поэтому ReiserFS — не лучший выбор. Уж лучше выбрать XFS с наименьшим размером блока. Файловая система JFS довольно специфична, поскольку первоначально она разрабатывалась компанией IBM для серверов. Ее производительность и надежность на высоте (кстати, по скорости ввода/вывода она опережает XFS). Размер блока— от 512 до 4096 байтов. Но есть у нее небольшой недостаток — размер журнала достигает 40% от размера всей файловой системы. Это плата за ее надежность. Для сервера JFS — лучший выбор, а вот для домашнего компьютера я бы выбрал ext3 или XFS.
Related Articles
Set as favorite
Bookmark
Email This
Hits: 454 Комментарии (0)RSS feed CommentsНаписать комментарий |