Run fsck manually ubuntu что делать

Обновлено: 07.07.2024

Файловые системы отвечают за организацию хранения и восстановления данных. Так или иначе, со временем файловая система может быть повреждена, и некоторые её части могут оказаться недоступными. Если ваша файловая система обнаруживает такую несогласованность, рекомендуется проверить её целостность.

Это можно сделать с помощью системной утилиты fsck (проверка целостности файловой системы). Эта проверка может выполняться автоматически во время загрузки или запускаться вручную.

Когда использовать fsck в Linux

Есть разные сценарии, когда вы захотите запустить fsck. Вот несколько примеров:

  • Система не загружается.
  • Файлы в системе повреждаются (часто вы можете увидеть ошибку ввода/вывода).
  • Подключенный диск (включая флешки/SD-карты) не работает должным образом.

Опции программы fsck

Команду fsck необходимо запускать с привилегиями суперпользователя или root. Вы можете использовать её с разными аргументами. Их использование зависит от вашего конкретного случая. Ниже вы увидите некоторые из наиболее важных опций:

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

Чтобы запустить fsck, вам нужно убедиться, что раздел, который вы собираетесь проверить, не смонтирован. Для целей этой статьи я буду использовать свой второй диск /dev/sda, смонтированный в /mnt/disk_d.

Вот что произойдёт, если я попытаюсь запустить fsck, когда раздел смонтирован.


Если диск не только смонтирован, но и используется (например, диск, смонтированный в корневую файловую систему), то ошибка будет «/dev/nvme0n1 is in use».

Чтобы избежать этого, отключите раздел с помощью следующей команды (замените имя диска на ваше):

Тогда можно будет безопасно запускать fsck.


Понимание кодов выхода fsck

После запуска fsck он вернёт код выхода. Эти коды можно увидеть в руководстве по fsck, запустив:

Описание кодов выхода fsck:

Флаг -y означает автоматически отвечать «да» на любые запросы от fsck для исправления ошибки.

Точно так же вы можете запустить то же самое во всех файловых системах (с пропуском корневой файловой системы):

Как запустить fsck на корневом разделе Linux

В некоторых случаях вам может потребоваться запустить fsck в корневом разделе вашей системы. Поскольку вы не можете запустить fsck, пока раздел смонтирован, вы можете попробовать один из следующих вариантов:

  • Принудительно использовать fsck при загрузке системы
  • Запустите fsck в режиме восстановления

Мы рассмотрим обе ситуации.

Как принудительно проверить диск с помощью fsck при загрузке системы

Это относительно легко выполнить, единственное, что вам нужно сделать, это создать файл с именем forcefsck в корневом разделе вашей системы. Используйте следующую команду:

Затем вы можете просто принудительно перезагрузить или запланировать перезагрузку системы. Во время следующей загрузки будет выполнена проверка диска командой fsck. Если время простоя критично, рекомендуется тщательно его спланировать, поскольку, если в вашей системе много используемых inode, выполнение fsck может занять дополнительное время.

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

Если это так, вы можете удалить его, чтобы избежать появления fsck при каждой загрузке системы.

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

Для запуска fsck в режиме восстановления требуется ещё несколько шагов. Сначала подготовьте вашу систему к перезагрузке. Остановите все критически важные службы, такие как MySQL/MariaDB и т. д., а затем введите.

Во время загрузки удерживайте нажатой клавишу Shift, чтобы отобразилось меню grub. Выберите Advanced options («Дополнительные параметры»).


Затем выберите Recovery mode («Режим восстановления»).


В следующем меню выберите «fsck».


Вас спросят, хотите ли вы перемонтировать / файловую систему. Выберите Yes («да»).


Вы должны увидеть нечто подобное.


Затем вы можете вернуться к нормальной загрузке, выбрав Resume («Возобновить»).


Заключение

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

Исправляем ошибку: UNEXPECTED INCONSISTENCY RUN fsck MANUALLY

/dev/sda1: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.

Полностью ее текст выглядел так:

fsck from util-linux 2.26.2
/dev/sda1 contains a file system with errors, check forced.
/dev/sda1: Inodes that were part of a corrupted orphan linked list found.
/dev/sda1: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
(i.e., without -a or -p options)
fsck exited with status code 4
The root filesystem on /dev/sda1 requires a manual fsck
Busybox v1.22.1 (Ubuntu 1:1.22.0-15ubuntu1) built in shell (ash)
Enter 'help' for a list of built-in commands.
(initramfs) _

