LINUX.ORG.RU

Ответ на: комментарий от ILOVEALLLINUX

Тогда нужны подробности:

  • что значит «Вот я с гитхаба установил себе новое ядро и что дальше?»?
  • зачем «очень хочу установить новое ядро»?
  • «и что дальше», а что надо?
vvn_black ★★★★★ ()
Ответ на: комментарий от ILOVEALLLINUX

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

А для этого сконфигурировать ядро.

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

Есть старое руководство, «ядерная физика для домохозяйки», но оно под старые ядра, общие принципы рассказаны, но ты столкнешься с проблемами.

Современного руководства сейчас не подсказать, можешь открыть раздел Gentoo Handbook про сборку ядра.

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

Но всему тебе придется учиться самостоятельно.

Как только сделаешь первый конфиг ядра, который сможет загрузиться,смонтировать корень и запустить Linux будешь дальше его изменять под себя.

Можешь конечно в начале сгенерировать default конфиг.

make defconfig

а потом его менять под себя

make menuconfig

Но ты скорее всего бросишь эту затею, терпения не хватит.

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

Хотя бы использовать переводчик, но ты этого не хочешь.

infomeh ()
Ответ на: комментарий от ILOVEALLLINUX

Я слышал что zen ядро 1.5-2 раза быстрее.

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

Да и в принципе заинтересовался ядрами

Может тебе стоит ставить обычные ядра, но писать к ним свои модули?

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

Но ты скорее всего бросишь эту затею, терпения не хватит.

Эх, помню, в генте я периодически компилировал ядра, поскольку там это ШТАТНАЯ ПРОЦЕДУРА. Как ушёл на дебиан — бросил. :(

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

Это не руководство, а делай так и все, без объяснений почему и зачем и пояснения как нужно делать, если имеешь такую ситуацию или другую.

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

Браво. Уже второй)

Дело в том, что то что лежит в /boot не является всем ядром, у этого ядра есть куча кусочков в /lib/modules/kernel_name и в конкретное запущенное ядро грузятся автоконфигуратором и часть модулей там может лежать и не быть загруженными вообще никогда, и будут они там просто лежать, или ты их удалишь, или ты их отключишь при настройке ядра перед компиляцией нет никакой разницы, всё что ты можешь получить включением/выключением модулей это размер каталога /lib/modules или объединение всех модулей в одно полностью собранное ядро, это может быть важным для всяких микроконтроллеров с крохотным ПЗУ но не имеет смысла для обычных ПК в которых экономия памяти в 50 мегабайт или чуть более быстрая скорость загрузки ничего не даст.

Отсюда и такое нашмешливое отношение форумчан к самостоятельной компиляции ядра.

Исключением может быть только если ты пользователь Gentoo который позволяет затачивать все программы и библиотеки под свой конкретный ПК(ebuild), но и там двойных выигрышей в быстродействии в общем виде не будет.

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

Продолжение поста 👆

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

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

и это должно толсто намекать :) пока новичек играйся с другими частями линукса. подрастешь, поймешь зачем тебе собственное ядро и что за этим тянется - скомпилишь и поставишь. но скорей всего до этого просто не дойдет.

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

Я слышал что zen ядро 1.5-2 раза быстрее

Врут. Чуть-чуть быстрее, да. Но надо очень присмотреться, чтоб заметить разницу.

Желательно ссылку на мануал) Или хотя бы вкраце обьяснить

Поставь Арч и почитай Арчевики (хотя Арчевики стоит почитать даже если не будешь ставить Арч). В Арче в стандартных репах лежит аж четыре сборки ядра - текущее, стабильное, зен и харденд. А в AUR еще с десяток наберется. Можешь поставить хоть все сразу и переключаться между ними.

qtm ()
Ответ на: комментарий от anonymous

и какие же например, кроме bfq, который и так в апстриме?

MuQSS например.

Пишут про него интересно, сам ещё не пробовал, хотя у ебилда calculate-sources соответствующий use флаг есть. У меня и так всё отзывчиво работает, зачем несломанное чинить.

Jameson ★★ ()

Здравствуй новичок. Пишет тебе далеко не новичок, я с Линукс больше двадцати лет. Ядро я собирать умею, потому что учился его собирать когда оно было версии 2.0 на Слаквари, а потом на Генту. У меня всегда были вылизанные подо все мои железки конфиги, со всем нужным и без всего лишнего на этих конкретных железках и с модулями исключительно на то что не модулем не работает\не удобно использовать. Конфиги я эти таскал с ядра на ядро, постепенно подправляя\адаптируя.

Однако уже несколько лет я этим не занимаюсь и использую то что мне предоставляет мой дистрибутив. На это есть несколько причин.

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

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

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

Если же тебе просто любопытно и ты не собираешься возню с Линукс делать своей профессией - забей и пользуйся готовым. Даже когда появится что нибудь вкусное типа патчей fsync для ядра (штука полезная для тех кто играет в виндовые игры через steam proton или wine staging, но и без неё все работает) кто нибудь обязательно соберёт вариант ядра с этим для твоего любимого дистрибутива.

Если ты всё таки решишь этим заняться сначала изучи как ядро устанавливается пакетным менеджером твоего дистрибутва и как собирается пакет с ядром из пакета с исходниками. Голое ядро с kernel.org в рукопашную собирается и ставится либо в Slackware, либо в Gentoo, хотя даже в Gentoo есть ebuildы устанавливающие и подготавливающие исходники для самостоятельной дальнейшей сборки, в том числе и девственно ванильные ядра с kernel.org без всяких «левых» патчей. Ну и в LFS конечно, тоже вручную.

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

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

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

Я сейчас уже не помню что конкретно, но некоторые вещи в ядре модулями работают лучше чем будучи статично вкомпилёнными. Тем более всякая подключаемая\отключаемая на лету периферия эстетичнее смотрится в модулях.

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

Какие то usb свистки у меня не заводились будучи не модулями, так как требовали подгрузки фирмвари на взлёте. Фирмварь тоже можно вкомпилить конечно, но тогда свисток определялся только воткнутый при загрузке. В итоге я usb, файловые системы не нужные при загрузке, модули iptables, шифрование всякое стал динамически собирать. Ядро для embedded железки лучше конечно статическое собирать, но тут тоже вопрос, зачем держать в памяти код который не используется вот прямо сейчас, если его можно подгрузить при нужде динамически.

Такой ответ тебя устроит, гомофоб ты наш?

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

зачем держать в памяти код который не используется вот прямо сейчас

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

В итоге я usb, файловые системы не нужные при загрузке, модули iptables, шифрование всякое

для всего кроме твоих usb свиcтков это выходит бесполезно и не обосновано

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

бесполезный код поддержки модульности

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

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

Дурацкий разговор какой то

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

неудобно

как раз удобно, никаких initramfs, grub и прочего гумна

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

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

С чего ты решил что я этого не знаю?

как раз удобно, никаких initramfs, grub и прочего гумна

initramfs нужна только если ядру нужны какие то модули чтобы до корня добраться, это очевидно, никто не мешает и не запрещает запихнуть всё это статически и не использовать initramfs. Собственно всегда так и делал, когда меня это парило, сейчас не парит, стало пофиг внезапно. GRUB нынче с появлением UEFI стал ненужной сущностью, у меня его и так нет. И к модульности это не имеет никакого отношения. Прочее гумно есть, только оно меня не парит, потому что всё что нужно уже давно начало работать само из коробки благодаря этому гумну. И я теперь могу сосредоточиться на том что мне действительно интересно, а не ядро ковырять.

Короче ты споришь просто чтобы спорить.

Jameson ★★ ()