Dada uma lista de recursos do kernel, quero criar uma configuração mínima do Linux suportando todos os recursos fornecidos (e as dependências correspondentes), mas nada mais.
Existe uma maneira de criar um allnoconfig e uma ferramenta para habilitar os recursos um por um?
(Eu podia editar o .config
arquivo, mas isso não deixaria as dependências corretas. Eu poderia usar make *config
, mas até onde sei, elas funcionam apenas de forma interativa ou criam algumas configurações padrão.)
Respostas:
Se você precisar fazer isso de maneira não interativa, poderá usar o comando make oldconfig ou o olddefconfig. O make * config corrige as dependências e essas não são tão detalhadas quanto, digamos menuconfig. (Caso contrário, o menuconfig é perfeitamente adequado para ativar os recursos um por um, inclusive inclui os textos de ajuda!)
O make oldconfig solicitará quaisquer 'novas' opções de configuração; portanto, você precisará inserir comentários como este para todas as opções desabilitadas se desejar trabalhar de maneira não interativa:
make olddefconfig, por outro lado, não parece perguntar, mas usa um valor padrão. Há também silentoldconfig, mas também pergunta em alguns casos, portanto não é tão silencioso.
de make help:
Isenção de responsabilidade: tentei apenas o teste trivial de remover as opções de algumas bibliotecas que eu sabia que eram necessárias. Eles foram adicionados novamente por olddefconfig e oldconfig. Não sei como isso se aplica a fazer uma configuração maior.
De qualquer forma, suponho que você já considerou usar make localmodconfig ou algo parecido antes de iniciar isso? Não tenho tentado fazer uma configuração mínima há anos, mas me lembro de algumas maneiras não óbvias de criar kernels totalmente inutilizáveis. :)
fonte
Desde o kernel 2.6.29, há um script que você pode encontrar em
/kernel_extracted_dir/scripts/config
Por exemplo
(Para dar crédito onde é devido, peguei o exemplo deste blog )
Você tem as seguintes opções (copiadas da ajuda)
fonte