Предварительные действия

Хорошим решением будет перед следующим пунктом - сделать клон диска с данными (например с помощью clonezilla live cd), чтобы в случае, если команда fsck отработает неверно - иметь возможность их как-нибудь восстановить. И осуществлять все описание ниже действия уже с клонированным диском, чтобы с случае проблем, просто вернуть на место старый диск или же передать его тому, кто сможет восстановить данные.

Решение проблемы

Как видно из текста ошибки, проблема в том, что команд fsck не смогла корректно отработать в автоматическом режиме. Для устранения ошибки, необходимо запустить эту команду в ручном режиме. Для этого в консоли набираем:

/dev/sda1 - это тот раздел, проблемы с которым показаны в тексте ошибки "The root filesystem on /dev/sda1 requires a manual fsck"
После запуска этой команды, будут выводится различные предложения с исправлением обнаруженных ошибок, на каждом пункте необходимо будет нажать клавишу y на клавиатуре. Либо один раз нажать клавишу a и тогда все обнаруженные ошибки будут автоматически исправлены. После окончания работы fsck, необходимо попробовать перезагрузить компьютер и проверить, что ошибок больше нет и все функционирует как следует.

Оригинал: How to Use ‘fsck’ to Repair File System Errors in Linux
Автор: Marin Todorov
Дата публикации: 1 октября 2018 года
Перевод: А. Кривошей
Дата перевода: июль 2019 г.

Файловые системы отвечают за организацию хранения данных. Так или иначе, со временем файловая система может быть повреждена и некоторые ее части могут быть недоступны. Если ваша файловая система имеет такое несоответствие, рекомендуется проверить ее целостность.

Это можно выполнить с помощью системной утилиты fsck (file system consistency check). Эта проверка может быть выполнена автоматически во время загрузки или запущена вручную.

Когда нужно использовать fsck в Linux

Существуют разные сценарии, когда вам понадобится запустить fsck. Вот несколько примеров:

Система не загружается.
Файлы в системе поврежденны (часто вы можете увидеть ошибку ввода/вывода).
Подключенный диск (включая флэшки/SD-карты) не работает должным образом.

Опции fsck

Команда Fsck должна быть запущена с привилегиями суперпользователя (root). Вы можете использовать ее с разными аргументами. Их использование зависит от вашего конкретного случая. Ниже вы увидите некоторые из наиболее важных опций:

-A - используется для проверки всех файловых систем. Список берется из /etc/fstab.
-C - показывать индикатор выполнения.
-l - блокирует устройство, чтобы гарантировать, что никакая другая программа не попытается использовать раздел во время проверки.
-M - не проверять смонтированные файловые системы.
-N - только показывать, что будет сделано - не делать никаких реальных изменений.
-P - если вы хотите проверять файловые системы параллельно, включая корневую.
-R - не проверять корневую файловую систему. Это полезно только вместе с ‘-A‘.
-r - предоставить статистику для каждого проверяемого устройства.
-T - не показывает заголовок.
-t - исключительно указать типы файловых систем, которые будут проверяться. Типы могут быть разделены запятыми.
-V - предоставить описание того, что делается.

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

Чтобы запустить fsck, вам нужно убедиться, что раздел, который вы собираетесь проверить, не смонтирован. Для этой статьи я буду использовать мой второй диск /dev/sdb, смонтированный в /mnt.

Вот что произойдет, если я попытаюсь запустить fsck на смонтированном разделе.

Запуск fsck на смонтированном разделе

Чтобы избежать этого, размонтируйте раздел с помощью команды:

Теперь fsck можно запустить безопасно.

Запуск fsck на разделе Linux

Понимание кодов выхода fsck

После запуска fsck она вернет код выхода. Эти коды можно увидеть в руководстве fsck, выполнив:

Исправление ошибок файловой системы Linux

Флаг -y автоматически даёт ответ "да" на любые запросы от fsck для исправления ошибок.

Точно так же вы можете запустить команду на всех файловых системах (без корневой):

Как запустить fsck в корневом разделе Linux

В некоторых случаях вам может потребоваться запустить fsck в корневом разделе вашей системы. Поскольку вы не можете запустить fsck на смонтированном разделе, вы можете попробовать один из следующих вариантов:

