Собираем
информацию
по крупицам

Linux: как перестать удивляться, и начать работать

Grub - как восстанавливаться в rescue mode
27-11-2011
21:55:15

В Grub Rescue Mode доступно очень немного команд. И поэтому восстановление происходит следующим образом: сначала нужно всеми силами попытаться подгрузить все модули, чтобы стала доступна вся функциональность Grub, а затем уже запуститься с нужного раздела будет легко.

 

Как известно, Grub состоит из двух частей.

 

Первая часть записана в MBR диска. Она и содержит базовую функциональность, то есть в ней есть консоль в rescue mode и ничего больше. В rescue mode нет даже команд загрузки системы с нужного раздела. Поэтому-то и нужно вначале определить, на каком разделе находится вторая часть груба (она лежит в каталоге /boot/grub), подгрузить недостающие модули. И только потом можно будет дать команду запуска с нужного раздела.

В rescue mode доступно всего четыре команды:

 

ls
set
unset
insmod

 

Вначале следует дать команду:

 

ls

 

В ответ она выведет, например, следующее:

 

(hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1) (hd1) (hd1,msdos2) (hd1,msdos1)

 

По непонятным причинам, в данном примере Grub даже не понимает, какие файловые системы находятся на разделах дисков, и почему-то их считает как msdos.

Нам нужно постараться угадать, какие диски мы видим. В данном случае видно два диска. Диск с индексом 0 содержит три раздела, диск с индексом 1 содержит два раздела. Я знаю, что мой линукс, который мне нужно загрузить, находится на диске с тремя разделами. Поэтому делаю вывод, что мне нужен hd0.

По непонятным причинам Grub называет разделы в обратном порядке. И становится непонятно, что имеется в виду под (hd0,msdos3) - первый раздел или третий? Тут можно выкрутиться, использовав синтаксис (hd0,1). Нужно помнить, что в Grub счет дисков начинается с 0, а счет разделов - с 1.

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

 

set prefix=(hd0,1)/boot/grub 
set root=(hd0,1)

 

Этими командами мы указываем использовать диск (hd0,1) для дальнейших команд. После чего нужно проверить, действительно ли на этом разделе есть то что нам нужно. Даем команду:

 

ls /boot/grub

 

... и если в ответ получаем список всех файлов в этой директории, то считам, что дальше все пойдет как по маслу.

Даем команды:

 

insmod ext2
insmod normal
normal

 

После чего Grub перейдёт в полнофункциональный режим. Он автоматически найдет все операционки, которые можно подгружать, и покажет своё Grub-меню. 

Дальнейшее восстановление обычно сводится к тому, чтобы загрузить нужный нам Linux, и в нем от рута дать команду:

 

grub-install /dev/sda

 

Эта команда переустановит в MBR код Grub-а таким образом, что он автоматически будет подхватывать свою вторую часть с раздела, с которого вы и загрузились.

 


К списку "Компьютерное"

Интересное на сайте


Платформа 1C:Предприятие » Как сделать выпадающий список в 1С v.8.2

Платформа 1С:Предприятие - прекрасная вещь. Платформа хорошо спроектирована именно для своей предметной области, а большего, впринципе, и не требуется...


Web - разработка » Первичная настройка TinyMCE. Маленькие хитрости.

Разобъем настройку TinyMCE на несколько шагов. Обычно нужно сделать следующее:   Добиться, чтобы текст внутри редактора TinyMCE отбражался согла...


Штучки-дрючки » Самодельный диафильм

Недавно я нашел в чулане диапроектор и коробку с диафильмами, которые много лет назад засунул на самую дальнюю полку. Увидев эти коробки, я тут же всп...

RSS подписка

Подпишитесь на новости сайта по RSS


О, смотри-ка какое хорошее место. Дайте два!

Внимание!

На этом сайте разрабатывается программа MyTetra и её родственные проекты.

Доступны к просмотру следующие базы знаний:

База Xintrea (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)

База Rarrugas (1, 2)

База Balas

База YellowRaven

База Yurons

База Lesnik757

База Shandor

База Sirrichar

 

Подробности на странице MyTetra Share.

 WebHamster.Ru
 Домик любопытного хомячка
Яндекс индекс цитирования
Почтовый ящик