fsck - проверка и восстановлении логической непротиворечивости файловой системы
fsck - check and repair a Linux file syste
Основная функция программы fsck заключается в восстановлении логической непротиворечивости файловой системы, созданной в разделе жесткого диска. При выполнении этой команды производится поиск следующих ошибок:
- сектора, которые используются одновременно двумя файлами;
- сектора, которые включены в список свободных секторов, хотя они содержат часть какого-то файла;
- сектора, которые не содержат информации, но не включены в список свободных секторов;
- индексные дескрипторы файлов (inodes), не указанные ни в одном каталоге;
- неверная общая информация в суперблоке и т. д.
Формат запуска команды следующий:
[root]# fsck [опции] [–t fstype] [--fs-options] filesystem
где fstype — тип проверяемой файловой системы, а в качестве filesystem можно указать либо имя устройства (например, /dev/hdc1, /dev/sdb2), либо точку монтирования ( /, /usr, /home)) (Примечание: в man-странице по fsck сказано, что можно еще использовать метку (label) файловой системы, либо UUID (UUID=8868abf6-88c5-4a83-98b8-bfc24057f7bd or LABEL=root).
Если никакие файловые системы не будут определены на командной строке, и-A выбор не определен, то fsck не выполнит своих обязательств к проверке файловых систем в/etc/fstab сериале.
Код завершения, возвращенный fsck, является суммой следующих условий:
0 -Никакие ошибки
1 -Ошибки Файловой системы исправлены
2 -Система должна быть перезагружена
4 -Ошибки Файловой системы оставили неисправленным
8 -Эксплуатационная ошибка
16 -Использование или синтаксическая ошибка
32 -Fsck отменен пользовательским запросом
128 -Общая ошибка библиотеки
Вообще говоря, команда fsck не является самостоятельной утилитой, она просто предоставляет единый интерфейс вызова специализированных программ для проверки файловых систем разных типов. Эти программы называются fsck.fstype (например, fsck.ext2) и команда fsck при запуске производит поиск соответствующей специфической программы сначала в /sbin, затем в /etc/fs и /etc, и, наконец, в каталогах, перечисленных в переменной PATH. Опции, указанные после двойного дефиса, передаются команде fsck.fstype.
ОПЦИИ
- -s
- Преобразует операции fsck в последовательный режим. Это хорошая идея, если вы проверяет несколько файловых систем одновременно и проверяльщики работают в интерактивном режиме. (Замечание: e2fsck работает в интерактивном режиме по умолчанию. Чтобы заставить работать e2fsck в неинтерактивном режиме, вы должны задать либо параметр -p, либо -a, если вы хотите, чтобы ошибки исправлялись автоматически, или параметр -n, если не хотите.)
- -t fslist
- Определяет тип (ы) файловой системы, которая будет проверена. Когда-A флаг определен, только файловые системы, которые соответствуют fslist, проверены. fslist параметр - отделенный от запятой список спецификаторов вариантов и файловых систем. Все файловые системы в этом отделенном от запятой списке могут быть предварительно установлены оператором отрицания 'нет' или'!', который просит, чтобы только те файловые системы, не перечисленные в fslist, были проверены. Если все файловые системы в fslist не будут предварительно установлены оператором отрицания, то только те файловые системы, перечисленные в fslist, будут проверены.
Спецификаторы вариантов могут быть включены в отделенный fslist запятой. У них должен быть формат opts=fs-option. Если спецификатор вариантов будет присутствовать, то только файловые системы, которые содержат выбор фс в их области вариантов горы/etc/fstab, будут проверены. Если спецификатор вариантов будет предварительно установлен оператором отрицания, то только те файловые системы, у которых нет выбора фс в их области вариантов горы/etc/fstab, будут проверены.
Например, если opts=ro появится в fslist, то только файловые системы, перечисленные в/etc/fstab с ro выбором, будут проверены.
Для совместимости с распределениями Мандрагоры, подлинники ботинка которых зависят от несанкционированного UI, изменяются на fsck программу, если тип файловой системы петли найден в fslist, это рассматривают, как будто opts=loop были определены как аргумент-t выбору.
Обычно, тип файловой системы выведен, ища filesys в/etc/fstab файле и используя соответствующий вход. Если тип не может быть выведен, и есть только единственная файловая система, данная, поскольку аргумент-t выбору, fsck будет использовать указанный тип файловой системы. Если этот тип не доступен, то тип файловой системы по умолчанию (в настоящее время ext2) используется.
- -A
- Просмотреть файл /etc/fstab и попытаться проверить все файловые системы в один заход. Этот выбор как правило используется от/etc/rc системы initalization файл, вместо многократных команд для того, чтобы проверить единственную файловую систему.
Файловая система корня будет проверена сначала, если-P выбор не будет определен (см. ниже). После этого файловые системы будут проверены в заказ, определенный fs_passno (шестое) область в/etc/fstab файле. Файловые системы с fs_passno ценностью 0 пропущены и не проверены вообще. Файловые системы с fs_passno ценностью больших чем ноль будут проверены в заказ, с файловыми системами с самым низким fs_passno числом, проверяемым сначала. Если будут многократные файловые системы с тем же самым числом прохода, то fsck попытается проверить их параллельно, хотя это избежит осуществлять многократные проверки файловой системы того же самого физического диска.
Следовательно, очень общая конфигурация в/etc/fstab файлах должна заставить файловую систему корня иметь fs_passno ценность 1 и заставлять все файловые системы иметь fs_passno ценность 2. Это позволит fsck автоматически управлять шашками файловой системы параллельно, если будет выгодно сделать так. Системные администраторы могли бы хотеть не использовать эту конфигурацию, если они должны избежать многократных проверок файловой системы, бегущих параллельно по некоторым причинам---например, если рассматриваемая машина коротка на памяти так, чтобы чрезмерное оповещение было беспокойством.
- -C
- Показывает панель Завершение/индикаторы для тех файловых систем, которые поддерживают их. Fsck будет управлять шашками файловой системы так, чтобы только один из них показал индикатор выполнения за один раз.
- -N
- Не выполнять проверку, только покажите то, что было бы сделано.
- -P
- Когда-A флаг установлен, проверьте файловую систему корня параллельно с другими файловыми системами. Это не самая безопасная вещь в мире, чтобы сделать, с тех пор если файловая система корня находится в вещах сомнения как e2fsck (8) выполнима, мог бы быть испорчен! Эта возможность, главным образом, предоставлена для тех sysadmins, кто не хочет к перераспределению, чтобы файловая система корня была маленькой и компактной (который является действительно правильным решением).
- -R
- Согласовывая все файловые системы с-A флагом, пропустите файловую систему корня (в случае, если это уже повысилось прочитанный - пишут).
- -T
- Не показывайте название на запуске.
- -V
- Произведите многословную продукцию, включая все определенные для файловой системы команды, которые выполнены.
- "fs-specific-options"
Параметры, которые не понимаются fsck передаются конкретному проверяльщику файловой системы. Эти аргументы не должны иметь аргументов, так как нет способа для fsck правильно понять, какие аргументы принимают параметры, а какие нет.
Параметры и аргументы, следующие за -- обрабатываются как конкретные параметры файловой системы, передаваемые конкретному проверяльщику файловой системы.
Пожалуйста, обратите внимание, что fsck не предназначен для передачи сколь угодно сложных параметров конкретному проверяльщику файловой системы. Если вы передадите fsck некоторые ужасно сложные параметр и аргументы, и fsck не сделает то, чего вы ожидали, не стоит сообщать об этом, как об ошибке. Вы почти наверняка делаете что-то, чего вам не следует делать с fsck.
Параметры для различных конкретных файловых систем fsck не стандартизированы. Если вы сомневаетесь, обратитесь к страницам мануала конкретного проверяльщика файловой системы. Хотя не гарантируется,следующие параметры поддерживаются большинством проверяльщиков файловых систем:
- -a Автоматически ремонтирует файловую систему, не задавая никаких вопросов (используйте этот параметр аккуратно). Помните, что e2fsck поддерживает -a только для обратной совместимости. Этот параметр сопоставляется с параметром -p e2fsck, который безопасен в использовании, в отличии от параметра -a, которого поддерживают некоторые проверяльщики файловой системы.
- -n Для некоторых конкретных проверяльщиков файловой системы, параметр -n принудит fs-specific fsck избегать попыток исправления каких-либо проблем, и просто сообщать об этим проблемах в stdout. Это, однако, не так для всех конкретных проверяльщиков файловой системы. В частности, fsck.reiserfs не будет сообщать о каких-либо повреждениях, если указан этот параметр. fsck.minix вообще не поддерживает параметр -n.
- -r Интерактивно восстанавливать файловую систему (спрашивать о подтверждении). Замечание: Как правило, это плохая идея использовать этот параметр, если несколько fsck запущено параллельно. Также заметьте, что это поведение e2fsck по умолчанию; этот параметр поддерживается только для обратной совместимости.
- -y Для некоторых конкретных проверяльщиков файловых систем, параметри -y принудит fs-specific fsck всегда пытаться исправить все обнаруженные повреждения файловой системы автоматически. Иногда эксперт может добиться лучших результатов ручным управлением fsck. Заметьте, что не все конкретные проверяльщики файловых систем поддерживают этот параметр. В частности fsck.minix и fsck.cramfs не поддерживали параметр -y на момент написания этой статьи.
Обновлено (18.03.2011 18:24)



