Здравствуйте, уважаемые читатели моего блога!

Пока я был в отпуске, у меня появилось время для написания новых статей, поэтому я с удовольствием продолжаю делиться с Вами опытом устранения типовых проблем при эксплуатации операционной системы Astra Lunux.

И сегодня мы поговорим о проблеме повреждения файловой системы. Выглядеть это может следующим образом — компьютер зависает, пользователь перезагружает его «с кнопки» и система перестаёт загружаться.

Если составить рейтинг среди проблем, которые я устранял в своей практике, эта займёт первое место по частоте случаев. Дело в старом парке компьютеров и частом отключении электроэнергии — к сожалению устранить её без соответствующих финансовых ассигнований невозможно.

В старых версиях операционной системы (например Astra Linux SE 1.5) к проблеме повреждения файловой системы добавлялась проблема с временем из будущего — это когда файловая система была создана, например, в 2059 г. из-за ошибки установленной даты. Потом кто-то меняет время на актуальное, и система больше не загружается. Неприятная проблема, которая устранена из коробки в Astra Linux SE 1.6 и старше. Если Вы столкнулись с данной проблемой, эта статья также поможет её решить.

Спонсор сегодняшнего наглядного пособия — мой коллега из другого филиала. Прислав мне пару фотографий, он попросил помощи в решении проблемы.

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

Итак, на экране с загрузкой появляется сообщение:

fsckd-cancel-msg: Press Ctrl+C to cancel all filesystem checks in progress

Если нажать ESC, вы сможете увидеть следующие строки:

You are in emergency mode. After logging in, type "journalctl -xb" to view system logs, "systemctl reboot" to reboot, "systemctl default" or ^D to try again to boot into default mode.
Cannot open access to console, the root account is locked. See sulogin(8) man page for more detalis.
Press Enter to continue.

Я рекомендую перезагрузить компьютер и на экране загрузки (три точки на чёрном фоне) сразу нажать ESC, чтобы увидеть, какое блочное устройство не прошло проверку fsck.

Порядок действий аналогичен сбросу пароля, только файловые системы так и остаются в режиме только для чтения.

Зайти в однопользовательский режим проще всего через grub, но если Вы забыли пароль, можно воспользоваться установочным диском. Если и диска у Вас нет, можно подключить диск с повреждённой файловой системой к другому компьютеру с ОС «Astra Linux» (например, вместо CD-ROM’a).

Подготовка к восстановлению файловой системы через GRUB.

Внимание!
Если логин и пароль от загрузчика не подходят, но есть установочный диск (или флешка) — пропустите данный раздел и руководствуйтесь «Подготовкой к восстановлению файловой системы с установочного носителя».

Для начала перезагрузим компьютер и дождёмся появления загрузчика (если загрузчик не появляется — попробуйте нажать ESC).

Выберем ядро generic и нажмём клавишу «e».

Выберите ядро generic и нажмите «e»

Введите логин и пароль от загрузчика Grub.

Введите логин и пароль

Найдите строку, начинающуюся на linux, и добавьте в её конец параметр init=/bin/bash — таким образом, после загрузки образа начальной загрузки будет запущена командная оболочка.

Пример отредактированной строки

Далее необходимо нажать F10.

В результате загрузки Вы получите доступ к командной строке, запущенной пользователем root. Файловая система находится в режиме «read only» — это нам и нужно.

Переходите к разделу «Восстановление файловой системы».

Подготовка к восстановлению файловой системы с установочного носителя.

Самое сложное, что Вам нужно сделать — это загрузиться с диска или флешки. Так как версии BIOS у всех разные, я не смогу описать точный порядок действий, единственное, что могу посоветовать – это нажать клавишу F12 и выбрать в перечне устройств CD/DVD-ROM или флеш-носитель. Если не работает, используйте Delete, F2 или F1.

Пример загрузочного меню

Вне зависимости от того, какая у Вас версия Astra linux SE – 1.5, 1.6, 1.7, нужно выбрать «Режим восстановления».

После появления «Лицензионного соглашения» сразу нажмите Ctrl + F2. Появится надпись:

Please press Enter to activate this console.

Нажмите Enter — система готова к восстановлению, переходим к следующему разделу.

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

Далее выполним команду fdisk, чтобы посмотреть, какие разделы присутствуют в системе (если Вы уже знаете проблемный раздел, команду можно не выполнять):

fdisk -l
Примерный вывод fdisk

Хочу отметить, что вывод fdisk я демонстрирую с виртуальной машины. Не нужно устанавливать реальные системы в один раздел (статья по установке операционной системы — ссылка).

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

fsck.ext4 -fy /dev/sda1

Если Вы новичок, можете выполнить команду выше ко всем разделам подряд из столбца «Устр-во» (ничего страшного не произойдёт). То есть Вы просто меняете /dev/sda1 с команды ваше на /dev/sda2 и нажимаете Enter, потом на /dev/sda3 и так далее (по числу разделов fdisk).

Если раздел в порядке, вывод будет следующего вида:

/dev/sda1: recovering journal
/dev/sda1: clean, 9140/2445984 files, 982985/9764864 blocks

А если раздел был повреждён, на экран будут выводиться строки (чем больше повреждение, тем больше строк). В самом конце появятся строки вида:

/dev/sda1: ***** FILE SYSTEM WAS MODIFIED *****
/dev/sda1: 9140/2445984 files (2.3 % non-contiguous), 982985/9764864 blocks

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

Если вы восстанавливали файловую систему используя GRUB — выполните команду:

exec init 5

Если вы восстанавливали файловую систему, используя установочный диск — просто перезагрузите систему командой reboot.

После этого можно оценить масштабы бедствия — это может быть повреждённая учётная запись почты, слетевший профиль пользователя или служебные документы (вы же организовали резервное копирование? 🙂 )

К слову, если повредился профиль Вы можете восстановить его по этой статье — ссылка.

Всех благ Вам и до новых встреч.

Добавить комментарий

Ваш e-mail не будет опубликован.