kernel-based VirtualMachine的简称,是一个开源的系统虚拟化模块,自Linux2.6.20之后集成在Linux的各个主要发行版本中。
官网地址:http://www.linux-kvm.org/page/Main_Page
他就类似与vmware,只不过vmware,你只需通过鼠标点击选择一些选项为虚拟机加配置,而这个kvm需要通过命令来操作,废话不多说,下面直接讲下过程。
其实安装过程很简单:
首先,查看CPU信息,看是否支持虚拟化:
cat /proc/cpuinfo
在列出来的一系列信息中,注意这一行:
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mcacmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nxlm constant_tsc arch_perfmon pebs bts pni monitor ds_cpl vmx smxest tm2 ssse3 cx16 xtpr sse4_1 lahf_lm
这里面如果有SVM (AMD cpu)或者 VMX (Intel cpu)说明CPU是支持安装虚拟机的。
然后首先安装kvm,qemu
2.安装virtinst
sudo apt-get install virtinst
安装完成后,会在/etc下出现libvirt。
可以通过 man virt-install查看其参数信息。
参考地址:http://www.zhigang.net/post/35002
修改网络配置:
sudo nano /etc/network/interfaces
修改为如下内容
auto eth1
iface eth1 inet manual
up ifconfig $IFACE 0.0.0.0 up
down ifconfig $IFACE downauto tap1
iface tap1 inet manual
up ifconfig $IFACE 0.0.0.0 up
down ifconfig $IFACE down
tunctl_userjiangli auto br0
iface br0 inet dhcp
bridge_ports eth1 tap1
上面中的eth1是我使用的网卡,红色加粗的是你的用户名。tap1是配置的虚拟网卡,我的理解br0是将eh1与tap1连接起来。
修改完成,保存退出。重新启动网络,输入命令
下面我就介绍下其安装过程。(每个参数之间只可以空一个空格;有‘,’号的不需要空格)
sudo virt-install --name proto --ram 512--vcpus=1 --disk path=/home/mrj/kvm/proto.img,size=50 --accelerate--cdrom ubuntu-12.04-server-64.iso --vnc --vncport 5908--vnclisten=0.0.0.0
–name指定虚拟机名称,virsh操作指定虚拟机时所需要的参数,不可以重复。
–ram 分配内存大小,安装完成后可以用 virsh 调整。
–vcpus 分配CPU核心数,最大与实体机CPU核心数相同,安装完成后也可以用 virsh调整。
–disk 指定虚拟机镜像, size 指定分配大小单位为G。
–cdrom 指定安装镜像所在。
–vnc 启用VNC远程管理,一般安装系统都要启用。
–vncport 指定 VNC 监控端口,默认端口为 5900。
–vnclisten 指定 VNC 绑定IP,默认绑定127.0.0.1,这里将其改为0.0.0.0 以便可以通过外部连接。
执行完上述命令后,会输出:
开始安装……
创建域……
Cannot open display:
Run ‘virt-viewer –help’ to see a full list ofavailable command line options
域安装仍在进行。您可以重新连接
到控制台以便完成安装进程。
如果安装过程中出现如下错误:
可能是你的--vncport已经被占用了,只要写一个没被占用的vncport就可以了到这一步,需要在客户端操作了,在网上查了下
一种是使用linux操作系统,带桌面的,但是需要先在安装virt-viewer,
还有一种方式,是在 MAC 下使用Chicken of theVNC.
下载地址:
http://chicken-of-the-vnc.en.softonic.com/mac/download
这个软件是免费的,也挺好操作的。
host处填入你的服务器地址加上你刚才安装虚拟机设定的端口号。密码填入你的密码,然后点击Connect即可连接,然后就是安装操作系统的过程,没什么意思了,就不介绍了。
虚拟机安装完成后,配置下ip就可以远程访问了。
注意:以上的操作都是在vnc上进行的,普通的终端不可以,因为安装的时候会有图形界面
使用vnc之前首先在ubuntu server上安装vnc
sudo apt-get install vnc4server
修改密码:
vnc4passwd
这个密码会在客户端登录的时候用到。
启动vnc4server
vnc4server
desktop的名称,这个名称在客户端连接的时候用到。如果是desktop:1,在客户端连接的时候就填写:ip:5901,依此类推,如果是Desktop2,
在客户端的时候填写:ip:5902….
修改.vnc/xstartup,改成如下形式:
#!/bin/sh
# Uncomment the following two lines for normaldesktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc[ -x /etc/vnc/xstartup ]&& exec/etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb$HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
x-terminal-emulator -geometry 80×24+10+10 -ls -title "$VNCDESKTOPDesktop" &
x-window-manager &
gnome-session &
紫色字体是后来加上的。
重启vnc服务
vnc4server -kill :1
vnc4server
如果还有什么错误的话建议查看下错误日志:sudo nano /var/log/libvirt/qemu/mrj.log
例如:安装过程中我碰到过这个错误:unable to read from monitor :Connection reset bypeer的时候你可以检查下日志看它的端口有没有重复了,
windows环境下可以考虑下载vnc view直接使用kvm安装,但是不推荐这样安装,因为装的虚拟机经常会出现无故宕机的问题http://jiangli.easymorse.com/?p=990