Eu estou jogando com QEMU. Aqui encontrei algumas imagens pré-construídas do sistema operacional:
http://docs.openstack.org/trunk/openstack-compute/admin/content/starting-images.html
Mas todos eles são voltados para um sistema de 64 bits enquanto o meu sistema é de 32 bits. Alguém sabe se existe alguma imagem pré-construída de 32 bits online?
Para que eu possa usá-los diretamente e não precisar me preocupar com a instalação.
Obrigado.
Respostas:
Uma rápida pesquisa no Google revelou o seguinte (eu não tentei nenhum deles) :
Além disso, você pode usar o vmbuilder (referido aqui
ubuntu-vmbuilder
) para criar rapidamente imagens do Ubuntu para KVM, VirtualBox, etc.Como último recurso, você pode usar o
qemu-img
comando para converter imagens de disco do VirtualBox / VMware em um formato mais adequado ao QEMU / KVM (isso pode não ser necessário: acho que o QEMU / KVM pode funcionar com outros tipos de imagem como vdi ou vmdk).NOTA : Se você estiver usando um sistema operacional de 32 bits, não poderá executar máquinas virtuais de 64 bits com o KVM. Mas o QEMU é um emulador, portanto, você deve executar 64 bits de VM em um sistema operacional de 32 bits. Mas a sobrecarga de desempenho provavelmente será enorme!
fonte
Esta resposta contém etapas detalhadas para as seguintes configurações:
Tudo foi testado em um host Ubuntu 18.04 voltado para convidados 18.04.
Imagem em nuvem amd64
As imagens da nuvem Ubuntu são imagens pré-instaladas que permitem inicializar diretamente sem a instalação usual do sistema de desktop. Consulte também: /server/438611/what-are-ubuntu-cloud-images
GitHub upstream .
Depois que o QEMU for iniciado, talvez seja necessário pressionar Enter para que o menu de inicialização seja exibido. Selecione a
Ubuntu
partir daí.Então, o início da inicialização diz:
mas mesmo se você não pressionar nenhuma tecla, a inicialização continuará após um curto tempo limite. Voto positivo neste relatório de bug: https://bugs.launchpad.net/cloud-images/+bug/1726476
Quando a inicialização terminar, faça o login com:
ubuntu
asdfqwer
Internet funciona normalmente.
Arm64 da imagem em nuvem
TODO: Percebi que há um erro que ocorre algumas vezes ao usar isso: https://bugs.launchpad.net/cloud-images/+bug/1818197
Muito semelhante ao amd64, mas precisamos de alguma magia negra UEFI para inicializar.
GitHub upstream .
debootstrap
amd64Não é uma imagem pré-criada, mas faz o download de todos os pacotes pré-criados, por isso também é rápida, mas também muito mais configurável e útil.
GitHub upstream .
Isso é inicializado sem nenhum erro ou aviso do sistema.
Agora, no terminal, efetue login com
root
/root
e verifique se a Internet funciona com os seguintes comandos:Usamos
nc
como explicado em /programming/32341518/how-to-make-an-http-get-request-manually-with-netcat/52662497#52662497 porque:wget
ecurl
não são instalados por padrãoping
não funciona no QEMU por padrão: /unix/473448/how-to-ping-from-the-qemu-guest-to-an-external-urlVersão análoga do Debian: /unix/275429/creating-bootable-debian-image-with-debootstrap/473256#473256
Crie seu próprio kernel
Desde que estamos aqui:
Isso produziu exatamente a mesma configuração e acredito que tenha usado exatamente o mesmo código-fonte do Ubuntu empacotado que foi
debootstrap
baixado conforme explicado em: Onde posso obter o arquivo .config do kernel 11.04?Então eu o remendei com:
e reconstruir:
e ele imprimiu minha mensagem durante a inicialização:
A reconstrução não foi muito rápida, então talvez haja um comando melhor? Eu apenas esperei que ele dissesse:
e foi em frente com a corrida.
debootstrap arm64
O procedimento foi semelhante ao do amd64, mas com as seguintes diferenças:
1)
Nós devemos fazer uma etapa dois
debootstrap
:--foreign
apenas baixar os pacoteschroot
--second-stage
usando a emulação do modo de usuário QEMUbinfmt_misc
Veja também: O que é debootstrap --segundo estágio para
2) a inicialização padrão do kernel falha no final com:
A lista de partições vazia indica que há um erro sério no driver do disco, depois de tentar um pouco a opção que falta:
Eu acho que funciona quando eu uso o ISO porque os módulos devem ser carregados a partir do initrd.
Tentei usar outros tipos de disco, mas o virtio é o único valor válido para
-drive if=
when-M virt
, que é o tipo de máquina mais inteligente atualmente.Portanto, devemos recompilar nosso próprio kernel com essa opção ativada, conforme explicado aqui: Ao compilar o kernel, como posso impedi-lo de limpar toda vez que apenas quero modificar um arquivo?
Os desenvolvedores do Ubuntu devem ativar este CONFIG
y
por padrão! É muito útil!TODO: a rede não está funcionando, a mensagem de erro é:
Aqui está o script totalmente automatizado:
GitHub Upstream .
Imagem da área de trabalho
Veja: Como executar o desktop Ubuntu no QEMU?
Requer a instalação manual do instalador, mas é a coisa mais estável que você pode fazer, e totalmente bem, se você deseja obter uma VM para uso interativo de tempos em tempos.
Para aarch64, ainda não consegui trabalhar com a área de trabalho, talvez fique de olho em: Como executar o Ubuntu 16.04 ARM no QEMU?
fonte
dhclient.service: Can't open PID file /var/run/dhclient.pid (yet?) after start: No such file or directory
alguma pista? Após a inicialização eu sou capaztouch /var/run/a
.Consulte http://cloud-images.ubuntu.com/, que contém imagens em nuvem que podem ser usadas com qemu / kvm.
fonte
https://www.turnkeylinux.org/ existe há séculos. Eles têm um enorme catálogo "dispositivo" pré-fabricado, disponível para download, como imagens em vários formatos (óva, iso, vdmk, openstack, xen). Eles ainda podem iniciar uma imagem na AWS para você.
Quando quero começar a explorar uma pilha específica ou precisar resolver um problema, frequentemente baixo as imagens delas, as converto em cow2 e as uso.
Você também pode pegar imagens em https://app.vagrantup.com/boxes/search ou https://virtualboxes.org/images/ e convertê-las também.
fonte