суббота, 6 октября 2012 г.

Добавление Windows в меню загрузки Grub2

При очередной загрузке компьютера было обнаружено отсутствие пункта загрузки Windows в меню Grub. Встал вопрос - как его туда добавить.

После недолгих поисков было выяснено, что в дистрибутиве установлен Grub2. Как известно этот загрузчик не позволяет напрямую редактировать файл конфигурации (вообще-то позволяет, просто при очередном обновлении он его перезапишет) - он создает его автоматически с помощью скриптов, расположенных в каталоге /etc/grub.d. Посмотрим, что там есть:

# ls /etc/grub.d

00_header
10_linux
20_linux_xen  
30_os-prober
39_memtest86+
40_custom
41_custom

Скрипты из этого каталога выполняются по порядку от меньшего номера к большему.

Скрипт 00_header считывает настройки из файла /etc/default/grub. Там содержатся общие настройки вроде разрешения экрана при загрузке, фоновой картинки и т.п.

Скрипт 10_linux проверяет какие есть ядра linux и добавляет их в меню загрузки. 20_linux_xen - специфический скрипт для систем, работающих с XEN виртуализацией.

Скрипт 30_os-prober проверяет наличие других операционных систем, таких как Windows (требует наличия установленного  sys-boot/os-prober), и добавляет их в меню.

Скрипт 39_memtest86+ добавляет в меню пункты для проверки памяти. Ну а номера 40 и 41 предназначены для дополнительных пользовательских скриптов.

Поскольку все скрипты на месте, то нам осталось только сгенерировать конфигурационный файл. Делается это командой:


# grub-mkconfig -o /boot/grub/grub.cfg

которая пересоздаст файл /boot/grub/grub.cfg. Это тот самый файл, который можно отредактировать и вручную, но прийдется это делать после каждого обновления. 

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

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