Снова про ntldr (возник затык)

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

Модератор: Bizdelnick

Iskan Der
Сообщения: 270

Снова про ntldr

Сообщение Iskan Der »

В общем, ситуация. Есть винт, подключенный к IDE-каналу матери (Asus P5GD1), линихом воспринимаемый как /dev/hda. На нем стояла ВинХР, потом поставил СуСе 9.2, установив загрузчик в MBR. Конфигурация вышла такая:
hda1 - NTFS - WinXP
hda2 - swap
hda3 - Ext3 - SuSe
hda4 - FAT32 - всякий хлам
Решив организовать загрузку средствами ntloaderа, перенес при помощи YaST загрузчик в /dev/hda3, дальше, как водится, сделал:

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

dd if=/dev/hda3 of=~/boot.lnx bs=512 count=1

После закинул этот этот файлик в С:\, поправил boot.ini, восстановил ВинХР-шную MBR, в общем все нормально заработало.
Теперь дальше - вернул в систему стоявший там ранее основной винт. Винт этот подключается к SATA, матплатой воспринимается как Third Master, причем при установке СуСи в машине он не присутствовал. Стоит на нем ВинХР, для которого хотелось также прикрутить загрузку линукса ntloader'ом. Итак, копирую ему в С:\ файлик boot.lnx, правлю boot.ini, пытаюсь загрузить линукс - не выходит: на экране появляется надпись GRUB и мигает курсор, больше ничего. Вопрос - можно ли как-то научить ntloader основной винды грузить линукс? Если да, то как?
Спасибо сказали:
Igor B.
Сообщения: 324

Re: Снова про ntldr

Сообщение Igor B. »

Iskan Der писал(а):
25.10.2005 17:44
В общем, ситуация. Есть винт, подключенный к IDE-каналу матери (Asus P5GD1), линихом воспринимаемый как /dev/hda. На нем стояла ВинХР, потом поставил СуСе 9.2, установив загрузчик в MBR. Конфигурация вышла такая:
hda1 - NTFS - WinXP
hda2 - swap
hda3 - Ext3 - SuSe
hda4 - FAT32 - всякий хлам
Решив организовать загрузку средствами ntloaderа, перенес при помощи YaST загрузчик в /dev/hda3, дальше, как водится, сделал:

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

dd if=/dev/hda3 of=~/boot.lnx bs=512 count=1

После закинул этот этот файлик в С:\, поправил boot.ini, восстановил ВинХР-шную MBR, в общем все нормально заработало.
Теперь дальше - вернул в систему стоявший там ранее основной винт. Винт этот подключается к SATA, матплатой воспринимается как Third Master, причем при установке СуСи в машине он не присутствовал. Стоит на нем ВинХР, для которого хотелось также прикрутить загрузку линукса ntloader'ом. Итак, копирую ему в С:\ файлик boot.lnx, правлю boot.ini, пытаюсь загрузить линукс - не выходит: на экране появляется надпись GRUB и мигает курсор, больше ничего. Вопрос - можно ли как-то научить ntloader основной винды грузить линукс? Если да, то как?


А грузишься ты с этого диска как? Поменяв порядок загрузки в БИОС-е? Не поплыла ли нумерция разделов? Какую адресацию устройств и партиций показывает какой-нибудь LiveCD?
Спасибо сказали:
Iskan Der
Сообщения: 270

Re: Снова про ntldr

Сообщение Iskan Der »

А грузишься ты с этого диска как? Поменяв порядок загрузки в БИОС-е?

Ну да, причем сделано довольно интересно: в соотв. разделе БИОС есть пункт Hard Drives, в котором оба винта значатся. Только тот, что выбран первым, попадает в список устройств Boot Priority (вместе с сидюком и флоповодом).
Не поплыла ли нумерция разделов? Какую адресацию устройств и партиций показывает какой-нибудь LiveCD?

Сам тоже думаю, что, возможно, в этом дело... Постараюсь в ближайшее время добыть какой-нить кнопикс и проверить.
Спасибо сказали:
Iskan Der
Сообщения: 270

Re: Снова про ntldr

Сообщение Iskan Der »

Так, пробовал грузиться с Knoppix 3.7 - это чудо по ходу вообще не видит SATA-диска. Однако грешу именно на то, что где-то что-то перепуталось после подключения еще одного диска. Жду предложений :)
---
Да, кстати, в самой СуСе SATA диск значится в списке устройств как /dev/sda (ни один из разделов не монтировал)
Спасибо сказали:
Iskan Der
Сообщения: 270

