2.4.3. Программа fsck

Контролирующая программа (fsck) файловой системы - это интерактивная контрольно-исправительная программа файловой системы. Программа fsck использует информацию, находящуюся в самой файловой системе, для проверки целостности. Если обнаружено нарушение целостности, отображается сообщение, описывающее нарушение целостности. Рекомендуется выбрать параметр -y для программы fsck, чтобы эта програма автоматически исправила выявленные нарушения целостности.

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

Чтобы вручную прогнать программу fsck, необходимо сначала демонтировать файловую систему (если вы проверяете корневую файловую систему, корень должен оставаться смонтированным).

Общий формат команды fsck:

	fsck [-F FSType][-V][current_options][-m]
		[-o specific_options][special...]
где -F - специфицирует тип FSType, с которым будут работать. FSType должен быть либо специфицирован здесь, либо определен из /etc/vfstab путем сопоставления special с элементом таблицы; -V - эхо-отображение всей командной строки; команду не выполнять; current_options - параметры, поддерживаемые модулем программы fsck, специфичным для системы типа s5; -m - проверить, но не исправлять. Этот параметр проверяет, подходит ли файловая система для демонтирования; -o specific_options - специфицирует подпараметры, которые специфичны для типа файловой системы - s5 или ufs.

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

2.4.3.1. Использование команды fsck для проверки файловой системы s5

Формат команды для файловых систем s5:

	fsck [-F s5][generic_options][-y][-n][-p][-sX][-tfile]
		[-1][-q][-D][-f][-b][special]

Рекомендуется использовать параметр -y. Этот параметр отвечает "да" на все вопросы, выдаваемые командой fsck, и не требует вашего вмешательства. Другой рекомендуемый параметр -s, который форсирует перестройку свободного списка в оптимальном порядке. При использовании свободного списка он дезорганизуется; перестройка свободного списка улучшает работу с последовательно создаваемыми файлами. special дает имя специальному файлу устройства, связанному с файловой системой. Если имя устройства не определено, команда fsck проверяет все файловые системы, названные в /etc/vfstab с числовым полем fsckpass.

Следующий экран показывает команду fsck, введенную для проверки файловой системы usr. Никакие параметры не специфицируются. Отклик системы обозначает, что нарушения целостности обнаружено не было. Команда действует поэтапно; некоторые этапы команды прогоняются, только если это требуется или в ответ на параметр командной строки. По завершении каждого этапа отображается сообщение. В конце программы отображается заключительное сообщение, показывающее количество файлов (индексных дескрипторов файлов), блоков и свободных блоков.

	# fsck -F s5 /dev/dsk/1s2
	/dev/dsk/1s2
	File System: usr  Volume: usr
	**Phase 1 - Check Blocks and Sizes
	**Phase 2 - Check Pathnames
	**Phase 3 - Check Connectivity
	**Phase 4 - Check Reference Counts
	**Phase 5 - Check Free List
	411 files 4394 blocks 8880 free
	#

2.4.3.2. Этапы программы fsck в системе s5

Программа fsck прогоняется по этапам. На каждом этапе даются отчеты о любых ошибках, которые обнаружила программа. Если fsck может исправить ошибку, пользователя спрашивают, должно ли быть сделано исправление. Если вы определили параметр -y, тогда на все вопросы предполагается отвечать "да" и вам не будет дано приглашение. В последней части этого раздела описываются сообщения, выходящие на каждом этапе, возможные отклики и связанные с ними исключительные ситуации: ниже перечисляются сокращения, используемые в сообщениях об ошибках в программе fsck.

Аббревиатура сообщений об ошибках, выводимых fsck.

Следующая аббревиатура и соответствующий ей текст появляются в сообщении об ошибке:

BLK номер блока
DUP номер блока копии
DIR имя справочника
MTIME время последней модификации
UNREF
CG группа цилиндра

Следующая однобуквенная аббревиатура заменяется на соответствующий ей текст при появлении на экране сообщения об ошибке:

B номер блока
F имя файла
I номер inode
M режим файла
O user-id владельца файла
S размер файла
T время последней модификации файла
X счетчик связи
или число блоков BAD, DUP или MISSING
или число файлов (зависимых по контексту)
Y номер счетчика корректного канала связи
или число блоков в файловой системе
Z число свободных блоков

