LINUX.ORG.RU

куда писать что грузить?!!

 


0

1

ядрить его в кочерыжку, где у grub2 нормальный конфиг, куда я мог бы прописать какое ядро грузить и какой том считать корнем?!! в манах пишут типа «оно всё само работает, надо только сделать grub2-mkconfig», а я вот не верю ни капли, откуда он может знать что и откуда грузить?

в манах пишут типа «оно всё само работает, надо только сделать grub2-mkconfig», а я вот не верю ни капли

А ты попробуй сделай.

ЕМНИП во втором грабе конфиг валяется где-то в /etc

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

А ты попробуй сделай

я сделал, он создал /boot/grub2/grub.cfg.new с невразумительным содержанием

ЕМНИП во втором грабе конфиг валяется где-то в /etc

ага, в каталоге /etc/grub.d, только там какие-то наркоманские скрипты

fragment
() автор топика
Ответ на: комментарий от coldy
localhost linux # cat /boot/grub2/grub.cfg.new 
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub2-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 [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
else
  menuentry_id_option=""
fi

export menuentry_id_option

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 {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

if [ x$feature_default_font_path = xy ] ; then
   font=unicode
else
insmod part_msdos
insmod btrfs
set root='hd0,msdos4'

и?

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

http://en.gentoo-wiki.com/wiki/Grub2

grub2-mkconfig
The following will automatically generate a GRUB2 configuration file including kernels images within your /boot folder, using the auto configuration scripts in /etc/grub.d and the variables in /etc/default/grub, the -o specifics an output file, here the default, /boot/grub2/grub.cfg:

grub2-mkconfig -o /boot/grub2/grub.cfg

...

Custom kernel arguments
Kernel boot options (e.g. nohz=off, radeon.pcie_gen2=1, quiet, splash, etc) are added by editing the /etc/default/grub file. Add wanted kernel parameters to the GRUB_CMDLINE_LINUX_DEFAULT=«» line, they should then be included next time you run grub2-mkconfig.

[i]File: /etc/default/grub[/i]
...
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash radeon.pcie_gen2=1"
[edit]

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

grub2-mkconfig -o /boot/grub2/grub.cfg

так сделал же

GRUB_CMDLINE_LINUX_DEFAULT=«quiet splash radeon.pcie_gen2=1»

так мне не нужны эти опции

fragment
() автор топика
Ответ на: комментарий от fragment
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux 2.6.32-5-686' --class debian --class gnu-linux --class gnu --class os {
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos7)'
	search --no-floppy --fs-uuid --set 9a3f18da-9943-4242-9feb-ea2c13acd47c
	echo	'Loading Linux 2.6.32-5-686 ...'
	linux	/boot/vmlinuz-2.6.32-5-686 root=UUID=9a3f18da-9943-4242-9feb-ea2c13acd47c ro  quiet
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initrd.img-2.6.32-5-686
}
menuentry 'Debian GNU/Linux 2.6.32-5-686 (recovery mode)' --class debian --class gnu-linux --class gnu --class os {
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos7)'
	search --no-floppy --fs-uuid --set 9a3f18da-9943-4242-9feb-ea2c13acd47c
	echo	'Loading Linux 2.6.32-5-686 ...'
	linux	/boot/vmlinuz-2.6.32-5-686 root=UUID=9a3f18da-9943-4242-9feb-ea2c13acd47c ro single 
	echo	'Loading initial ramdisk ...'
	initrd	/boot/initrd.img-2.6.32-5-686
}
### END /etc/grub.d/10_linux ###
coldy ★★
()
Ответ на: комментарий от geekless

На самом деле понятна каждая строчка, тут и думать не о чем

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

Если он не загружается, значит его еще не установили. Очевидно, ящитаю.

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

Ты точно ему указываешь куда выхлоп писать (через -o)? grub-mkconfig без опций просто делает выхлоп в stdout.

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

прикольно, у grub-1.99-r2 даже grub2-mkconfig нет в комплекте

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

из твоего конфига:
insmod part_msdos
insmod btrfs

как бы подгружаются модули для ФС

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

Вообще-то эта опция 'set root='(hd0,msdos7)' указывает раздел, на котором grub2 будет искать файл образа ядра и initrd, а корневой раздел у вас указывается по UUID: 'root=UUID=9a3f18da-9943-4242-9feb-ea2c13acd47c'

В общем случае раздел с /boot может быть отдельно от корня.

kostik87 ★★★★★
()

