fsck — (File System Consistency Check) утилита для проверки файловых системы на наличие ошибок или нерешенных проблем, а также для восстановления файловых систем. Проверка файловых систем разных физических дисков выполняется параллельно, что позволяет значительно её ускорить..
Синтаксис:
fsck <Опции> <Файловая система>
Если вместо файловой системы указать значение NO или ничего не указывать, то будут проверяться все устройства указанные в файле /etc/fstab
.
Основные опции:
Опция | Описание |
---|---|
-A | проверка всех файловых систем в /etc/fstab |
-C | показать прогресс выполнения проверки в системах ext2 и ext3 |
-V | вывести подробное описание выполняемой проверки |
-r | отображение статистики проверенного устройства |
-t | указывает файловую систему для проверки. Можно указать несколько систем через запятую |
-l | заблокировать устройство, чтобы исключить из использования другими программами во время проверки и восстановления |
-T | не отображать заголовок |
-M | запрет на проверку смонтированных систем |
-N | пробное сканирование, без выполнения действий, вывод информации о действиях, которые будут выполнены |
-n | проверка файловой системы без исправления ошибок |
-P | проверка файловых систем вместе с корневой |
-R | проверка без корневой файловой системы, выполняется вместе с -A |
-f | принудительная проверка файловой системы |
-y | автоматический ответ “да” на все запросы к системе |
-p | автоматическое исправление найденных ошибок |
Внимание! Невозможно выполнить проверку файловой системы с помощью команд fsck или e2fsck, если нужный диск смонтирован в системе.
При попытке провести проверку на смонтированном носителе будет выведена ошибка вида:
sudo fsck
fsck из util-linux 2.38.1
e2fsck 1.46.2 (28-Feb-2021)
/dev/sda3 is mounted.
e2fsck: Cannot continue, aborting.
Определить имя носителя поможет команда вывода списка носителей:
lsblk -f
Примерный вывод:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 255M 0 part /boot/efi
├─sda2 8:2 0 16,6G 0 part [SWAP]
└─sda3 8:3 0 206,7G 0 part /
sdb 8:16 0 1,8T 0 disk
└─sdb1 8:17 0 1,8T 0 part /tmp
/home
Для определения файловой системы:
sudo fdisk -l | more
Примерный вывод:
Диск /dev/sda: 223,58 GiB, 240065183744 байт, 468877312 секторов
Disk model: WDC WDS240G2G0A-
Единицы: секторов по 1 * 512 = 512 байт
Размер сектора (логический/физический): 512 байт / 512 байт
Размер I/O (минимальный/оптимальный): 512 байт / 512 байт
Тип метки диска: gpt
Идентификатор диска: B9B83051-169B-0543-8761-11A1AB84019A
Устр-во начало Конец Секторы Размер Тип
/dev/sda1 2048 524287 522240 255M EFI
/dev/sda2 524288 35340287 34816000 16,6G Файловая система Linux
/dev/sda3 35340288 468871167 433530880 206,7G Файловая система Linux
sudo umount <имя носителя>
Например:
sudo umount /dev/sdb
Проверка наличия ошибок в одном разделе файловой системы:
fsck /dev/sdb1
Проверить наличие ошибок во всех разделах системы:
fsck -A
На работающей машине нельзя размонтировать корневой раздел, но можно исключить проверку корневого раздела с помощью опции -R:
fsck -AR
Проверка файловой системы на ошибки с их автоматическим исправленим:
fsck -y /dev/sdb
Проверка раздела с заданной файловой системой (ext4):
fsck -t -A ext4
Проверка файловой системы ext2/3/4:
e2fsck -f -y -v -C 0 /dev/sda1
где
-f — принудительная проверка файловой системы
-y — отвечает на все вопросы об исправлении ошибок утвердительно
-v — максимально подробный вывод.
-C — показать прогресс проверки файловой системы
Проверка NTFS-диска:
sudo ntfsresize -i -f -v /dev/sda1
Хотя лучше выполнить проверку из-под Windows
chkdsk c: /f /r
Проверка файловой системы BtrFS:
sudo btrfs check --repair /dev/nvme0n1p2
Проверка файловой системы FAT*:
sudo fsck.fat -a -w -v /dev/sdc1
С помощью Shift+PgUp/PgDn можно пролистывать консоль вверх/вниз.
Когда вы запускаете утилиту FSCK, то она возвращает коды. Значение этих кодов приведены ниже. Также вы можете получить информацию о кодах, запустив команду вызова руководства:
sudo man fsck
0 Ошибки отсутствуют
1 Ошибки файловой системы были исправлены
2 Систему необходимо перезагрузить
4 Ошибки файловой системы не были исправлены
8 Операционная ошибка
16 Ошибка использования или синтаксиса
32 Проверка системы была отменена запросом от пользователя
128 Ошибка общей библиотеки