Premissas:
A plataforma:
anisha@linux-dopx:~/> uname -a
Linux linux-dopx 2.6.34-12-desktop #1 SMP PREEMPT 2010-06-29 02:39:08 +0200 x86_64 x86_64 x86_64 GNU/Linux
O kernel baixado é o mais estável do kernel.org.
- Deixamos que os padrões permaneçam (não faça alterações) nas opções de
make menuconfig
. - Basta digitar
make
,make install
,grub-update
, e reinicie.
Agora, seguindo essas premissas, ainda é necessário fazer alterações adicionais nos arquivos ou compilar alguns drivers extras para garantir uma reinicialização sem erros?
Se sim, então de que coisas essas mudanças dependem?
EDIT 1:
anisha@linux-dopx:/> sudo /sbin/lspci -n
00:00.0 0600: 8086:29c0 (rev 10)
00:02.0 0300: 8086:29c2 (rev 10)
00:1b.0 0403: 8086:27d8 (rev 01)
00:1c.0 0604: 8086:27d0 (rev 01)
00:1c.1 0604: 8086:27d2 (rev 01)
00:1d.0 0c03: 8086:27c8 (rev 01)
00:1d.1 0c03: 8086:27c9 (rev 01)
00:1d.2 0c03: 8086:27ca (rev 01)
00:1d.3 0c03: 8086:27cb (rev 01)
00:1d.7 0c03: 8086:27cc (rev 01)
00:1e.0 0604: 8086:244e (rev e1)
00:1f.0 0601: 8086:27b8 (rev 01)
00:1f.1 0101: 8086:27df (rev 01)
00:1f.2 0101: 8086:27c0 (rev 01)
00:1f.3 0c05: 8086:27da (rev 01)
01:00.0 0200: 10ec:8136 (rev 01)
writing linux drivers
com o kernel 2.6. I My Fedora 24 config possui muitos valores inválidos para o kernel 2.6. Alguma sugestão sobre qual configuração usar para instalar o kernel 2.6?Hardware / distros reais provavelmente não funcionarão corretamente com defconfig
Conforme mencionado nesta resposta , qualquer coisa que não seja fornecida pelo fornecedor de distribuição ou hardware provavelmente falhará de maneiras sutis ou menos sutis, por exemplo:
Além disso, além de configurações específicas, é normal que os fornecedores apliquem grandes conjuntos de patches sobre o kernel da baunilha, até o Ubuntu faz isso por exemplo.
Para o Ubuntu / Debian em particular, descrevi como compilar o kernel suportado da fonte em: /ubuntu/281763/is-there-any-prebuilt-qemu-ubuntu-image32bit-online/1081171# 1081171 Modificar essa base estável do kernel é a coisa mais segura que você pode fazer nesse caso.
QEMU trabalha com defconfig
Uma coisa que
defconfig
faz muito bem, é inicializar no QEMU, testado no kernel v4.20, QEMU 2.12.Aqui está um exemplo totalmente automatizado com o Buildroot .
Conforme observado nesse link, você precisa das seguintes opções para inicializar a partir do disco:
embora eles não sejam necessários para o initrd.
Para compilação cruzada em um arco diferente, por exemplo, aarch64, você precisa:
Mas, como explicado aqui , embora o arm64 seja inicializado no QEMU, ele gera um kernel super-inchado e você provavelmente desejará lançar algo mais mínimo, por exemplo, como descrito aqui .
O
make defconfig
que exatamente?Podemos ver facilmente qual arquivo de configuração foi usado com uma compilação detalhada:
que gera na v4.19:
a partir do qual concluímos que o arquivo usado deve ser arch / x86 / configs / x86_64_defconfig .
Consulte também: /programming/41885015/what-exactly-does-linux-kernels-make-defconfig-do
make help
também mostra outros destinos relacionados ao padrão interessantes, comoalldefconfig
esavedefconfig
que podem ser úteis.fonte