LinuxForum.Fans
Тема

Странный GRUB

Автор: LynxUA 18 сообщений 3310 просмотров
#226057

У меня два ЖД, на одном только Винда с одним разделом, на другом Линуксы. Установил Федору, надо было посмотреть кое-что в Виндовсе, на нормальный Граб как обычно не надеялся, проверил новый граб файл и, проверил через fdisk -l и удивился:

ЖД с Виндовсом:
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 156299263 78148608 7 HPFS/NTFS/exFAT

ЖД с Линуксами:
Device Boot Start End Blocks Id System
/dev/sdb1 * 2955960 507236309 252140175 7 HPFS/NTFS/exFAT
/dev/sdb2 507236350 625141759 58952705 f W95 Ext'd (LBA)
/dev/sdb5 511429338 554049719 21310191 83 Linux
/dev/sdb6 554063872 620951551 33443840 83 Linux
/dev/sdb7 620953600 625141759 2094080 82 Linux swap / Solaris
/dev/sdb8 507236352 511428607 2096128 82 Linux swap / Solaris

Во первых меня очень смущает то, что на втором ЖД бут стоит на первом разделе, который у меня вообще только для файлов, во вторых если посмотреть сгенерированый граб, то Федора находится (и корректно загружается) с 0,5 , то есть sda5, что не есть возможным, судя по фдиску(нету такого раздела), в третьих Граб присвоил Винде значение 0,1, а в название подписал sdb1... Ещё попробовал загрузить Федору 16 с 1,1, и она, какого-то хрена, загрузилась и там! Причём та же, что и на 0,1... Мистика...
Короче какое-то полное не соответствие между грабом и фдиском.
Помогите вернуть Винду, очень надо...
Виндовс уже загружал и с sda1 и sdb1, нигде нету, печаль...

#226081

Во первых груб 0,5 соответствует sdb6 судя по всему в твоём случае. Надо учитывать, что фдиск нумерует разделы с 1, а груб с 0.
Покажи ещё fstab, ибо непонятно где какие у тебя разделы.

#226087
LynxUA написал:
Ещё попробовал загрузить Федору 16 с 1,1, и она, какого-то хрена, загрузилась и там!

а Вы на что надеялись? oO

#226097
Vadimsky написал:
а Вы на что надеялись?

offtop: Надо полагать, что ТС надеялся на квалифицированную помощь.
По теме: похоже на grub2. Посмотрите /boot/grub/grub.cfg.

#226105
DdShurick написал:

По теме: похоже на grub2. Посмотрите /boot/grub/grub.cfg.

Ах, ну да, граб второй версии, стандартный который федора поставила.
А что именно вам из бут файла показать?

Vascom написал:
Во первых груб 0,5 соответствует sdb6 судя по всему в твоём случае. Надо учитывать, что фдиск нумерует разделы с 1, а груб с 0.
Покажи ещё fstab, ибо непонятно где какие у тебя разделы.

#
# /etc/fstab
# Created by anaconda on Sun Jan 22 17:52:17 2012
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=a246e1bd-c7bf-49e5-a2ce-5c5eec7f2e96 / ext4 defaults 1 1
UUID=dd39e375-2774-48ba-9b36-c6bc39385848 swap swap defaults 0 0
UUID=297c823b-0e6a-472d-a79c-4b8bd0acb8cc swap swap defaults 0 0

Нет, это ЖД именуются с нуля, а разделы с единицы, например в фдиск федора на сдб5 и в грабе она на (0,5) или (1,5) (вот этого я уже не понимаю)...

P.S.На том ЖД с Виндой тоже есть какой-то граб от предыдущего Линукса Минт, который на сдб6, может от этого какой-то конфликт? Я только не знаю где именно он там запрятан, но если загрузочным ЖД поставить Виндовский, то вылезет граб, правда он не корректно работает и не показует не какого меню, просто ошибка. :/

#226152
LynxUA написал:
А что именно вам из бут файла показать?

Должен быть пункт меню загрузки Windows, примерно такой

text

menuentry "Windows" {
    search --no-floppy --fs-uuid --set=root 2d97f6ab-bee8-4fc8-83d5-b28b6a38cdae #здесь должен быть ваш UUID
    chainloader +1
}

