In parole semplici, il QEMU è un programma software gratuito e open source; Utilizzato per creare macchine virtuali sulla parte superiore di altri sistemi operativi Linux proprio come VirtualBox e VMware Workstation Player. Non solo, il Linux, ma si può anche installare questo software su Windows e MacOS per testare diverse distro Linux. Tuttavia, la maggior parte degli utenti Linux preferisce utilizzare VirtualBox per la sua interfaccia facile da usare e una vasta gamma di compatibilità hardware. Sebbene anche il lettore VMware Workstation sia disponibile per Linux, limitato in termini di funzionalità rispetto a VirtualBox. In tali circostanze, ci sono un paio di noti software di virtualizzazione hardware OpenSource disponibili con il proprio ambiente del sistema operativo Linux che possono convertire qualsiasi macchina per metallo nudo in una piattaforma di virtualizzazione completa. Parliamo di tali piattaforme in qualche altro articolo.
Qui in questo articolo di Tutorial di Qemu Ubuntu, vedremo come installare e configurare questo emulatore di macchine open source e lo strumento di virtualizzatore su Ubuntu.
Possiamo eseguire sistemi operativi e programmi eseguendo il codice ospite direttamente sulla CPU host utilizzando questo software. Supporta la virtualizzazione utilizzando il modulo KVM Kernel in Linux. Quando si utilizza KVM, si può virtualizzare X86, server e powerPC incorporato, potenza a 64 bit, S390, ARM a 32 bit e 64 bit e MIPS.
QEMU Ubuntu Tutorial: come installare tramite il terminale di comando
Per installare QEMU su Ubuntu Esegui i seguenti comandi indicati di seguito.
Nota: Abbiamo usato Ubuntu 18.04 per installare e creare una macchina virtuale basata sul kernel, ma i comandi qui dati sono gli stessi per le versioni precedenti come Ubuntu 17.04, Ubuntu 16.04, Ubuntu 15.04 ... mentre scrive questo tutorial l'ultima versione diQEMU era 3.1.0.
- Vai aUbuntu
- Apri lo strumento terminale della riga di comando su Ubuntu. La scorciatoia èCtrl+ alt+ t.
- Nel terminale eseguire il comando seguente:
sudo apt-get install qemu
- Installa il pacchetto KVM, il comando è
sudo apt-get install qemu-kvm
- Per controllare la versione QEMU usa il comando seguente
apt show qemu-system-x86
- Per il controllo della versione KVM
kvm -version
Output del campione
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) ...
Crea virtualmachine
Dopo aver installato ilQEMUSul sistema host Ubuntu, è tempo di creare macchine virtuali.
Crea disco rigido virtuale
Il comando per creare il disco rigido virtuale è
qemu-img create Puppy.vdi 10G
Nota: Nel comando sopra il cucciolo.vdi è il nome del nostro disco rigido virtuale. Puoi nominarlo secondo la tua scelta. Extension.vdi creerà un formato di immagine del disco virtuale se lo si desidera puoi sostituirlo con .img (formato immagine grezzo) .vhd e .vmdk formati che fai anche tu.
Possiamo anche usare ilQEMU Formati del disco rigido virtuale predefinitoche sono .qcow2, .qed, .qcow e .cow.
Quindi, se lo stesso disco rigido che abbiamo creato sopra; deve essere creato in formato disco QEMU, quindi il comando sarà
qemu-img create -f qcow2 Puppy.qcow 10G
10 gè la quantità di spazio che vogliamo allocare al disco rigido virtuale. Qui stiamo installando cucciolo Linux che non richiede affatto una quantità elevata di spazio, quindi abbiamo usato 10 g (G sta per Giga Byte GB). Tuttavia, in questo tutorial, stiamo usando il formato disco VDI.
Avvio dall'immagine ISO
Dopo aver creato il disco rigido virtuale, avvia l'ISO in ambienti in diretta. Stiamo usando il tipo di sistema operativo Linux, ad esempio l'immagine ISO del cucciolo Linux risieduto sul desktop del nostro Ubuntu.
qemu-system-x86_64 -boot d -cdrom Desktop/puppy.iso -m 512
Nel comando sopra, abbiamo usato l'immagine ISO che si trova nella nostra cartella desktop. Allo stesso modo, devi menzionare il percorso del tuo file ISO nel comando; Il resto del comando rimarrà lo stesso. IL-Mindicato che la quantità di RAM assegnata al sistema operativo ospite dal sistema host, qui è 512 MB.
Esecuzione di QEMU per installare il sistema operativo sul disco rigido virtuale
Non appena si esegue il comando sopra, il sistema operativo Guest Linux inizierà l'avvio e può essere testato nell'ambiente liveMa per la sua installazione, dobbiamo collegare il disco rigido virtuale.Quindi, ad esempio, vuoi anche installare il sistema operativo ospite come Windows o qualsiasi altro Linux; Quindi dobbiamo dirlo al QEMU, ehi! Ecco l'unità.Basta digitare il nome del disco virtuale che hai creato sopra
QEMU -SYSTEM -X86_64 -Boot D -cdrom desktop/cucciolo.iso -m 512 -hda cucciolo.vdi
Avvio direttamente da CD ROM
Oltre ai file ISO, l'utente può anche avviare il sistema operativo direttamente da CD ROM:
QEMU -SYSTEM -X86_64 -Boot D -cdrom /dev /cdrom -m 512
Nella riga di comando sopra, il QEMU prenderà i file di avvio dall'unità disco CD-ROM.
Abilita moduli di accelerazione KVM o Intel
Per accelerare le macchine virtuali QEMU, possiamo abilitare KVM o Intel haxm. Quindi, per eseguire VM più veloce, usa le istruzioni-acco KvmO-enable-kvmper kvm e-accoccel HaxO-Nable-HaxPer Intel Haxm.
Per esempio:
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 -enable -hax
Avvio dal disco rigido virtuale
Dopo l'installazione del sistema operativo ospite, ora se vogliamo avviare il nostro disco rigido virtuale per ulteriori utilizzo o avere già un po 'di immagine VDI o Disco rigido VHD, usala semplicemente con il comando seguente.
QEMU-SYSTEM-X86_64 -HDA (percorso del disco rigido virtuale)
qemu-system-x86_64 -hda puppy.vdi
QEMU IMG Converti
Questo strumento di virtualizzazione basato sui comandi non solo può creare VM, ma consente anche agli utenti di convertire i formati di immagine. Ecco il comando per questo
QEMU-IMG Convert {image_name} {image_name}
Per esempio,Vogliamo convertire l'ISO o QCOW2 in FORMATO RAW IMG Il comando sopra ti utilizzerà
qemu-img convert /Desktop/ubutnu.iso /Desktop/new.img
Nota: Dobbiamo dare il percorso completo in cui risiede l'immagine e anche dove vogliamo salvare quello convertito.
Virt Manager per QEMU
Dopo aver attraversato il comando sopra e la procedura per l'installazione di una macchina virtuale su QEMU; Potresti voler rinunciare a causa della sua complessità. Ma aspetta che c'è un metodo Crea VM semplice e facile da usare su questo strumento di virtualizzazione. È dandogli un'interfaccia utente grafica proprio come ilScatola virtuale. Quindi, se sei un nuovo utente e desideri salvare te stesso dalla scrittura dei comandi lunghi, esegui il seguenteComando per installare Virt Manager su Ubuntu.
sudo apt-get install qemu virt-manager virt-viewer libvirt-bin
Esempio di output per il comando sopra:
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
Dopo aver eseguito il comando sopravedrai unVirtual Machine Managerstrumento chiamatoVirtSul tuo sistema Ubuntu. Per accedere alle macchine virtuali Virt Manager, vai a tutte le applicazioni e fai clic sull'icona Virt.
Quando si è aperto Virt Manager, fare clic sulla prima opzione dal lato sinistro indicato nel menu in alto. Questa opzione ti darà una GUI guidata per la creazione e la creazione di macchine virtuali. Il processo è lo stesso di VirtualBox.
Quindi selezionare l'avvio di immagine medio a ISO e quindi assegnare la RAM, il numero di CPU e il disco rigido virtuale.
Durante la creazione delle VM su Virt Virtual Manager per QEMU otterrai anche un'opzione di selezione della rete da dove possiamo selezionare le reti virtuali per le nostre macchine. Per impostazione predefinita, ilVirtual Network 'predefinito' NAT è selezionato, lascialo com'è se non hai più connessioni. È nel NAT che utilizza l'intervallo di indirizzo IP host per condividere la connessione Internet.
Quindi, in questo modo, possiamo utilizzare questo software alternativo VirtualBox non solo su Ubuntu, ma anche per altri diversi sistemi operativi Linux per la creazione di macchine virtuali. Questo software di virtualizzazione ha i suoi vantaggi rispetto alla casella Virtual, come una velocità più rapida in quanto utilizza direttamente il modulo del kernel. Inoltre, se fai conoscenza con i suoi comandi, impostare le macchine virtuali sui server senza testa diventano un pezzo di torta. Tuttavia, supporta quasi ogni tipo di emulazione del sistema operativo, ma rispetto a Linux per Windows Guest OS è un po 'lento. In tali situazioni si prega di abilitare i moduli acceleratori KVM o Intel HAXM. Inoltre, il punto da notare, nell'ultima versione che il supporto KVM è stato eliminato ma l'open source HAXM continuerà ancora.
Se hai affrontato qualche problema nel seguire questo tutorial, fateci sapere che la sezione dei commenti è tutta tua!
Altre risorse utili: