Файловые системы отвечают за организацию хранения и восстановления данных. Так или иначе, со временем файловая система может быть повреждена, и некоторые ее части могут стать недоступными. Если ваша файловая система обнаруживает такую несогласованность, рекомендуется проверить ее целостность.
Это можно сделать с помощью системной утилиты под названием fsck (проверка целостности файловой системы). Эта проверка может выполняться автоматически во время загрузки или запускаться вручную.
В этой статье мы рассмотрим утилиту fsck и ее использование, чтобы помочь вам исправить ошибки диска.
Есть разные сценарии, когда вы захотите запустить fsck. Вот несколько примеров:
Команду Fsck необходимо запускать с привилегиями суперпользователя или корень. Вы можете использовать это с разными аргументами. Их использование зависит от вашего конкретного случая. Ниже вы увидите некоторые из наиболее важных опций:
-А
- Используется для проверки всех файловых систем. Список взят из /etc/fstab
.-C
- Показать индикатор выполнения.-l
- Блокирует устройство, чтобы гарантировать, что никакая другая программа не попытается использовать раздел во время проверки.-M
- Не проверяйте смонтированные файловые системы.-N
- Показывать только то, что будет сделано - фактических изменений не вносится.-П
- Если вы хотите параллельно проверять файловые системы, включая root.-Р
- Не проверяйте корневую файловую систему. Это полезно только с "-А
‘.-р
- Предоставьте статистику для каждого проверяемого устройства.-T
- Не показывает заголовок.-t
- Исключительно укажите типы файловых систем, которые необходимо проверить. Типы могут быть списком, разделенным запятыми.-V
- Опишите, что делается.Чтобы запустить fsck, вам нужно будет убедиться, что раздел, который вы собираетесь проверить, не смонтирован. Для этой статьи я буду использовать свой второй диск. /dev/sdb
установлен в /mnt
.
Вот что произойдет, если я попытаюсь запустить fsck когда раздел смонтирован.
# fsck / dev / sdb.
Чтобы избежать этого, отключите раздел с помощью.
# размонтировать / dev / sdb.
Затем fsck можно смело запускать.
# fsck / dev / sdb.
После запуска fsck, он вернет код выхода. Эти коды можно увидеть в руководстве по fsck, запустив:
# человек fsck 0 Ошибок нет. 1 Исправлены ошибки файловой системы. 2 Необходимо перезагрузить систему. 4 Неисправленные ошибки файловой системы. 8 Операционная ошибка. 16 Ошибка использования или синтаксиса. 32 Проверка отменена по запросу пользователя. 128 Ошибка общей библиотеки
Иногда в файловой системе может быть обнаружено несколько ошибок. В таких случаях вы можете захотеть fsck для автоматической попытки исправить ошибки. Это можно сделать с помощью:
# fsck -y / dev / sdb.
В -у
флаг, автоматически "да"
на любые запросы от fsck для исправления ошибки.
Точно так же вы можете запустить то же самое во всех файловых системах (без корень):
$ fsck -AR -y
В некоторых случаях может потребоваться запустить fsck на корень раздел вашей системы. Поскольку ты не можешь бежать fsck пока раздел смонтирован, вы можете попробовать один из следующих вариантов:
Мы рассмотрим обе ситуации.
Это относительно легко выполнить, единственное, что вам нужно сделать, это создать файл с именем forcefsck в корневом разделе вашей системы. Используйте следующую команду:
# touch / forcefsck.
Затем вы можете просто принудительно перезагрузить или запланировать перезагрузку системы. Во время следующей загрузки fsck будет выполнено. Если время простоя критично, рекомендуется тщательно спланировать это, поскольку, если в вашей системе много используемых inode, fsck может потребоваться дополнительное время.
После загрузки системы проверьте, существует ли еще файл:
# ls / forcefsck.
Если это так, вы можете удалить его, чтобы избежать fsck при каждой загрузке системы.
Бег fsck в режим спасения требуется еще несколько шагов. Сначала подготовьте свою систему к перезагружать. Остановите все критически важные службы, такие как MySQL / MariaDB и т.д., а затем введите.
# перезагружать.
Во время загрузки зажмите кнопку сдвиг
, чтобы отобразить меню личинки. Выберите «Расширенные опции”.
Тогда выбирай "Режим восстановления”.
В следующем меню выберите «fsck”.
Вас спросят, хотите ли вы /
файловая система перемонтирована. Выбирать "да"
.
Вы должны увидеть что-то похожее на это.
Затем вы можете вернуться к нормальной загрузке, выбрав "Резюме".
В этом руководстве вы узнали, как использовать fsck и выполнять проверки согласованности в разных файловых системах Linux. Если у вас есть вопросы по поводу fsck, пожалуйста, не стесняйтесь отправлять их в разделе комментариев ниже.