• Авторизация


Grub2. Затравочка :) 31-10-2009 00:49 к комментариям - к полной версии - понравилось!


Хотя  все умеют читать новости(или нет?), дам пару ссылок:

Релизнотсы GRUB 1.97  здесь, полный список изменений расположен здесь.

Если говорить в кратце,то:

 

  • Поддержка скриптов, в частности циклов, условий, переменных и функций
  • Графический интерфейс
  • Динамическая подгрузка модулей, позволяющая расширять функционал не на этапе сборки, а прямо во время выполнения
  • Переносимость на разные архитектуры
  • Интернационализация
  • Настоящее управление памятью, делающее GNU GRUB более гибким
  • Модульный, иерархичный, объектно-ориентированный фреймворк для файловых систем, файлов, устройств, дисководов, терминалов, команд, таблиц разделов и загрузчиков операционных систем
  • Кроссплатформенная установка, позволяющая установить GRUB с другой архитектуры
  • Безопасный режим для трудных случаев. Stage 1.5 ликвидирована
  • Исправление ошибок, которые были допущены при проектировании GRUB Legacy, и не могли быть исправлены из-за требований обратной совместимости. Например, способ нумерации разделов

Лично у меня первым делом возникло несколько вопросов:

 

1.Как редактировать меню?

По привычке лезем в /boot/grub и ищем там menu.lst... Не ищите,его там нет. Зато есть grub.cfg,который впрочем гласит

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/update-grub using templates
# from /etc/grub.d and settings from /etc/default/grub
#

То есть, руками его править можно, но это не по правилам.
По правилам, меню теперь генерируется автоматически, на основе скриптов, лежащих в /etc/grub.d и настроек из конфига /etc/default/grub
Поискав, описание скриптов, находим файл /etc/grub.d/README, который проливает луч света на хитрое устройство нового загрузчика. Мы узнаём, для чего нужны префиксы в именах скриптов:

  • 00_*: Зарезервирован для 00_header
  • 10_*: Загрузочные записи
  • 20_*: Сторонние программы (например, memtest86+)

 

Можно посмотреть сами скрипты, написанные на обычном shell-языке. Они не должны вызвать особых затруднений. Эти скрипты просто ищут в вероятных директориях скомпилированные ядра и образы init.rd, соответственно.

Если вы задумаете скомпилировать ядро самостоятельно, всё будет предельно просто: воспользовавшись соответствующим руководством, вы получите deb-пакет. При установке он положит всё по местам и запустит обновление загрузчика. Когда скрипты отработают, в /boot/grub/grub.cfg будет обновлённое меню с новым ядром. Без единого редактирования конфигов.

 

2.Так как на второй машине у меня помимо linux winxp стоит,возник вопрос как его добавить в меню граба..

# nano /etc/grub.d/11_Windows (файл создатся если отсутствует)

Добавляем в файл:

#! /bin/sh -e
echo "Adding Windows" >&2
cat << EOF
menuentry "Windows XP" {
set root=(hd0,1)
chainloader +1
}
EOF

Обратите внимание на set root=

So under new GRUB2:
Windows  on:
First partition (/dev/sda1):                                 root=(hd0,1)
Extended First partition (/dev/sda5):            root=(hd0,5)
Extended Second partition (/dev/sda6):       root=(hd0,6)

 

Сохраняем, выставляем права:

# chmod a+x /etc/grub.d/11_Windows

Теперь обновляем конфиг:

# update-grub2

Всё. #reboot

 

 

3.И Последним меня заинтересовало как поставить splash:

# nano /etc/grub.d/05_debian_them

Ищем строку for i in {/boot/grub,/usr/share/images/desktop-base}/moreblue-orbit-grub.{png,tga}

меняем на:

for i in {/boot/grub,/usr/share/images/desktop-base,/usr/share/images/grub}/Images.{png,tga}

где images - имя вашего изображения.

Сохраняем.Обновлем конфиг:

# update-grub

 

 

 

вверх^ к полной версии понравилось! в evernote


Вы сейчас не можете прокомментировать это сообщение.

Дневник Grub2. Затравочка :) | myhost - Линукс in use | Лента друзей myhost / Полная версия Добавить в друзья Страницы: раньше»