/etc/defaults/grub, кажется. А вообще, юз первограб, люк.

f1xmAn ★★★★★
()

капец, походу я хер добьюсь от этого говна чего-то

кто просил этих тупых уродов переделывать конфиги?

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

нет, это новая система в chroot

grub-menulst2cfg

сделал на основе конфига груба текущей системы, он мне вот что сотворил:

set default='0'; if [ x"$default" = xsaved ]; then load_env; set default="$saved_entry"; fi
set timeout=30

menuentry 'Gentoo Linux 3.2.9' {
  set root='(hd0,1)'; set legacy_hdbias='0'
  legacy_kernel   '/boot/vmlinuz-3.2.9-gentoo' '/boot/vmlinuz-3.2.9-gentoo' 'root=/dev/sda3' ''
  
  
}

нормально?

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

зашибись, и почему у меня этой секции нет?

Очевидно, потому что /etc/grub.d/10_linux не запускался вообще. Проверь, чтобы файл был на месте и на нём стояло право на выполнение.

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

Не знаю, попробуй, я в документации эту возможность нашёл, сам ешё старый grub использую, больше устраивает. Жаль, что его забросили.

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

если бы не btrfs, я бы фиг к этому говну притронулся

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

всё на месте и права тоже

Если его руками запустить, должны вывестись в stdout нужные menuentry. Это происходит?

/dev, /proc, /sys примонтированы?

gentoo_root ★★★★★
()
Ответ на: комментарий от gentoo_root
localhost grub.d # ./10_linux 
Найден образ linux: /boot/vmlinuz-3.3.1-gentoo
menuentry 'GNU/Linux' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-' {
        load_video
        set gfxpayload=keep
        insmod gzio
/usr/sbin/grub2-probe: ошибка: не удалось найти привод GRUB для . Проверьте device.map.

        echo    'Загружается Linux 3.3.1-gentoo …'
        linux   /vmlinuz-3.3.1-gentoo root= ro rootflags=subvol=system  
}
submenu 'Дополнительные параметры для GNU/Linux' $menuentry_id_option 'gnulinux-advanced-' {
        menuentry 'GNU/Linux, с Linux 3.3.1-gentoo' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.3.1-gentoo-advanced-' {
                load_video
                set gfxpayload=keep
                insmod gzio
/usr/sbin/grub2-probe: ошибка: не удалось найти привод GRUB для . Проверьте device.map.

                echo    'Загружается Linux 3.3.1-gentoo …'
                linux   /vmlinuz-3.3.1-gentoo root= ro rootflags=subvol=system  
        }
        menuentry 'GNU/Linux, с Linux 3.3.1-gentoo (режим восстановления)' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.3.1-gentoo-recovery-' {
                load_video
                set gfxpayload=keep
                insmod gzio
/usr/sbin/grub2-probe: ошибка: не удалось найти привод GRUB для . Проверьте device.map.

                echo    'Загружается Linux 3.3.1-gentoo …'
                linux   /vmlinuz-3.3.1-gentoo root= ro single rootflags=subvol=system 
        }
}

как будто всё правильно нашёл, только что за трабла с приводом?

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

как будто всё правильно нашёл, только что за трабла с приводом?

и root=

Если запускать скрипт напрямую, то не устанавливается переменная $GRUB_DEVICE. При запуске через grub-mkconfig этой проблемы не должно быть.

Судя по тому, что 10_linux отрабатывает нормально, проблема не в нём. Возможно, в grub-mkconfig. Точно запускаешь так: «grub-mkconfig -o /boot/grub/grub.cfg»?

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

Вы устанавливаете grub2 в свежеустановленной системе, ещё в chroot или это уже рабочая система ? Если первое то в /etc/fstab указан корневой раздел или нет ?

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

короче, система не грузится, всё останавливается на надписи «Loading Linux 3.3.1-gentoo ...»

при этом обнаруженная старая система на другом разделе загрузилась нормально

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

Вы устанавливаете grub2 в свежеустановленной системе, ещё в chroot или это уже рабочая система ?

в chroot

Если первое то в /etc/fstab указан корневой раздел или нет ?

указан

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

а в fstab нужно указывать UUID, или /dev/sda4 сойдёт?

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

ну зашибись вообще, grub2 ьупая тварь не грузит систему хер знает почему, grub1 грузит только ядро, а том передать в качестве корня не в состоянии, ОХЕРЕННО!!!11

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

проблема превосходно решилась следующим образом:

emerge -C grub
emerge syslinux
fragment
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.