2.4.3.3. Этап инициализации

Проверяется синтаксис командной строки. Перед проверкой файловой системы программа fsck устанавливает некоторые таблицы и открывает некоторые файлы. Программа fsck завершается, когда она сталкивается с ошибками на этапе инициализации.

2.4.3.4. Общие ошибки

Следующие три сообщения об ошибках могут появиться на любом этапе после инициализации. Их лучше рассматривать как фатальные, закончить выполнение программы и попытаться определить причину ошибки.

Сообщение:

	CAN NOT SEEK: BLK B (CONTINUE?)

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

Сообщение:

	CAN NOT READ: BLK B (CONTINUE?)

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

Сообщение:

	CAN NOT WRITE: BLK B (CONTINUE?)

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

2.4.3.5. Значение ответов Да/Нет

Ответ n (нет) на приглашение CONTINUE? означает: Закончите программу (Это рекомендуемый ответ)

Ответ y (да) на приглашение CONTINUE? означает: Попытайтесь продолжить проверку файловой системы.

Обратите внимание, что ошибки часто могут повторятся. Эта исключительная ситуация предотвращает полную проверку файловой системы. Необходимо второй раз выполнить программу fsck, чтобы еще раз проверить файловую систему.

2.4.3.6. Этап 1: Контроль блоков и размеров

На этом этапе проверяется список индексных дескрипторов файлов. Даются отчеты об исключительных ситуациях, которые встречаются во время:

Типы сообщений об ошибках - этап 1.

На этапе 1 выявляется 4 типа сообщений об ошибках:

Между информационными сообщениями и сообщениями с приглашением CONTINUE? есть связь. Обычно приглашение CONTINUE? указывает на то, что был достигнут некоторый предел.

Значение откликов Да/Нет - этап 1.

Отклик n (нет) на приглашение CONTINUE? означает: завершите программу.

На этапе 1 отклик y (да) на приглашение CONTINUE? означает: продолжайте выполнение программы.

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

Отклик n (нет) на приглашение RECOVER? означает: восстановите все блоки, на которые указывает индексный дескриптор файла.

Ответ "нет" подходит только в том случае, если пользователь намерен удалить избыточные блоки.

Ответ n (нет) на приглашение CLEAR? означает: проигнорируйте исключительную ситуацию.

Ответ "нет" уместен только в том случае, если пользователь намерен использовать другие средства для фиксации ошибки.

Ответ y (да) на приглашение CLEAR? означает: освободите индексный дескриптор файла I путем обнуления его содержимого.

Это может порождать исключительную ситуацию UNALLOCATED на этапе 2 для каждого элемента каталога, указывающего на этот индексный дескриптор файла.

Сообщения об ошибках на этапе 1.

Сообщение:

	swt UNKNOWN FILE TYPE I- I (CLEAR?)

Видовое слово индексного днскриптора файла I указывает на то, что индексный дескриптор файла это не абстрактный файл, не специальный символьный индексный дескриптор файла, не регулярный индексный дескриптор файла и не индексный дескриптор файла каталогов. Если определен параметр -p, индексный дескриптор файла очищается.

Сообщение:

	LINK COUNT TABLE OVERFLOW (CONTINUE?)

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

Сообщение:

	B BAD I- I

Индексный дескриптор файла I содержит блок номеров B с номером меньше номера первого блока данных в файловой системе или больше номера последнего блока в файловой системе. Эта исключительная ситуация может порождать сообщение об ошибке EXCESSIVE BAD BLKS на этапе 1, если у индексного дескриптора файлов I слишком много номеров блоков за пределами файловой системы. Эта исключительная ситуация порождает сообщение об ошибке BAD/DUP на этапах 2 и 4.

Сообщение:

	EXCESSIVE BAD BLOCKS I- I (CONTINUE?)

В файловой системе слишком много (обычно больше 10) блоков с номером меньше номера первого блока данных или больше номера последнего блока, связанного с индексным дескриптором файлов I. Если специфицирован параметр -p, программа завершается.

Сообщение:

	B DUP I- I

