En palabras simples, el QEMU es un programa de software que es gratuito y de código abierto; Se utiliza para crear máquinas virtuales en la parte superior de otros sistemas operativos de Linux, al igual que VirtualBox y VMware Workstation Player. No solo, el Linux, sino uno también puede instalar este software en Windows y MacOS para probar diferentes distribuciones de Linux. Sin embargo, la mayoría de los usuarios de Linux prefieren usar VirtualBox debido a su interfaz fácil de usar y una amplia gama de compatibilidad de hardware. Aunque el reproductor de estación de trabajo VMware también está disponible para Linux, limitado en términos de características en comparación con VirtualBox. En tales circunstancias, hay un par de software de virtualización de hardware OpenSource bien conocido disponible con su propio entorno del sistema operativo Linux que pueden convertir cualquier máquina de metal desnudo en una plataforma de virtualización completa. Hablamos de tales plataformas en algún otro artículo.
Aquí en este artículo de tutorial Qemu Ubuntu, veremos cómo instalar y configurar este emulador de máquina de código abierto y herramienta de virtualizador en Ubuntu.
Podemos ejecutar OSE y programas ejecutando el código de invitado directamente en la CPU host utilizando este software. Admite la virtualización utilizando el módulo del núcleo KVM en Linux. Cuando se usa KVM, se puede virtualizar X86, servidor y PowerPC integrado, potencia de 64 bits, S390, invitados de 32 bits y 64 bits, y MIPS.
Tutorial de Qemu Ubuntu: cómo instalar a través de la terminal de comando
Para instalar QEMU en Ubuntu, ejecute los siguientes comandos que se dan a continuación.
Nota: Utilizamos Ubuntu 18.04 para instalar y crear una máquina virtual basada en el núcleo, pero los comandos dados aquí son los mismos para las versiones más antiguas como Ubuntu 17.04, Ubuntu 16.04, Ubuntu 15.04 ... mientras escriben esta tutorial la última versión deQEMU fue 3.1.0.
- Ir aUbuntu
- Abra la herramienta de terminal de línea de comando en Ubuntu. El atajo esCtrl+ Alt+ T.
- En el terminal ejecuta el siguiente comando:
sudo apt-get install qemu
- Instalar el paquete KVM, el comando es
sudo apt-get install qemu-kvm
- Para verificar la versión QEMU, use el siguiente comando
apt show qemu-system-x86
- Para verificación de la versión KVM
kvm -version
Salida de muestra
h2s@h2s-VirtualBox:~$ sudo apt-get install qemu [sudo] password for h2s: Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: binfmt-support cpu-checker ibverbs-providers ipxe-qemu ipxe-qemu-256k-compat-efi-roms libaio1 libcacard0 libfdt1 libibverbs1 libiscsi7 libnl-route-3-200 librados2 librbd1 librdmacm1 libsdl1.2debian libspice-server1 libusbredirparser1 libxen-4.9 libxenstore3.0 libyajl2 msr-tools qemu-block-extra qemu-slof qemu-system qemu-system-arm qemu-system-common qemu-system-mips qemu-system-misc qemu-system-ppc qemu-system-s390x qemu-system-sparc qemu-system-x86 qemu-user qemu-user-binfmt qemu-utils seabios sharutils Suggested packages: qemu-user-static samba vde2 qemu-efi openbios-ppc openhackware openbios-sparc sgabios ovmf debootstrap sharutils-doc bsd-mailx | mailx The following NEW packages will be installed: binfmt-support cpu-checker ibverbs-providers ipxe-qemu ipxe-qemu-256k-compat-efi-roms libaio1 libcacard0 libfdt1 libibverbs1 libiscsi7 libnl-route-3-200 librados2 librbd1 librdmacm1 libsdl1.2debian libspice-server1 libusbredirparser1 libxen-4.9 libxenstore3.0 libyajl2 msr-tools qemu qemu-block-extra qemu-slof qemu-system qemu-system-arm qemu-system-common qemu-system-mips qemu-system-misc qemu-system-ppc qemu-system-s390x qemu-system-sparc qemu-system-x86 qemu-user qemu-user-binfmt qemu-utils seabios sharutils 0 upgraded, 38 newly installed, 0 to remove and 366 not upgraded. Need to get 54.9 MB/62.2 MB of archives. After this operation, 341 MB of additional disk space will be used. Do you want to continue? [Y/n] Y h2s@h2s-VirtualBox:~$ sudo apt-get install qemu-kvm [sudo] password for h2s: Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: qemu-kvm 0 upgraded, 1 newly installed, 0 to remove and 366 not upgraded. Need to get 13.2 kB of archives. After this operation, 120 kB of additional disk space will be used. Get:1 https://in.archive.ubuntu.com/ubuntu bionic-updates/main amd64 qemu-kvm amd64 1:2.11+dfsg-1ubuntu7.9 [13.2 kB] Fetched 13.2 kB in 2s (6,569 B/s) Selecting previously unselected package qemu-kvm. (Reading database ... 113459 files and directories currently installed.) Preparing to unpack .../qemu-kvm_1%3a2.11+dfsg-1ubuntu7.9_amd64.deb ... Unpacking qemu-kvm (1:2.11+dfsg-1ubuntu7.9) ... Setting up qemu-kvm (1:2.11+dfsg-1ubuntu7.9) ... Processing triggers for man-db (2.8.3-2) ...
Crear virtualmachine
Después de instalar elQEMUEn el sistema de host Ubuntu, es hora de crear máquinas virtuales.
Crear un disco duro virtual
El comando para crear un disco duro virtual es
qemu-img create Puppy.vdi 10G
Nota: En el comando anterior, el cachorro.vdi es el nombre de nuestro disco duro virtual. Puede nombrarlo según su elección. Extension.vdi creará un formato de imagen de disco virtual si lo desea, puede reemplazarlo con .img (formato de imagen sin procesar) .vhd y .vmdk formatos que lo hace también.
También podemos usar elQEMU Formatos de disco duro virtual predeterminadoque son .qCow2, .qed, .qcow y .Cow.
Entonces, si el mismo disco duro que creamos anteriormente; Es necesario crear en formato de disco QEMU, entonces el comando será
qemu-img create -f qcow2 Puppy.qcow 10G
10 ges la cantidad de espacio que queremos asignar al disco duro virtual. Aquí estamos instalando Puppy Linux que no requiere una gran cantidad de espacio, por lo que utilizamos 10 g (G significa GIGA Byte GB). Sin embargo, en este tutorial, estamos utilizando el formato de disco VDI.
Arrancar desde la imagen ISO
Después de crear el disco duro virtual, iniciemos el ISO en el entorno en vivo. Estamos utilizando el tipo de sistema operativo Linux, es decir, la imagen ISO de Puppy Linux residió en el escritorio de nuestro Ubuntu.
qemu-system-x86_64 -boot d -cdrom Desktop/puppy.iso -m 512
En el comando de arriba, utilizamos la imagen ISO que está en nuestra carpeta de escritorio. De la misma manera, debe mencionar la ruta de su archivo ISO en el comando; El resto del comando seguirá siendo el mismo. El-metroIndicó la cantidad de RAM asignada al sistema operativo invitado del sistema de host, aquí es 512 MB.
Ejecutar QEMU para instalar el sistema operativo en el disco duro virtual
Tan pronto como ejecute el comando anterior, el sistema operativo Linux invitado comenzará a arrancar y se puede probar en el entorno en vivoPero para su instalación, necesitamos adjuntar el disco duro virtual.Entonces, por ejemplo, también desea instalar el sistema operativo invitado como Windows o cualquier otro Linux; Entonces tenemos que decirle al Qemu, ¡oye! Aquí está el disco.Simplemente escriba el nombre del disco virtual que ha creado anteriormente
qemu -system -x86_64 -boot d -cdrom escritorio/cachorro.iso -m 512 -hda cachorro.vdi
Arrancar directamente desde cd rom
Además de los archivos ISO, el usuario también puede iniciar el sistema operativo directamente desde CD ROM:
qemu -system -x86_64 -boot d -cdrom /dev /cdrom -m 512
En la línea de comando anterior, el QEMU obtendrá los archivos de arranque de la unidad de disco CD-ROM.
Habilitar módulos de aceleración KVM o Intel
Para acelerar las máquinas virtuales QEMU, podemos habilitar el KVM o Intel HAXM. Entonces, para ejecutar VM más rápido, use las instrucciones-Accel KVMo-Enable-kvmpara KVM y-Accel haxo-Seable-Haxpara Intel Haxm.
Por ejemplo:
qemu -system -x86_64 -boot d -cdrom /dev /cdrom -m 512 -ENable -kVm
o
qemu -system -x86_64 -boot d -cdrom /dev /cdrom -m 512 -panable -ha
Arrancar desde el disco duro virtual
Después de la instalación del sistema operativo invitado, ahora si queremos iniciar nuestro disco duro virtual para su uso adicional o ya tenemos alguna imagen de disco VDI o VHD, simplemente úselo con el siguiente comando.
qemu-system-x86_64 -hda (ruta del disco duro virtual)
qemu-system-x86_64 -hda puppy.vdi
QEMU IMG Convertir
Esta herramienta de virtualización basada en comandos no solo puede crear máquinas virtuales, sino que también permite a los usuarios convertir los formatos de imagen. Aquí está el comando para eso
QEMU-IMG Convert {image_name} {image_name}
Por ejemplo,Queremos convertir el ISO o QCOW2 a Formato RAW IMG El comando anterior usará así
qemu-img convert /Desktop/ubutnu.iso /Desktop/new.img
Nota: Tenemos que dar la ruta completa donde reside la imagen y también donde queremos guardar el convertido.
Virt Manager para QEMU
Después de pasar por el comando anterior y el procedimiento para instalar una máquina virtual en QEMU; Es posible que desee rendirse por su complejidad. Pero espere que hay un método Crear VM simple y fácil de usar en esta herramienta de virtualización. Es dándole una interfaz gráfica de usuario como laCaja virtual. Por lo tanto, si es un nuevo usuario y desea evitar que se escriba los comandos largos, ejecute el siguienteComando para instalar Virt Manager en Ubuntu.
sudo apt-get install qemu virt-manager virt-viewer libvirt-bin
Salida de muestra para el comando anterior:
h2s@h2s-VirtualBox:~$ sudo apt-get install qemu virt-manager virt-viewer libvirt-bin [sudo] password for h2s: Reading package lists... Done Building dependency tree Reading state information... Done qemu is already the newest version (1:2.11+dfsg-1ubuntu7.9). The following additional packages will be installed: augeas-lenses bridge-utils dmeventd ebtables gir1.2-appindicator3-0.1 gir1.2-gtk-vnc-2.0 gir1.2-libosinfo-1.0 gir1.2-libvirt-glib-1.0 gir1.2-spiceclientglib-2.0 gir1.2-spiceclientgtk-3.0 libaugeas0 libdevmapper-event1.02.1 libgovirt-common libgovirt2 libgtk-vnc-2.0-0 libgvnc-1.0-0 liblvm2app2.2 liblvm2cmd2.02 libnetcf1 libosinfo-1.0-0 libphodav-2.0-0 libphodav-2.0-common libpython-stdlib libpython2.7 libpython2.7-minimal libpython2.7-stdlib libreadline5 libspice-client-glib-2.0-8 libspice-client-gtk-3.0-5 libusbredirhost1 libvirt-clients libvirt-daemon libvirt-daemon-driver-storage-rbd libvirt-daemon-system libvirt-glib-1.0-0 libvirt0 libxml2-utils lvm2 osinfo-db python python-asn1crypto python-cairo python-certifi python-cffi-backend python-chardet python-cryptography python-dbus python-enum34 python-gi python-gi-cairo python-idna python-ipaddr python-ipaddress python-libvirt python-libxml2 python-minimal python-openssl python-pkg-resources python-requests python-six python-urllib3 python2.7 python2.7-minimal spice-client-glib-usb-acl-helper virtinst Suggested packages: augeas-doc augeas-tools libosinfo-l10n gstreamer1.0-plugins-bad gstreamer1.0-libav libvirt-daemon-driver-storage-gluster libvirt-daemon-driver-storage-sheepdog libvirt-daemon-driver-storage-zfs numad radvd auditd systemtap nfs-common zfsutils pm-utils thin-provisioning-tools python-doc python-tk python-cryptography-doc python-cryptography-vectors python-dbus-dbg python-dbus-doc python-enum34-doc python-openssl-doc python-openssl-dbg python-setuptools python-socks python-ntlm python2.7-doc ssh-askpass python-guestfs The following NEW packages will be installed: augeas-lenses bridge-utils dmeventd ebtables gir1.2-appindicator3-0.1 gir1.2-gtk-vnc-2.0 gir1.2-libosinfo-1.0 gir1.2-libvirt-glib-1.0 gir1.2-spiceclientglib-2.0 gir1.2-spiceclientgtk-3.0 libaugeas0 libdevmapper-event1.02.1 libgovirt-common libgovirt2 libgtk-vnc-2.0-0 libgvnc-1.0-0 liblvm2app2.2 liblvm2cmd2.02 libnetcf1 libosinfo-1.0-0 libphodav-2.0-0 libphodav-2.0-common libpython-stdlib libreadline5 libspice-client-glib-2.0-8 libspice-client-gtk-3.0-5 libusbredirhost1 libvirt-bin libvirt-clients libvirt-daemon libvirt-daemon-driver-storage-rbd libvirt-daemon-system libvirt-glib-1.0-0 libvirt0 libxml2-utils lvm2 osinfo-db python python-asn1crypto python-cairo python-certifi python-cffi-backend python-chardet python-cryptography python-dbus python-enum34 python-gi python-gi-cairo python-idna python-ipaddr python-ipaddress python-libvirt python-libxml2 python-minimal python-openssl python-pkg-resources python-requests python-six python-urllib3 python2.7 python2.7-minimal spice-client-glib-usb-acl-helper virt-manager virt-viewer virtinst The following packages will be upgraded: libpython2.7 libpython2.7-minimal libpython2.7-stdlib 3 upgraded, 65 newly installed, 0 to remove and 363 not upgraded. Need to get 11.0 MB/15.8 MB of archives. After this operation, 57.5 MB of additional disk space will be used. Do you want to continue? [Y/n] y
Después de ejecutar el comando anteriorVerás unAdministrador de máquinas virtualesherramienta llamadaVirtuden tu sistema Ubuntu. Para acceder a las máquinas virtuales Virt Manager, vaya a todas las aplicaciones y haga clic en el icono Virt.
Cuando se abrió el Administrador de Virt, haga clic en la primera opción desde el lado izquierdo dada en el menú superior. Esta opción le dará una GUI guiada para crear y configurar máquinas virtuales. El proceso es el mismo que el VirtualBox.
Luego seleccione el arranque de la imagen de medio a ISO y luego asigne la RAM, el número de CPU y el disco duro virtual.
Mientras crea las máquinas virtuales en el Administrador Virtual de Virt para QEMU, obtendrá una opción de selección de red también desde donde podemos seleccionar las redes virtuales para nuestras máquinas. Por defecto, elSe selecciona NAT 'predeterminado' de la red virtual, deje que es como es si no tiene múltiples conexiones. Está en el NAT que utiliza el rango de direcciones IP del host para compartir la conexión a Internet.
Entonces, de esta manera, podemos usar este software alternativo VirtualBox no solo en Ubuntu sino también para otras OSE de Linux diferentes para crear máquinas virtuales. Este software de virtualización tiene sus propios beneficios sobre la caja virtual, como la velocidad más rápida, ya que usa directamente el módulo del núcleo. Además, si te conoces a ti mismo con sus comandos, entonces configurar las máquinas virtuales en los servidores sin cabeza se convierte en un pedazo de pastel. Sin embargo, es compatible con casi todo tipo de emulación del sistema operativo, pero en comparación con Linux para Windows Guest Os, es un poco lento. En tales situaciones, habilite los módulos de acelerador KVM o Intel HAXM. Además, el punto a tener en cuenta, en la última versión, KVM Soport se ha eliminado, pero el código abierto HAXM aún continuará.
Si enfrentó algún problema al seguir este tutorial, ¡háganos saber que la sección de comentarios es todo suyo!
Otros recursos útiles: