LINUX.ORG.RU

Где настраивается подставка версии и названия ядра при make install?

 , ,


0

1

Если скачать ваниальное ядро, например https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.7.2.tar.xz

И указать в .config:

CONFIG_LOCALVERSION="-custom"
То после make bzImage && make modules && make modules_install && make install мы получим:
/boot/vmlinuz
/boot/System.map
/lib/modules/4.7.2-custom

А как настроить, чтобы в /boot/ попадали vmlinuz, System.map с подставкой версии и названия, а также чтобы туда копировался конфиг, тоже с версией и названием? Чтобы вот так было:

/boot/vmlinuz-4.7.2-custom
/boot/System.map-4.7.2-custom
/boot/config-4.7.2-custom
/lib/modules/4.7.2-custom


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

Не благодари.

Пока не за что благодарить,

т.к. если указать EXTRAVERSION в Makefile (а не LOCALVERSION в .config), то в /boot попадают всё равно голые vmlinuz и System.map, конфига по прежнему нет.

А /lib/4.7.2-* одинаковый, что при указании LOCALVERSION в .config, что при указании EXTRAVERSION в Makefile.

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

И да к тому +

 ➜ grep LOCALVERSION .config 
CONFIG_LOCALVERSION=""
# CONFIG_LOCALVERSION_AUTO is not set

И да при этом

 ➜ uname -r
4.7.2-bentoo

 ➜ ls -1 /lib/modules/ | grep 4.7.2
4.7.2-bentoo

УМВР!

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

У меня тоже это же работает, вопрос выше о том, может ли make install переименовывать vmlinuz в vmlinuz-4.7.2-bentoo, как и System.map, как и config (копируя его в /boot также) или не должен.

Сам знаешь, что в генте — копирует потроха с конфигом и называет и их, а не на генте — не копирует конфиг и не называет потроха, так-то.

Я диффнул с десяток всяких конфигов и мейкфайлов гентушного ядра и ванильного — они одинаковые (за исключением EXTRAVERSION = -gentoo), но в генте make install делает то, что мне нужно.

Мне нужно то же самое на void.

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

У меня тоже это же работает, вопрос выше о том, может ли make install переименовывать vmlinuz в vmlinuz-4.7.2-bentoo, как и System.map, как и config (копируя его в /boot также) или не должен.

Нет не может? А это:

 ➜ mount /boot/

 ➜ ls -1 /boot/ | grep 4.7.2
config-4.7.2-bentoo
System.map-4.7.2-bentoo
vmlinuz-4.7.2-bentoo-1

ложь и я сюда зашел тупо потроллить? Ты упорот? И да diff-ать надо не config-и. Всегда твой Капитан Очевидность.

Мне нужно то же самое на void.

Нужно? Бери и делай. Главное я тебе уже показал и оно вон там. И успехов.

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

Я же тебе сказал, что пробовал на ванильном ядре указать в Makefile EXTRAVERSION = -custom, оно так называет диру с модулями в /lib/modules и вписывает инфу в uname -r, но не переименовывает vmlinuz, System.map и config при копировании в /boot/ (а config не копирует вообще).

Не веришь — скачай не на генте ванильное ядро и попробуй.

Бери и делай.

Я и пытаюсь, это смысл этого треда.

я тебе уже показал и оно вон там.

Спасибо, но это не работает не на генте.

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

Нет не может?

есть подозрение что может, нужно только сделать make help

по остальному да, ради интереса потратил 5 мин. и уже нашел всю «магию»
ТС не знает как работает гента :)

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

ТС не знает как работает гента :)

Очевидно. :)

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

У него /sbin/installkernel не такой, как в генте (или его вообще нет)

да, не такой, точнее его нет в Void вообще, спасибо большое, тред закрываю, решено.

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