LINUX.ORG.RU

Gentoo Linux - Как выбирать необходимые модули для Gentoo?

 , ,


0

1

Хочу качественно собрать gentoo , без genkernel ,на ноутбуке уже есть виндовс7 ,в хендбуке написано :

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

Как понять какие модули нужны а какие нет? Собираются на домашний ноутбук , хочу чтоб был kde , можно было выбрать что загружать : винду или генту ,незнаю что и ещё добавить.Какие модули надо по отключать в меню вызываемое # make menuconfig ? На ЛОРе пишут что надо поставить все что выводит lspci, то есть по отключать все остальные модули?


Как понять какие модули нужны а какие нет?

Быстрый и простой способ, эт загрузится в Ubuntu Live CD и выполнить

lspci -k
Да и генту можно поставить так же, с лайва

fang90 ★★★★★
()

Загрузиться с лайва, изучить выхлоп lspci -k и затем искать нужное в конфиге ядра. Исключать же модули следует осторожно, если не знаешь, для чего они предназначены. Или вопрос в том, чему быть вкомпиленным в ядро, а чему модулем?

mathcrosp ★★
()
Последнее исправление: mathcrosp (всего исправлений: 2)
Ответ на: комментарий от mathcrosp

Тоесть прогуглить каждый модуль и понять? Я пытаюсь ввести lspci -k , но она невлазит на екран, когда же пишу lspci -k > gytwerwqee где gytwerwqee файл который я создал для принятия вывода команды, мне отвечают :

lspci: Unable to load libkmod resources: error -12

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

Зачем же гуглить всё подряд? Просто включи всё, что покажет lspci -k | less. Если после загрузки что-то не будет работать, тогда уже можно будет погуглить, что за драйвер используется этой железкой. По поводу ошибки lspci вряд ли подскажу, я сейчас забежал сюда с телефона, и гуглить не удобно. Может, что что-то не так с одной из библиотек.

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

Умерь пыл. Вы уже проходили Онегина? «Мы все учились понемногу». Хотя насчёт манов ты, конечно, прав.

mathcrosp ★★
()

хендбуке написано

Не аргумент. Хэндбук писали предполагая монолитное ядро и самый простой для описания случай т.е. никаких luks, lvm2, mdadm а просто обычная фс. Не смотря на это даже в portage есть sys-kernel/dracut, sys-kernel/genkernel при помощи которых ты можешь собрать initramfs и оставить модули модулями не вкомпилируя их монолитно в ядро.

Как понять какие модули нужны а какие нет? (дальше вырезано цензурой)

Под модулями имелись в виду модули ядра aka kernel modules а кедам по большему счету вообще глубоко насрать на модули ядра.

А правильный вопрос звучит так:

Научите как правильно собрать ядро linux?

Так вот открой свой любимый поисковик и вбей туда этот вопрос.

Последний инвайт на гугл отдам бесплатно…

init_6 ★★★★★
()

Собираются на домашний ноутбук

Определяешься, какое железо у тебя внутри (lspci, lsusb) и проверяешь, что все необходимые модули (и зависимости к ним) к нему включены, по списку - видеокарта, звук, сетевая карта, Wi-Fi, вебкамера если есть, какие-нибудь внешние устройства. Также убедись, что включены блочные драйверы и модули файловых систем (как минимум для корневого раздела), чтобы ядро вообще могло загрузиться

Harald ★★★★★
()

Читай help к опциям в make menuconfig. Там часто пишут, что-то вроде «If you don't know what is _, you don't need that option». Думай какие модули нужны для работы твоего железа.

А вобще возьми конфиг genkernel, а потом уже разберешься со своим конфигом.

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

Грузишься с livecd, скачиваешь и распаковываешь сорцы ядра, выполняешь make oldconfig или make localyesconfig, используешь полученный .config

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)

на рано ли тебе ядро?

До какого места дошёл в инсталле?

Руский мануал лучше не читать - сильно устарел и возможны ошибки.

На виртуалках тренировался?

anonymous
()

make localmodconfig, потом - make menuconfig - и вкомпиливашь намертво те драйвера, без которых не загрузишься(контроллер HDD и файловая система корня). initrd в такой конфигурации(если нет LVM, RAID или шифрованного корня) можно не делать.

Pinkbyte ★★★★★
()

Как понять какие модули нужны а какие нет?

Можно сделать как сказали выше: загрузиться с live/рабочей системы и понять какие модули нужны. Вот хороший мануал: http://unix.stackexchange.com/questions/119876/how-to-build-a-custom-kernel-w...

Но я делаю по-другому.

Подход:
- Сначала заставь работать, потом оптимизируй (убирай лишнее, вкомпиливай модули, добавляй специфичные/опциональные опции).
- В ядре 99% из того, что тебе нужно, уже включено.
- Все, тебе нужны 4 вещи 1) вывод lspci 2) вывод lsusb 3) понимание системы; например, если ты используешь reiserfs, не забудть ее вкомпилить в ядро 4) wiki/мануалы на конкретные фичи (типа sensors, lwm и т. п.), но это, как правило на втором этапе (оптимизация, обрастание фичами).
- В 99% случаях initrd не нужен. Он нужен только для специфичных фич; wiki/мануалы тебе скажут об этом. Не сказали - значит не нужен initrd. Но для этого по-максимуму все вкомпиливай в ядро (а не модули).

Для стадии 1 (заставить работать):
- Включай только то, что может понадобится;
- Выключай только то, что точно знаешь что не понадобится; но лучшее вообще ничего не выключай;
- Если не уверен или не знаешь что это - не трогай, оставь настройки по умолчанию;
- Старайся не включать функции помеченные как Deprecated и Experimental;
- Не включай любые debug; включаем только если что-то не работает и мы хотим выяснить почему;
- Каждый раз делаем новую версию ядра (CONFIG_LOCALVERSION в помощь); если новое ядро почему-то не взлетело, всегда должна быть возможность откатиться на предыдущую конфигурацию.
- Все включаем в ядро монолитно; включаем в виде модулей в исключительных случаях только если это нужно для каких-то целей (как правило, не нужно).

Далее я делаю:

$ cd /usr/src/linux
$ make defconfig
$ make menuconfig
Далее пробегаю по пунктам, соответствующим выводу lspci и lsusb, еще «процессор», LOCALVERSION, вкомпиливаю файловые системы. На этом этапе я также добавляю украшательства типа 'Kernel .config support' , 'Magic SysRq key', может что-то еще, но это не обязательно. Далее, загружвешь ядро, тестируешь все, что включил. Если заработало - вперед оптимизировать, обзаводиться фичами т. п.

Kroz ★★★★★
()
Последнее исправление: Kroz (всего исправлений: 1)
Ответ на: комментарий от Kroz

Всем огромное спасибо , запустил genkernel как посоветовали, все пока работает)

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

make localyesconfig попробуй. Он или отработает и монолитно выставит всё нужное, либо выплюнет ошибку со списком того, что нужно включить.

Или make localmodconfig, если желаешь получить то же самое в виде модулей(хотя я предпочитаю основные компоненты запиливать монолитно).

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