Команда Fsck в Linux (Восстановление файловой системы)

Команда Fsck в Linux (Восстановление файловой системы)

Fsck Command in Linux (Repair File System)

25 Января 2020 | Терминал

В этой статье мы поговорим о fsck команде.

Команда Fsck в Linux (Восстановление файловой системы)

fsck (проверка файловой системы) - это утилита командной строки, которая позволяет выполнять проверки согласованности и интерактивное исправление в одной или нескольких файловых системах Linux. Он использует программы, специфичные для типа файловой системы, которую он проверяет.

Вы можете использовать fsck команду для восстановления поврежденных файловых систем в ситуациях, когда система не загружается или раздел не может быть смонтирован.



Как пользоваться fsck

Команда fsck принимает следующую общую форму:

fsck [OPTIONS] [FILESYSTEM]

Только root или пользователи с sudo привилегиями могут очистить буфер.

Если FILESYSTEMв качестве аргумента указано no , fsck проверяются устройства, указанные в fstab файле.

Никогда не запускайте fsck на смонтированных разделах, так как это может повредить файловую систему. Прежде чем пытаться проверить или восстановить файловые системы, всегда делайте unmount это сначала.

Команда fsckявляется оберткой для различных контроллеров файловой системы Linux ( fsck.*) и принимает различные параметры в зависимости от типа файловой системы.

Проверьте справочные страницы для получения дополнительной информации о конкретном контролере. Например, чтобы просмотреть доступные параметры fsck.ext4, введите:

man fsck.ext4


Восстановление поврежденной файловой системы

Простейший вариант использования fsckкоманды - восстановить поврежденную файловую систему ext3 или ext4 без полномочий root.

  1. Если вы не знаете имя устройства, использовать fdisk, df или любой другой инструмент , чтобы найти его.

  2. Размонтировать устройство:

    sudo umount /dev/sdc1
    
    
  3. Запустите fsckдля восстановления файловой системы:

    sudo fsck -p /dev/sdc1

    -p Опция указывает fsck автоматически исправить все проблемы , которые могут быть надежно закреплены без вмешательства пользователя.

  4. После восстановления файловой системы смонтируйте раздел:

    sudo mount /dev/sdc1


Восстановление корневой файловой системы

fsck не может проверить корневую файловую систему на работающей машине, потому что она не может быть размонтирована.

Если вы хотите проверить или восстановить корневую файловую систему, у вас есть несколько вариантов в вашем распоряжении. Вы можете настроить fsck запуск при загрузке, загрузить систему в режиме восстановления или использовать live CD.

Для запуска fsck в режиме восстановления:

  1. Войдите в меню загрузки и выберите «Дополнительные параметры»
  2. Выберите режим восстановления и затем «fsck».
  3. Когда будет предложено перемонтировать корневую файловую систему, выберите «Да».
  4. После этого возобновите нормальную загрузку.

Чтобы запустить fsck из живого дистрибутива:

  1. Загрузите дистрибутив в режиме реального времени.

  2. Используйте fdisk или, parted чтобы найти имя корневого раздела.

  3. Откройте терминал и запустите:

    sudo fsck -p /dev/sda1
  4. После этого перезагрузите дистрибутив и загрузите вашу систему.


Проверьте файловые системы при загрузке

В большинстве дистрибутивов 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 (<none>)

  • «Максимальное количество монтирований» - это количество монтирований, после которых будет проверяться файловая система. Значение или -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

Последний, шестой столбец ( [PASS]) - это параметр, который контролирует порядок, в котором проверки файловой системы выполняются во время перезагрузки.

  • 0 - Не проверяй.
  • 1 - Файловые системы должны проверяться первыми и по одному за раз.
  • 2 - Все остальные файловые системы, которые проверяются позже и, возможно, параллельно.


   Корневая файловая система должна иметь значение 1, а все остальные файловые системы, которые вы хотите проверить, должны иметь значение 2.


Вывод

fsck является инструментом командной строки для проверки и при необходимости восстановления файловых систем Linux

Чтобы узнать больше о fsck команде, посетите страницу руководства fsck или введите man fsck свой терминал.


    Комментарии

    Если у вас есть вопросы, не стесняйтесь оставлять комментарии ниже.

Загрузка комментариев...