FSCK.FAT(8)

НАЗВА
fsck.fat — перевірка і відновлення файлових систем FAT MS-DOS

КОРОТКИЙ ОПИС
fsck.fat [ПАРАМЕТРИ] ПРИСТРІЙ

ОПИС
fsck.fat перевіряє узгодженість файлових систем MS-DOS і, якщо вказано, намагається виправити їх.

Може бути виправлено такі проблеми файлової системи (у вказаному порядку):

•   FAT містини некоректні номери кластерів. Некоректні кластери буде замінено на EOF.

•   Цикл у ланцюжку кластерів файла. Цикли буде розірвано.

•   Помилкові кластери (помилки читання). Такі кластери буде позначено як помилкові і вилучено з файлів, які є їхніми власниками. Ця перевірка є необов'язковою.

•   Каталоги із великою кількістю помилкових записів (ймовірно, пошкоджених). Такі каталоги може бути вилучено.

•   Файли . і .. не є каталогами. Такі файли буде вилучено або перейменовано.

•   Каталоги . і .. у кореневому каталозі. Такі каталоги буде вилучено.

•   Помилкові назви файлів. Файли може бути перейменовано.

•   Дублікати записів каталогів. Дублікати буде вилучено або перейменовано.

•   Каталоги із ненульовим полем розміру. Для таких каталогів буде встановлено нульовий розмір.

•   Каталог . не вказує на батьківський каталог. Такі початкові вказівники буде скориговано.

•   Каталог .. не вказує на батьківський каталог щодо батьківського каталогу. Такі початкові вказівники буде скориговано.

•   . і .. не є першими двома записами у некореневому каталозі. Ці записи буде створено із пересуванням зайнятих місць, якщо це потрібно.

•   Номер початкового кластера файла є некоректним. Файл обрізано.

•   У файлі містяться помилкові або вільні кластери. Файл буде обрізано.

•   Ланцюжок кластерів файла є довшим за вказаний полями розміру. Файл буде обрізано.

•   Два або декілька файлів спільно використовують одні кластери. Усі, окрім одного, файли буде обрізано. Якщо файл, який буде обрізано, є файлом каталогу, який вже було прочитано, після обрізання буде перезапущено перевірку файлової системи.

•   Ланцюжок кластерів файла є коротшим за вказаний полями розміру. Файл буде обрізано.

•   Мітка тому у кореневому каталозі або мітка у секторі завантаження є некоректною. Некоректні мітки буде вилучено.

•   Мітка тому у кореневому каталозі і мітка у секторі завантаження є різними. Мітку тому з кореневого каталогу буде скопійовано до сектора завантаження.

•   Кластери позначено як використані, але вони не є власністю жодного файла. Такі кластери буде позначено як вільні.

Крім того, програма може виявляти вказані нижче проблеми, але без виправлення проблем:

•   Некоректні параметри у секторі завантаження

При перевірці файлової системи за допомогою fsck.fat програма накопичує усі зміни у пам'яті і застосовує їх лише після завершення усіх перевірок. Вимкнути таку поведінку можна за допомогою параметра -w.

Передбачено підтримку двох різних варіантів файлової системи FAT. Стандартними є файлові системи FAT12, FAT16 і FAT32 у формі, у якій їх визначено Microsoft, і у якій їх широко використано для дисків і портативних носіїв, подібних до флешок USB та SD-карток. Іншим варіантом є застарілий варіант Atari, який було використано на Atari ST.

Формат Atari має незначні відмінності від стандартного: обробка деяких полів сектора завантаження відбувається дещо інакше, а особливі записи FAT для кінця файла та помилкового кластера можуть бути відмінними від стандартних. У MS-DOS для кінця файла (EOF) використано 0xfff8, а в Atari типово використано 0xffff, але обидві системи розпізнають усі значення у діапазоні 0xfff8–0xffff як кінець файла. У MS-DOS для помилкових кластерів використано лише 0xfff7, а в Atari з цією метою використано значення у діапазоні 0xfff0–0xfff7 (але стандартним є значення 0xfff7).

ПАРАМЕТРИ

-a  Автоматично виправити файлову систему. Втручання користувача не знадобиться. Кожного разу, коли проблему можна буде розв'язати у декілька способів, буде використано найменш руйнівний з них.

-A  Вибрати використання варіанта Atari для файлової системи FAT, якщо його ще не активовано, інакше буде вибрано стандартну файлову систему FAT. Цей варіант типово буде вибрано, якщо mkfs.fat запущено на Atari Linux 68k.

-b  Виконати перевірку придатного лише для читання сектора завантаження.

-c СТОРІНКА
    Скористатися кодовою сторінкою СТОРІНКА DOS для декодування коротких назв файлів. Типово, буде використано кодову сторінку 850.

-d ШЛЯХ
    Вилучити вказаний файл. Якщо існує декілька файлів із такою назвою, буде вилучено лише перший. Цей параметр у рядку команди можна використати декілька разів.

-f  Приписати невикористані ланцюжки кластерів до файлів. Типово, невикористані кластери буде додано до вільного місця на диску, якщо режим не є автоматичним (-a).