1. Принудительно использовать fsck при загрузке системы
2. Запустить fsck в режиме восстановления

Мы рассмотрим обе ситуации.

Принудительная проверка корневой файловой системы с помощью fsck при загрузке системы

Это относительно легко выполнить, единственное, что вам нужно сделать, это создать файл с именем forcefsck в корневом разделе вашей системы. Используйте следующую команду:

Во время следующей загрузки будет выполняться fsck. Если время простоя является критическим, рекомендуется тщательно спланировать эту проверку, так как если в вашей системе много используемых inode, fsck может занять некоторое, довольно значительное время.

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

Если он есть, вы можете удалить его, чтобы избежать запуска fsck при каждой загрузке системы.

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

Запуск fsck в режиме восстановления требует еще нескольких шагов. Сначала подготовьте систему к перезагрузке. Остановите все важные службы, такие как MySQL/MariaDB и т. д., а затем перезагрузите компьютер.

Во время загрузки удерживайте нажатой клавишу Shift, чтобы отобразилось меню grub. Выберите «Advanced options».

Дополнительные параметры Grub

Затем выберите «Recovery mode».

Выберите Linux Recovery Mode

В следующем меню выберите «fsck».

Выберите утилиту fsck

Вас спросят, хотите ли вы перемонтировать вашу корневую файловую систему. Выберите «yes».

Подтвердите Root Filesystem

Вы должны увидеть что-то похожее на это.

Запуск проверки файловой системы fsck

Затем вы можете вернуться к нормальной загрузке, выбрав «Resume».

Выберите Normal Boot

Заключение

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

введите описание изображения здесь

Фрагмент journalctl -xb (что я считаю неправильным, он был хотя бы красным):

Проигнорировали другие ошибки, такие как: сбой зонда ACPI PCC. NVIDIA не пропатентованный и т. Д.

РЕДАКТИРОВАТЬ: я могу получить доступ к своему компьютеру, нажав Ctrl + D , но это раздражает.

Вы могли бы бежать fsck из Ubuntu Live.

  1. Включи свой компьютер. Загрузитесь с Ubuntu Live DVD/USB.
  2. После загрузки откройте терминал, нажав Ctrl + Alt + T

В терминале запустите:

fdisk сообщу какой у вас раздел / (корень) называется. В этом вопросе это /dev/sdb1 ,

Затем вы должны продолжить, запустив:

Если umount команда жалуется, что sdb1 "не смонтирован", это не проблема. Мы хотели, чтобы это было "не установлено":).

Удалить DVD / USB. Снова включите компьютер, чтобы загрузиться с SSD.

Я не знаю, решили ли вы свою проблему. Что я сделал, это:

Затем удалите то, что вы там добавили sdb1 и затем запустите:

Он говорит, что он поврежден, так что я не знаю, что об этом, но я надеюсь, что это может помочь кому-то, кто не может запустить свой Linux.

У меня просто был случай с аварийным режимом. В моей ситуации я следовал руководству по установке, в котором предлагалось отредактировать некоторые параметры для моих точек монтирования в /etc/fstab , Удалив лишние опции, мой сервер перезагрузился без проблем.

Я использую Windows 10 и систему двойной загрузки Ubuntu 16.X.

Это исправляет проблему аварийного запуска Ubuntu.

Ответы Хушбу Рани и Кагана Арслана привели меня к окончательному решению.

В Windows 10 по умолчанию включена функция быстрой загрузки, которая, когда пользователь обычно выключается с помощью кнопки "выключить" или кнопки питания на компьютере, фактически сохраняет работающее ядро ​​и некоторые другие системные компоненты на жесткий диск, аналогичный в спящий режим после выхода из системы. Это также заставляет Windows "блокировать" раздел тем или иным способом, чтобы предотвратить повреждение данных, случайное или злонамеренное. Это означает, что Ubuntu не может смонтировать раздел Windows во время запуска.

В моем случае у меня есть записи для раздела Windows в / etc / fstab, поэтому Ubuntu не загружается.

Решение состоит в том, чтобы загрузиться в Windows, отключить "быструю загрузку", а затем нормально завершить работу. Теперь проблема должна быть решена навсегда!

Из ссылки, которой я поделился ранее, отключите быструю загрузку в Windows следующим образом:

Читайте также: