Обновить

Собираем и запускаем минимальное ядро Linux

Уровень сложностиСложный
Время на прочтение9 мин
Охват и читатели12K
Всего голосов 35: ↑31 и ↓4+38
Комментарии9

Комментарии 9

Кроме того, через qemu можно подключить отладчик прямо к действующему ядру Linux.

qemu-system-x86_64 [...] -s -S

gdb vmlinux -ex 'target remote localhost:1234'

kgdb тут вообще нипричём.

# Если хотите сделать минимальное ядро, воспользуйтесь tinyconfig вместо allnoconfig. # Не представляю, чем они отличаются.

Без комментариев - и это человек собирает "минимальное" ядро.

Вместо этого и прочей мути:

~ git clone https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
~ du --max-depth=1 --block-size=GB | grep linux

git clone --depth=1 -b v5.19.17 git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
du --max-depth=1 --block-size=GB
2GB .

qemu-system-x86_64

qemu-system-x86_64 -cpu host --enable-kvm [...]

Так гораздо веселее.

Так гораздо веселее.

Нет, веселее именно так, как указано в статье. А работать будет если сделать так, как вы указали

Если не хоитите, чтобы вас прокляли навеки - никогда не собирайте минимальный конфиг ядра в софте клиента. Плюс-минус десяток мегабайт - да вообще не вопрос в наше время, тем более, что модули лежат отдельно в папочке. А то вот только на днях столкнулся, что в одном из официальных дистрибутивов OPi5 нет модуля nfs-сервера, хотя дистрибутив гордо именуется "*-server". Не, там плата позволяет прямо на ней пересобрать ядро, но блин, в 21 веке экономить 5 метров, особенно относительно размеров дистрибутива в пару гигов...

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

После:

Затем отметим галочкой ту версию, которая нас интересует.

что в оригинале:

Then, checkout the tag of the version you're interested in.

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

Это не просто машинный перевод, это бездумный машинный перевод

Поэтому и статья помечена как "сложная", ведь поди-ка, разберись, что там на самом деле в виду имелось. Хотя что тут сложного, две софтины make-ом собрать.

В чем смысл публикации и перевода?
Какой-то бывший студент(The University of Texas at Austin May 2020) публикует 2022-08-27 статью в своем бложике о том,
как он собирал ядро Linux по книжке(книга годная! - UnderStanding The Linux Kernel 3rd Edition)
Ветка ядра 5.19 умерла с Linux 5.19.17
Date: Mon, 24 Oct 2022 10:23:13 - From: Greg Kroah-Hartman
"...Note this is the LAST 5.19.y kernel to be released. This branch is now
end-of-life. You should move to the 6.0.y branch at this point in time..."
Явно пользуется deb-подобным дистром и говорит про make tinyconfig в gentoo QEMU Linux_guest
В любом раскладе, если использовать QEMU:
make defconfig
make kvm_guest.config

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Информация

Сайт
timeweb.cloud
Дата регистрации
Дата основания
Численность
201–500 человек
Местоположение
Россия
Представитель
Timeweb Cloud