Могу ли я получить файл .config из файла vmlinuz?

Я использую Arch Linux с настраиваемым ядром, которое хранится как /boot/vmlinuz-linux1 . Некоторые функции, которые я хотел бы иметь, не работают в нем, но есть также ядро /boot/vmlinuz-linux где эти функции работают. Как я могу получить файл конфигурации ядра .config из второго файла vmlinuz , чтобы сравнить его с конфигурацией первого ядра в текстовом редакторе?

Насколько мне известно, извлечение конфигурационного файла .config из ядра возможно только в том случае, если вы скомпилировали его с параметром конфигурации CONFIG_IKCONFIG (доступным в меню конфигурации в качестве записи General setup > Kernel .config support ). Вот документация по этой опции конфигурации:

 CONFIG_IKCONFIG: This option enables the complete Linux kernel ".config" file contents to be saved in the kernel. It provides documentation of which kernel options are used in a running kernel or in an on-disk kernel. This information can be extracted from the kernel image file with the script scripts/extract-ikconfig and used as input to rebuild the current kernel or to build another kernel. It can also be extracted from a running kernel by reading /proc/config.gz if enabled (below). 

Последнее предложение относится к дополнительной опции конфигурации CONFIG_IKCONFIG_PROC которая дает вам доступ к конфигурации запущенного ядра через файл в псевдо-файловой системе proc .

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

 gunzip /proc/config.gz > .config 

если был выбран CONFIG_IKCONFIG_PROC , и вы в настоящее время работаете /boot/vmlinuz-linux или

 scripts/extract-ikconfig /boot/vmlinuz-linux 

Сценарий extract-ikconfig – это тот, который доступен вместе с источниками ядра, в scripts папок.