вторник, марта 16, 2010

Загрузчик Grub.

В Debian Lenny по умолчанию используется загрузчик Grub, но при желании можно установить и Lilo, как при установке (расширенный режим), так и проинсталировать после. Grub, более современный, гибкий и настраиваемый загрузчик, поэтому наврядли у вас появиться потребность или желание заменить его на Lilo.

Что нужно знать о загрузчике прежде всего? Загрузчик это программа, которая записывается в первую загрузочную область диска и при включении компьютера инициализируется после прохождения тестов оборудования BIOS. Её прямое назначение найти на разделах операционную систему и передать функции загрузки её программе. Grub понимает множество современных файловых систем и ОС, для нас достаточно того, что он работает с ext3/4, со всеми fat, ntfs и в состоянии распознать Windows и Linux. Следующий момент, Windows использует свой загрузчик и поэтому, если устанавливать его после установки Linux на один жёсткий диск, то он перепишет загрузочную область диска и запуск Linux станет не возможным, именно поэтому я рекомендовал ранее устанавливать в таких случаях сначала Windows, а потом Linux, тогда Grub переписав загрузочную область диска будет в состоянии отловить установленную Windows и Linux.

Grub можно дополнительно конфигурировать, передавать различные команды ядру, как в процессе загрузки, так и при правке конфигурационного файла, описывать все эти возможности нет смысла, вы можете найти массу документации по этим вопросам, начните с man. Тем более, что большинству рядовых пользователей и не нужно знать больше того, что я написал. Но один случай мы рассмотрим, ту ситуацию, когда вы установили Windows после установки Linux и лишили себя таким образом возможности загружаться в Linux обычным способом, в этом случае нет необходимости переустанавливать систему (хотя это безусловно поможет).

Для востановления загрузчика Grub нам понадобиться любой LiveCD с дистрибутивом Linux. Необходимо загрузиться с него и выполнить следующее:
# mkdir /old
# mkdir /old/dev
# mount /dev/sdaN /old
Мы создали каталоги /old и /old/dev и смонтировали нашу корневую файловую систему с установленным Linux в каталог /old.
# mount --bind /dev /old/dev
Так мы подмонтировали каталог /dev.
Теперь нам нужно подменить корневую файловую систему LiveCD на нашу, чтобы он работал с ней как со своей:
# chroot /old
Остаётся только установить Grub:
# /sbin/grub-install /dev/sda
Так мы записали его в главную загрузочную область диска и после перезагрузки он сможет определить все операционные системы установленные на вашем ПК.

До второй версии Grub, которая используется в Lenny, не может автоматически отловить все ОС, которые установленны на отдельных жёстких дисках, а ловит только те, что установлены на одном, поправить это можно прописав загрузку вручную. Новая версия способна отловить все ОС на всех жёстких дисках - это было установлено мной при запуске тестовой версии Squeeze.

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

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