-F ЧИСЛО
    Вказати таблицю FAT ЧИСЛО для доступу до файлової системи. Типово, буде використано значення 0 і вибрано першу непошкоджену таблицю FAT. Непошкодженість у цьому випадку означає, що у таблиці FAT є коректним перший кластер. Якщо використано типове значення 0 і усі таблиці FAT пошкоджено, fsck.fat не продовжуватиме обробку і не намагатиметься виправити файлову систему FAT. Якщо вказано ненульове значення аргументу ЧИСЛО, fsck.fat використає для виправлення файлової системи FAT таблицю ЧИСЛО. Якщо перший кластер таблиці FAT ЧИСЛО пошкоджено, fsck.fat відновить його. За будь-яких умов, якщо у файловій системі FAT є декілька таблиць FAT, виправлені дані вибраної таблиці FAT буде скопійовано до інших таблиць FAT. Щоб програма виправила пошкоджений перший кластер, fsck.fat слід викликати із ненульовим значенням аргументу ЧИСЛО.

-l  Вивести шлях для файлів, обробку яких виконує програма.

-n  Режим без виконання дій: неінтерактивно виконати перевірку на помилки, але не записувати результати до файлової системи.

-p  Те саме, що і -a, для сумісності з іншими *fsck.

-r  Інтерактивно відновлювати файлову систему. Програма проситиме користувача вказати варіант виправлення неузгодженості. Це типовий режим, параметр зберігається у програмі лише з міркувань зворотної сумісності.

-S  Вважати коротку назву файла (8.3) із пробілами у назві некоректною, так, як це робили попередні версії цієї програми. Хоча такі назви файлів не заборонено специфікацією FAT, і їхнє використання ніколи не вважалося помилкою у засобах перевірки файлової системи Microsoft, багато програм DOS не можуть працювати із файлами з такими назвами. Використання цього параметра може зробити ці файли доступним для таких програм.

    Короткі назви файлів, які починаються з пробілу, вважатимуться некоректними, незалежно від використання цього параметра.

    У попередніх версіях цієї програми, як виключення, вважали EA DATA. SF і WP ROOT. SF коректними короткими назвами. Використання цього параметра не зберігає це виключення.

-t  Позначати непридатні до читання кластери як помилкові.

-u ШЛЯХ
    Спробувати відновити вказаний файл. fsck.fat намагається розмістити на диску ланцюжок неперервних нерозподілених кластерів, що починається з початкового кластера файла, який має бути відновлено. Цей параметр можна використовувати у рядку команди декілька разів.

-U  Вважати записи мітки тому та завантаження малими літерами некоректними і дозволяти лише записи великими літерами. Мітки малими літерами заборонено специфікацією FAT, але такі мітки широко використовують у інструментах Linux. Крім того, у систем MS-DOS і Windows не виникає проблем із такими мітками. Через це, типово, мітки томів та завантаження, які записано малими літерами, дозволено.

-v  Режим докладних повідомлень. Виведені дані будуть дещо докладнішими.

-V  Виконати прохід перевірки. Перевірку файлової системи буде повторено після першого запуску. Під час другого проходу ніколи не буде повідомлено про жодні придатні до виправлення помилки. Другий прохід може тривати суттєво довше за перший, оскільки під час першого проходу може бути створено доволі довгий список змін, сканування яких має бути виконано для кожного читання з диска.

--variant ТИП
    Створити файлову систему у варіанті ТИП. Прийнятними значеннями є standard і atari (у будь-якому варіанті запису малими або великими літерами). Відмінності описано у розділі ОПИС вище.

-w  Записувати зміни на диск негайно.

-y  Те саме, що і -a (автоматично виправляти файлову систему), для сумісності із іншими інструментами fsck.

--help
    Вивести довідкове повідомлення, у якому буде описано користування та параметри команди, а потім завершити роботу.

СТАН ВИХОДУ

0   Не виявлено придатних до виправлення помилок.

1   Було виявлено придатні до виправлення помилки або fsck.fat було виявлено внутрішню неузгодженість.

2   Помилка користування. fsck.fat не вдалося отримати доступ до файлової системи.

ФАЙЛИ

fsck0000.rec, fsck0001.rec, ...
    При виправленні пошкодженої файлової системи fsck.fat створює дампи відновлених даних до файлів із назвами fsckNNNN.rec у каталозі верхнього рівня файлової системи.

ВАДИ

•   Вилучення порожніх каталогів є неповним.

•   Має бути більше діагностичних повідомлень.

•   Для відновлення файлів має бути використано продуманіший алгоритм.

ДИВ. ТАКОЖ
fatlabel(8), mkfs.fat(8)

ДОМАШНЯ СТОРІНКА
Домашньою сторінкою проєкту dosfstools є його сторінка проєкту на GitHub (https://github.com/dosfstools/dosfstools).

АВТОРИ
dosfstools було написано Werner Almesberger (werner.almesberger@lrc.di.epfl.ch), Roman Hodek (Roman.Hodek@informatik.uni-erlangen.de) та іншими. Поточними супровідниками програми є Andreas Bombe (aeb@debian.org) і Pali Rohár (pali.rohar@gmail.com).

ПЕРЕКЛАД
Український переклад цієї сторінки посібника виконано Yuri Chornoivan <yurchor@ukr.net>

Цей переклад є безкоштовною документацією; будь ласка, ознайомтеся з умовами GNU General Public License Version 3 (https://www.gnu.org/licenses/gpl-3.0.html). НЕ НАДАЄТЬСЯ ЖОДНИХ ГАРАНТІЙ.

Якщо ви знайшли помилки у перекладі цієї сторінки підручника, будь ласка, надішліть електронний лист до списку листування перекладачів: trans-uk@lists.fedoraproject.org.