0024 — Проверка файловой системы в Linux
/forcefsck
Это старый способ, который плохо работает в современных дистрибутивах.
Нужно авторизоваться от имени пользователя
root
:sudo su
Запустить редактор заданий
crontab
:crontab -e
Добавить в конец файла строку:
@reboot touch /forcefsck
Если такой файл существует, ОС запустит проверку файловой системы при загрузке, после чего файл удалит. Чтобы он восстанавливался автоматически, используется особая форма указания времени запуска задания
@reboot
— во время загрузки.
Настройка параметров GRUB
В Debian-based системах необходимо:
В файле
/etc/default/grub
добавить в конец строки с параметромGRUB_CMDLINE_LINUX_DEFAULT
аргументы:fsck.mode=force
— для автоматической проверки файловой системы при каждой загрузке;fsck.repair=yes
— для автоматического исправления обнаруженных ошибок.
Например, на моём компьютере эта строка выглядит так:
GRUB_CMDLINE_LINUX_DEFAULT="quiet nvidia nvidia_modeset nvidia_uvm nvidia_drm fsck.mode=force fsck.repair=yes"
Убедиться, что в файле
/etc/fstab
правильно выставлены приоритеты проверки разделов: раздел/
(root
) должен проверяться первым, а все остальные, кромеSWAP
— после него в порядке общей очереди.Отмечу, что
fsck
может параллельно проверять сразу несколько файловых систем.За порядок проверки отвечает последний параметр в каждой строке. На моём компьютере файл
/etc/fstab
выглядит так (большая часть комментариев удалена для краткости):# ID Точка монтирования Тип ФС Параметры dump fsck UUID=72DE-DB90 /boot/efi vfat umask=0077 0 1 UUID=f2ff62a9-6cc8-432d-9322-7ee9b815f40b / ext4 errors=remount-ro 0 1 UUID=7bfe3a92-1445-4082-87a2-c9c9428038b3 /home ext4 defaults 0 2 UUID=5497b7cf-1544-4715-84e6-7cee4866adf5 none swap sw 0 0 UUID=E22E94942E9462F9 /media/dunaevsky/DATA ntfs-3g defaults 0 0 # Привод DVD-RW /dev/sr0 /media/cdrom0 auto user,noauto 0 0
Здесь:
ID
— идентификатор, позволяющий однозначно идентифицировать раздел. Сейчас принято использовать UUID. Для их определения можно использовать командуblkid
.- Точка монтирования — место в файловой системе, к которому будет подключен раздел. Каталог должен существовать и быть пустым.
- Тип ФС — тип файловой системы, используемой для хранения данных в разделе. Обратите внимание, для раздела EFI (самый первый) используется
fvat
. - Параметры — в большинстве случаев достаточно
default
, но есть и особые случаи. dump
— должна ли ОС создавать резервную копию данных раздела? В большинстве случаев — нет.fsck
— первыми проверяются разделы EFI и/
, потом все остальные. Для раздела NTFS, SWAP и оптического привода проверка выключена.
Подробнее про
/etc/fstab
и параметры можно почитать в Arch Wiki.Обновить параметры загрузчика:
sudo update-grub