Grub2 не видит Mageia2

Автор kuguar, 29 мая 2012, 09:47:16

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

kuguar

На одном из компов у меня установлен Debian 6.0.5 основной системой.
Винт поделен на 3 раздела - /dev/sda1, /dev/sda2, /dev/sda3.
Debian стоит на 1 разделе, Mageia стоит на 2 разделе, у неё свой загрузчик на sda2.
Пытаюсь добавить в grub2 магию командой update-grub2, она переписывает grub.cfg, но строки для магии не появляются.
Как это можно побороть?

vladimir_ar

На момент выполнения команды раздел с искомой системой примонтирован? У меня бывало такое, что пока не примонтируешь разделы с другими системами - он их не находил.
Debian Testing, kernel 3.16-2-amd64, OpenBox
AMD A8-3750 / 16Gb RAM / ATI HD6550D (onboard) / Sound ASUS Xonar - DS
_______________________________
Debian Testing, kernel 3.14-2-amd64, OpenBox
HP-655 AMD E1 / 8Gb RAM / ATI HD7310M

kuguar

Да, я пробовал и с примонтированным разделом.
Открыть содержимое (спойлер)
Generating grub.cfg ...
Found background image: /usr/share/images/desktop-base/desktop-grub.png
Found linux image: /boot/vmlinuz-3.2.0-0.bpo.2-686-pae
Found initrd image: /boot/initrd.img-3.2.0-0.bpo.2-686-pae
Found linux image: /boot/vmlinuz-3.2.0-0.bpo.1-686-pae
Found initrd image: /boot/initrd.img-3.2.0-0.bpo.1-686-pae
done
[свернуть]

Angel_ok

Наверно придется вручную прописать Mageia2 в файле 40_custom
Вы думаете, всё так просто? Да, всё просто. Но совсем не так...
                                                                                                          Альберт Эйнштейн

rayanAyar

os-prober установлен?

kuguar

Os-prober установил. После этого mageia нашлась.
Но загрузиться всё равно не удалось. Идут сообщения об ошибках, в какой-то момент всё останавливается и не грузится.
По виду похоже на kernel panic, но светодиоды на клаве не моргают  :)

rayanAyar

Возможно в ней root указан не по UUID и она его не может найти на этапе загрузки или монтирования.
Вывод в студию:

blkid


cat /boot/grub/grub.cfg


И файл fstab из mageia.

kuguar

#7
#blkid
Открыть содержимое (спойлер)
/dev/sda1: UUID="b3ced705-ef28-465c-8e34-32c9ef02e6de" TYPE="ext4"
/dev/sda2: LABEL="lar" UUID="796b6fcb-940a-4966-b416-9e55ff1fa05b" TYPE="ext4"
/dev/sda3: LABEL="kedr" UUID="678716cb-45f2-479b-9023-272703b965a7" TYPE="ext3"
[свернуть]

grub.cfg
Открыть содержимое (спойлер)
### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  load_env
fi
set default="0"
if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}

function load_video {
  insmod vbe
  insmod vga
  insmod video_bochs
  insmod video_cirrus
}

insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set b3ced705-ef28-465c-8e34-32c9ef02e6de
if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=640x480
  load_video
  insmod gfxterm
fi
terminal_output gfxterm
insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set b3ced705-ef28-465c-8e34-32c9ef02e6de
set locale_dir=($root)/boot/grub/locale
set lang=ru
insmod gettext
set timeout=5
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set b3ced705-ef28-465c-8e34-32c9ef02e6de
insmod png
if background_image /usr/share/images/desktop-base/spacefun-grub.png; then
  set color_normal=light-gray/black
  set color_highlight=white/black
else
  set menu_color_normal=cyan/blue
  set menu_color_highlight=white/blue
