should be Y (adjust)

Счетчик ссылок каталога I=N владелец=O код дост.=M размер=S
вр.посл.мод.=T сейчас=X должно быть Y (исправить)

Счетчик связей i-узла N, являющегося каталогом, должен быть
не X, а Y. Печатаются следующие параметры: владелец O, тип
файла M, размер S и время модификации T каталога I (см. п.
3.2.2).

На вопрос adjust возможны следующие ответы:

yes Заменить счетчик связей i-узла N каталога на Y.

no Игнорировать ошибку.


Link count F I=N owner=O mode=M size=S mtime=T count=X
should be Y (adjust)

Счетчик ссылок F I=N владелец=O код дост.=M размер=S
вр.посл.мод.=T сейчас=X должно быть Y (исправить)

Счетчик связей для i-узла N файловой системы F должен быть
не X, а Y. Печатаются следующие параметры: имя F, владелец
O, тип файла M, размер S и время модификации T (см. п.
3.2.2).

На вопрос adjust возможны следующие ответы:

yes Заменить счетчик связей i-узла N на Y.

no Игнорировать ошибку.




- 27 -










Unref file I=N owner=O mode=M size=S mtime=T (clear)

Нет ссылок на файл I=N владелец=O код дост.=M размер=S
вр.посл.мод.=T (очистить)

При проходе по файловой системе i-узел N файла не был присо-
единен к записи каталога. Печатаются следующие параметры:
владелец O, тип файла M, размер S и время модификации T i-
узла N (см. п. 3.2.2 и п. 3).

На вопрос clear возможны следующие ответы:

yes Обнулить содержимое i-узла N.

no Игнорировать ошибку.


Unref dir I=N owner=O mode=M size=S mtime=T (clear)

Нет ссылок на каталог I=N владелец=O код дост.=M размер=S
вр.посл.мод.=T (очистить)

При проходе по файловой системе i-узел N каталога не был
присоединен к записи каталога. Печатаются следующие пара-
метры: владелец O, тип файла M, размер S и время модификации
T i-узла N.

На вопрос clear возможны следующие ответы:

yes Обнулить содержимое i-узла N.

no Игнорировать ошибку.


Bad/dup file I=N owner=O mode=M size=S mtime=T (clear)

Недопустимый или с дважды использованными блоками файл I=N
владелец=O код дост.=M размер=S вр.посл.мод.=T (очистить)

Во время выполнения шагов 1 или 1b были обнаружены дублиро-
ванные или ошибочные блоки, связанные с i-узлами N файла.
Печатаются следующие параметры: владелец O, тип файла M,
размер S и время модификации T i-узла N (см. п. 3.2.3 и п.
3.2.4).

На вопрос clear возможны следующие ответы:

yes Обнулить содержимое i-узла N.

no Игнорировать ошибку.





- 28 -










Bad/dup dir I=N owner=O mode=M size=S mtime=T (clear)

Недопустимый или с дважды использованными блоками каталог
I=N владелец=O код дост.=M размер=S вр.посл.мод.=T (очис-
тить)

Во время выполнения шагов 1 или 1b были обнаружены дублиро-
ванные или ошибочные блоки, связанные с i-узлами N каталога.
Печатаются следующие параметры: владелец O, тип файла M,
размер S и время модификации T i-узла N (см. п. 3.2.3 и п.
3.2.4).

На вопрос clear возможны следующие ответы:

yes Обнулить содержимое i-узла N.

no Игнорировать ошибку.


Free inode count wrong in superblk (fix)

Плохой счетчик в суперблоке (исправить)

Текущий счетчик свободных i-узлов не соответствует счетчику
в суперблоке данной файловой системы (см. п. 3.1.4).

На вопрос fix возможны следующие ответы:

yes Заменить счетчик в суперблоке текущим значением
счетчика.

no Игнорировать ошибку.

4.7. Шаг 5: проверка списков свободных блоков

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

Excessive bad blks in free list (continue)

Слишком много недопустимых блоков в списке свободных (про-
должать)

Количество блоков, содержащихся в списке свободных блоков,
превышает допустимое число (обычно 10). Их номера меньше
первого блока данных файловой системы или больше, чем пос-
ледний блок файловой системы (см. п. 3.1.2 и п. 3.2.4).



- 29 -










На вопрос continue возможны следующие ответы:

yes Игнорировать оставшиеся блоки из списка и продол-
жить выполнение fsck. Эта ошибка влечет ошибку типа
Bad blks in free list на шаге 5.

no Прекратить выполнение программы.

Excessive dup blks in free list (continue)

Слишком много дважды использованных блоков в списке свобод-
ных (продолжать)

Количество блоков, содержащихся в списке свободных блоков,
превышает допустимое число (обычно 10), требуемое i-узлам
или предыдущим частям списка свободных блоков (см. п. 3.1.2
и п. 3.2.3).

На вопрос continue возможны следующие ответы:

yes Игнорировать оставшиеся блоки из списка и продол-
жить выполнение fsck. Эта ошибка влечет ошибку типа
Dup blks in free list на шаге 5.

no Прекратить выполнение программы.

Bad freeblk count

Плохой счетчик свободных блоков

