1.1
确定机器是否有VT
 grep vmx /proc/cpuinfo (INTEL芯片)
 grep svm /proc/cpuinfo (AMD芯片)

1.2 进入bios
  Intel(R) Virtualization Tech [Enabled]
  如有必要,还需在BIOS中开启VT-d
1.3 安装kvm,一般内核自带,,,去软件中心下载QEMU
没有的话就更新一下软件源。。。
2.1
用QEMU创建磁盘镜像
  sudo qemu-img create -f qcow windows.img 20G
ps:其中windows.img 为镜像名称,自己起自己喜欢的,和我的一样也行。
        20G为镜像大小

2.2
装操作系统:
sudo kvm -localtime -m 512 -hda windows.img -cdrom /home/zmqc/tmp/windowsxp.iso -boot d
ps:-m 512表示内存大小设为512M, windows.img改成上面你创建的,与我一样的话,就不用改了。  /home/zmqc/tmp/windows.iso 改成你存放镜像的绝对路径即可。。。


接下来就是安装系统了。。。
3.1安装成功后,进入系统进行一些设置,比如说:
    1:为自己的帐户设置一个密码,将此帐户加入到允许远程连接的名单中(右击我的电脑->属性->远程......)。设置完成后,关闭虚拟机。。。
    2:后台启动虚拟机:
sudo kvm -M pc -m 512 -hda windows.img -net nic -net user -vga std -usb -usbdevice host:cd12:ef18 -clock rtc -localtime -smp 2 -nographic -daemonize -redir tcp:3389::3389
参数说明见文章最后吧!!!
PS:如果你不想远程的话:sudo kvm -M pc -m 512 -hda windows.img即可,然后根据自己的需要加入一些参数吧!!!
启动虚拟机,这是后台启动,你不会看到任何的东西。。。
    怎么样使用呢?看下面:
rdesktop -f -D -r sound:local -x m localhost:3389
远程连接。。。有人知道 -x m参数啥意思么?因为这个参数我折腾了两个星期,哎~~~
-f是全屏的意思,,,你也可以自己设置分辨率: -g 1024x768  “x”为字母,不是乘号“*”。
sound:local开启声音,,,localhost:3389连接那个开出来的端口。。。
不过分辨率最好不要设置成跟电脑一样,稍微错开点,否则无法退出全屏。。。退出或者进入全屏为Ctrl+Alt+Enter。。。
3.2:USB两种方案
一:groupadd usbfs 建立用户组,名为usbfs,你也可以起一个自己喜欢的而电脑里又没有的组名
       adduser yourname usbfs 将自己的用户名添加到usbfs,yourname即为你自己的用户名。。。
     查看/etc/group,获得该组的gid,我的是1001,然后在/etc/fstab的最后加入一下这行:
     none/proc/bus/usb usbfs devgid=1001,devmode=664 0 0
然后,进入中端输入lsusb
Bus 001 Device 007: ID 0a5c:2110 Broadcom Corp.
Bus 001 Device 006: ID 0483:2016 SGS Thomson Microelectronics Fingerprint Reader
Bus 001 Device 001: ID 0000:0000          PS:你的机器显示可能会与我不同
如果是 ID 0000:0000 表示没有设备,
像 ID 0a5c:2110 Broadcom Corp. 表示vid是 0a5c,pid是2110
在启动kvm的命令中加入 -usbdevice host:0a5c:2110 即可添加你所要想加入的设备(U盘什么的)
PS:你可以先lsusb,然后将你想要添加的设备插入,再lsusb,多出来的便是你想要的。。。然后,替换上面的vid,pid到你的参数列表之中。。。

二:USB 可以用这种方法添加
 1. 插入usb, 用df命令列出硬盘信息,如果usb 是 dev/sdb 的话
 2. 启动时在最后加上 -hdb /dev/sdb 即可 这样usb就可以像一个硬盘一样挂到windows中, 目测还部分实现了共享的功能。。。
3.3:共享:
    为解决,好吧,不得不说我很春(我是达春绿)。。。
    好像用那个samba架设服务器的方法可以解决,我不太会搞。。。

4.0 下面使我找的一些参数说明,看一下把
1,-hda /home/zmqc/kvm/windows.img 你的系统虚拟磁盘
2,-hdb /dev/sda5 这个根据你自己进行选择,kvm可以加载你系统的分区。注意,分区是独享的,也就是说如果在 kvm 中加载了分区,这几个分区在宿主机(unbutu)中将无法访问。我这几个分区是Windows 下的分区,在 Ubuntu下也没有什么用。
3,-net nic -net user即默认的NAT方式,KVM充当虚拟机的网关和防火墙,这种方式下一般需要搭配-redir参数,后者用于重定向端口号,否则无法从外部访问虚拟机网络,
4,-usb 使能 USB 支持。。。
5,-localtime 时间同步,你不希望你的虚拟机是另外的时间吧。
6,-daemonize 后台运行,不显示图形界面,这个我后面要解释。
7,-vnc 127.0.0.1:0 打开远程桌面支持,这个可不是Windows的远程桌面哦。
8,-redir tcp:3389::3389 把虚拟机的远程桌面服务器端口映射到宿主机的端口,这个才是等同windows的远程桌面。