Re: Снова про ntldr

Сообщение Iskan Der »

Ну что, остались у кого еще идеи? Или может как-то можно СуСю восстановить? Уж больно влом переустанавливать..
Спасибо сказали:
Igor B.
Сообщения: 324

Re: Снова про ntldr

Сообщение Igor B. »

Iskan Der писал(а):
25.10.2005 20:38
Так, пробовал грузиться с Knoppix 3.7 - это чудо по ходу вообще не видит SATA-диска. Однако грешу именно на то, что где-то что-то перепуталось после подключения еще одного диска. Жду предложений :)
---
Да, кстати, в самой СуСе SATA диск значится в списке устройств как /dev/sda (ни один из разделов не монтировал)


А когда у тебя появляется строчка grub - он команды какие-то воспринимает? Или ты получаешь полный висяк? Если команды воспринимаются, то можно "наощупь" проверить и найти нужную партицию и посмотреть, куда она уползла. В мануале груб-а есть перечень команд.
Спасибо сказали:
Аватара пользователя
rolano
Сообщения: 845
Статус: еще один юзер FreeBSD
ОС: какая-то

Re: Снова про ntldr

Сообщение rolano »

Если сместилась нумерация партиций, то проблема должна быть решаема. У меня самого после смены схемы подключения винтов Линукс не грузился через ntldr, который по-прежнему стоял на первом винте. Правда, я вис не вначале, а в процессе - паника ядра. Решилось все просто - при загрузке lilo нужно было указать параметры boot=<загрузочный раздел> и root=<путь к корневой файловой системе>. Система загрузилась, я благополучно поменял в lilo.conf эти параметры по дефолту и выполнил lilo. Само собой, скопировал загрузчик для возможности загрузки через ntldr.
Есть ли такие параметры в grub - не знаю, но можно попробовать найти что-то похожее.
Я знаю только то, что ничего не знаю ... потому и обречен вечно учиться.
Спасибо сказали:
Iskan Der
Сообщения: 270

Re: Снова про ntldr

Сообщение Iskan Der »

Увы, но загрузчик, выдав надпись GRUB, благополучно висит :(
Впрочем, я тут разглядываю файлики device.map и menu.lst в /boot/grub и думаю, мож в них чего поменять? Например, device.map выглядит так:

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

(hd0) /dev/hda
(fd0) /dev/fd0

Если заменить hd0 на, скажем, hd1, он поймет, что надо второй винт искать? Соответсвенно, можно похожим образом поправить и menu.lst. Вопрос в том, как эти настройки применить с целью создания образа загрузчика для ntldr, и есть ли вообще в сказанном смысл :)
Спасибо сказали:
Аватара пользователя
rolano
Сообщения: 845
Статус: еще один юзер FreeBSD
ОС: какая-то

Re: Снова про ntldr

Сообщение rolano »

Почти наверняка замена в текстовиках ничего не даст. Для того, чтобы создать образ загрузчика, нужно запустить этот чертов grub. Может, лучше тебе поставить этот винт на место и почитать мануалы по grub? Ну или поставь lilo.
Я знаю только то, что ничего не знаю ... потому и обречен вечно учиться.
Спасибо сказали:
Iskan Der
Сообщения: 270

Re: Снова про ntldr

Сообщение Iskan Der »

Ставить lilo не очень хочется, конечно..
Кстати, в YaST еще нашел в конфигурировании загрузчика такой пункт, как порядок дисков - может оно на что-то повлиять? У меня там только /dev/hda значится
Спасибо сказали:
Аватара пользователя
rolano
Сообщения: 845
Статус: еще один юзер FreeBSD
ОС: какая-то

Re: Снова про ntldr

Сообщение rolano »

Я вообще не пользую внешние утилиты для снятия загрузчика. Все очень просто.
dd if=<твой раздел> of=<файл, куда записать загрузчик> bs=1 count=512. Мог только напутать значения of и if (почитай мануалы). Меня эта комбинация никогда не подводила

кстати, зря ты ставил загрузчик в MBR - лишний геморой. Если придется переставлять когда-нибудь - толкай в суперблок
Я знаю только то, что ничего не знаю ... потому и обречен вечно учиться.
Спасибо сказали:
Iskan Der
Сообщения: 270

Re: Снова про ntldr

Сообщение Iskan Der »

Про dd я знаю, сам так и делал. Вопрос в том, как объяснить загрузчику, что винты местами поменялись.. Загрузчик уже переставил в /dev/hda3. Кстати, как оказалось, lilo у меня тоже установлен :)
Спасибо сказали:
Аватара пользователя
rolano
Сообщения: 845
Статус: еще один юзер FreeBSD
ОС: какая-то

Re: Снова про ntldr

Сообщение rolano »

Что касается grub - извини, я им не пользуюсь, потому советовать ничего не возьмусь.

А вот чисто технический вопрос. Винда при разбиении винтов почему-то держит только один primary-раздел. Чтобы сделать больше одного раздела надо создавать extended-раздел, а в нем выделать логические диски. А вот диски эти нумеруются начиная с hd*5. Ты что вначале ставил - ХР или Линукс?
Я знаю только то, что ничего не знаю ... потому и обречен вечно учиться.
Спасибо сказали:
Iskan Der
Сообщения: 270

Re: Снова про ntldr

Сообщение Iskan Der »

Вначале ставил ХР.. Но это неважно опять же, ибо, как уже было отмечено, когда ставлю первым IDE-винт (на нем Линух и своя ХР) - все пучком, грузится через ntldr только в путь. Стоит выставить первым основной винт (SATA, только ХР), как пошли косяки. Подчеркиваю, что в момент установки Линуха основной - SATA - винт в компе отсутствовал
Спасибо сказали:
Аватара пользователя
rolano
Сообщения: 845
Статус: еще один юзер FreeBSD
ОС: какая-то

Re: Снова про ntldr

Сообщение rolano »

Ну а как дела с lilo?

А если САТА подключить вторым диском, его твой Линух увидит? (попробуй смонтировать с него раздел)
Я знаю только то, что ничего не знаю ... потому и обречен вечно учиться.
Спасибо сказали:
Iskan Der
Сообщения: 270

Re: Снова про ntldr

Сообщение Iskan Der »

Конфигурирую.. Вопрос: тут в YaST для LiLo есть такой пункт - disk. В нем значится:
disk=/dev/hda,bios=0x80,disk=/dev/sda,bios=0x81
Что означают эти 0x80 и 0x81?
Спасибо сказали:
Аватара пользователя
rolano
Сообщения: 845
Статус: еще один юзер FreeBSD
ОС: какая-то

Re: Снова про ntldr

Сообщение rolano »

У меня в lilo.conf прописаны только root=<что-то>, default=<метка блока, описывающего загрузку>. А потом идут записи для загрузки. Никаких bios там нету

да, еще прописан root=<что-то>

то есть не root, a boot
Я знаю только то, что ничего не знаю ... потому и обречен вечно учиться.
Спасибо сказали:
Iskan Der
Сообщения: 270

Re: Снова про ntldr

Сообщение Iskan Der »

У меня YaST предложил следующий вариант lilo.conf:

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

# Modified by YaST2. Last modification on Wed Oct 26 18:35:11 2005


menu-scheme = Wb:kw:Wb:Wb
default = Linux
timeout = 80
message = /boot/message
lba32
change-rules
    reset
read-only
prompt
disk=/dev/hda
    bios=0x80
    disk=/dev/sda
    bios=0x81
boot = /dev/hda3

image = /boot/vmlinuz
    ###Don't change this comment - YaST2 identifier: Original name: linux###
    label = Linux
    initrd = /boot/initrd
    root = /dev/hda3
    append = "resume=/dev/hda2 selinux=0 splash=silent desktop elevator=as"
    vga = 0x31a

other = /dev/hda1
    ###Don't change this comment - YaST2 identifier: Original name: windows 1###
    label = windows_1

image = /boot/vmlinuz
    ###Don't change this comment - YaST2 identifier: Original name: failsafe###
    label = Failsafe
    initrd = /boot/initrd
    root = /dev/hda3
    append = "ide=nodma apm=off acpi=off vga=normal noresume selinux=0 barrier=off nosmp noapic maxcpus=0  3"
Спасибо сказали:
Аватара пользователя
rolano
Сообщения: 845
Статус: еще один юзер FreeBSD
ОС: какая-то

Re: Снова про ntldr

Сообщение rolano »

