Med enkle ord er Qemu et softwareprogram, som er gratis og open source; bruges til at skabe virtuelle maskiner over toppen af andre Linux-operativsystemer ligesom VirtualBox og VMware workstation player. Ikke kun Linux, men man kan også installere denne software på Windows og MacOS for at teste forskellige Linux-distros. De fleste Linux-brugere foretrækker dog at bruge VirtualBox på grund af dens brugervenlige grænseflade og en bred vifte af hardwarekompatibilitet. Selvom VMware Workstation Player også er tilgængelig til Linux, begrænset med hensyn til funktioner sammenlignet med VirtualBox. Under sådanne omstændigheder er der et par velkendte opensource-hardwarevirtualiseringssoftware til rådighed med deres eget Linux-operativsystemmiljø, som kan konvertere enhver bare metal-maskine til en fuld virtualiseringsplatform. Vi taler om sådanne platforme i en anden artikel.
Her i denne Qemu Ubuntu-tutorial-artikel vil vi se, hvordan du installerer og konfigurerer denne open source-maskine-emulator og virtualizer-værktøj på Ubuntu.
Vi kan køre OS'er og programmer ved at udføre gæstekoden direkte på værts-CPU'en ved hjælp af denne software. Det understøtter virtualisering ved hjælp af KVM-kernemodulet i Linux. Når man bruger KVM, kan man virtualisere x86, server og embedded PowerPC, 64-bit POWER, S390, 32-bit og 64-bit ARM og MIPS gæster.
Qemu Ubuntu Tutorial: Sådan installeres via kommandoterminalen
For at installere Qemu på Ubuntu skal du køre følgende kommandoer nedenfor.
Note: Vi brugte Ubuntu 18.04 til at installere og oprette en kernebaseret virtuel maskine, men kommandoerne givet her er de samme for de ældre versioner såsom Ubuntu 17.04, Ubuntu 16.04, Ubuntu 15.04... Mens jeg skriver denne tutorial, er den seneste version afQemu var 3.1.0.
- Gå tilUbuntu
- Åbn kommandolinjeterminalværktøjet på Ubuntu. Genvejen erCTRL+ALT+T.
- Kør nedenstående kommando på terminalen:
sudo apt-get install qemu
- Installer KVM-pakken, kommandoen er
sudo apt-get install qemu-kvm
- Brug nedenstående kommando for at kontrollere Qemu-versionen
apt show qemu-system-x86
- Tjek for KVM-version
kvm -version
Eksempel output
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) ...
Opret VirtualMachine
Efter installation afQemupå Ubuntu værtssystem, er det tid til at skabe virtuelle maskiner.
Opret virtuel harddisk
Kommandoen til at oprette virtuel harddisk er
qemu-img create Puppy.vdi 10G
Note: I ovenstående kommando er Puppy.vdi navnet på vores virtuelle harddisk. Du kan navngive den efter eget valg. Udvidelsen.VDI vil oprette et Virtual DISK-billedformat, hvis du vil, du kan erstatte det med .img (råbilledformat) .vhd, og .vmdk-formater gør du også det.
Vi kan også brugeQemu standard virtuelle harddiskformatersom er .qcow2, .qed, .qcow og .cow.
Så hvis den samme harddisk, som vi oprettede ovenfor; skal oprettes i Qemu diskformat, så bliver kommandoen
qemu-img create -f qcow2 Puppy.qcow 10G
10 Ger mængden af plads, vi ønsker at allokere til den virtuelle harddisk. Her installerer vi Puppy Linux som slet ikke kræver meget plads, så vi brugte 10 G (G står for Giga Byte GB). Men i denne vejledning bruger vi VDI-diskformatet.
Start fra ISO-billede
Efter at have oprettet den virtuelle harddisk, lad os starte ISO i Live-miljø. Vi bruger OS type Linux, dvs. Puppy Linux ISO-billedet lå på skrivebordet på vores Ubuntu.
qemu-system-x86_64 -boot d -cdrom Desktop/puppy.iso -m 512
I ovenstående kommando brugte vi ISO-billedet, der er på vores skrivebordsmappe. På samme måde skal du nævne stien til din ISO-fil i kommandoen; resten af kommandoen forbliver den samme. De-mangivet mængden af RAM, der er tildelt gæste-OS fra værtssystemet, her er det 512 MB.
Kører Qemu for at installere OS på virtuel harddisk
Så snart du kører ovenstående kommando, vil gæste-Linux OS begynde at starte op og kan testes i live-miljøetmen til installationen skal vi vedhæfte virtuel harddisk.Så, for eksempel, vil du også installere gæsteoperativsystemet som Windows eller enhver anden Linux; så må vi sige til Qemu, hej! her er køreturen.Indtast blot navnet på den virtuelle disk, du har oprettet ovenfor
qemu-system-x86_64 -boot d -cdrom Desktop/puppy.iso -m 512 -hda Puppy.vdi
Boot direkte fra cd-rom
Udover ISO-filerne kan brugeren også starte OS direkte fra cd-rom:
qemu-system-x86_64 -boot d -cdrom /dev/cdrom -m 512
I ovenstående kommandolinje henter Qemu'en opstartsfilerne fra cd-rom-diskdrevet.
Aktiver KVM- eller intel-accelerationsmoduler
For at accelerere virtuelle QEMU-maskiner kan vi aktivere KVM eller Intel HAXM. Så brug instruktionerne for at køre VM hurtigere-accel kvmeller-aktiver-kvmtil KVM og-accel haxeller-aktiver-haxtil Intel HAXM.
For eksempel:
qemu-system-x86_64 -boot d -cdrom /dev/cdrom -m 512 -enable-kvm
eller
qemu-system-x86_64 -boot d -cdrom /dev/cdrom -m 512 -enable-hax
Start fra virtuel harddisk
Efter installationen af gæsteoperativsystemet, hvis vi nu ønsker at starte vores virtuelle harddisk til videre brug eller allerede har et VDI- eller VHD-harddiskbillede, skal du blot bruge det med nedenstående kommando.
qemu-system-x86_64 -hda (sti til den virtuelle harddisk)
qemu-system-x86_64 -hda puppy.vdi
Qemu img konverter
Dette kommandobaserede virtualiseringsværktøj kan ikke kun oprette VM'er, men gør det også muligt for brugerne at konvertere billedformaterne. Her er kommandoen til det
qemu-img convert {image_name} {image_name}
f.eks.vi ønsker at konvertere ISO eller qcow2 til IMG råformat, som ovenstående kommando vil bruge sådan her
qemu-img convert /Desktop/ubutnu.iso /Desktop/new.img
Note: Vi skal angive den komplette sti, hvor billedet ligger, og også hvor vi vil gemme det konverterede.
Virt Manager for Qemu
Efter at have gennemgået ovenstående kommando og proceduren for installation af en virtuel maskine på QEMU; du vil måske give op på grund af dens kompleksitet. Men vent, der er en enkel og nem at bruge oprette VM-metode på dette virtualiseringsværktøj. Det er ved at give det en grafisk brugergrænseflade ligesomVirtuel boks. Derfor, hvis du er en ny bruger og vil redde dig selv fra at skrive de lange kommandoer, så kør nedenståendekommando for at installere Virt Manager på Ubuntu.
sudo apt-get install qemu virt-manager virt-viewer libvirt-bin
Eksempel output for ovenstående kommando:
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
Efter at have kørt ovenstående kommandodu vil se enVirtual Machine Managerværktøj kaldetVirtpå dit Ubuntu-system. For at få adgang til Virt Manager virtuelle maskiner skal du gå til alle applikationer og klikke på Virt-ikonet.
Når Virt Manager åbnede, klik på den første mulighed fra venstre side givet i topmenuen. Denne mulighed giver dig en guidet GUI til oprettelse og opsætning af virtuelle maskiner. Processen er den samme som VirtualBox.
Vælg derefter opstart af medium til ISO-billede og tildel derefter RAM, antal CPU'er og virtuel harddisk.
Mens du opretter VM'erne på Virt Virtual Manager til Qemu, får du også en valgmulighed for netværk, hvorfra vi kan vælge de virtuelle netværk til vores maskiner. Som standard erVirtuelt netværk 'standard' NAT er valgt, lad det være som det er, hvis du ikke har flere forbindelser. Det er i NAT, der bruger værtens IP-adresseområde til at dele internetforbindelsen.
Så på denne måde kan vi bruge denne Virtualbox alternative software ikke kun på Ubuntu, men også til andre forskellige Linux OS'er til at skabe virtuelle maskiner. Denne virtualiseringssoftware har sine egne fordele i forhold til VirtualBox, såsom hurtigere hastighed, da den direkte bruger kernemodulet. Desuden, hvis du gør dig bekendt med dens kommandoer, så bliver opsætning af VM'er på de hovedløse servere et stykke kage. Det understøtter dog næsten enhver form for emulering af operativsystemer, men sammenlignet med Linux til Windows-gæste-OS er det en smule langsom. I sådanne situationer skal du aktivere KVM- eller Intel HAXM-acceleratormodulerne. Det skal også bemærkes, at i den seneste version er KVM-support blevet droppet, men open source HAXM vil stadig fortsætte.
Hvis du stødte på problemer med at følge denne tutorial, så lad os vide, at kommentarafsnittet er helt dit!
Andre nyttige ressourcer: