LINUX.ORG.RU

linux make menuconfig стал менее толерантен к ошибкам?

 


0

1

Что-то я заметил, что вручную править конфиг ядра стало накладно. В 2003 году классический для того времени linux-2.4 был очень прост.

Сейчас же слишком много времени уходит на приведение конфига к рабочему виду, чтобы ядро не зависало в процессе работы и т.п.

Поэтому я выбрал для себя такой путь... Беру дефолтный конфиг из любого дистрибутива, и правлю под себя. Примерно с пятой попытки получается его урезать до минимального рабочего состояния.

Но всё-равно уходит куча времени...

А как вы решаете вопрос?

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

Беру дефолтный конфиг из любого дистрибутива, и правлю под себя. Примерно с пятой попытки получается его урезать до минимального рабочего состояния.

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

Но всё-равно уходит куча времени...

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

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

Было бы здорово, но я такого не знаю. Да и как то обходился без него все эти десятки лет. Так то идея годная, но думаю нас таких мало, кто ядро сам собирает, большинство готовыми пользуется, из дистрибутивов. Им такой сайт не нужен. А мы и сами как то осиливаем...

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

Вопрос, что лично тебе даёт отключение опций в ядре, оставив только нужные под твое железо?

Выигрыш во времени компиляции ядра? Или ещё и выигрыш в производительности?

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

Ты проводил тесты производительности на твоём оптимизированном ядре и ядре с обычным конфигом?

Я сам когда-то использовал Gentoo и тоже оптимизировал конфиг ядра. Но потом оказывается что появляется новое оборудование и тут либо нужно дособрать один-два модуля под текущее ядро, либо пересборка ядра. Если в самом ядре выключена нужная опция и нельзя собрать модулем.

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

Вопрос, что лично тебе даёт отключение опций в ядре, оставив только нужные под твое железо?

Чувство глубокого морального удовлетворения.

Выигрыш во времени компиляции ядра?

Да

Или ещё и выигрыш в производительности?

Иногда, но её обычно и так достаточно с избытком, если это конечно не какой нибудь Атом.

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

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

Ты проводил тесты производительности на твоём оптимизированном ядре и ядре с обычным конфигом?

Проводил, иногда разница в пределах погрешности, иногда чуть быстрее, загрузка быстрее всегда, но ssd сделал это преимущество несущественным.

Я сам когда-то использовал Gentoo и тоже оптимизировал конфиг ядра. Но потом оказывается что появляется новое оборудование и тут либо нужно дособрать один-два модуля под текущее ядро, либо пересборка ядра. Если в самом ядре выключена нужная опция и нельзя собрать модулем.

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

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

Я собираю ядро по двум причинам — мне интересно поковыряться, просто чтобы не заржаветь и быть в курсе что там как добавляется и развивается, заодно я лучше узнаю своё личное «железо», и ещё потому что иногда дистрибутивные ядра слишком «консервативные» и там выключены какие нибудь новомодные экспериментальные «фичи», или не включены какие нибудь тонкие «фишечки» для моего железа. Всё конечно и без них работает обычно, но мне любопытно и я хочу это «пощупать».

Если всё это «не вставляет», вникать некогда и хочется просто пользоваться дистрибутивом — родного заранее обинаренного ядра полностью достаточно всегда и всем. Совсем не обязательно вникать в «ядерную физику» чтобы просто работать свою работу или в игрушки играть.

Jameson ★★★★★
()