虚拟化相关命令使用

KVM
创建虚拟机:
qemu-system-x86_64 -smp 4 -m 1024 -hda xp.qcow2
硬盘镜像文件:xp.qcow2;内存:1024MB;CPU:4个(非4核,指4个独立CPU)。如果在桌面系统上执行,该命令会直接弹出一个窗口,使用SDL显示虚拟机系统。

-usb -usbdevice tablet
解决鼠标漂移问题

-smp n,maxcpus=cpus,cores=cores,threads=threads,sockets=sockets
n指的是vm可运行的并发数量,对应着QEMU进程的n个线程
maxcpus,最大物理cpu个数
cores,每个物理CPU的最大核数
threads,每个核所支持的线程数(hyper-threading)
sockets,即指物理CPU的个数
如果指定了n,那么并发数量为n。如果cores、threads、sockets指定任意一个的值,其它默认为1,则可省略n。此时n=cores×threads×sockets,不过这个乘积不能大于255。当n很大时,vm也会变得很慢。n的大小最好不要超过物理机的逻辑CPU个数(最大并发数),因为n对应着n个线程,当n大于逻辑CPU个数时,即使分配n个vcpu,它也不能并发执行,还需要kernel进行调度,浪费时间。

创建网桥
ifconfig eth0 down
brctl addbr br100
brctl addif br100 eth0
brctl stp br100 on
ifconfig eth0 0 up
dhclient br100
tunctl -t tap0 -u root              # 创建一个tap0接口,只允许root用户访问
brctl addif br100 tap0                # 在虚拟网桥中增加一个tap0接口
ifconfig tap0 0.0.0.0 promisc up    # 打开tap0接口

-net nic -net tap,ifname=tap0,script=no,downscript=no
桥接方式连接网络

通过指定kernel、initrd、hda启动虚拟机。
/usr/libexec/qemu-kvm -smp 4 -m 1024 -drive file=disk.raw,if=virtio -vnc :11 -kernel kernel -initrd ramdisk -append root=/dev/vda

vncviewer
vncviewer 10.23.54.152:5911 -fullscreen -xrm 'vncviewer*grabKeyboard: True'
使用全屏显示操作。后面的xrm是指定有vncviewer窗口捕获所有键盘和鼠标输入。如果不加后面选项会导致vncviewer可能无法通过键盘输入。按F8选择fullscreen退出全屏显示,同样操作可进入全屏显示。这个在ubuntu上貌似还有问题,推出全屏后,再回去依然不能通过键盘输入。

通过vncviewer访问xen创建的Linux虚拟机,快捷键使用如下:
CTRL + SUPER + Fn 切换虚拟机的多个终端。与普通系统上的CTRL +  ALT +Fn相同
CTRL + SUPER + 1 切换到虚拟机Linux系统终端
CTRL + SUPER + 2 切换到qemu monitor终端
待发现。。。
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页