Inicialize meu kernel em uma máquina virtual?

2

Estou aprendendo agora como compilar e inicializar os kernels linux. Existe uma maneira de inicializar os kernels em uma máquina virtual, em vez de mexer no meu sistema? Eu uso o VMWare Workstation no Windows 8. Posso usar isso para inicializar meu kernel do Linux?

    
por The Quantum Physicist 02.09.2013 / 22:43

3 respostas

4

I'm learning now how to compile and boot linux kernels. Is there a way to boot kernels in a virtual machine, rather than messing my system? I use VMWare Workstation on Windows 8.

Estou supondo, com base em suas palavras, que você não tem um ambiente de trabalho semelhante ao UNIX . Para construir seu próprio kernel, você tem que ter um, então neste caso você tem uma escolha entre os dois:

  1. Crie um, instalando uma distribuição GNU / Linux em uma máquina virtual sob seu hipervisor (que é VMWare Workstation)
  2. ou siga o caminho do hacker, e siga linux do zero para criar um para você (!! Não é recomendado para um iniciante) .

Depois de ter um ambiente de trabalho, então compilar e testar seu próprio kernel é tão simples quanto fazer (por exemplo):

wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.9.3.tar.xz
tar -xzf linux-3.9.3.tar.xz
cd linux-3.9.3
make menuconfig
make
make modules
make modules_install
make install

e, em seguida, reboot (pode ser um pouco mais complicado, como fazer um disco ram, portanto, o acima serve apenas como exemplo).

Aqui estão dois guias sobre como compilar um kernel Linux para o Ubuntu e para Arch Linux

    
por 03.09.2013 / 01:25
4

Se você tem um convidado da VM que é o Linux, então você pode criar o Kernel dentro dessa VM e inicializá-lo dessa maneira. Isso é o que eu faço o tempo todo para economizar em meu sistema primário.

    
por 02.09.2013 / 23:39
2

Eu recomendaria fazer uma instalação do Gentoo na VM. Ele vai te ensinar como configurar , compilar e inicialize o kernel do Linux usando um bootloader. Uma ótima experiência de aprendizado (embora não tão boa quanto a instalação real de hardware fora de uma VM).

O manual do Gentoo tem toda a documentação de que você precisará iniciar. E, claro, o seu wiki também é útil.

P.S. Não use o genkernel , que não ensine como configurar um kernel.

Atualização:

  • Você mencionou o Windows , por isso assumimos que você não tinha uma instalação do Linux (em uma VM ou outra).
  • Genkernel é uma configuração de kernel bem conhecida mantida pelos desenvolvedores do Gentoo. Sua pergunta foi sobre aprender sobre compilar kernels, portanto, eu desencorajei você a pegar o caminho mais fácil e configurá-lo manualmente (com tentativa e erro).
  • ArchLinux e O Gentoo usa kernels do kernel.org com patches muito pequenos . É claro que você pode pegar as fontes baunilha do upstream se quiser.
  • A mistura de kernels de diferentes distros é um sucesso. Às vezes funciona e às vezes não funciona e geralmente apenas parcialmente. Mesmo misturar um kernel mais novo com um initrd mais antigo no ArchLinux não funciona; esse ramdisk contém módulos que não foram compilados no kernel.
  • O Ubuntu e os kernels personalizados não combinam bem. Seu kernel tem muitos patches, então você vai querer pegar sua fonte ao invés de fazer o upload.
  • Se você quer apenas o kernel mais recente compilado para o Ubuntu, você pode tentar este PPA
por 03.09.2013 / 00:58