bios=0x80
disk=/dev/sda
bios=0x81

Вот этого у меня точно нету (но у меня нету и СТА дисков). Попробуй загрузиться. На забудь выполнить lilo

Судя по тому, что у тебя в lilo.conf, моя система - просто каменный век. Я сразу выбрал себе SlackWare, потому что там меньше всего всяких "прослоек" и "конфигураторов, облегчающих процесс". Мне в этом плане проще
Я знаю только то, что ничего не знаю ... потому и обречен вечно учиться.
Спасибо сказали:
Iskan Der
Сообщения: 270

Re: Снова про ntldr

Сообщение Iskan Der »

Ну вот, приехали.. при попытке выполнить установку ЛиЛо заявил:
Warning: LBA32 addressing assumed
Device 0x0300: Inconsistent partition table, 3rd entry
CHS address in PT: 514:0:1 --> LBA (518112)
LBA address in PT: 8257410 --> CHS (8191:14:1)
Fatal: Either FIX-TABLE or IGNORE-TABLE must be specified
If not sure, first try IGNORE-TABLE (-P ignore)
Device 0x0300: Inconsistent partition table, 3rd entry
CHS address in PT: 514:0:1 --> LBA (518112)
LBA address in PT: 8257410 --> CHS (8191:14:1)
Fatal: Either FIX-TABLE or IGNORE-TABLE must be specified
If not sure, first try IGNORE-TABLE (-P ignore)

Что бы это могло значить?
Спасибо сказали:
Аватара пользователя
rolano
Сообщения: 845
Статус: еще один юзер FreeBSD
ОС: какая-то

Re: Снова про ntldr

Сообщение rolano »

Inconsistent partition table через Промт прогнал - непоследовательная таблица разбиения.
Я знаю только то, что ничего не знаю ... потому и обречен вечно учиться.
Спасибо сказали:
Iskan Der
Сообщения: 270

Re: Снова про ntldr

Сообщение Iskan Der »

Ну, это я понял.. Я к тому, что теперь с этим делать?
Спасибо сказали:
Аватара пользователя
rolano
Сообщения: 845
Статус: еще один юзер FreeBSD
ОС: какая-то

Re: Снова про ntldr

Сообщение rolano »

А если САТА включить вторым, то машина грузится?

В принципе можно еще попробовать закомментировать lba32 - на нем варнинг

лично у меня адресация определяется не Линуксом, а в БИОС
Я знаю только то, что ничего не знаю ... потому и обречен вечно учиться.
Спасибо сказали:
Iskan Der
Сообщения: 270

Re: Снова про ntldr

Сообщение Iskan Der »

Если САТА сделать вторым, все грузится ntloader'ом ИДЕ-шного винта. А вот если попробовать снова САТА включить первым и использовать ntldr с него, то загрузчик радостно сообщает:
L 99 99 99 99 99 99...
Пока думаю еще поменять местами 0х80 и 0х81, если не поможет - будет большой затык :)
Спасибо сказали:
Аватара пользователя
rolano
Сообщения: 845
Статус: еще один юзер FreeBSD
ОС: какая-то

Re: Снова про ntldr

Сообщение rolano »

Такое поведение lilo (не найден вторичный загрузчик) возможно в следующих случаях
1. Загрузчик изменился, но lilo не был обновлен
2. Несовпадение геометрии диска, используемого lilo и BIOS.
3. Загрузчик не читается

Судя по тому, что раньше все работало, пункт 3 отпадает. Поиграй с геометрией хоть в lilo, хоть в BIOS.
Если у тебя все работало, когда загрузчик был в MBR, то сохрани загрузчик XP и поставь туда lilo, скопируй загрузчик для загрузки через ntldr с САТА винта. Будет ли машина грузиться?
Я знаю только то, что ничего не знаю ... потому и обречен вечно учиться.
Спасибо сказали:
Iskan Der
Сообщения: 270

Re: Снова про ntldr

Сообщение Iskan Der »

Ха, моя идея сработала :) В общем, в lilo.conf поменял местами 0х80 и 0х81, создал образ получившегося загрузчика - и все стало работать как надо :) По ходу, эти чиселки отвечают за порядок винтов: 0х80 - первый винт, 0х81 - второй и т.п.
Т.о., тема закрыта :)
2 rolano - спасибо за поддержку :)
Спасибо сказали: