Где я могу получить файл .config ядра 11.04?

15

Я использую Maverick с последними доступными ядрами на kernel.org и строю их самостоятельно. До сих пор я основывал свою конфигурацию на ядре Maverick и принимал значения make oldconfig по умолчанию. Я делаю это для 3 основных выпусков, поэтому я полагаю, что я начинаю проскальзывать за текущим «стандартом».

Я хотел бы заново основать свои ядра с нового файла Natty .config . Является ли это доступным где-то в Интернете или мне нужно загрузить весь пакет ядра и извлечь его?

Изменить: я вручную вытащил конфигурацию из последнего пакета ядра Natty, и я могу подтвердить, что я, вероятно, должен был сделать это раньше. Много различий между моей старой «развитой» конфигурацией и дефолтом Natty. Теперь, если бы я мог просто сделать это без 20 минут охоты и загрузки пакета, чтобы я мог снова обосноваться в будущем.

    
задан Oli 25.02.2011 в 16:37
источник

4 ответа

7

Команда ядра разместила здесь конфиги для Natty:

Источники:

ответ дан Jorge Castro 24.03.2011 в 20:07
источник
29

Каждый пакет linux-image содержит точный файл конфигурации, который был создан с помощью /boot/config-* . Чтобы просмотреть файл конфигурации для текущего ядра Linux, выполните следующие действия:

  • less /boot/config-$(uname -r)

Я проверил с людьми ядра Ubuntu (на Freenode #ubuntu-kernel ), и они подтвердили мою уверенность в том, что на самом деле нет « config», но он фактически построен в build / время компиляции, включая количество% файлов co_de%; они зависят от точной архитектуры и цели (desktop / server / cloud). Вы должны уметь читать этот (короткий) разговор по адресу:

Список этого сорта можно найти с помощью packages.ubuntu.com и следующего поиска:

Охота, вокруг, казалось бы, что Kconfig также включено в пакеты .config . Это linux-headers-* файлов (которые представляют собой простые .deb архивов, которые будут открываться с .ar ) и всего около 800 kB каждый. Если вы знаете конкретную цель, архитектуру и версию, которую вы используете, вы можете захватить их прямо с Launchpad или из самого архива:

  1. archive.ubuntu.com/ubuntu/pool/main/l/linux/linux -header-2,6 * .deb
  2. затем посмотрите в file-roller /usr/src/linux-headers-2.6*/

Если вы хотите автоматизировать весь процесс в одну команду, вы можете попробовать следующее: убедитесь, что вы держите все это на одной линии!

  • .config

Надеюсь, что это поможет!

    
ответ дан sladen 15.03.2011 в 13:40
4

В моей системе Ubuntu 11.10 конфигурация ядра находится в файле '/boot/config-3.0.0-12-generic'.

    
ответ дан Marat BN 22.01.2012 в 08:10
0

Репозиторий ядра Ubuntu git

Метаданные debian/ , содержащие конфиги, и дерево ядра отслеживаются как в одном репозитории git для выпуска: Ссылка

Затем у репо есть тег для каждого пакета ядра, например. в моем Ubuntu 18.04 у меня есть пакет linux-image-4.15.0-36-generic , который, как я предполагаю, соответствует тегу: Ubuntu-4.15.0-36.39 .

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

Все конфигурации, похоже, находятся под debian.master/config/ARCH , который содержит:

config.common.ubuntu
config.common.ports
amd64/config.common.amd64
amd64/config.flavour.generic
amd64/config.flavour.lowlatency

, поэтому я предполагаю, что linux-image-4.15.0-36-generic объединит config.common.ubuntu , config.common.amd64 и config.flavour.generic .

Сценарий, выполняющий слияние, выглядит как debian / scripts / misc / kernelconfig и содержит комментарий:

# Merge configs
# We merge config.common.ubuntu + config.common.<arch> +
# config.flavour.<flavour>

TODO: существует также debian.master/config/annotations , который, как представляется, содержит значение для каждой конфигурации для каждой арки, как это используется?

Кто-то должен подтвердить все это, запуская скрипты сборки в сложном режиме, но теперь я ленив, вы можете создать с помощью:

git clone git://kernel.ubuntu.com/ubuntu/ubuntu-bionic.git linux
cd linux
git checkout Ubuntu-4.15.0-36.39
fakeroot debian/rules clean
debian/rules updateconfigs
fakeroot debian/rules build-generic

Затем я подтвердил, что это создает ту же конфигурацию, что и локальная:

diff debian/build/build-generic/.config /boot/config-4.15.0-36-generic

Обратите внимание, что у ядра Ubuntu git repo также есть тысячи исправлений на вершине вверх по потоку Linux, поэтому просто получить правильную конфигурацию будет недостаточно, чтобы воспроизвести поведение.

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

[    0.000000] Linux version 4.15.0-36-generic ([email protected]) (gcc version 7.3.0 (Ubuntu 7.3.0-16ubuntu3)) #39-Ubuntu SMP Mon Sep 24 16:19:09 UTC 2018 (Ubuntu 4.15.0-36.39-generic 4.15.18)

Конфигурация в .deb

Как уже упоминалось другими, окончательная полная конфигурация также присутствует:

/boot/config-4.15.0-36-generic

, которые соответствуют каждому изображению ядра Linux:

/boot/vmlinuz-4.15.0-36-generic

Итак, для других версий мы можем найти, из какого пакета они поступают:

dpkg -S /boot/config-4.15.0-36-generic

, который дает:

linux-modules-4.15.0-36-generic: /boot/config-4.15.0-36-generic

, а затем вы можете просто загрузить .deb из Ссылка  и извлеките его, чтобы получить конфигурацию:

mkdir config
cd config
wget http://mirrors.kernel.org/ubuntu/pool/main/l/linux/linux-modules-4.15.0-36-generic_4.15.0-36.39_amd64.deb
ar x linux-modules-4.15.0-36-generic_4.15.0-36.39_amd64.deb
tar -xvf data.tar.xz
cat ./boot/config-4.15.0-36-generic

Протестировано в Ubuntu 18.04.

    
ответ дан Ciro Santilli 新疆改造中心 六四事件 法轮功 07.10.2018 в 10:00