Добавление Gentoo в GRUB2
Подскажите, пожалуйста, как добавить Gentoo в GRUB2:
Gentoo на /dev/sda6, делаю такую конструкцию:
#/etc/grub.d/40_custom menuentry 'Gentoo Linux' { set root='(hd0,5)'; set legacy_hdbias='0' legacy_kernel '/boot/linux-3.7.10-gentoo' '/boot/linux-3.7.10-gentoo' 'root$ }
↓
[sergey@archlinux ~]$ sudo grub-mkconfig -o /boot/grub/grub.cfg Generating grub.cfg ... Found linux image: /boot/vmlinuz-linux Found initrd image: /boot/initramfs-linux.img No volume groups found Found Windows 7 (loader) on /dev/sda2 Found Gentoo Base System release 2.1 on /dev/sda6 /etc/grub.d/40_custom: line 1: menuentry: command not found /etc/grub.d/40_custom: line 3: legacy_kernel: command not found /etc/grub.d/40_custom: line 4: syntax error near unexpected token `}' /etc/grub.d/40_custom: line 4: `}'
- Для комментирования войдите или зарегистрируйтесь
Делаем так:При появлении
Делаем так:
При появлении меню GRUB2 жмем "c" и переходим в командный режим,
дальше действуем по такому алгоритму:
GRUB> ls (hd0,1) (hd0,2) (hd0,3) GRUB> set root=(hd0,3) GRUB> linux /vmlinuz (при выборе ядра работает автодополнение по тав) GRUB> initrd /initramfs (при выборе initramfs работает автодополнение по тав) GRUB> boot
Автодополнение по таб показывает ядра и initramfs только в разделе установленном в root.
Если нужного ядра не нашлось, переключаем root в другой раздел и т.д. пока не найдем ядро.
После того, как загрузились с нужным нам ядром правим файл /etc/grub.d/40_custom
Разумеется подставляем параметры найденые при ручной загрузке grub'a
menuentry 'Gentoo' { insmod fat (модуль grub для файловой системы на которой лежит ядро, не обязательно) set root='hd0,3' echo 'Загружается Gentoo' linux /vmlinuz root=/dev/sda3 initrd /initramfs boot (не обязательно) }
Что бы данное ядро грузилось по умолчанию, правим файл /etc/default/grub
Название в grub_default должно совпадать с названием в файле 40_custom
... GRUB_DEFAULT="Gentoo" ...
Дальше обновляем grub:
root # grub2-mkconfig -o /boot/grub2/grub.cfg
Как-то так...
Я типичный русский колхозник.
Долго запрягаю, быстро езжу и сильно торможу...
- Для комментирования войдите или зарегистрируйтесь
А без "конструкции"? Просто
А без "конструкции"? Просто запусти grub-mkonfig
evildmitry75 написал(а): А
А без конструкции:
Но в GRUB2 никаких упоминаний Gentoo нет.
Gentoo Linux
Sergey2705
Всё там есть. Так и должно быть.
Я это под Arch Linux делаю.
Я это под Arch Linux делаю. GRUB2 пишет такую строку:
Но в /boot/grub/grub.cfg пункт меню не добавляет.
А Arch Linux и Мастдай (os-prober) добавляет прекрасно.
Gentoo Linux
Sergey2705 написал(а): Я это
Так сколько у вас ОС? oO
set root='(hd0,5)'
В grub2 нумерация разделов изменилась. Для раздела /dev/sda6 должно быть (hd0,6). И вот это:
Апострофы не нужны
http://ru.wikibooks.org/wiki/
http://ru.wikibooks.org/wiki/Grub_2
Я типичный русский колхозник.
Долго запрягаю, быстро езжу и сильно торможу...
Опишу всю ситуацию:
Gentoo Linux устанавливал по Gentoo Handbook, ядро (/boot/linux-3.7.10) настраивал вручную.
Установив, загрузился под Arch Linux и попытался обновить кофиг GRUB2:
grub.cfg
Как видно из файла, в меню GRUB2 Gentoo нет.
Теперь одна лишь прозьба:
Подскажите как добавить Gentoo Linux в GRUB2 и если нужен какой-либо конфиг, то, пожалуйста, в готовом виде. Я не видел какой конфиг создаётся для Gentoo и никогда самостоятельно не добавлял оси в GRUB2. И посылать меня в Google, на сайты с Wiki-движком и другие ресурсы, пожалуйста, не надо. Я перепробовал способы из разных источников, но ни один не привёл меня к успеху. Проще один раз увидеть правильный вариант, чем перепробовать сотню бесполезных.
Gentoo Linux
/boot/ же общий у обоих
/boot/ же общий у обоих систем? И ядро гентушное точно там есть?
Нет, ядро Arch Linux в одном
Нет, ядро Arch Linux в одном месте (/dev/sda1, /boot/*), а ядро Gentoo Linux (/dev/sda6, /boot/linux-3.7.10-gentoo) в другом.
Gentoo Linux
Sergey2705 написал(а): Нет,
Тогда выходит что у тебя 2 гразных граба - один в gentoo второй в Arch? До кучи к 2м boot-разделам... Пользуйся одним загрузчиком, правь или руками или из какойто одной ОС скриптами.
GRUB один
Нет-нет, GRUB один на /dev/sda1 вместе с Arch Linux, на на /dev/sda6 в /boot/ только ядро Gentoo.
Gentoo Linux
Цитата: ... GRUB один на
А должно лежать там же где и загрузчик. Т.е. поместите ядро Gentoo на /dev/sda1. И его же (раздел) укажите в /etc/fstab Gentoo для /boot.
.
Ого!, что-то новенькое, "а мужики-то не знают!.." ©
Мы тоже не всего читали Шнитке!.. © В. Вишневский
Это насколько критично? Если
Это насколько критично? Если я кину ядро к GRUB2, то он с любый именем его подхватит через grub-mkconfig? И я начинаю понимать зачем нужен отдельный boot-раздел.
Gentoo Linux
.
Смею предположить, что вам "отдельный boot-раздел" как раз и не нужен ни разу...
Мы тоже не всего читали Шнитке!.. © В. Вишневский
Я же указал вам ссылку
Я же указал вам ссылку :-О
Если лень читать все, уточню - вам нужен пункт /etc/grub.d, а конкретно файл 40_custom
Я типичный русский колхозник.
Долго запрягаю, быстро езжу и сильно торможу...
Я просто не понимаю,
Я просто не понимаю, почему
недостаточно?
Ведь находит ядро, но в меню не добавляет.
И в ссылки очень много каких-то непонятных мне строк, можно увидеть какой код создаёт grub-mkconfig с Gentoo Linux?
Gentoo Linux
Вообще, добавить можно так
Вообще, добавить можно так:
vim /etc/grub.d/40_custom:
# grub-mkconfig -o /boot/grub/grub.cfg
или так:
grub-mkconfig, вроде, ищет ядра с именем vmlinuz*, а у вас linux*. Возможно, поэтому автоматом и не создаёт.
UUID раздела можно посмотреть командой blkid
Какой код создаёт grub-mkconfig я не знаю, ибо у меня grub-legacy.
Файл "40_custom" должен заканчиваться пустой строкой, иначе последний пункт не будет отображаться в меню.
В общем переименовал ядро в
В общем переименовал ядро в vmlinuz-linux и конфигуратор добавил запись в меню:
Но новая напасть появилась:
Gentoo Linux
Покажите /etc/fstab Gentoo.E
Покажите /etc/fstab Gentoo.
У вас в ядре Gentoo как собрана поддержка контроллера жёстких дисков и файловой системы корневого раздела, монолитно или модулем ? Если модулем, то либо создавайте initramfs, либо пересобирайте ядро с монолитным включением поддержки контроллера жёстких дисков и файловой системы корневого раздела.
fstab
Ядро собрано с поддержкой EXT4 (монолитно), а вот насчёт поддержки контроллера жёстких дисков я не уверен. Если несложно, то подскажите точнее где этот параметр в меню?
Gentoo Linux
Device Drivers --->
Возможно вам хватит 'AHCI SATA support', покажите вывод lspci. Так же можете посмотреть используемый драйвер в Archlinux для вашего контроллера жёстких дисков:
lspci
lspci -k
Gentoo Linux
00:0f.0 IDE interface: VIA
Ну т.е. вы не заметили указанные драйверы и не смогли, воспользовавшись клавишей "/" в 'make menuconfig' или 'genkernel --menuconfig' найти эти опции в конфигурацторе ядра и задействовать их ?
Вам нужны опции 'CONFIG_PATA_VIA' и 'CONFIG_SATA_VIA'.
kostik87
Хуже. Я даже не посмотрел. Опыта нет. Пока. Спасибо Вам, за помощь.
Gentoo Linux
Оставлю до лучших времён
Мда, всё-таки это тяжко. GRUB2 — это такой
геморройужас… Так и не смог запустить Gentoo даже с ядром с параметрами указанными выше. Каким образом работает grub-mkconfig… Больше сил нет сидеть. Оставлю до лучших времён, когда идейный дух красноглазия проймёт меня снова. Всем спасибо за помощь.P.S. А все эти Wikiхрени — это вообще отдельный разговор. Во всех написано по-разному, но всё-таки что-то их объединяет — способы в них не работают. Хотя может я просто недалёкая личность.
Gentoo Linux
Да при чём здесь grub, вы же
Да при чём здесь grub, вы же добавили пункт запуска Gentoo (ядра Gentoo) в загрузчик. Дальше, когда вы выбираете пункт запуска Gentoo у вас грузится ядро, а это значит загрузчик у вас правильно настроен.
Но при загрузке ядра Gentoo вам выводится сообщение
А это значит, что в ядре не включены опции поддержки драйверов контроллера жёстких дисков вашей материнской платы либо эти драйверы собраны модульно. Но т.к. вы не указываете initrd в загрузчике вам нужно либо собрать ядро с включёнными монолитно в ядро этими драйверами, либо собрать initrd и указать его в загрузчике для ядра Gentoo.
Требуемые опции указаны в сообщении выше.
Но вы, как уже ясно, решили не разбираться в чём причина, а просто бросили.
kostik87 написал(а): Да при
Я хотел разобраться почему я не могу добавить Gentoo через /etc/grub.d/40_custom
С собирал ядро с указанными Вами параметрами. Проблема не исчезла. Сейчас ещё попробую.
Gentoo Linux
выложите куда-нибудь конфиг
выложите куда-нибудь конфиг ядра, лучше на paste сервис.
Config
.config
И откуда нужно копировать ядро: из arch/x86_64 или arch/x86?
На x86-ядре:
А на x86_64:
Gentoo Linux
Ни откуда не нужно, выполните
Ни откуда не нужно, выполните 'make install', если сами собирали, а не через genkernel.
Кто вам сказал включать 'CONFIG_IDE=y' ?
Написано же DEPRECATED - устаревшее и не рекомендованное к использованию, вам нужно задействовать только опции в этом разделе:
Отсюда и все ваши проблемы.
Ни откуда не нужно, выполните
Ни откуда не нужно, выполните 'make install', если сами собирали, а не через genkernel.
То есть в Handbook неверно написано?
Никто. Я и без него пробовал, просто подумал что с ним прокатит.
Gentoo Linux
сейч
Ещё раз, CONFIG_IDE и CONFIG_ATA нельзя вместе использовать, к тому же первая устаревшая и сейчас не должна исопльзоваться, выключите её. Включите только указанные мной опции поддержкиконтроллеров жёстких дисков монолитно в ядре.
Выставил опции
<*> VIA SATA support
...
<*> VIA PATA support
Всё, только они, никакие другие опции в <*> Serial ATA and Parallel ATA drivers ---> не включены, а те что были были — отключил:
Загружаюсь и… тоже самое.
Gentoo Linux
Попробуйте собрать initramfs
Попробуйте собрать initramfs или с помощью genkernel или dracut и указать его в загрузчике.
Ещё раз скомпилировал,
Ещё раз скомпилировал, выполнил 'make install' и запустил с этим ядром. Тоже самое. Или нужно оставить только (и никакие другие, их отключить) параметры в [*] ATA SFF support (for legacy IDE and PATA)?
Gentoo Linux
kostik87 написал(а): Ни
Костик, опять что ли даем эмпирические советы , основанны на своих догадках ?
Ты ведь можешь прям сейчас гарантировать наличие ACHI в биосе ;)
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)
С чего это вдруг
С чего это вдруг эмпирические, помойму всё ясно: http://www.gentoo.ru/node/26828#comment-199622 ну а не нужность CONFIG_IDE думаю ты не будешь отритцать.
Нужны строчки вышеКроме
Нужны строчки выше
Кроме того, если не найдены диски - то unable mount /dev/sdx.x - uniknown device
В данном случае я этого пока не вижу.
Сделать по образцу моего поста про 15 минут на инсталл - поствить ядро с лайвика и запистить сюда дмесг загрузки
П.С модель мамки и способ подключения дисков ф студию
ППС /ворчливо/ раздули тут из мухи слона панимаишь
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)