Индексный дескриптор файла I содержит блок номер B, о котором заявляет такой же или другой индексный дескриптор файла или свободный список. Такая исключительная ситуация может порождать сообщение об ошибках EXCESSIVE DUP BLKS на этапе 1, если у индексного дескриптора файлов слишком много номеров блоков, о которых заявлено таким же или другим индексным дескриптором файлов или в свободном списке. Эта исключительная ситуация вызывает этап 1B и порождает сообщения об ошибках на этапах 2 и 4.

Сообщение:

	EXCESSIVE DUP BLKS I- I (CONTINUE?)

Слишком много (обычно больше 10) блоков, о которых заявлено в том же или другом индексном дескрипторе файлов или в свободном списке. Если определен параметр -p, программа завершается.

Сообщение:

	DUP TABLE OVERFLOW (CONTINUE?)

Во внутренней таблице в fsck, содержащей двойные номера блоков, больше нет места. Если определен параметр -p, программа завершается.

Сообщение:

	DIRECTORY MISALIGNED I- I

Размер каталога индексных дескрипторов файлов не кратен 16. Если используется параметр -p, каталог восстанавливается автоматически.

Сообщение:

	PARTIALLY ALLOCATED INODE I- I (CLEAR?)

Индексный дескриптор файла ни выделен, ни освобожден. Если специфицирован параметр -p, индексный дескриптор файла будет очищен.

Сообщение:

	DIR/FILE SIZE ERROR

Файл ссылается на данные, а не обозначается индексным дескриптором файла.

Сообщение:

	DELETE OR RECOVER EXCESS DATA

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

Сообщение:

	RECOVER?

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

Сообщение:

	DELETE?

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

2.4.3.7. Этап 1B: Повторный поиск DUPS

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

Сообщение:

	DUP I- I

Индексный дескриптор файла I содержит блок номер B, о котором уже было заявлено в том же или другом индексном дескрипторе файла или в свободном списке. Эта исключительная ситуация порождает сообщение об ошибке BAD/DUP на этапе 2. Индексные дескрипторы файлов, имеющие перекрывающиеся блоки, могут быть определены при изучении этой исключительной ситуации и исключительной ситуации DUP на этапе 1.

2.4.3.8. Этап 2: Контроль полных имен файлов

На этом этапе удаляются элементы каталога, указывающие на неудачные индексные дескрипторы файлов, обнаруженные на этапах 1 и 1B. Дается отчет об исключительных ситуациях, появившихся в результате следующих моментов:

Типы сообщений об ошибках - этап 2.

На этапе 2 имеется 4 типа сообщений об ошибках:

Значение откликов Да/Нет - этап 2.

Отклик n (нет) на приглашение FIX? означает: завершите программу, т.к. fsck не может быть продолжена.

Отклик y (да) на приглашение FIX? означает: замените тип корневого индексного дескриптора файла на "каталог".

Если блоки данных корневого индексного дескриптора файла не являются блоками каталога, порождается слишком много сообщений об ошибках.

Отклик n (нет) на приглашение CONTINUE? означает: завершите программу.

Отклик y (да) на приглашение CONTINUE? означает: проигнорируйте сообщение об ошибках DUPS/BAD IN ROOT INODE и продолжайте проверять файловую систему.

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

Отклик n (нет) на приглашение REMOVE? означает: проигнорируйте исключительную ситуацию.

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

Отклик y (да) на приглашение REMOVE? означает: Удалить идентичные или освобожденные блоки.

Сообщения об ошибках - этап 2.

Сообщение:

	ROOT INODE UNALLOCATED. TERMINATING

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

Сообщение:

	ROOT INODE NOT DIRECTORY (FIX?)

Корневой индексный дескриптор файла (обычно это индексный дескриптор файла номер 2) файловой системы не является типом индексного дескриптора каталога файлов. Если специфицирован параметр -p, программа завершится.

Сообщение:

	DUPS/BAD IN ROOT INODE (CONTINUE?)

На этапе 1 или 1B найдены идентичные блоки или неисправные блоки в корневом индексном дескрипторе файла (обычно это индексный дескриптор файла номер 2) файловой системы. Если специфицирован параметр -p, программа завершится.

Сообщение:

	I OUT OF RANGE I- I NAME- F (REMOVE?)

