Responde automaticamente os padrões ao fazer 'make oldconfig' em uma árvore de kernel

32

Ao criar um novo kernel baseado em uma configuração anterior, existe uma maneira de automatizar o processo make oldconfig para que ele defina novas opções para seus valores padrão?

Edit: O que quero dizer é que ao usar um .config (de /boot/config-* ou /proc/config.gz ) em um kernel mais novo, o processo make oldconfig perguntará se você deseja ou não ativar opções que não estavam disponíveis no seu kernel antigo. Você pode responder Y / n / m ou pressionar enter para aceitar o padrão. Eu gostaria de aceitar padrões automaticamente sem interação do usuário.

    
por Jean-Francois Chevrette 24.02.2010 / 16:06

4 respostas

29

Use o comando:

yes "" | make oldconfig

O comando 'yes' emite repetidamente uma linha com todas as strings especificadas, ou 'y' por padrão.

Então, você pode usá-lo para simplesmente "pressionar enter", o que resultará no uso do valor padrão para o comando "make oldconfig".

    
por 24.02.2010 / 16:59
47
make olddefconfig

é o que você quer. Da ajuda ( make help no diretório de origem do kernel)

olddefconfig - Same as silentoldconfig but sets new symbols to their default value

    
por 11.09.2013 / 16:48
0

Sim. Ele é armazenado em ".config" no nível superior do diretório de origem.

Adicionalmente, se estiver usando o kernel de distribuição, algumas distribuições como o RedHat armazenam em / boot / config - $ (uname -r). (versão do kernel) [1]

Finalmente, se compilado no kernel que você está executando, ele está disponível em /proc/config.gz. Esqueço que versão introduziu esta opção.

[1] Estas opções:

CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y 

Editar

Confira /usr/src/linux/kernel/Documentation/kbuild/kconfig.txt (ou caminho apropriado). Você pode usar algumas de suas recomendações para criar scripts de uma solução. Eu usaria uma combinação de scripts e textutils para realizar o que você descreve.

Editar 2

Como nota adicional, esta é uma má ideia. E se o suporte de hardware opcional exclusivo para o seu ambiente mudar, mas não for o padrão? E se ocorrerem mudanças impactantes negativas? Isso realmente é algo que deve ser interativo. Você pode fazer a configuração e automatizar o resto.

"make silentoldconfig" é um pouco menos detalhado, o que pode ser útil. Ainda é interativo.

    
por 24.02.2010 / 16:13
0

make silentoldconfig

    
por 24.02.2010 / 17:59