Значение UUID можно получить командой blkid /dev/sda1.

#226164
DdShurick написал:

Значение UUID можно получить командой blkid /dev/sda1.

Вот мой пункт с Виндой,
menuentry "Windows 7 (loader) (on /dev/sdb1)" --class windows --class os {
insmod part_msdos
insmod ntfs
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set=root 01CCD886CAF0FCB0
chainloader +1
}
Блкид высветил тоже самое.

#226189

blkid /dev/sdb1?

#226192
DdShurick написал:
blkid /dev/sdb1?

Выдало только
UUID="01CCD886CAF0FCB0" TYPE="ntfs"

Но это походу не загрузочный, просто раздел нтфс, у меня и такой есть...

#226195
LynxUA написал:
Но это походу не загрузочный

Да, но судя по выводу fdisk -l boot-флаг на этом разделе есть и UUID с прописанным в grub.cfg совпадает.
Попробуйте подставить значение UUID для sda1

#226196
DdShurick написал:
[quote=LynxUA]Но это походу не загрузочный

Да, но судя по выводу fdisk -l boot-флаг на этом разделе есть и UUID с прописанным в grub.cfg совпадает.
Попробуйте подставить значение UUID для sda1[/quote]
А, стоп, там же одинаковые ключи выдало, в сда1 и сдб1, что это значит?

#226216
LynxUA написал:
А, стоп, там же одинаковые ключи выдало, в сда1 и сдб1, что это значит?

Одинаковых ключей быть не должно, значит система диски путает. Попробуйте просто blkid без аргументов.

#226218
DdShurick написал:
[quote=LynxUA]А, стоп, там же одинаковые ключи выдало, в сда1 и сдб1, что это значит?

Одинаковых ключей быть не должно, значит система диски путает. Попробуйте просто blkid без аргументов.[/quote]
Ну так там одинаковые ключи, у сда1 и сдб1. сдб1 это как-бы диск Д у Винды...

#226231

Если отключить sdb, тогда грузится?

#226235
LynxUA написал:
[quote=DdShurick][quote=LynxUA]А, стоп, там же одинаковые ключи выдало, в сда1 и сдб1, что это значит?

Одинаковых ключей быть не должно, значит система диски путает. Попробуйте просто blkid без аргументов.[/quote]
Ну так там одинаковые ключи, у сда1 и сдб1. сдб1 это как-бы диск Д у Винды...[/quote]
Не, ну если в биосе поставить загрузочным ЖД с Виндой, выскочит кривой граб от Минта(который на сдб6) и выдаст ошибку, я думаю что и если вытащить ЖД реакция будет та же.

#226329

GRUB2 вещь сложная, расчитанная на автонастройку скриптами системы. Grub4dos или просто GRUB в этом отношении гораздо проще.
Попробуйте восстановить загрузчик Windows командой fixmbr (потребуется установочный диск), а потом "подселить" к ntldr файл grldr от grub4dos. В boot.ini дописать строку C:\grldr "Linux" и сделать свой файл menu.lst

#226338
DdShurick написал:
GRUB2 вещь сложная, расчитанная на автонастройку скриптами системы. Grub4dos или просто GRUB в этом отношении гораздо проще.
Попробуйте восстановить загрузчик Windows командой fixmbr (потребуется установочный диск), а потом "подселить" к ntldr файл grldr от grub4dos. В boot.ini дописать строку C:\grldr "Linux" и сделать свой файл menu.lst

Можно по-подробнее, а то я почти ничего не понял)

#226395

1. Восстанавливаем загрузчик Windows средствами Windows. После этого загружается только Windows.
2. Копируем на диск C: файл grldr из комплекта grub4dos. Прописываем его загрузку в boot.ini (C:\grldr "Linux").
3. Создаём на диске C: текстовый файл menu.lst и заполняем его примерно так:

text

timeout 10
default 0
title Linux
root (hd1,4)
kernel /boot/vmlinuz
initrd /boot/initrd.img

Параметры kernel и initrd уточните в вашем grub.cfg

Войдите или зарегистрируйтесь, чтобы ответить.