GRUB, настройка (запуск Windows со 2-го логического раздела)

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

Шепот
Сообщения: 16
ОС: Gentoo 2007.0

GRUB, настройка

Сообщение Шепот »

Доброго времени суток. Не так давно передо мной встала проблема об установке ХР в качестве дополнительной операционной системы. Система была установлена в раздел hda2, после чего был восстановлен загрузчик (GRUB) ubunt'ы, но прописав в /boot/grub/menu.lst ХР она все равно не запускалась при загрузке из меню граба, хотя её пункт там висел. Почитав мануал к GRUB'у я нашел следующее:

Код: Выделить всё

Another problem arises if you installed more than one set of DOS/Windows onto one disk, because they could be confused if there are more than one primary partitions for DOS/Windows. Certainly you should avoid doing this, but there is a solution if you do want to do so. Use the partition hiding/unhiding technique.

If GRUB hides a DOS (or Windows) partition (see section hide), DOS (or Windows) will ignore the partition. If GRUB unhides a DOS (or Windows) partition (see section unhide), DOS (or Windows) will detect the partition. Thus, if you have installed DOS (or Windows) on the first and the second partition of the first hard disk, and you want to boot the copy on the first partition, do the following:


grub> unhide (hd0,0)
grub> hide (hd0,1)
grub> rootnoverify (hd0,0)
grub> chainloader +1
grub> makeactive
grub> boot


но и после этого система не стала грузится,а лишь стала выдавать ошибку о неверных инструкциях... Кто-нибудь сталкивался с данной проблемой?
Интересно еще то, что посл выполнения команды hide (hd0,0) ГРАБ прятал первый раздел, даже от самого себя и поэтому он не загружался при старте системы. Единственным выходом было загружать систему с LIVE CD и оттуда из терминала выполнить unhide (hd0,0)...Данный факт, а так же его обнаружение потратили мне уйму нервов и времени...
Спасибо сказали:
Аватара пользователя
Black
Сообщения: 1104
ОС: ArchLinux

Re: GRUB, настройка

Сообщение Black »

Параметы hide/unhide/makeactive нужны для dos...windows98. Для winxp хватит вот этого:

Код: Выделить всё

title Necro$oft Window$
rootnoverify (hd0,1)
chainloader +1

Фишка в том, что в конфиге виндового ntldr (c:\boot.ini) прописана такая строчка:

Код: Выделить всё

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional RU" /noexecute=optin /fastdetect

При выполнении hide (hd0,0) раздел hda2, он же partition(1), становится hda1 или partition(0). ntldr пытается грузить систему с partition(1), что у него благополучно и не получается :-)
Компьютер служит для решения тех проблем, которых до изобретения компьютера не существовало
Спасибо сказали:
Шепот
Сообщения: 16
ОС: Gentoo 2007.0

Re: GRUB, настройка

Сообщение Шепот »

Нет, и это не помогло, при выборе пункта Windows пишет:

Код: Выделить всё

Error 13: Invalid or unsupported executable format
Спасибо сказали:
Eraser
Сообщения: 224
ОС: Gentoo Linux

Re: GRUB, настройка

Сообщение Eraser »

А что у вас на /dev/hda1 находится?
Винде нужен доступ к /dev/hda1 для загрузки, ну или загрузочная дискета, как у меня :)

Вот образ (пришлось переименовать в .log)

Вы его командой dd if=boot.log of=/dev/fd0 запишите на дискету, и подправьте boot.ini

Перед загрузкой винды вставьте дискету в дисковод.
Не забудьте сделать в BIOS так, чтобы загрузка с дискеты шла первой

ЗЫ Присоединяюсь к вопросу, как сделать то же, но без дискеты
Спасибо сказали:
Шепот
Сообщения: 16
ОС: Gentoo 2007.0

Re: GRUB, настройка

Сообщение Шепот »

Опять нет, винда не загружается, пишет, что "железная" проблема, чего-то не хватает на разделе. У меня ХР стоит в папке windows.0, может в этом проблема... И еще вопрос, может ли LILO разрешить данную ситуацию?
Спасибо сказали:
Аватара пользователя
Xlight
Сообщения: 139
ОС: FreeBSD-8.1

Re: GRUB, настройка

Сообщение Xlight »

Дискеты ... брр ... :ph34r:
Ну не смешно ли?
Спасибо сказали:
Аватара пользователя
Black
Сообщения: 1104
ОС: ArchLinux

Re: GRUB, настройка

Сообщение Black »

Шепот писал(а):
06.08.2007 11:47
Нет, и это не помогло, при выборе пункта Windows пишет:

Код: Выделить всё

Error 13: Invalid or unsupported executable format

Это выдаёт не винда, а GRUB:
(info grub - Troubleshooting - Stage2 errors) писал(а):13 : Invalid or unsupported executable format
This error is returned if the kernel image being loaded is not
recognized as Multiboot or one of the supported native formats
(Linux zImage or bzImage, FreeBSD, or NetBSD).

Ни разу с таким не сталкивался, может grub как-то не так собран.
Для полного счастья хотелось бы увидеть вывод следующих команд:

Код: Выделить всё

fdisk -l /dev/hda
cat /boot/grub/menu.lst

И ещё: посмотрите на разделе с виндой файлы bootfont.bin, boot.ini, ntdetect.com, ntldr. Ещё неплохо было бы увидеть содержимое boot.ini.
А в lilo то же самое - вот так (в /etc/lilo.conf):

Код: Выделить всё

other=/dev/hda2
label=windows


P.S.: Не понял, зачем винде доступ к hda1? Код из MBR загружает код из начального сектора hda2, а тот уже запускает ntldr. В нашем случае из MBR таким же макаром грузится grub, который уже запускает код из hda2, а тот запускает ntldr. Короче, сам не понял что написал :-)
Компьютер служит для решения тех проблем, которых до изобретения компьютера не существовало
Спасибо сказали:
Eraser
Сообщения: 224
ОС: Gentoo Linux

Re: GRUB, настройка

Сообщение Eraser »

P.S.: Не понял, зачем винде доступ к hda1? Код из MBR загружает код из начального сектора hda2, а тот уже запускает ntldr. В нашем случае из MBR таким же макаром грузится grub, который уже запускает код из hda2, а тот запускает ntldr. Короче, сам не понял что написал :-)


Так это же винда. У нее загрузчик кривой был всегда. А зачем ей доступ нужен я не знаю. Я только знаю, что он нужен. Во как!
Спасибо сказали:
Шепот
Сообщения: 16
ОС: Gentoo 2007.0

Re: GRUB, настройка

Сообщение Шепот »

Это выдаёт не винда, а GRUB:

я знаю что GRUB, я имел ввиду, что когда я выбираю пункт под названием Windows

Код: Выделить всё

fdisk -l /dev/hda

/hda/ отсутствует в каталоге /dev/, соответственно команда не может быть выполнена

Код: Выделить всё

cat /boot/grub/menu.lst

Код: Выделить всё

default        0
timeout        10
hiddenmenu

title        Ubuntu, kernel 2.6.20-16-generic
root        (hd0,0)
kernel        /boot/vmlinuz-2.6.20-16-generic root=UUID=b17a00e0-b7c0-4b3e-a65e-ba320fa28213 ro quiet splash locale=ru_RU
initrd        /boot/initrd.img-2.6.20-16-generic
quiet
savedefault

title        Ubuntu, kernel 2.6.20-16-generic (recovery mode)
root        (hd0,0)
kernel        /boot/vmlinuz-2.6.20-16-generic root=UUID=b17a00e0-b7c0-4b3e-a65e-ba320fa28213 ro single
initrd        /boot/initrd.img-2.6.20-16-generic


title        Ubuntu, memtest86+
root        (hd0,0)
kernel        /boot/memtest86+.bin
quiet

title           Windows XP
rootnoverify    (hd0,1)
chainloader     +1

И ещё: посмотрите на разделе с виндой файлы bootfont.bin, boot.ini, ntdetect.com, ntldr. Ещё неплохо было бы увидеть содержимое boot.ini.

все файлы присутствуют, если что, вот они:

Код: Выделить всё

other=/dev/hda2
label=windows

вообще-то у меня нет LILO
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Спасибо сказали:
Аватара пользователя
Black
Сообщения: 1104
ОС: ArchLinux

Re: GRUB, настройка

Сообщение Black »

1. Почему нет /dev/hda? Должен быть. Но это пока не важно, т.к.
2. Ваш c:\boot.ini

Код: Выделить всё

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(3)\WINDOWS.0
[operating systems]
multi(0)disk(0)rdisk(0)partition(3)\WINDOWS.0="Microsoft Windows XP Professional RU" /noexecute=optin /fastdetect

partition(3) - это hda4, или (hd0,3)!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Компьютер служит для решения тех проблем, которых до изобретения компьютера не существовало
Спасибо сказали:
Шепот
Сообщения: 16
ОС: Gentoo 2007.0

Re: GRUB, настройка

Сообщение Шепот »

partition(3) - это hda4, или (hd0,3)!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

При выборе пункта Windows, GRUB передает управление загрузчику винды (насколько я понимаю). boot.ini был создан виндой в соответствии ее логикой, она загружалась с помощью этого boot.ini файла, до того как я восстановил загрузку убунты ГРАБом, маловероятно, что проблема в его содержимом... Тем более ошибка № 13 выдается GRUB'ом, т.е. он даже не успевает передать управление загрузкой... поправьте, если что не так...
Спасибо сказали:
Аватара пользователя
Black
Сообщения: 1104
ОС: ArchLinux

Re: GRUB, настройка

Сообщение Black »

Шепот писал(а):
09.08.2007 22:58
partition(3) - это hda4, или (hd0,3)!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

При выборе пункта Windows, GRUB передает управление загрузчику винды (насколько я понимаю). boot.ini был создан виндой в соответствии ее логикой, она загружалась с помощью этого boot.ini файла, до того как я восстановил загрузку убунты ГРАБом, маловероятно, что проблема в его содержимом... Тем более ошибка № 13 выдается GRUB'ом, т.е. он даже не успевает передать управление загрузкой... поправьте, если что не так...

Так-то оно так, но partition(3) - это не с проста. Для этого я и просил вывод fdisk. Винда - это хрень такая, куда она установилась можно понять только путём fdisk -l /dev/hda :-)
Попробуйте загрузиться с hd0,3 и, на всякий случай с hd0,2. А насчёт /dev/hda - может, у вас sata-диск? Тогда fdisk -l /dev/sda.
Компьютер служит для решения тех проблем, которых до изобретения компьютера не существовало
Спасибо сказали: