Как исправить неожиданные несоответствия в разделах Linux —

В некотором смысле, все несоответствия файловой системы являются неожиданными. На самом деле никто не хочет выходить и обнаруживать, что их файловая структура каким-то образом повреждена. Тем не менее, термин «неожиданная несогласованность» иногда может фактически отображаться как сообщение об ошибке определенного типа. Поскольку это сообщение об ошибке исходит от базовых инструментов GNU и Linux, к сожалению, можно ожидать, что большинство дистрибутивов будут обрабатывать его одинаково. Это, вероятно, правда, даже если они старше.

Теоретически вы можете также столкнуться с неожиданными несоответствиями в FreeBSD, NetBSD и других Unix-подобных операционных системах. Скорее всего, вы получите эти сообщения только при загрузке. Linux по умолчанию при запуске загружает вашу / файловую систему от любых нарушений, но это означает, что по какой-то причине она не смогла. Скрестив пальцы и выполнив простую команду fsck, возможно, все, что нужно для того, чтобы снова привести вашу файловую структуру в соответствие.

Использование fsck для исправления непредвиденных несоответствий

При загрузке компьютера вы можете получить сообщение об ошибке, в котором говорится, что «/ dev / sda1 содержит файловую систему с ошибками, принудительная проверка» или «/ dev / sda1: обнаружены inodes, которые были частью поврежденного списка потерянных ссылок». Обычно за ошибкой следует большое предупреждающее сообщение, которое выглядит примерно так: «/ dev / sda1: UNEXPECTED INCONSISTENCY; ЗАПУСТИТЕ fsck ВРУЧНУЮ », хотя точный файл и номер раздела устройства могут отличаться в зависимости от того, как вы установили Linux для начала.

Так как e2fsck или любая другая версия fsck, которую ваша система запускает при запуске системы, запускается с опцией -p или -a, чтобы просто префиксировать inode и искать сирот, сообщение об ошибке будет напоминать вам не делать этого. Пользователи Ubuntu могут быть помещены в оболочку busybox, в то время как другие могут обнаружить, что их система полностью зависла. Он ждет, чтобы они перезапустили его. Вы можете запустить проверку согласованности файловой системы из приглашения (initramfs) _, если оно вам предоставлено. Просто введите fsck / dev / sda1 или любой другой раздел, который вы могли видеть в предыдущем сообщении об ошибке. Не добавляйте параметр -a в команду, даже если вы привыкли делать это раньше.

Вы должны управлять вещами в настоящее время. Хотя вы можете добавить -c, чтобы проверить наличие плохих блоков, если вы опасаетесь, что это вызвано аппаратной ошибкой, это может немного замедлить ход событий и привести к зависанию, поэтому вы можете на некоторое время задержаться. Вы также можете добавить ключ -f для принудительного запуска fsck, если он этого не хочет, что, возможно, является лучшей идеей в этом случае. Обычно неожиданная ошибка несогласованности сама по себе вызывает проверку, но иногда какая-то нерегулярность препятствует этому. Хотя оболочка, в которой вы ранее работали, возможно, пыталась заставить вас напечатать help, чтобы увидеть дополнительные параметры, вам это не нужно. Вы можете запустить fsck -f /, а также fsck -f / dev / sda1, однако на случай, если поврежденный раздел и загрузочный раздел различаются. Вам нужно будет еще раз заменить имя и номер на фактический файл устройства раздела.

В большинстве случаев вы должны иметь root-доступ из этой подсказки, но по соображениям безопасности вы можете этого не делать. Используйте sudo перед любой командой fsck, которую вы пытаетесь выполнить, если вам кажется, что что-то не работает. Введите свой административный пароль, если его попросили.

Если вы не сможете просмотреть сравнительно примитивную оболочку busybox ash таким образом, вы можете загрузить меню GRUB, которое позволяет вам выбрать, какую операционную систему вы хотите запустить. Как правило, вы можете сделать это, нажав клавишу Esc при запуске. Как только вы окажетесь в меню GRUB, выберите «Дополнительные параметры», а затем выберите «Режим восстановления» в меню. Вам будет предоставлен выбор шаблонов доступа, и вам следует выбрать Root-доступ, когда вам будет предоставлен выбор.

Вы получите очень простую подсказку #. Несмотря на то, что он по-прежнему вполне работоспособен, это приглашение будет выглядеть довольно примитивно, если вы привыкли работать с bash или даже с оболочками tcsh в Linux. Введите fsck -f / и следуйте инструкциям после нажатия клавиши ввода, а затем введите fsck -f / dev / sda1 или любой другой файл устройства, который необходимо проверить позже. Вам может потребоваться запустить fsck более одного раза, как в предыдущем примере. Так как это скорее оболочка busybox, а не что-то более сложное, вы не сможете воспользоваться некоторыми тонкостями bash, такими как возможность перемещаться вверх и вниз по списку команд с помощью клавиш со стрелками. Просто повторите команды fsck, если вам нужно запускать их более одного раза. Технически это разновидность оболочки Almquist, на которой основан DASH, поэтому у вас может быть некоторый опыт работы с ней из Ubuntu.

Пользователи, загружающие свои системы из чего-то другого, кроме файловой системы ext #, конечно, должны будут заменить свою предпочтительную команду. В большинстве случаев fsck может без проблем вызвать fsck.f2fs, но поскольку fsck.xfs ничего не делает, вам нужно запустить xfs_repair или xfs_check без ключа -f. Это на самом деле другой вариант, когда дело доходит до этих команд, и вы всегда должны избегать этого.

Как только у вас снова появится загрузочная система, вы захотите заглянуть в каталог / lost + found. Вам, вероятно, понадобится root-доступ для этого. Все различные команды fsck используют этот каталог для перемещения поврежденных и потерянных файлов после того, как он их находит, так же, как chkdsk создает файлы .CHK при восстановлении поврежденных томов NTFS. Здесь вы можете найти потерянные файлы, представляющие личные документы, которые вы хотели бы восстановить. В зависимости от того, какую версию fsck вы использовали, имена этих файлов могут отличаться. Используйте команду file, чтобы выяснить, что они на самом деле.

Ссылка на основную публикацию
Adblock
detector