Ubuntu18.04安装KVM

2021-03-14 17:12:16 浏览数 (1)

检查VT在BIOS中是否启用

代码语言:txt复制
egrep -c '(svm|vmx)' /proc/cpuinfo

结果返回0,表示VT没有在BIOS中打开或者CPU不支持虚拟化。

代码语言:txt复制
sudo apt install cpu-checker
kvm-ok

结果如下

代码语言:txt复制
INFO: /dev/kvm exists
KVM acceleration can be used

说明打开了VT-d

安装KVM

代码语言:txt复制
sudo apt install qemu qemu-kvm libvirt-bin bridge-utils virtinst virt-manager
  • qemu-kvm:为 KVM 管理程序提供硬件模拟的软件程序
  • libvirt-bin:管理虚拟化平台的软件
  • bridge-utils:用来配置网络桥接的命令行工具
  • virtinst:用来创建虚拟机的命令行工具
  • virt-manager:提供一个易用的图形界面,并且通过libvirt 支持用于管理虚拟机的命令行工具

配置网桥

修改/etc/netplan文件夹下的01-network-manager-all.yaml文件:

代码语言:txt复制
network:
  version: 2
  renderer: NetworkManager
  ethernets:
          eno1:
                  dhcp4: no
                  dhcp6: true
  bridges:
          br0:
                  interfaces: [网卡名称]
                  dhcp4: no
                  addresses: [XXX.XXX.XXX.XXX/24, ]
                  gateway4: XXX.XXX.XXX.XXX

                  nameservers:
                          addresses: [XXX.XXX.XXX.XXX, XXX.XXX.XXX.XXX]

保存后运行:

代码语言:txt复制
sudo netplan apply

创建虚拟机

创建Win10虚拟机

GUI:可以通过virtual Machine Manager创建虚拟机

SHELL:

代码语言:txt复制
virt-install 
--name win10  虚拟机名字
--memory 2048  内存大小
--vcpus sockets=1,cores=1,threads=2  插槽、核心、线程
--cdrom=/path/to/windows_10.iso  安装镜像的路径
--os-variant=win8.1  安装操作系统的种类
--disk /path/to/win10/win10.qcow2,bus=virtio,size=40  硬盘存放位置,识别硬盘的方式及大小设置。存储磁盘类型有:qcow2(支持快照),raw(不支持快照)
--disk /path/to/virtio/virtio-win-0.1.126_amd64.vfd,device=floppy  设置virto的识别硬盘
--network bridge=br0,model=virtio  指定虚拟机⽹络类型,默认nat,常⽤bridge
--graphics vnc,password=psw,port=XXXX,listen=::  设置vnc远程访问密码、端口和监听地址(0.0.0.0)
--hvm 
--virt-type kvm \ 指定虚拟机类型(kvm、qemu、xen)

输入后shell中会出现:

代码语言:txt复制
Starting install...
Creating domain...
Domain installation still in progress. Waiting for installation to complete.

安装Win10虚拟机

通过VNC远程桌面连接虚拟机所在主机的XXXX端口,进行安装。安装过程中可嫩不够会识别不到硬盘,修复方式如下:

1.png1.png
2.png2.png
3.png3.png
4.png4.png

安装成功后在虚拟机中加载安装virto驱动的ISO,如下图所示:

5.png5.png

加载成功后在虚拟机中运行ISO中的可执行文件自动安装相关驱动。

virto下载地址

KVM管理命令

查看网络

代码语言:txt复制
brctl show

列出所有虚拟机

代码语言:txt复制
virsh list --all

显示虚拟机信息

代码语言:txt复制
virsh dominfo kvm-1

关闭虚拟机

代码语言:txt复制
virsh shutdown kvm-1

删除虚拟机

代码语言:txt复制
virsh undefine kvm-1

……

参考资料

https://zhuanlan.zhihu.com/p/137118585

https://linuxhint.com/install_virtio_drivers_kvm_qemu_windows_vm/

https://blog.51cto.com/10802692/2414758

https://blog.csdn.net/wh211212/article/details/74908390

kvm

0 人点赞