• Opret dig
  • Glemt adgangskode

User account menu

  • Artikler
  • Forside
  • Forum
  • Nyheder
  • Log ind
Hjem
LinuxIN.dk

Snak med

Opret dig!

Af dklinux | 24.04.2012 03:07

MicroHowto: Virtual maskine med KVM

Software
Tænkte at nogen måske kunne drage nytte af at vide at Linux faktisk har en fremragende virtual maskine indbygget.

Rettere sagt , Linux har support for hardware acceleration med forskellige CPUs som fx AMD og Intels PC CPUer der sammen med qemu hardware emulerings softwaren giver en meget flexibel .

Guiden her er blot en lille smagsprøve på hvad man kan uden at ty til kommicielt software, og uden at skulle loade diverse kommicielle ting ind i sin Linux kerne. Kort fortalt så har det to fordele.

1: Supporten følger Linux kernen , dvs der hvor linux kernen understøtter hardware acceleration , dvs du skal ikke bekymre dig om din vmware eller virtualbox nu har et kerne modul der virker med din kerne. Og om du har de nyeste features. De nyeste features er i den nyeste kerne. Og så bliver de backportet til fx RHEL enterprise kernen.

2: Alt kode er under GPLv2 eller LGPL dvs du har GNU beskyttede rettigheder.

=================================================
Opsummering :
Jeg vil ganske kort vise få kommandoer der vil starte en grafisk virtual maskine, dvs du kan bruge dette som skabelon til fx at installere en virtual maskine med WindowsXP . I eksemplet vil jeg ikke vise noget grafisk da dette er en quickguide og jeg ikke ved om man overhovedet vise billeder i en
forum besked. Jeg vil blot installere en Debian testing i386 dvs 32bit PC verison , selve debian installationen er præsis som i kender en Linux install på jeres PC så den vil jeg ikke kede jer med. Jeg gør det her på en Ubuntu 11.10 jeg havde liggende, men det er ens på alle Linux distros. skift apt-get ud med yum eller pacman eller emerge eller hvad du nu roder med.

1: Installer nødvendigt software :
sudo apt-get install qemu-kvm
(hvad,, du havde forventet EULAs og grimme corporate websites ? )
The following extra packages will be installed:
bridge-utils cpu-checker libaio1 msr-tools qemu-common seabios vgabios
Suggested packages:
ipxe mol-drivers-macosx openbios-sparc ubuntu-vm-builder uml-utilities
The following NEW packages will be installed:
bridge-utils cpu-checker libaio1 msr-tools qemu-common qemu-kvm seabios vgabios
0 upgraded, 8 newly installed, 0 to remove and 115 not upgraded.
Need to get 3,985 kB of archives.
After this operation, 12.3 MB of additional disk space will be used.
(12.3 MB for en virtual maskine , ER DU GAL )
press Y for YES

2: VALGFRIT !!!! Lav RAM-disk :
Jeg gør dette fordi jeg ikke gider fedte rundt på min langsomme SSD.
Og fordi RAM er billigt i dag, og JA jeg griser med det i denne guide. Bær over med mig.

mkdir -p /mnt/tmpfs1
sudo mount -t tmpfs -o size=5000m tmpfs /mnt/tmpfs1
cd /mnt/tmpfs1/


tmpfs er disk i memory eller swap (smertefuldt hvis du ikke har nok RAM) uden dynamisk vækst,, i modsætning til dens søster ramfs . Se detaljer her.

http://www.thegeekstuff.com/2008/11/overview-of-ramfs-and-tmpfs-on-linu…

3: Hent installations fil :
Dette er så hvor du har kopieret din købte MS windows cd til en ISO på disken eller endnu bedre din downloadet en Debian, Fedora eller anden lækker FOSS SW.

Vi viser en debian i386 testing (det den nyeste ubuntu er bygget på, ca )

