LINUX.ORG.RU

GRUB2 Ubuntu + Gentoo Linux


0

1

Доброго времени суток. Собственно проблема вот в чем. У меня стоит убунту, установил из нее генту, теперь нужно добавить в grub2 пункт загрузки генту. но тут столкнулся и такой проблемой - во 2 grub конфиги создаются автоматом. Редактировать как в первом конфиги нельзя (или я не знаю как). собственно как добавить пункт меню загрузки генты? она на отдельном разделе, и бут разделы для разных систем разные.


Ответ на: комментарий от aho

Систему нашел, теперь смотрю конфиг /boot/grub/grub.cfg но там нет генту, и при перезагрузке ничего не видно

Found linux image: /boot/vmlinuz-2.6.35-25-generic Found initrd image: /boot/initrd.img-2.6.35-25-generic Found linux image: /boot/vmlinuz-2.6.35-24-generic Found initrd image: /boot/initrd.img-2.6.35-24-generic Found linux image: /boot/vmlinuz-2.6.35-22-generic Found initrd image: /boot/initrd.img-2.6.35-22-generic Found memtest86+ image: /boot/memtest86+.bin Found Windows 7 (loader) on /dev/sda1 Found Gentoo Base System release 1.12.14 on /dev/sda6 done

ppShah
() автор топика

sudo update-grub && sudo grub-install /dev/sda

только перед этим примонтировать раздел с гентой

derlafff ★★★★★
()
Ответ на: комментарий от ipwww

Что за бред вы ему советуете, у него же grub2. Пусть читает вики по ссылке выше.

Richi
()
Ответ на: комментарий от Richi

видимо ты упорот, мальчик

команда ставит груб на диск в соответствии с текущими конфигами

по выхлопу предыдущей команды, конфиги он уже обновил, осталось применить изменения

derlafff ★★★★★
()
Ответ на: комментарий от Richi

она записывает загрузчик с НОВЫМИ конфигами.

Found linux image: /boot/vmlinuz-2.6.35-25-generic Found initrd image: /boot/initrd.img-2.6.35-25-generic Found linux image: /boot/vmlinuz-2.6.35-24-generic Found initrd image: /boot/initrd.img-2.6.35-24-generic Found linux image: /boot/vmlinuz-2.6.35-22-generic Found initrd image: /boot/initrd.img-2.6.35-22-generic Found memtest86+ image: /boot/memtest86+.bin Found Windows 7 (loader) on /dev/sda1 Found Gentoo Base System release 1.12.14 on /dev/sda6 done

человек уже ОБНОВИЛ конфиги, теперь ему дотстаточно только ОБНОВИТЬ загрузчик.

убейся, вобщем

derlafff ★★★★★
()
Ответ на: комментарий от hokum

мне всегда хватало update-grub && grub-install /dev/sda

но вот тут в пардусе другой /boot/grub/grub.conf - и он требует ручного редактирования/редактирования через графическую тулзу.

в дебианах же там вроде стояло «Не пытайтесь вручную редактировать этот файл»

derlafff ★★★★★
()
Ответ на: комментарий от derlafff
lex@gepardus debootstrap $ cat /boot/grub/grub.conf
default 0
gfxmenu /boot/grub/message
background 10333C
timeout 10

title Pardus 2011
uuid 52b35e7b-ea86-497b-9edb-8d5faf4b5eec
kernel /boot/kernel-2.6.37 root=UUID=52b35e7b-ea86-497b-9edb-8d5faf4b5eec resume=/dev/sda5 splash quiet
initrd /boot/initramfs-2.6.37