Элемент каталога F содержит индексный дескриптор файла номер I, который больше, чем конец списка индексных дескрипторов файла. Если специфицирован параметр -p, индексный дескриптор файла будет автоматически удален.

Сообщение:

	UNALLOCATED I- I OWNER- O MODE- N SIZE- S MTIME- T
	NAME- F (REMOVE?)

Элемент каталога F содержит индексный дескриптор файла I без выделенных режимных разрядов. Печатаются: владелец O, режим M, размер S, время модификации T и имя файла F. Если файловая система не смонтирована и параметр -n не специфицирован, элемент каталога автоматически удаляется, если у индексного дескриптора файла, который указывает на этот элемент, размер символа 0. Элемент удаляется, если специфицирован параметр -p.

Сообщение:

	DUP/BAD I- I OWNER- O MODE- M SIZE- S MTIME- T DIR- F
	(REMOVE?)

На этапе 1 или 1B найдены идентичные блоки или "неудачные" блоки, связанные с элементом F каталога, индексного дескриптора каталогов файлов I. Печатаются: владелец O, режим M, размер S, время модификации T, и имя каталога F. Если специфицирован параметр -p, идентичные/неудачные блоки удаляются.

Сообщение:

	DUP/BAD I- I OWNER- O MODE- M SIZE- S MTIME- T FILE- F
	(REMOVE?)

На этапе 1 или 1B найдены идентичные или "неудачные" блоки, связанные с элементом F файла, индексного дескриптора файла I. Печатаются: владелец O, режим M, размер S, время модификации T и имя файла F. Если специфицирован параметр -p, идентичные/неудачные блоки удаляются.

Сообщение:

	BAD BLK IN DIR I- I OWNER- O MODE- SIZE- S MTIME- T

Это сообщение возникает только тогда, когда используется параметр -D. В каталоге с индексным дескриптором I был обнаружен физически поврежденный блок. Исключительными ситуациями, отыскиваемые в блоках каталогов, могут быть ненулевыми заполняемыми элементами, несогласованными "." и ".." элементами и вложенные наклонные черты вправо в поле имени. Это сообщение об ошибках означает, что пользователю нужно либо удалить индексный дескриптор каталога, если весь блок кажется поврежденным, либо заменить (или удалить) те элементы каталога, которые кажутся неудачными.

2.4.3.9. Этап 3: Проверка связности

На этом этапе проверяются каталоги, исследуемые на этапе 2. Даются отчеты об следующих исключительных ситуациях:

Типы сообщений об ошибках - Этап 3.

На этапе 3 два типа сообщений об ошибках:

Значение откликов Да/Нет - Этап 3

Отклик n (нет) на приглашение RECONNECT? означает: Проигнорируйте исключительную ситуацию.

Этот ответ порождает сообщения об ошибках UNREF на этапе 4.

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

Ответ y (да) на приглашение RECONNECT? означает: Заново подсоедините каталог с индексным дескриптором I к файловой системе в каталоге для потерянных файлов (обычно это каталог lost+found).

Это может порождать сообщения об ошибках lost+found, если есть проблемы с соединением каталога с индексным дескриптором I с каталогом lost+found. Если связь удачна, появляется информационное сообщение CONNECTED.

Этап 3 - сообщения об ошибках.

Сообщение:

	UNREF DIR I- I OWNER- O MODE- M SIZE- S MTIME- T
	(RECONNECT?)

Каталог с индексным дескриптором I не был соединен с элементом каталога при прослеживании файловой системы. Печатаются владелец O, режим M, размер S и время модификации T каталога. Программа fsck форсирует повторное соединение непустого каталога. Если специфицируется параметр -p, заново соединяется непустой каталог.

Сообщение:

	SORRY. NO lost+found DIRECTORY

В корневом каталоге файловой системы нет каталога lost+found; fsck игнорирует требование соединения любого каталога с каталогом lost+found. Это порождает сообщение об ошибках UNREF на этапе 4. Режимы доступа каталога lost+found могут быть неверными.

Сообщение:

	SORRY. NO SPACE IN lost + found DIRECTORY

