среда, 19 ноября 2014 г.

Локальная загрузка в Linux без пароля ( single user mode )

Предыстория:
    Позвонил вечером коллега. Сказал, что не загружается компьютер на объекте. А утром 48-часовой тестовый прогон и всё должно обязательно работать. У него на объекте уже была ночь. С собой только ноут с виндой и загрузочной флешки с линуксом у него нет. В ходе обсуждения выяснилось, что на проблемном компьютере убился файл /lib/security/pam_unix.so - который отвечает за авторизацию. Задача была скопировать на данный комп файл со "здорового" компьютера. Но для этого нужен root-доступ.
Итак, нужно загрузиться локально ( имея физический доступ к компьютеру ), под пользователем root. Следовательно нужно загрузиться в Single User Mode.
В меню Grub данной опции на компьютере нет.



Решение:
Необходимо в меню загрузки Grub нажать e ( переходим в режим редактирования загрузки ).


Далее выбираем второй пункт, который начинается на kernel.


Опять нажимаем e ( переходим в режим редактирования выбранного пункта ).

Дописываем в конце строки " 1" ( пробел и единицу).


Нажимаем Enter ( сохранит изменения для данной загрузки, при следующей загрузке этих изменений уже не будет ). Мы переместимся в предыдущее меню команд загрузки.
Нажимаем b ( загружаемся согласно заданным командам ).


Шпаргалка:
1) В меню загрузки grub нажимаем e.
2) В меню команд grub выбираем kernel и нажимаем e.
3) Дописываем в конец команды " 1" ( пробел и единицу ).
4) Нажимаем Enter.
5) В меню команд grub нажимаем b.

Объяснение зачем эта заметка:
В интернете описаны различные команды для загрузки grub в ручную. Но в данном случае они не подходили. В частности find /boot/grub/stage1 регулярно возвращало Error 15: File not found. Оказалось что для этой версии grub ( 0.97 ) надо было искать так: find /grub/stage1. Дальше команда kernel тоже ругалась, т.к. я не мог точно указать полное имя файла /vmlinuz.
Ну и наконец проблемы initrd - теже пути файлов.
К тому же в процессе гугления я не сразу понял что единичку надо дописывать именно в kernel, а не в initrd. Вообщем описанный путь, для меня легче всего и не зависит ( теоретически ) от версии grub.

Комментариев нет:

Отправить комментарий