
fsck (проверка файловой системы) — это утилита командной строки, позволяющая выполнять проверку целостности и интерактивное восстановление одной или нескольких файловых систем Linux. Она использует программы, специфичные для типа проверяемой файловой системы.
Команду fsck можно использовать для восстановления поврежденных файловых систем в ситуациях, когда система не загружается или раздел не может быть смонтирован.
В этой статье мы поговорим о команде fsck .
Как использовать fsck
Команда fsck имеет следующий общий вид:
fsck [ OPTIONS ] [ FILESYSTEM ]
Очистить буфер могут только пользователи с правами root или sudo .
Если в качестве аргумента не указан FILESYSTEM , fsck проверяет устройства, перечисленные в файле fstab .
Никогда не запускайте fsck на смонтированных разделах, так как это может повредить файловую систему. Перед проверкой или восстановлением файловой системы всегда сначала unmount её.
Команда fsck представляет собой оболочку для различных средств проверки файловой системы Linux ( fsck.* ) и принимает различные параметры в зависимости от типа файловой системы.
Дополнительную информацию о конкретной программе проверки можно найти в руководстве. Например, чтобы просмотреть доступные параметры для fsck.ext4 , введите:
man fsck.ext4
Восстановление поврежденной файловой системы
Самый простой вариант использования команды fsck — восстановление поврежденной файловой системы ext3 или ext4 без прав root.
-
Если вы не знаете имя устройства, используйте
fdisk,dfили любой другой инструмент, чтобы найти его. -
Отмонтируйте устройство:
sudo umount /dev/sdc1 -
Запустите
fsckдля восстановления файловой системы:sudo fsck -p /dev/sdc1Опция
-pуказываетfsckавтоматически исправлять любые проблемы, которые можно безопасно устранить без вмешательства пользователя. -
После восстановления файловой системы смонтируйте раздел:
sudo mount /dev/sdc1
Восстановление корневой файловой системы
fsck не может проверить корневую файловую систему на работающей машине, поскольку ее невозможно размонтировать.
Если вы хотите проверить или восстановить корневую файловую систему, у вас есть несколько вариантов. Вы можете настроить fsck на запуск при загрузке, загрузить систему в режиме восстановления или использовать Live CD.
Чтобы запустить fsck в режиме восстановления:
- Войдите в меню загрузки и выберите Дополнительные параметры.
- Выберите режим восстановления, а затем «fsck».
- При появлении запроса на перемонтирование корневой файловой системы выберите «Да».
- После этого возобновите обычную загрузку.
Чтобы запустить fsck из live-дистрибутива:
-
Загрузите live-дистрибутив.
-
Используйте
fdiskилиpartedчтобы найти имя корневого раздела. -
Откройте терминал и выполните:
sudo fsck -p /dev/sda1 -
После этого перезагрузите live-дистрибутив и загрузите систему.
Проверка файловых систем при загрузке
В большинстве дистрибутивов Linux fsck запускается во время загрузки, если файловая система помечена как «грязная», или после определенного количества загрузок или времени.
Чтобы узнать текущее количество монтирований, частоту проверок, интервал проверки и время последней проверки определенного раздела, воспользуйтесь инструментом tune2fs :
sudo tune2fs -l /dev/sdc1 | grep -i 'last checked|mount count'
Mount count: 292 Maximum mount count: -1 Last checked: Tue Jul 24 11:10:07 2018 Check interval: 0 ()
- «Максимальное количество монтирований» — это количество монтирований, после которого файловая система будет проверена. Значение
0или-1означает, чтоfsckне будет запускаться ни разу. - «Интервал проверки» — это максимальное время между двумя проверками файловой системы.
Например, если вы хотите запускать fsck после каждых 25 загрузок (монтирований), введите:
sudo tune2fs -c 25 /dev/sdc1
Вы также можете установить максимальный промежуток времени между двумя проверками. Например, чтобы установить его в один месяц, выполните:
sudo tune2fs -i 1m /dev/sdc1
Чтобы принудительно запустить fsck во время загрузки дистрибутивов SystemD, передайте следующие параметры загрузки ядра:
fsck.mode=force fsck.repair=yes
В старых дистрибутивах fsck будет запускаться при загрузке, если присутствует файл /forcefsck :
sudo touch /forcefsck
Параметры fstab
fstab — это файл конфигурации, который сообщает системе, как и где монтировать разделы.
Файл /etc/fstab содержит список записей в следующем виде:
/etc/fstab
# [File System] [Mount Point] [File System Type] [Options] [Dump] [PASS] /dev/sda1 / ext4 defaults 0 1 /dev/sda2 /home ext4 defaults 0 2 server:/dir /media/nfs nfs defaults 0 0
Последний, 6-й столбец ( [PASS] ) — это параметр, который управляет порядком выполнения проверок файловой системы при перезагрузке.
-
0— Не проверять. -
1— Файловые системы, которые следует проверить в первую очередь и по одной за раз. -
2— Все остальные файловые системы, которые проверяются позже и, возможно, параллельно.
Корневая файловая система должна иметь значение 1 , а все остальные файловые системы, которые вы хотите проверить, должны иметь значение 2 .
Заключение
fsck — это инструмент командной строки для проверки и, при необходимости, восстановления файловых систем Linux.
Чтобы узнать больше о команде fsck , посетите страницу руководства fsck или введите man fsck в терминале.
Если у вас есть вопросы или пожелания, не стесняйтесь оставлять комментарии.
Связанные руководства