В корневом каталоге файловой системы нет места для добавления другого элемента к каталогу lost+found; fsck игнорирует требование соединения любого каталога с каталогом lost+found. Это порождает сообщение об ошибках UNREF на этапе 4. Очистить ненужные элементы в каталоге lost+found или расширить его.

Сообщение:

	DIR I- I1 CONNECTED. PARENT WAS I- I2

Это справочное сообщение, указывающее, что каталог с индексным дескриптором I1 был успешно соединен с каталогом lost+found. Родительский индексный дескриптор файла I2 каталога с индексным дескриптором I1 замещен номером индексного дескриптора каталога lost+found.

2.4.3.10. Этап 4: Проверка контрольного счета

На этом этапе проверяется объединенная информация о счетах, полученная на этапах 2 и 3. Дается отчет об исключительной ситуации, которая возникла в результате:

Типы сообщений об ошибках - Этап 4.

На этапе 4 имеется пять типов сообщений об ошибках:

Значение откликов Да/Нет - Этап 4.

Отклик n (нет) на приглашение RECONNECT? означает: Проигнорировать эту исключительную ситуацию.

Этот ответ в дальнейшем порождает сообщение об ошибках CLEAR на этапе 4.

Отклик y (да) на проиглашение RECONNECT? означает: Заново соедините индексный дескриптор файла I с файловой системой в каталоге для потерянных файлов (это обычно каталог lost+found).

Это может порождать сообщение об ошибках lost+found на этом этапе, если есть проблемы соединения индексного дескриптора файла I с каталогом lost+found.

Отклик n (нет) на проиглашение CLEAR? означает: Проигнорировать эту исключительную ситуацию.

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

Отклик y (да) на приглашение CLEAR? означает: Освободите индексный дескриптор файла путем обнуления его содержания.

Отклик n (нет) на приглашение ADJUST? означает: Проигнорируйте исключительную ситуацию.

Этот ответ уместен только в том случае, когда пользователь намерен принять другие меры по фиксации ошибки.

Отклик y (да) на приглашение ADJUST? означает: Заменить подсчет связей файла индексных дескрипторов файлов I на Y.

Отклик n (нет) на приглашение FIX? означает: Проигнорируйте эту исключительную ситуацию.

Этот ответ уместен только в том случае, когда пользователь намерен принять другие меры по фиксации ошибки.

Отклик y (да) на приглашение FIX? означает: Замените подсчет в системном блоке тома на правильный подсчет.

Этап 4 - Сообщения об ошибках.

Сообщение:

	UNREF FILE I- I OWNER- O MODE- M SIZE- S MTIME- T
	(RECONNECT?)

Индексный дескриптор файла I не был соединен с элементом каталога при проверке файловой системы. Печатаются владелец O, режим M, размер S и время модификации T индексного дескриптора файла I. Если параметр -n опущен, и файловая система не смонтирована, пустые файлы автоматически очищаются. Непустые файлы не очищаются. Если специфицирован параметр -p, индексный дескриптор файла заново подсоединяется.

Сообщение:

	SORRY. NO lost+found DIRECTORY

В корневом каталоге файловой системы нет каталога lost+found; fsck игнорирует требование соединить файл с каталогом lost+found. В дальнейшем это порождает сообщение об ошибках на этапе 4. Режимы доступа каталога lost+found могут быть неправильными.

Сообщение:

	SORRY. NO SPACE IN lost+found DIRECTORY

Нет места, чтобы присоединить другой элемент к каталогу lost+found в корневом каталоге файловой системы; fsck игнорирует требование связать файл с каталогом lost+found. Это порождает в дальнейшем сообщение об ошибках CLEAR на этапе 4. Проверьте размер и содержание каталога lost+found.

Сообщение:

	(CLEAR)

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

Сообщение:

	LINK COUNT FILE I- I OWNER- O MODE- M SIZE- S MTIME- T
	COUNT- X SHOULD BE Y (ADJUST?)

Подсчет связей для файла с индексным дескриптором I - X, а должен быть Y. Печатаются владелец O, режим M, размер S и время модификации T. Если специфицирован параметр -p, корректируется подсчет связей.

Сообщение:

	LINK COUNT DIR I- I OWNER- O MODE- M SIZE- S MTIME- T
	COUNT- X SHOULD BE Y (ADJUST?)

