In eenvoudige woorden, de QEMU is een softwareprogramma dat gratis en open source is; Gebruikt om virtuele machines te maken over andere Linux -besturingssystemen, net als VirtualBox en VMware Workstation Player. Niet alleen de Linux, maar men kan deze software ook op Windows en MacOS installeren om verschillende Linux -distros te testen. De meeste Linux-gebruikers gebruiken echter liever de virtualbox vanwege de gebruiksvriendelijke interface en een breed scala aan hardwarecompatibiliteit. Hoewel de VMware -werkstation -speler ook beschikbaar is voor Linux, beperkt in termen van functies in vergelijking met VirtualBox. In dergelijke omstandigheden zijn er een aantal bekende OpenSource -hardwarevirtualisatiesoftware beschikbaar met hun eigen Linux -besturingssysteemomgeving die elke kale metaalmachine kunnen omzetten in een volledig virtualisatieplatform. We praten over dergelijke platforms in een ander artikel.
Hier in dit Qemu Ubuntu -tutorial -artikel zullen we zien hoe we deze open source machine -emulator en virtualizer tool op Ubuntu kunnen installeren en instellen.
We kunnen besturingssystemen en programma's uitvoeren door de gastcode rechtstreeks op de host -CPU uit te voeren met behulp van deze software. Het ondersteunt virtualisatie met behulp van de KVM -kernelmodule in Linux. Wanneer u KVM gebruikt, kan men x86, server en ingesloten PowerPC, 64-bit power, S390, 32-bit en 64-bit arm en MIPS-gasten virtualiseren.
Qemu ubuntu tutorial: hoe te installeren via de opdrachtterminal
Om QEMU op Ubuntu te installeren, voert u de volgende opdrachten uit die hieronder worden gegeven.
Opmerking: We hebben Ubuntu 18.04 gebruikt om een virtuele machine op basis van kernel te installeren en te maken, maar de hier gegeven opdrachten zijn hetzelfde voor de oudere versies zoals Ubuntu 17.04, Ubuntu 16.04, Ubuntu 15.04 ... Terwijl het schrijven van deze tutorial de nieuwste versie vanQEMU was 3.1.0.
- Gaan naarUbuntu
- Open het opdrachtregel terminal tool op ubuntu. De snelkoppeling isCtrl+ alt+ t.
- Voer de onderstaande opdracht uit op de terminal:
sudo apt-get install qemu
- Installeer het KVM -pakket, de opdracht is
sudo apt-get install qemu-kvm
- Gebruik de onderstaande opdracht om QEMU -versie te controleren
apt show qemu-system-x86
- Voor KVM -versiecontrole
kvm -version
Monsteruitgang
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) ...
Creëer virtualmachine
Na het installeren van deQemuOp Ubuntu -hostsysteem is het tijd om virtuele machines te maken.
Creëer virtuele harde schijf
De opdracht om virtuele harde schijf te maken is
qemu-img create Puppy.vdi 10G
Opmerking: In het bovenstaande opdracht is de puppy.vdi de naam van onze virtuele harde schijf. U kunt het noemen volgens uw keuze. De extension.vdi maakt een virtuele schijfafbeeldingsindeling als u wilt, u kunt het vervangen door .img (ruwe beeldformaat) .vhd en .vmdk -formaten doet u dat ook.
We kunnen ook deQEMU standaard virtuele harde schijfindelingendie .qcow2, .qed, .qcow en .cow.
Dus als dezelfde harde schijf die we hierboven hebben gemaakt; moet worden gemaakt in Qemu -schijfindeling, dan zal de opdracht zijn
qemu-img create -f qcow2 Puppy.qcow 10G
10 gis de hoeveelheid ruimte die we willen toewijzen aan de virtuele harde schijf. Hier installeren we Puppy Linux waarvoor helemaal geen grote hoeveelheid ruimte vereist, dus we hebben 10 g gebruikt (G Stands voor Giga Byte GB). In deze zelfstudie gebruiken we echter het VDI -schijfformaat.
Start op vanaf de ISO -afbeelding
Nadat we de virtuele harde schijf hebben gemaakt, laten we de ISO opstarten in live -omgeving. We gebruiken OS -type Linux, dwz De puppy Linux ISO -afbeelding woonde op het bureaublad van onze Ubuntu.
qemu-system-x86_64 -boot d -cdrom Desktop/puppy.iso -m 512
In de bovenstaande opdracht hebben we de ISO -afbeelding gebruikt die zich op onze desktopmap bevindt. Op dezelfde manier moet u het pad van uw ISO -bestand in de opdracht vermelden; De rest van het commando blijft hetzelfde. De-Mgaf de hoeveelheid RAM aan die is toegewezen aan gast -besturingssystemen van het hostsysteem, hier is het 512 MB.
Qemu uitvoeren om OS te installeren op virtuele harde schijf
Zodra u de bovenstaande opdracht uitvoert, begint het gast Linux OS op te starten en kan hij worden getest in de live omgevingMaar voor de installatie moeten we virtuele harde schijf bevestigen.U wilt bijvoorbeeld ook het gast -besturingssysteem zoals Windows of een andere Linux installeren; Dan moeten we het aan de Qemu vertellen, hey! Hier is de drive.Typ gewoon de naam van de virtuele schijf die u hierboven hebt gemaakt
QEMU -SYSTEM -X86_64 -BOOT D -CDROM Desktop/puppy.iso -m 512 -hda puppy.vdi
Start rechtstreeks op van CD ROM
Naast de ISO -bestanden kan de gebruiker het besturingssysteem ook rechtstreeks opstarten vanuit CD ROM:
QEMU -SYSTEM -X86_64 -BOOT D -CDROM /DEV /CDROM -M 512
In de bovenstaande opdrachtregel haalt de QEMU de opstartbestanden op van de CD-ROM-schijfstation.
Schakel KVM- of Intel -versnellingsmodules in
Om Qemu virtuele machines te versnellen, kunnen we de KVM of Intel Haxm inschakelen. Dus, om VM sneller uit te voeren, gebruik dan de instructies-Accel KVMof-Nable-kvmvoor KVM en-Accel Haxof-Nable-Haxvoor Intel Haxm.
Bijvoorbeeld:
QEMU -SYSTEM -X86_64 -BOOT D -CDROM /DEV /CDROM -M 512 -NABLE -KVM
of
QEMU -SYSTEM -X86_64 -BOOT D -CDROM /DEV /CDROM -M 512 -NABLE -HAX
Start op vanaf virtuele harde schijf
Na de installatie van het gastbesturingssysteem, nu als we onze virtuele harde schijf willen opstarten voor verder gebruik of al wat VDI- of VHD -harde schijfafbeelding hebben, gebruik het dan gewoon met de onderstaande opdracht.
QEMU-SYSTEM-X86_64 -HDA (pad van de virtuele harde schijf)
qemu-system-x86_64 -hda puppy.vdi
Qemu img converteren
Deze opdrachtgebaseerde virtualisatie -tool kan niet alleen VM's maken, maar stelt de gebruikers ook in staat om de beeldformaten te converteren. Hier is het bevel daarvoor
qemu-img convert {Image_Name} {Image_Name}
Bijvoorbeeld,We willen de ISO of QCOW2 converteren naar IMG RAW -indeling die de bovenstaande opdracht zo zal gebruiken
qemu-img convert /Desktop/ubutnu.iso /Desktop/new.img
Opmerking: We moeten het volledige pad geven waar de afbeelding zich bevindt en ook waar we de geconverteerde willen opslaan.
Virt Manager voor QEMU
Na het doorlopen van de bovenstaande opdracht en de procedure voor het installeren van een virtuele machine op QEMU; Misschien wilt u het opgeven vanwege de complexiteit ervan. Maar wacht, er is een eenvoudige en eenvoudig te gebruiken Create VM -methode op dit virtualisatietool. Het is door het een grafische gebruikersinterface te geven, net als deVirtuele doos. Vandaar dat als u een nieuwe gebruiker bent en uzelf wilt opslaan door de lange opdrachten te schrijven, voert u de onderstaande uitCommando om de Virt Manager op Ubuntu te installeren.
sudo apt-get install qemu virt-manager virt-viewer libvirt-bin
Voorbeelduitvoer voor de bovenstaande opdracht:
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
Na het uitvoeren van de bovenstaande opdrachtje zult eenVirtual Machine ManagerGereedschap opgeroepenDeugdop uw Ubuntu -systeem. Ga naar alle applicaties om toegang te krijgen tot virtuele virtuele machines van Virt Manager en klik op het vird -pictogram.
Wanneer het virtbeheerder werd geopend, klikt u op de eerste optie vanaf de linkerkant in het bovenste menu. Deze optie geeft u een begeleide GUI voor het maken en opzetten van virtuele machines. Het proces is hetzelfde als de VirtualBox.
Selecteer vervolgens het opstarten van medium naar ISO -afbeelding en wijs vervolgens het RAM, aantal CPU's en virtuele harde schijf toe.
Tijdens het maken van de VM's op de virtuele virtuele manager voor QEMU krijgt u ook een netwerkselectieoptie van waar we de virtuele netwerken voor onze machines kunnen selecteren. Standaard deVirtueel netwerk 'standaard' NAT is geselecteerd, laat het zijn zoals het is als je geen meerdere verbindingen hebt. Het is in de NAT die het IP -adresbereik van de host gebruikt om de internetverbinding te delen.
Dus op deze manier kunnen we deze virtualbox alternatieve software gebruiken, niet alleen op Ubuntu, maar ook voor andere verschillende Linux -besturingssystemen voor het maken van virtuele machines. Deze virtualisatiesoftware heeft zijn eigen voordelen ten opzichte van de virtualbox, zoals hogere snelheid, omdat deze direct de kernelmodule gebruikt. Bovendien, als je je zelf bekend maakt met zijn opdrachten, worden het opzetten van VM's op de headless -servers een fluitje van een cent. Het ondersteunt echter bijna elke vorm van emulatie van het besturingssysteem, maar in vergelijking met Linux voor Windows Guest OS is het een beetje traag. Schakel in dergelijke situaties de KVM- of Intel Haxm -versneldrainmodules in. Ook is het punt om op te merken, in de nieuwste versie is de KVM -ondersteuning gedropt, maar de open source HAX zal nog steeds doorgaan.
Als je een probleem hebt gehad met het volgen van deze zelfstudie, laat het ons weten dat het commentaargedeelte helemaal van jou is!
Andere nuttige bronnen: