KVM: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
== Description == | == Description == | ||
Setting up the Kernel-based Virtual Machine including network configuration and | Setting up the Kernel-based Virtual Machine including network configuration and being able to create and run new machines as a normal user without requiring root privileges. | ||
== Packages == | == Packages == | ||
{{Box Code| | {{Box Code|paludis --install qemu-kvm --pretend| | ||
<pre> | <pre> | ||
[ | * media-libs/libsndfile [N 1.0.20] | ||
Reasons: *net-wireless/bluez-4.39-r2:0::gentoo | |||
[ | alsa -jack -minimal -sqlite build_options: -optional_tests -split strip -trace | ||
[ | "A C library for reading and writing files containing sampled sound" | ||
905.69 kBytes to download | |||
* dev-libs/libnl [N 1.1-r2] | |||
[ | Reasons: *net-wireless/bluez-4.39-r2:0::gentoo | ||
build_options: -optional_tests -split strip -trace | |||
"A library for applications dealing with netlink socket" | |||
282.16 kBytes to download | |||
* net-wireless/bluez [N 4.39-r2] | |||
Reasons: *app-emulation/qemu-kvm-0.11.0:0::gentoo | |||
alsa consolekit cups -debug -doc -gstreamer -old-daemons -test-programs usb build_options: -optional_tests -split strip -trace | |||
"Bluetooth Tools and System Daemons for Linux" | |||
974.81 kBytes to download | |||
* media-libs/libsdl [N 1.2.14] | |||
Reasons: *app-emulation/qemu-kvm-0.11.0:0::gentoo | |||
X -aalib alsa audio -custom-cflags -dga -directfb -fbcon -ggi joystick -libcaca -nas opengl -oss (-ps3) -pulseaudio (-svga) -tslib video -xinerama xv build_options: -optional_tests -split strip -trace | |||
"Simple Direct Media Layer" | |||
* net-misc/vde [N 2.2.3] | |||
Reasons: *app-emulation/qemu-kvm-0.11.0:0::gentoo | |||
-pcap ssl build_options: -optional_tests -split strip -trace | |||
"vde2 is a virtual distributed ethernet emulator for emulators like qemu, bochs, and uml." | |||
511.71 kBytes to download | |||
* app-text/texi2html [N 1.78] | |||
Reasons: *app-emulation/qemu-kvm-0.11.0:0::gentoo | |||
build_options: -optional_tests -split strip -trace | |||
"Perl script that converts Texinfo to HTML" | |||
442.60 kBytes to download | |||
* app-emulation/qemu-kvm [N 0.11.0] <target> | |||
alsa bluetooth -esd -gnutls ncurses -pulseaudio -sasl sdl vde QEMU_SOFTMMU_TARGETS: -arm -cris i386 -m68k -mips -mips64 -mips64el -mipsel -ppc -ppc64 -ppcemb -sh4 -sh4eb -sparc x86_64 QEMU_USER_TARGETS: -alpha -arm -armeb -cris i386 -m68k -mips -mips64 -mips64el -mipsel -ppc -ppc64 -ppc64abi32 -sh4 -sh4eb -sparc -sparc32plus -sparc64 x86_64 build_options: -split strip -trace | |||
"QEMU + Kernel-based Virtual Machine userland tools" | |||
4.18 MBytes to download | |||
</pre> | </pre> | ||
}} | }} | ||
{{Box Code| | {{Box Code|paludis --install iptables bridge-utils usermode-utilities --pretend| | ||
<pre> | <pre> | ||
* net-firewall/iptables [N 1.4.5] <target> | |||
ipv6 build_options: -optional_tests -split strip -trace | |||
[ | "Linux kernel (2.4+) firewall, NAT and packet mangling tools" | ||
450.66 kBytes to download | |||
* net-misc/bridge-utils [N 1.4] <target> | |||
build_options: -optional_tests -split strip -trace | |||
"Tools for configuring the Linux kernel 802.1d Ethernet Bridge" | |||
31.89 kBytes to download | |||
* sys-fs/fuse [N 2.8.1] | |||
Reasons: *sys-apps/usermode-utilities-20070815:0::gentoo | |||
build_options: -optional_tests -split strip -trace | |||
"An interface for filesystems implemented in userspace." | |||
481.32 kBytes to download | |||
* sys-apps/usermode-utilities [N 20070815] <target> | |||
build_options: -optional_tests -split strip -trace | |||
"Tools for use with Usermode Linux virtual machines" | |||
48.98 kBytes to download | |||
</pre> | </pre> | ||
}} | }} | ||
== USE-Flags == | == USE-Flags == | ||
{{Box File|/etc/ | {{Box File|/etc/paludis/use.conf| | ||
<pre> | <pre> | ||
app-emulation/kvm | */* QEMU_SOFTMMU_TARGETS: -* i386 x86_64 | ||
*/* QEMU_USER_TARGETS: -* i386 x86_64 | |||
app-emulation/qemu-kvm vde | |||
</pre> | </pre> | ||
}} | }} | ||
== Installation == | == Installation == | ||
{{Root|# | {{Root|# paludis --install qemu-kvm}} | ||
== Kernel Configuration == | == Kernel Configuration == | ||
| Line 89: | Line 130: | ||
== Add user to the necessary groups == | == Add existing user to the necessary groups == | ||
{{Root|# usermod -a -G kvm,qemu username}} | {{Root|# usermod -a -G kvm,qemu username}} | ||
Revision as of 15:44, 25 November 2009
Description
Setting up the Kernel-based Virtual Machine including network configuration and being able to create and run new machines as a normal user without requiring root privileges.
Packages
USE-Flags
Installation
# # paludis --install qemu-kvm
Kernel Configuration
Network configuration
# # /etc/init.d/
# # ln -s net.lo net.br0
# # ln -s net.lo net.tap0
# # rc-update add net.br0 default
# # rc-update add net.tap0 default
# # rc-update add vde default
Add existing user to the necessary groups
# # usermod -a -G kvm,qemu username
Usage
Generate random MAC adresses
$ # echo -n DE:AD:BE:EF ; for i in `seq 1 2` ; do echo -n `echo ":$RANDOM$RANDOM" | cut -n -c -3` ;done
You can always setup new machines in your home directory, but here we assume we have a separate mount-point/partition which we mount at /mnt/kvm.
$ # mkdir -p /mnt/kvm
# # chown -R root:kvm /mnt/kvm
# # chmod -R g+w /mnt/kvm
$ # kvm-img create -f qcow2 /mnt/kvm/linux-test.img 15G
$ # vdeq kvm /mnt/kvm/linux-test.img -cdrom /dev/cdrom -soundhw es1370 -usb -m 1024 -k de -smp 1 -vga std -localtime -net nic,vlan=0,macaddr=DE:AD:BE:FF:15:33 -net vde,vlan=0,sock=/var/run/vde.ctl
$ # kvm-img create -f qcow2 /mnt/kvm/windows-test.img 15G
$ # vdeq kvm /mnt/kvm/windows-test.img -cdrom /dev/cdrom -soundhw es1370 -usb -m 1024 -k de -smp 1 -vga std -localtime -net nic,vlan=0,macaddr=DE:AD:BE:EF:14:32 -net vde,vlan=0,sock=/var/run/vde.ctl
Once done installing and after enabling the remote desktop access in Windows you can add the -nographic switch and start the kvm machine via a login script for example.
$ # vdeq kvm /mnt/kvm/windows-test.img -nographic -soundhw es1370 -usb -m 1024 -k de -smp 1 -vga std -localtime -net nic,vlan=0,macaddr=DE:AD:BE:EF:14:32 -net vde,vlan=0,sock=/var/run/vde.ctl
You really want to use an RDP session to connect to your Windows Boxes since the mouse movement is horrible slow and laggy when using the SDL client.