Загрузка Slackware linux 12.2, установленной совместно с Puppy, с помощью GRUBНе касаюсь в данном howto вопросов разметки диска, создания разделов и прочего. Скажу лишь, что у меня Slackware установлен на sda1 (grub= hd(0,0)). Раздел форматирован в ext3 с live-cd Puppy, затем я поставил на него Слаку и перезагрузился снова с Live-cd Puppy/
В том же разделе в папке boot присутствует папка с Puppy PU1B6 и непосредственно grub (образ Puppy распаковать в папку PU1B6), об установке GRUB с компакта речь шла выше в отдельной статье.
Установка GRUB. В качестве загрузчика Slackware использует LILO. По некоторым причинам мне понадобилось сменить LILO на GRUB, и я обнаружил, что рекомендуемый разработками способ установки - создание загрузочной дискетки и запуск GRUB с нее - не срабатывает. Возможно, GRUB'у не понравилось файловая система ReiserFS - не знаю. Есть и другой способ - с помощью grub-install, но о нем в руководстве к GRUB решительно сказано как об устаревшем и ненадежном.
Я порылся в интернете и нашел средний путь:
mkdir /boot/grub/
cd /boot/grub
cp /usr/local/share/grub/i386-pc/* .
touch menu.lst
Файл
menu.lst будет содержать наше загрузочное меню. Подробно о нем можно прочесть в info grub. У меня сейчас он выглядит так:
# Grub Configuration File
#splashimage=(hd0,0)/boot/linuxinside.xpm.gz
splashimage=(hd0,0)/boot/biosplash.xpm.gz
#splashimage=(hd0,0)/boot/colors.xpm.gz
#splashimage=(hd0,0)/boot/DigitalAnGeL.xpm.gz
#splashimage=(hd0,0)/boot/zion.xpm.gz
foreground=ffffff
background=03bc19
configfile /boot/grub/menu.lst
timeout=10
title PuppyRus-1B6
root (hd0,0)
kernel /PU1B6/vmlinuz psubdir=PU1B6
initrd /PU1B6/initrd.gz
boot
title SlackWare12.2
root (hd0,0)
kernel /boot/vmlinuz root=/dev/sda1
boot
title Recovery Console of Windows XP
root (hd0,2)
makeactive
chainloader /cmldr
title goto Windows menu
root (hd0,2)
makeactive
chainloader +1
title reboot
savedefault --wait=2
reboot
Теперь запускаем GRUB и вводим следующие команды:
root (hd0,0) # Раздел диска, на котором размещены файлы GRUB
setup (hd0) # Установка GRUB в загрузочный сектор первого жесткого диска
quit
После перезагрузки - видим меню GRUB.
Примечание. Обратите внимание на параметр
kernel /boot/vmlinuz root=/dev/sda1Без него будет
kernel panic