Библиотека сайта rus-linux.net
Фрагментация под Linux: Настройка файловой системы Ext3
Автор: Oliver Diedrich, перевод: Алексей ДмитриевНадежность
Поскольку суперблок жизненно важен для файловой системы, программа mke2fs обращается с ним весьма осторожно и записывает на диск в нескольких различных местах. Если программа e2fsck отказывается работать с поврежденной файловой системой по причине испорченного суперблока, можно проинструктировать программу воспользоваться запасным суперблоком:
e2fsck -b superblock
Программа mke2fs сообщает номера блоков с альтернативными суперблоками сразу после создания файловой системы, однако пользователи часто забывают их записать. Существует полезная опция программы mke2fs, которая может помочь:
mke2fs -n device
программа только делает вид, что создает файловую систему, но при этом выводит все ее параметры, включая местоположение суперблоков. Естественно, что этот фокус сработает, только если mke2fs запущена с теми же самыми параметрами, что и при создании файловой системы. К счастью, процесс форматирования обычно не нуждается ни в каких опциях вообще - mke2fs автоматически выбирает значения, подходящие для большинства приложений.
Для самого плохого случая mke2fs предлагает опцию -S
,
которая только переписывает заново суперблок и идентификаторы
(описатели) групп блоков, тогда как директории, также как дескрипторы
и битовые карты остаются нетронутыми. После этой процедуры требуется
запустить программу e2fsck. При удачном развитии событий, после этого
все файлы снова становятся доступны, но, увы, гарантии никакой, и в
худшем случае, все данные пропадут. Само собой разумеется, что
команду mke2fs -S
следует запускать с теми же параметрами,
что и при создании файловой системы.
Дополнительные параметры
Среди прочей информации суперблок может содержать сведения об опциях монтирования файловой системы, которые будут использованы без явного указания их пользователем. Так, например, команда:
tune2fs -o acl
означает, что файловая система всегда будет монтироваться с
поддержкой Списков Управления Доступом (Access Control Lists - ACL).
Метки, или имена томов файловой системы, которые используются в
/etc/fstab некоторых дистрибутивов также сохраняются в суперблоке, и
могут быть заданы командой tune2fs -L
когда файловая система
уже создана, или программой mke2fs при ее создании.
"Свойства файловой системы" (file system features) определяют всевозможные особенности файловой системы:
- Нуждается ли система в проверке (флаг needs_recovery устанавливается при монтировании и удаляется при отмонтировании файловой системы и показывает, была ли файловая система правильно отмонтирована)
- Может ли файловая система быть увеличена при помощи команды resize2fs (resize_inode)
- Поддерживает ли файловая система файлы более 2Гб размером (large_file)
- Было ли создано ограниченное число запасных суперблоков (sparse_super)
- Содержат ли записи в директориях сведения о типе файла (filetype)
- Должны ли записи в директориях быть представлены в виде дерева (dir_index)
Некоторые из этих свойств могут быть заданы при помощи команды
tune2fs -O
(приставка ^
отключает уже заданное
свойство). По соображениям безопасности, после этой процедуры следует
запустить команду e2fsck -f
. А еще лучше все эти свойства
задавать программой mke2fs -O
при создании файловой системы.
Те свойства, что должны быть установлены по умолчанию, программа
mke2fs находит в файле /etc/mke2fs.conf. Большинство дистрибутивов
устанавливают по умолчанию sparse_super, filetype, resize_inode
и dir_index
, а если файловая система поддерживает длинные
файлы, то и large_file
.