Подсчет связей для каталога с индексным дескриптором I - X, а должен быть Y. Печатаются владелец O, режим M, размер S и время модификации T. Если специфицирован параметр -p, корректируется подсчет связей.

Сообщение:

	UNREF FILE I- I OWNER- O MODE- M SIZE- S MTIME- T
	(CLEAR?)

Файл с индексным дескриптором I не был соединен с элементом каталога при отслеживании файловой системы. Печатаются владелец O, режим M, размер S и время модификации T индексного дескриптора файла I. Если параметр -n пропущен и файловая система не смонтирована, пустые файлы автоматически очищаются. Непустые каталоги не очищаются. Если специфицирован параметр -p, файл очищается, если он не был заново соединен.

Сообщение:

	UNREF DIR I- I OWNER- O MODE- M SIZE- S MTIME- T
	(CLEAR?)

Каталог с индексным дескриптором I не был соединен с элементом каталога при отслеживании файловой системы. Печатаются владелец O, режим M, размер S и время модификации T индексного дескриптора файла I. Если параметр -n пропущен и файловая система не смонтирована, пустые каталоги автоматически очищаются. Непустые каталоги не очищаются. Если специфицирован параметр -p, каталог очищается, если его невозможно заново соединить.

Сообщение:

	BAD/DUP FILE I- I OWNER- O MODE- M SIZE- S MTIME- T
	(CLEAR?)

На этапе 1 или на этапе 1B были найдены идентичные блоки или неудачные блоки, связанные с файлом с индексным дескриптором I. Если специфицирован параметр -p, файл очищается.

Сообщение:

	BAD/DUP DIR I- I OWNER- O MODE- M SIZE- S MTIME- T
	(CLEAR?)

На этапе 1 или на этапе 1B были найдены идентичные блоки или неудачные блоки, связанные с каталогом с индексным дескриптором I. Печатаются владелец O, режим M, размер S и время модификации T индексного дескриптора I. Если специфицирован параметр -p, каталог очищается.

Сообщение:

	FREE INODE COUNT WRONG IN SUPERBLK (FIX?)

Фактический подсчет свободных индексных дескрипторов файлов не соответствует подсчету в системном блоке тома файловой системы. Если специфицирован параметр -q или -p, подсчет в системном блоке тома будет автоматически зафиксирован.

2.4.3.11. Этап 5: Проверка списка свободной памяти

На этом этапе проверяется список свободных блоков. Дается отчет об исключительной ситуации, возникшей в результате:

Типы сообщений об ошибках - Этап 5.

На этапе 5 четыре типа сообщений об ошибках:

Значение ответов Да/Нет - Этап 5.

Ответ n (нет) на приглашение CONTINUE? означает: Завершите программу.

Ответ y (да) на приглашение CONTINUE? означает: Проигнорируйте остаток списка свободных блоков и продолжите выполнение fsck.

Это порождает в дальнейшем сообщение об ошибках

	BAD BLKS IN FREE LIST на этапе 5.

Ответ n (нет) на приглашение FIX? означает: Проигнорируйте эту исключительную ситуацию.

Этот ответ уместен только в том случае, если пользователь намерен принять другие меры по фиксации ошибки.

Ответ y (да) на приглашение FIX? означает: Замените подсчет в системном блоке тома на правильный.

Ответ n (нет) на приглашение SALVAGE? означает: Проигнорируйте эту исключительную ситуацию.

Этот ответ уместен только в том случае, если пользователь намерен принять другие меры по фиксации ошибки.

Ответ y (да) на приглашение SALVAGE? означает: Замените фактический список свободных блоков новым списком свободных блоков.

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

Этап 5 - Сообщения об ошибках.

Сообщение:

	EXCESSIVE BAD BLKS IN FREE LIST (CONTINUE?)

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

Сообщение:

	EXCESSIVE DUP BLKS IN FREE LIST (CONTINUE?)

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

Сообщение:

	BAD FREEBLK COUNT

Подсчет свободных блоков в списке свободных блоков больше 50 или меньше 0. Эта ситуация порождает сообщение BAD FREE LIST на этапе 5.

Сообщение:

	X BAD BLKS IN FREE LIST