wget http://d-i.debian.org/daily-images/i386/daily/netboot/mini.iso
2012-04-24 00:50:23 (343 KB/s) - `mini.iso' saved [18874368/18874368]

18 MB for en installer ! Verden er da af lave i 2012.

4: Lav virtual disk image :
qemu-img create -f qcow2 hda.qcow2 4G

qemu-img tager et hav af options , dette er et simpelt copy-on-write disk. Man kan meget mere med dette værktøj som f.eks at lave snapshots og konvertere images fra andre virtualle maskiner , blandt andet vmware til et KVM venligt qcow2 format.

5: Start din nye KVM :

kvm -cdrom /mnt/tmpfs1/mini.iso -drive file=/mnt/tmpfs1/hda.qcow2,if=virtio -m 768 -boot d

kvm er qemu med KVM acceleration , du kan også bruge andre versioner af qemu. Fx ren emulering uden KVM hardware acceleration.

-cdrom er din installations cd eller iso , du kan også bruge dit cdrom drev direkte.
f.eks /media/cdrom0 eller hvor det nu er mounted.

-drive er en relativ avanceret option, den består af stien (disk=XxX) til din virtuelle harddisk og interfacet, her virtio der performer relativt godt (if=virtio).
-m er RAM i MB (lad være med at tage mere end jeres fysiske maskine kan tage eller i har til over når i kører jeres normale programmer)
-boot er drev i booter med i windows verden, C = harddisk D = CDROM
der findes også en -smp N argument hvor N er mængen af virtuelle CPUer i vil give systemet (igen , undgå at lave flere virtuelle CPUer end du har fysiske kerner+hyperthreading)

6: Installer dit OS :
...
når du er færdig skal du blot sige ok til genstart og lukke qemu / KVM vinduet umiddelbart efter.

7: start KVM på disk billedet og ikke cdrom billedet :

kvm -cdrom /mnt/tmpfs1/mini.iso -drive file=/mnt/tmpfs1/hda.qcow2,if=virtio -m 768 -boot c

Som i kan se bruger man C og D som om man var på en Windows kasse, det er lidt grimt , men det er en legacy ting.

Man kan også starte op helt uden et emuleret cdrom drev .
kvm -drive file=/mnt/tmpfs1/hda.qcow2,if=virtio -m 768

Og så har i en Debian Testing kørende og valgte i blot en ssh server som jeg
vil den bruge ca 16 MB RAM og ca 550 MB disk.

Er i så glad for jeres installation , vil jeg nok anbefale at lukke jeres VM pænt ned og flytte den virtuelle disk fil til noget mere permanent.
  • Log ind eller opret dig for at tilføje kommentarer

Kommentarer6

# 1

13 år 2 måneder siden

Permalink

Indsendt af hoppendekanin den 24. april 2012 kl. 09:26

Permalink

Nice guide, jeg har savnet

Nice guide, jeg har savnet nogle generelle kommandoer til KVM. Jeg er også blevet helt fascineret af KVM (har kørt med det siden efterårsferien).

Hvis man ikke gider at rode med kommandoer, kan man med fordel bruge virt-manager til at styre ens KVM-maskine med. Den har nogle få mærkelige bugs, men overordnet virker det meget fint.

  • Log ind eller opret dig for at tilføje kommentarer

# 2

13 år 2 måneder siden

Permalink

Indsendt af bill gates den 24. april 2012 kl. 09:34

Permalink

Og fordi RAM er billigt

#0: Og fordi RAM er billigt i dag, og JA jeg griser med det i denne guide. Bær over med mig.

Ja det er nye tider. Jeg troede aldrig jeg skulle få brug for mere RAM end 4GB. 2GB er endda ofte mere end rigeligt. Men det er nye tider, virutalisering er kommet til masserne og øger behovet for fysisk RAM.

Heldigvis koster RAM ikke ret meget idag, og virtualisering er blevet svinenemt. Selv bruger jeg GNOME Boxes, her er en virtuel maskine ca. 5 clicks away, men din guide er også ret lige til.
  • Log ind eller opret dig for at tilføje kommentarer

# 3

13 år 2 måneder siden

Permalink

Indsendt af marlar den 24. april 2012 kl. 10:31

Permalink

#0
Fin guide!
Hvordan er

#0

Fin guide!

Hvordan er ydelsen af KVM i forhold til Virtualbox og VMware?
  • Log ind eller opret dig for at tilføje kommentarer

# 4

13 år 2 måneder siden

Permalink

Indsendt af dklinux den 24. april 2012 kl. 11:01

Permalink

ydelse

http://www.phoronix.com/scan.php?page=article&item=ubuntu_1110_xenkvm&n…

Generelt. KVM kvaser de fleste andre på CPU ydelse. På IO performance er det mere kompliceret, der skal du stadig læse op på diverse parametre og formentligt bruge rå partitioner og ikke qcow2 .
Men denne oneliner er et godt kompromis .
Tilgengæld snyder KVM ikke med IO ydelse, dvs write barriers og data-integritet bliver respekteret , i modsætning til fx virtualbox der tidligere var berygtet for dette. Jeg mener de er stoppet nu men problemet var til stede indtil sent sidste år.

Jeg skal have set hvad Gnome boxes kan , denne her er distro neutral og Desktop neutral. Men naturligvis mere for folk der er trygge ved CLI.

Jeg håber at disse små hint her viser folk at det snart er på tide at pensionere løsninger med tvivlsomme licenser eller besværlige og lukke kerne moduler.
Jeg forstå at folk vil bruge noget kommicielt hvis de rent faktisk opnåede en fordel med det . Men KVM kører alle relevante Windows versioner og har features der skalere op i par med VMWare ESX og Xen.
  • Log ind eller opret dig for at tilføje kommentarer

# 5

13 år 2 måneder siden

Permalink

Indsendt af phomes den 24. april 2012 kl. 11:55

Permalink

Hvis man er til CLI, så er

Hvis man er til CLI, så er virsh også værd at kigge på. Det er et cli interface til libvirt (som også både boxes og virt-manager er GUI for). Den gør det lidt nemmere end at arbejde direkte med kvm/qemu.

libvirt er for øvrigt wrappet i glib (i libvirt-glib). Boxes' funktionalitet til genkende af iso'er og sætte gode defaults er også i et lib (libosinfo). Det vil derfor ikke være svært at lave kde-version ovenpå. (Koxes?) Kvm er en rigtig lækker teknologi og den fortjener at blive udbredt til alle desktops.
  • Log ind eller opret dig for at tilføje kommentarer

# 6

13 år 2 måneder siden

Permalink

Indsendt af Prezioso den 24. april 2012 kl. 11:58

Permalink

Lækkert, så kan man da

Lækkert, så kan man da komme i gang :)
  • Log ind eller opret dig for at tilføje kommentarer

Svar søges

llumos Unix-operativsystem, 0
Den er go 0
14. februar = I Love Free Software Day 0
Lokal fil-deling - for de dovne. 0
Linux fra begynder til professionel af O'Reilly 0

Seneste aktivitet

Ubuntu touch 1
Ekstern Blu-ray-brænder, der fungerer med PCLinuxOS 6
Hvad med en afstemming Malar 5
Virtuel maskine? 6
PCLinuxOS 40
den er sjov 3
Reserve kernel og btrfs 3
En snak om Linux-kompatibel software 12
"Intet realistisk alternativ" - mig i r*ven 17
Open source events i danmark? 3
Gode anmeldelser Zorin OS 17.3 8
Open Source-eksperimentet 5
Nulstilling af adgangskode 6
Ingen Mint 5
Linux App Store Flathub når 3 milliarder downloads 2
Digitaliseringsministeriet sætter gang i pilotprojekt om digital suverænitet 3
Mest sikker webbrowser 5
Firefox 2
Privatbeskeder 7
Backup/synkronisering? 3

© 2025 Linuxin og de respektive skribenter

Oprettet og drevet af nørder siden 2004 !