Пересборка ядра

Доброго времени суток.

До вчерашнего дня никогда не доводилось иметь дело как с source-based дистрибутивами, так и со сборкой чего-либо из исходников вообще.
Поставил Gentoo по русскому хэндбуку и по ходу установки возникла пара вопросов:

1) При конфигурировании ядра menuconfig-ом, пункт меню (например, драйвер) не отмечается как модуль, т.е., при нажатии клавиши "m" напротив пункта ничего не меняется (если стояла звездочка, то она там и остается). С раскладкой клавиатуры все хорошо, да и сама кнопка работает. Что я делаю не так?

2) Как после сборки и установки ядра правильно пересобрать его еще раз, если нужно что-то перенастроить? (Где можно про это почитать?)

Для начала научись

Для начала научись пользоваться поиском и поищи здесь на форуме - эта тема уже порядочно затаскана...
Потом поищи в Инете: для общего развития первая же ссылка подойдет.

P.S. Настоятельно рекомендую пользоваться оригинальной (английской) версией хендбука, т.к. русская обычно существенно запаздывает с обновлениями и может порой дезориентировать (особенно когда новые плюшки появляются). Также полезно почитать тут и тут.

P.P.S. По поводу твоих вопросов:

1. Если не показывает и не дает установить как модуль, значит зависимости не позволяют, это нормально. Бывает и наоборот - можно только модулем.

2. Пересборка ничем не отличается от просто сборки: меняешь параметры и компилируешь как обычно. Только, если копируешь конфигурацию откуда-либо, не забывай make oldconfig и НИКОГДА не редактируй конфиг ядра редактором вручную! :)

Большое спасибо. Обязательно

Большое спасибо. Обязательно почитаю. Просто я немного запутался: пересборка создаст второе ядро из старых исходников, правильно? Старое ядро никуда не денется, полагаю, надо сделать update grub и при следующем запуске системы нужно будет выбрать, какое из двух загружать.

c базовым уровнем знаний

c базовым уровнем знаний нужно делать emerge -C grub. и переходить на более простое и понятное – uefi загрузку или если его нет, lilo.

Я бы как раз не рекомендовал

Я бы как раз не рекомендовал lilo начинающим, т.к. он более чувствителен к ошибкам и с ним возни больше.
И что uefi проще тоже не соглашусь...

.

SysA написал(а):
Я бы как раз не рекомендовал lilo начинающим, т.к. он более чувствителен к ошибкам и с ним возни больше.

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

:wq
--
Live free or die

возни больше? OMG… в грубе

возни больше? OMG… в грубе 100500 переменных, файлов и прочая. и генерируемый конфиг глазами на ошибки не проверишь. для случая «имею_пару_ядер» лило более наглядно и ремонтопригодно.
uefi – проще некуда. при наличии лени достаточно одной команды efibootmgr а при наличии еще большей лени – один раз настроить refind а потом просто копировать bzImage.

Только вот я один раз

Только вот я один раз настроил /etc/default/grub и новые настройки генерирую grub-mkconfig, а в uefi у моей материнки проблема: при записи больше 8 раз её нужно сбросить, иначе ничего не запишется... Так что всё зависит от конкретной ситуации.

я – одмин более одного

я – одмин более одного [локал]хоста и могу ответственно заявить, что да, один раз настроить (что требует некоторого курения, поскольку далеко не навскидку ясно, как получать нужную строку параметров ядра exactly) и потом новые ядра подкидывать – не проблема. а вот сменить диск/раздел, переустановить из под чрута – тут не всегда, но регулярно начинаются проблемы на пустом месте. в лило проще – там можно все явно написать.

>>при записи больше 8 раз
а зайчем столько писать? как я говорил, что-то вроде refind решает очень многие проблемы сам, сканируя все вокруг, и очень неплохо.

Хотел бы подчеркнуть, что

Хотел бы подчеркнуть, что речь идет о системе для новичков, поэтому:

1. ГРУБ обычно работает сразу "из коробки" на типовых конфигурациях и начальная установка прописана достаточно доступно во всех руководствах.
2. ЛИЛО позиционно-зависимый и требует переустановки после каждой (!) перекомпиляции ядра.
3. УЕФИ еще не всегда и не везде стабильно работает, и уж точно не заработает "из коробки".

А я вот grub так и не

А я вот grub так и не осилил...
Так десяток лет на lilo и сижу...

emerge Your world
Gentoogle

груб достаточно хорошо

груб достаточно хорошо маскирует основные вопросы загрузки ядра – root= resume=, что приводит к недоумениям при малейших шевелениях. он хорошо подходит для убунты, где ядра (и ненужная инитрама) ставятся автоматически.

кроме того, и грубу НАДО переконфиг делать и лило. я не вижу особого плюса в автоматических действиях, если они не обладают:
– полнотой (я сделал make && make modules_install и что? все само переконфигурировалось?)
– и прозрачностью (в сгенерированном конфиге груба все понятно, особенно новичку, ага. или новичку НЕ_НУЖНО понимать, что и как делает загрузчик?)

куда полезнее (особенно для новичка) один раз понять как загружается ядро и зачем ему всякие параметры.

я как-то делал конфиг для груба, который сам сканирует имеющиеся ядра и кое-какие еще мелочи, но все равно – это лютая костыльщина. с переездом на refind (uefi) все стало в разы проще: cp arch/x86_64/boot/bzImage /boot/efi/EFI/gentoo/vmlinuz-xxx.efi и все. не говоря о том, что конфигурирование refind не в пример понятнее, проще и прозрачнее конфигурирования груба, да и всякие воткнутые флэшки и прочие загрузчики шиндовс определяются автоматически.

Нет, неправильно.

dots написал(а):
...пересборка создаст второе ядро из старых исходников, правильно?

Нет, неправильно. Если версия/модификатор не поменялись, то перекомпиляция просто перепишет старое.
Но, в зависимости от установщика, при перезаписи бинарников в /boot/ они (или ссылки) могут переименовываться.

dots написал(а):
...Старое ядро никуда не денется...

И еще раз нет - в /usr/src/linux/ обновятся те же бинарники, а вот в /boot/ - см. выше.

https://wiki.gentoo.org/wiki/

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".