X блоков в списке свободных блоков имеют номер меньше первого блока данных или больше последнего блока в файловой системе. Такая ситуация порождает сообщение BAD FREE LIST на этапе 5.

Сообщение:

	X DUP BLKS IN FREE LIST

X блоков, объявленных индексными дескрипторами файлов или в предыдущих частях свободного списка блоков, были обнаружены в списке свободных блоков. Эта ситуация порождает сообщение BAD FREE LIST на этапе 5.

Сообщение:

	X BLK(S) MISSING

X блоков, не использованны файловой системой, не были найдены в списке свободных блоков. Эта ситуация порождает в дальнейшем сообщение BAD FREE LIST на этапе 5.

Сообщение:

	FREE BLK COUNT WRONG IN SUPERBLOCK (FIX?)

Действительный подсчет свободных блоков не соответствует подсчету свободных блоков в системном блоке тома файловой системы. Если был специфицирован параметр -p, подсчет свободных блоков в системном блоке тома фиксируется автоматически.

Сообщение:

	BAD FREE LIST (SALVAGE?)

Этому сообщению всегда предшествует одно или несколько информационных сообщений этапа 5. Если был специфицирован параметр -q или -p, список свободных блоков восстанавливается автоматически.

2.4.3.12. Этап 6: Восстановление списка свободных блоков

На этом этапе восстанавливается список свободных блоков. Может быть отображено справочное сообщение о значениях пропускаемых (игнорируемых) блоков или блоков на один цилиндр.

Этап 6 - Сообщения об ошибках.

Сообщение:

	DEFAULT FREE-BLOCK LIST SPACING ASSUMED

Это справочное сообщение, указывающее, что пропускаемые блоки (промежуток) больше блоков на один цилиндр; значение игнорируемых блоков меньше 1, и блоков на цилиндр - меньше 1, либо значение блоков на цилиндр больше 500. Используются значения по умолчанию: 10 игнорируемых блоков и 162 блока на цилиндр.

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

2.4.3.13. Этап доводки

После проверки файловой системы выполняется несколько функций очистки. Ниже перечисляются справочные сообщения о файловой системе и о модифицированном состоянии файловой системы.

***** FILE SYSTEM STATE SET TO OKAY *****
Устанавливается флаг в системном блоке тома, указывающий, что файловая система не нарушена и может быть смонтирована.
X files Y blocks Z free
Это сообщение указывает, что файловая система, которая была проверена, содержала X файлов, использующих Y блоков; при этом Z блоков оставалось свободными в файловой системе.
***** FSCK and the ROOT FILE SYSTEM *****
root - единственная файловая система, которую можно (и нужно) проверять во время монтирования. Для проверки файловой системы root имеются автоматические механизмы. Эти механизмы служат для обработки корневой файловой системы при начальной загрузке и для периодической проверки во время закрытия системы. Можно также форсировать проверку закрытия системы. Эти механизмы упрятывают сообщения от fsck. Если они не упрятаны, вы увидите следующее сообщение об ошибках.
***** ROOT FILE SYSTEM WAS MODIFIED *****
Это справочное сообщение указывает, что корневая файловая система была модифицирована с помощью программы fsck. Если необходима повторная загрузка системы, fsck с параметром -b форсирует автоматическую перезагрузку и печатает следующее сообщение:
***** SYSTEM WILL REBOOT AUTOMATICALLY *****
Если вы решили не использовать автоматические механизмы, если параметр -b не используется и требуется перезагрузка системы, нажмите RESET.
Можно автоматически заново смонтировать root без перезагрузки после повреждения этой файловой системы. Появляется следующее сообщение:
***** ROOT REMOUNTED *****
Автоматические процедуры устанавливают соответствующие условия (процессы не связаны с файлами) для проверки root.
Примечание. Всегда используйте автоматические процедуры для root. Никогда не используйте команду fsck в других файловых системах, когда они монтируются. Если вы попытаетесь использовать команду fsck в смонтированной файловой системе, отличающейся от корневой (root) файловой системы, отображается следующее сообщение:
	/dev/dsk/ ?? is a mounted file system, ignored. ?? is
	the special device name.

Назад | Содержание | Вперед