Значение счетчика свободных блоков в списке свободного
пространства больше 50 или меньше 0. Данная ошибка вызовет
ошибку типа Bad free list на шаге 5 (см. п. 3.1.2).

X bad blks in free list

X недопустимых блоков в списке свободных

X блоков в списке свободных блоков имеют значения номеров,
меньше, чем номер первого блока данных файловой системы или
больше, чем номер последнего блока файловой системы. Эта
ошибка приведет к ошибке типа Bad free list на шаге 5 (см.
п. 3.1.2 и п. 3.2.4).


X dum blks in free list

X дважды использованных блоков в списке свободных

В списке свободных блоков было обнаружено X блоков, затребо-
ванных i-узлами или предыдущими частями блока списка свобод-
ного пространства. Эта ошибка вызобет ошибку типа Bad free
list на шаге 5 (см. п. 3.1.2 и п. 3.2.3).


- 30 -










X blk(s) missing

X блока(ов) потеряно

X неиспользуемых файловой системой блоков не было обнаружено
в списке свободных блоков. Эта ошибка вызовет ошибку типа
Bad free list на шаге 5 (см. п. 3.1.2).


Free blk count wrong in superblk (fix)

Плохой счетчик свободных в суперблоке (исправить)

Фактический счетчик свободных блоков не соответствует счет-
чику, находящемуся в суперблоке данной файловой системы (см.
п. 3.1.3).

На вопрос fix возможны следующие ответы:

yes Заменить значение счетчика в суперблоке на текущее
значение из оперативной памяти.

no Игнорировать ошибку.


Bad free list (salvage)

Плохой список свободных (исправить)

На шаге 5 были найдены ошибочные или дублированные блоки в
списке свободных блоков или блоки, пропущенные в данной фай-
ловой системе (см. п. 3.1.2, п. 3.2.3 и п. 3.2.4).

На вопрос salvage возможны следующие ответы:

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

no Игнорировать ошибку.

4.8. Шаг 6: восстановление списка свободных блоков

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

Default free list spacing assumed

Используется расположение свободных блоков по умолчанию



- 31 -










Это сообщение только указывает, что число пропускаемых бло-
ков больше числа блоков, приходящихся на цилиндр; число про-
пускаемых блоков меньше единицы; число блоков, приходящихся
на цилиндр меньше единицы или превышает 500. По умолчанию
назначается 9 пропускаемых блоков и 400 блоков, приходящихся
на цилиндр.

4.9. Чистка

После проверки файловой системы, выполняются некоторые
действия по ее чистке. В данном разделе приводятся сообщения
о файловой системе и изменении ее состояния.

X files Y blocks Z free

X файлов Y блоков Z свободно

Данное сообщение указывает, что проверенная файловая система
содержала X файлов, в ней использовано Y блоков и Z блоков
свободно.

***** Boot DEMOS (no sync!) *****

***** Перезагрузите систему (без sync!) *****

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

***** File system was modified *****

***** Файловая система была изменена *****

Это сообщение указывает на то, что fsck изменила файловую
систему. Если данная файловая система смонтирована или
является корневой, необходимо остановить fsck и перезагру-
зить ДЕМОС. Если перезагрузка не будет осуществлена, работа,
выполненная программой fsck, может пропасть впустую.















- 32 -










СОДЕРЖАНИЕ



АННОТАЦИЯ ......................................... 2

1. Предварительные сведения .......................... 3
1.1. Назначение программы fsck ....................... 3
1.2. Структура файловой системы ...................... 3
1.2.1. Суперблок ..................................... 4
1.2.2. i-узлы ........................................ 4
1.2.3. Косвенные блоки ............................... 4
1.2.4. Блоки данных .................................. 4
1.2.5. Блок списка свободного пространства ........... 5

2. Выявление и устранение ошибок в файловой системе .. 5
2.1. Методы восстановления файловых систем ........... 5
2.2. Вызов fsck ...................................... 6
2.3. Пример использования fsck. ...................... 10
2.4. Суперблок ....................................... 10
2.4.1. Размеры файловой системы и списка i-узлов ..... 10

3. Список свободных блоков ........................... 11
3.1.1. Счетчик свободных блоков ...................... 11
3.1.2. Счетчик свободных i-узлов ..................... 11
3.2. i-узлы .......................................... 11
3.2.1. Формат и тип .................................. 12
3.2.2. Счетчик связей ................................ 12
3.2.3. Дублированные блоки ........................... 13
3.2.4. Ошибочные блоки ............................... 13
3.2.5. Проверка размеров ............................. 13
3.3. Косвенные блоки ................................. 14
3.4. Блоки данных .................................... 14
3.5. Блоки списков свободного пространства ........... 15

4. Диагностика ....................................... 16
4.1. Подготовительные действия ....................... 16
4.2. Шаг 1: проверка блоков и размеров ............... 19
4.3. Шаг 1b: поиск оставшихся дублированных блоков ... 22
4.4. Шаг 2: проверка полных имен файлов .............. 22
4.5. Шаг 3: проверка связности ....................... 24
4.6. Шаг 4: проверка счетчиков ссылок ................ 26
4.7. Шаг 5: проверка списков свободных блоков ........ 29
4.8. Шаг 6: восстановление списка свободных блоков ... 31
4.9. Чистка .......................................... 32










- 33 -