fi
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux, with Linux 3.2.0-0.bpo.2-686-pae' --class debian --class gnu-linux --class gnu --class os {
   insmod part_msdos
   insmod ext2
   set root='(hd0,msdos1)'
   search --no-floppy --fs-uuid --set b3ced705-ef28-465c-8e34-32c9ef02e6de
   echo   'Loading Linux 3.2.0-0.bpo.2-686-pae ...'
   linux   /boot/vmlinuz-3.2.0-0.bpo.2-686-pae root=UUID=b3ced705-ef28-465c-8e34-32c9ef02e6de ro  quiet
   echo   'Loading initial ramdisk ...'
   initrd   /boot/initrd.img-3.2.0-0.bpo.2-686-pae
}
menuentry 'Debian GNU/Linux, with Linux 3.2.0-0.bpo.2-686-pae (recovery mode)' --class debian --class gnu-linux --class gnu --class os {
   insmod part_msdos
   insmod ext2
   set root='(hd0,msdos1)'
   search --no-floppy --fs-uuid --set b3ced705-ef28-465c-8e34-32c9ef02e6de
   echo   'Loading Linux 3.2.0-0.bpo.2-686-pae ...'
   linux   /boot/vmlinuz-3.2.0-0.bpo.2-686-pae root=UUID=b3ced705-ef28-465c-8e34-32c9ef02e6de ro single
   echo   'Loading initial ramdisk ...'
   initrd   /boot/initrd.img-3.2.0-0.bpo.2-686-pae
}
menuentry 'Debian GNU/Linux, with Linux 3.2.0-0.bpo.1-686-pae' --class debian --class gnu-linux --class gnu --class os {
   insmod part_msdos
   insmod ext2
   set root='(hd0,msdos1)'
   search --no-floppy --fs-uuid --set b3ced705-ef28-465c-8e34-32c9ef02e6de
   echo   'Loading Linux 3.2.0-0.bpo.1-686-pae ...'
   linux   /boot/vmlinuz-3.2.0-0.bpo.1-686-pae root=UUID=b3ced705-ef28-465c-8e34-32c9ef02e6de ro  quiet
   echo   'Loading initial ramdisk ...'
   initrd   /boot/initrd.img-3.2.0-0.bpo.1-686-pae
}
menuentry 'Debian GNU/Linux, with Linux 3.2.0-0.bpo.1-686-pae (recovery mode)' --class debian --class gnu-linux --class gnu --class os {
   insmod part_msdos
   insmod ext2
   set root='(hd0,msdos1)'
   search --no-floppy --fs-uuid --set b3ced705-ef28-465c-8e34-32c9ef02e6de
   echo   'Loading Linux 3.2.0-0.bpo.1-686-pae ...'
   linux   /boot/vmlinuz-3.2.0-0.bpo.1-686-pae root=UUID=b3ced705-ef28-465c-8e34-32c9ef02e6de ro single
   echo   'Loading initial ramdisk ...'
   initrd   /boot/initrd.img-3.2.0-0.bpo.1-686-pae
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "linux (on /dev/sda2)" {
   insmod part_msdos
   insmod ext2
   set root='(hd0,msdos2)'
   search --no-floppy --fs-uuid --set 796b6fcb-940a-4966-b416-9e55ff1fa05b
   linux /boot/vmlinuz BOOT_IMAGE=linux root=UUID=796b6fcb-940a-4966-b416-9e55ff1fa05b splash quiet vga=788
   initrd (hd0,1)/boot/initrd.img
}
menuentry "linux-nonfb (on /dev/sda2)" {
   insmod part_msdos
   insmod ext2
   set root='(hd0,msdos2)'
   search --no-floppy --fs-uuid --set 796b6fcb-940a-4966-b416-9e55ff1fa05b
   linux /boot/vmlinuz BOOT_IMAGE=linux-nonfb root=UUID=796b6fcb-940a-4966-b416-9e55ff1fa05b
   initrd (hd0,1)/boot/initrd.img
}
menuentry "failsafe (on /dev/sda2)" {
   insmod part_msdos
   insmod ext2
   set root='(hd0,msdos2)'
   search --no-floppy --fs-uuid --set 796b6fcb-940a-4966-b416-9e55ff1fa05b
   linux /boot/vmlinuz BOOT_IMAGE=failsafe root=UUID=796b6fcb-940a-4966-b416-9e55ff1fa05b failsafe
   initrd (hd0,1)/boot/initrd.img
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_otheros ###

# This entry automatically added by the Debian installer for an existing
# linux installation on /dev/sda2.
menuentry "Mandriva 2010.2 3.1.6-desktop-nrjpae.69mib (on /dev/sda2)" {
   set root=(hd0,msdos2)
   search --no-floppy --fs-uuid --set 9f3aa142-b4b1-423a-9bea-4cc092086680
   linux /boot/vmlinuz-3.1.6-desktop-nrjpae.69mib BOOT_IMAGE=Mandriva_20102_316-desktop-nrjp root=UUID=9f3aa142-b4b1-423a-9bea-4cc092086680 splash=silent vga=788
   initrd (hd0,1)/boot/initrd-3.1.6-desktop-nrjpae.69mib.img
}


# This entry automatically added by the Debian installer for an existing
# linux installation on /dev/sda2.
menuentry "linux-nonfb (on /dev/sda2)" {
   set root=(hd0,msdos2)
   search --no-floppy --fs-uuid --set 9f3aa142-b4b1-423a-9bea-4cc092086680
   linux /boot/vmlinuz BOOT_IMAGE=linux-nonfb root=UUID=9f3aa142-b4b1-423a-9bea-4cc092086680
   initrd (hd0,1)/boot/initrd.img
}


# This entry automatically added by the Debian installer for an existing
# linux installation on /dev/sda2.
menuentry "failsafe (on /dev/sda2)" {
   set root=(hd0,msdos2)
   search --no-floppy --fs-uuid --set 9f3aa142-b4b1-423a-9bea-4cc092086680
   linux /boot/vmlinuz BOOT_IMAGE=failsafe root=UUID=9f3aa142-b4b1-423a-9bea-4cc092086680 failsafe
   initrd (hd0,1)/boot/initrd.img
}

### END /etc/grub.d/30_otheros ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
menuentry "Mageia 2" {
set root=(hd0,2)
linux /boot/vmlinuz
initrd /boot/initrd.img
}
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
[свернуть]

fstab
Открыть содержимое (спойлер)
# Entry for /dev/sda2 :
UUID=796b6fcb-940a-4966-b416-9e55ff1fa05b / ext4 acl,relatime 1 1
# Entry for /dev/sda3 :
UUID=678716cb-45f2-479b-9023-272703b965a7 /mnt/kedr ext3 user,acl,relatime,noauto,exec 1 2
none /proc proc defaults 0 0
[свернуть]

Строки, которые относятся к mageia2 - это мои неудачные попытки добавить через /etc/grub.d/40_custom.
Это я сейчас удалю в файле.

rayanAyar

Попробуйте заменить в файле grub.cfg (пока вручную заменить, без последующего запуска update-grub):

initrd (hd0,1)/boot/initrd.img

на

initrd /boot/initrd.img


И ещё... Приведите список файлов в папке /boot/ на разделе Mageia. И grub.cfg из неё же.

kuguar


rayanAyar

Значит menu.lst из неё.

kuguar

menu.lst
Открыть содержимое (спойлер)
timeout 10
color black/cyan yellow/cyan
gfxmenu (hd0,1)/boot/gfxmenu
default 0

title linux
kernel (hd0,1)/boot/vmlinuz BOOT_IMAGE=linux root=UUID=796b6fcb-940a-4966-b416-9e55ff1fa05b  splash quiet vga=788
initrd (hd0,1)/boot/initrd.img

title linux-nonfb
kernel (hd0,1)/boot/vmlinuz BOOT_IMAGE=linux-nonfb root=UUID=796b6fcb-940a-4966-b416-9e55ff1fa05b
initrd (hd0,1)/boot/initrd.img

title failsafe
kernel (hd0,1)/boot/vmlinuz BOOT_IMAGE=failsafe root=UUID=796b6fcb-940a-4966-b416-9e55ff1fa05b  failsafe
initrd (hd0,1)/boot/initrd.img
[свернуть]

rayanAyar

Сделайте так как указал выше и попробуйте загрузиться в Mageia.

Кстати, насколько я понимаю, Mageia была изначально установлена не в этот раздел?

kuguar

Магея была установлена на sda2, именно на этот раздел.
Вручную изменил grub.cfg как мне посоветовали выше (удалил (hd0,1) в initrd).
Стало грузиться.
Ещё добавил опцию nomodeset, но это уже дистроспецифичная вешь, без неё не грузится ни за что.
Спасибо за помощь. Но я так понимаю, что при любом изменении файл grub.cfg переконфигурируется, и опять потом его редактировать?

rayanAyar

Хорошо. Теперь уберите все вхождения "(hd0,1)" в файле menu.lst (предварительно сделайте его копию). После этого выполните update-grub.

os-prober сам не составляет строку запуска, он берет её из файла конфигурации найденной ОС. Т.е. как будет указано в menu.lst - так и будет в grub.cfg. Если нужна опция nomodeset - тоже добавьте её в menu.lst и выполните update-grub.