1 (27.11.2020 09:40:40 отредактировано putexod)

Есть вопросы по конфигурации ядра. Первый раз это делаю. Стараюсь пройти по всем пунктам. Главный вопрос - стоит ли сразу это делать или установить по дефолту с рекомендуемыми правками, а потом разобраться?
Но правки явно нужны, так как, например, у меня был включён 64-bit kernel. Но у меня CPU 32-bit.
Или опция Support for mouse button 2+3 emulation, судя по описанию, нужна только для яблочных машин.
Я стараюсь пройти по всем пунктам и как-то вникать. Не знаю - сколько это времени отнимет. Но раз есть опции, которые мне не нужны, то стоит их отключить. Или собирать, как есть, а уже потом пересобирать?

Так же еще ряд вопросов:


General setup -> Timers subsystem -> High resolution Timer Support
В интернетах сказано, что эта опция поддерживается не всеми процессорми. Предположил, что моим тоже не, всвязи с его древностью. Как узнать?

-> Device drivers -> Network device support -> Wireless LAN
Имеем там кучу включённых пунктов. Я так понимаю, что их все можно поотключать, кроме того, что имеется в пк, верно?
Собственно, кажется, что все пункты отмечены * только за ради того, что бы открылось субменю со списком конкретных устройств.

Тот же вопрос и к Ethernet. Можно ли поотключать все пункты? И в дополнение: я не планирую пользоваться Ethernet, но думаю, что его поддержку стоит оставить на всякий случай. Адекватно ли будет выбрать вместо <*> - <M>.
И еще вопрос: в Ethernet drivers support есть пункт меню Broadcom devices (выбран мною) и у него есть субменю, в котором у меня выбрано Broadcom 440x/47xx ethernet support. Вопрос. Ели я выбираю в субменю <M>, то стоит ли проставить M напротив пункта меню или оставить *?


Пока всё. Буду добавлять вопросы. Хотелось бы с ядром разобраться до вечера. Если это реально)))

2

Это довольно обширная тема, если касается того, что должно быть установлено. А так полно документации на Gentoo wiki по опциям.
На счёт сетевой карты, то нет проблем урезать. Просто загружается с какого нибудь LiveCD, смотришь какой модуль используется для интернета:

 Консоль:
$ lspci -k

Либо:
 Консоль:
$ lspci -vv

А далее смотришь этот модуль в конфиге ядра, а далее запускаешь конфигурацию ядра:
 Консоль:
# make menuconfig

Жмакаешь клавишу /, и вбивашь в строке поиска параметр из конфига относящийся к данному модулю, как результат оно выдаст какие опции должны быть включены для работы данного модуля, вот их и стоит оставить, остальное можно почистить. На счёт IPv4 и IPv6, то параметры можно найти в Гугле. Вроде ещё должно быть написано в документации ядра.

3

Потраченное время того не стоит.
Изменять дефолтные (дистрибутивные) настройки следует лишь при необходимости, а не по принципу "у меня нету - поэтому отключу".
Отключать модули ещё более глупо, ведь они загружаются только при необходимости.

4

Vascom пишет:

Потраченное время того не стоит.
Изменять дефолтные (дистрибутивные) настройки следует лишь при необходимости, а не по принципу "у меня нету - поэтому отключу".
Отключать модули ещё более глупо, ведь они загружаются только при необходимости.

А  дефлотные настройки в Gentoo тоже не отличаются особым набором,  обычно приходится все равно допиливать, либо брать какой нибудь сторониий готовый конфиг.

5

ormorph пишет:


А  дефлотные настройки в Gentoo тоже не отличаются особым набором,  обычно приходится все равно допиливать, либо брать какой нибудь сторониий готовый конфиг.

Ok. Может актуально будет тогда собрать с помощью genkernel, дабы работало. А уже потом собрать своё и с этим уже экспериментировать?
*** Добавлено: 29.11.2020 02:54:20 ***

Vascom пишет:

Потраченное время того не стоит.
Изменять дефолтные (дистрибутивные) настройки следует лишь при необходимости, а не по принципу "у меня нету - поэтому отключу".
Отключать модули ещё более глупо, ведь они загружаются только при необходимости.

Ну поддержка 64bit, например, мне нафиг не нужна. Но она по-умолчанию включена. Так что правки, думается, нужны. Но я не спец. Не знаю.

6 (29.11.2020 04:57:02 отредактировано ormorph)

putexod пишет:

Ok. Может актуально будет тогда собрать с помощью genkernel, дабы работало. А уже потом собрать своё и с этим уже экспериментировать?

Можно и так, вроде ещё был сайт с конфигами ядра для старта, но там довольно старые версии, по этому не знаю как поведет себя make oldconfig
Если использовать raspberry pi, то там конфиг генерируется отдельной командой, и переделывать его не очень то и нужно.

7

Тут обычно: если не спец и не знаешь, то одно из двух - либо узнай сперва, либо не трогай.

8

Vascom пишет:

Тут обычно: если не спец и не знаешь, то одно из двух - либо узнай сперва, либо не трогай.

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

9

Размен времени компиляции на время изучения и конфигурации.
Только компиляция - это время процессора (мы можем и поспать или поработать полезно), а конфигурация - уже непосредственное время пользователя.

Но решать, конечно, нам самим.

10

Ну тут не особо много времени на изучение. Документации полно и правится достаточно быстро все это. Долго только в начале, когда формируешь  начальный конфиг. На решение проблем с новыми устройствами в конфигурации ядра обычно уходит минут 15-20, остальное время занимает сборка ядра. Но эти проблемы возникают не так часто.

11

1. Какая цель преследуется?
2. Не ломай то что работает - это основное правило.
А вот если не работает тогда можно и в дебри полезть.
3. Можно ли найти ответ на интересующий вопрос? Возможно как правило, если знать что искать.
4. Сложно советовать не имея вашего железа или данных вашей конфигурации под рукой.
5. Решили заняться оптимизацией ядра дело хорошее, но в нынешних реалиях бессмысленное.
Вы посмотрите на дистрибутив windows 95 и windows 10. На любой дистрибутив линукса 20 летней давности и современный.
Чем отличаются? Правильно - размером.
Раньше программисты выкраивали каждый байт информации чтобы не занять лишнее место на диске. Когда диски стали больше, то программисты стали глупее и стали использовать фреймворки и исполняемые библиотеки которые занимают приличный объем в системе. Всем плевать на производительность и красоту кода, а самое главное на объем диска.
Желаете стать человеком который это исправит, тогда вам нужно не в ядро заглядывать, а изучать программирование.
Ибо ядро нужно трогать только тогда если что-то работает не так.

12

Я не согласен, что программисты стали глупее.
Глупо стало выкраивать несколько мегабайт на диске и в ОЗУ (при том, что браузер отъедает гигабайты), и несколько тактов процессора. Затрачиваемые усилия не стоят результата.

Если бы это было кому-то нужно - давно бы сделали. Как во встраиваемых девайсах, хотя и там железо улучшается.

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

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