title Light Debian Linux
root (hd0,3)
kernel /boot/vmlinuz-2.6.37-trunk-686-bigmem root=/dev/sda4 resume=/dev/sda4 quiet
initrd /boot/initrd.img-2.6.37-trunk-686-bigmem
lex@gepardus debootstrap $ cat /media/debian/boot/
config-2.6.37-trunk-686-bigmem      initrd.img-2.6.37-trunk-686-bigmem  vmlinuz-2.6.37-trunk-686-bigmem     
grub/                               System.map-2.6.37-trunk-686-bigmem  
lex@gepardus debootstrap $ cat /media/debian/boot/grub/grub.cfg
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### 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,msdos4)'
search --no-floppy --fs-uuid --set a3d80c98-8867-48f2-a77f-e0a94aae0e45
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,msdos4)'
search --no-floppy --fs-uuid --set a3d80c98-8867-48f2-a77f-e0a94aae0e45
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 ###
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux, with Linux 2.6.37-trunk-686-bigmem' --class debian --class gnu-linux --class gnu --class os {
        insmod part_msdos
        insmod ext2
        set root='(hd0,msdos4)'
        search --no-floppy --fs-uuid --set a3d80c98-8867-48f2-a77f-e0a94aae0e45
        echo    'Loading Linux 2.6.37-trunk-686-bigmem ...'
        linux   /boot/vmlinuz-2.6.37-trunk-686-bigmem root=UUID=a3d80c98-8867-48f2-a77f-e0a94aae0e45 ro  quiet
        echo    'Loading initial ramdisk ...'
        initrd  /boot/initrd.img-2.6.37-trunk-686-bigmem
}
menuentry 'Debian GNU/Linux, with Linux 2.6.37-trunk-686-bigmem (recovery mode)' --class debian --class gnu-linux --class gnu --class os {
        insmod part_msdos
        insmod ext2
        set root='(hd0,msdos4)'
        search --no-floppy --fs-uuid --set a3d80c98-8867-48f2-a77f-e0a94aae0e45
        echo    'Loading Linux 2.6.37-trunk-686-bigmem ...'
        linux   /boot/vmlinuz-2.6.37-trunk-686-bigmem root=UUID=a3d80c98-8867-48f2-a77f-e0a94aae0e45 ro single 
        echo    'Loading initial ramdisk ...'
        initrd  /boot/initrd.img-2.6.37-trunk-686-bigmem
}
### 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 "Pardus 2011 (on /dev/sda1)" {
        insmod part_msdos
        insmod ext2
        set root='(hd0,msdos1)'
        search --no-floppy --fs-uuid --set 52b35e7b-ea86-497b-9edb-8d5faf4b5eec
        linux /boot/kernel-2.6.37 root=UUID=52b35e7b-ea86-497b-9edb-8d5faf4b5eec resume=/dev/sda5 splash quiet
        initrd /boot/initramfs-2.6.37
}
### END /etc/grub.d/30_os-prober ###

### 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.
### 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 ###

версии может быть разные...

derlafff ★★★★★
()
Ответ на: комментарий от derlafff

Насколько мне известно, в ubuntu grub2 перечитывает /boot/grub/grub.cfg при каждой загрузке и переустановки для редактирования конфига не требует.

ТС: Покажите /boot/grub/grub.cfg. Вручную записать директивы можно в /etc/grub.d/40_custom и ввести update-grub.

AITap ★★★★★
()
Ответ на: комментарий от AITap

>Насколько мне известно, в ubuntu grub2 перечитывает /boot/grub/grub.cfg при каждой загрузке и переустановки для редактирования конфига не требует.

в дебиане вроде нужно. хотя, может быть, я ошибаюсь

ТС: Покажите /boot/grub/grub.cfg. Вручную записать директивы можно в /etc/grub.d/40_custom и ввести update-grub.


он уже показывал выхлоп update-grub, который говорит, что в grub.cfg наверняка уже есть гента

derlafff ★★★★★
()
Ответ на: комментарий от AITap

вообще, хочется понять, как он всё-таки работает. А то он у меня в арче сам как-то сконфигурировался, всё добавил и работает...

hokum
()
Ответ на: комментарий от AITap

первый груб был достаточно прозрачным. Во втором появилась загадочная команда grub-mkconfig, которая формирует конфиг grub.conf на основе каких-то ещё конфигов из /etc/grub.d

hokum
()
Ответ на: комментарий от hokum

Почитайте их, это обычные шеллскрипты (хотя это может быть любой исполняемый файл), stdout которых перенаправляется в будущий /boot/grub/grub.cfg.

AITap ★★★★★
()
Ответ на: комментарий от AITap

Да идею-то я понимаю, только если я понимаю её правильно, в зависимости от этих скриптов и определяются или не определяются наличинствующие в системе ОС для загрузки - т.е. дистрибутор должен сделать так, чтобы определялось всё по максимуму?

hokum
()
Ответ на: комментарий от hokum

Для определения ОС, отличных от текущей, используется скрипт osprober, одинаковый для всех дистрибутивов. Ему отводится отдельный скрипт в /etc/grub.d/ и отдельный исполняемый файл /usr/bin/os-prober (и куча скриптов-определителей в /usr/lib/os-probes/ и /usr/lib/linux-boot-probes/).

AITap ★★★★★
()

РЕШЕНО

добавил директивы в /etc/grub.d/40_custom и все заработало. Спасибо. wiki помогло

ppShah
() автор топика
Ответ на: комментарий от AITap

>Насколько мне известно, в ubuntu grub2 перечитывает /boot/grub/grub.cfg при каждой загрузке и переустановки для редактирования конфига не требует.

Именно так

dumal ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.