Ubuntu 使用 KVM 安装 windows11 虚拟机

1、Ubuntu 安装相关组件

sudo apt-get update
sudo apt -y install libvirt-dev
sudo apt -y install libvirt-daemon-system 
sudo apt -y install libvirt-clients
sudo apt -y install virtinst 
sudo apt -y install virt-manager
sudo apt -y install qemu-kvm
sudo apt -y install bridge-utils


lsmod | grep kvm


 systemctl start libvirtd
 systemctl enable libvirtd
 systemctl list-unit-files |grep libvirtd.service
# 查看
systemctl is-active libvirtd
...
active
...
# 查看
lsmod | grep kvm
...
kvm_intel             487424  10
kvm                  1404928  9 kvm_intel
irqbypass              12288  11 kvm
...
systemctl start libvirtd 
systemctl enable libvirtd
# 查看
systemctl list-unit-files |grep libvirtd.service
...
libvirtd.service                                                              enabled         enabled

2、新建网卡

1、创建新的以太网桥

brctl addif br0 eno1

2、网桥配置ip

ifconfig br0 172.1.1.143 netmask 255.255.255.0 up

3、向现有网桥添加接口

brctl addif br0 eno1

注意:如果已经桥接了其他网桥,执行 nmcli connection 查看

$ nmcli connection
NAME                UUID                                  TYPE      DEVICE          
youxian             3d58a641-2f6c-4cfb-924s-787d37cff1fa  ethernet  eno1             
br0                 df0dc697-e8d2-4585-95de-9b01d1548ff2  bridge    br0             
br-a1f5cb3a27a1     ab60cc9c-b2f9-43d8-bd42-867b23c3ce7c  bridge    br-a1f5cb3a27a1 
lo                  88c2fe2a-69bf-48d3-94b9-2e73991eb311  loopback  lo              
docker0             42fe759d-54b9-46cb-b9de-7e352ba28aae  bridge    docker0         
virbr0              2f4b8e47-0d07-4154-a31f-442f47e345f7  bridge    virbr0    

再执行 nmcli c de xxx 删除网桥xxx

最后再网桥添加接口

brctl addif br0 ens9f0

3、创建虚拟机

virt-install \
 --virt-type=kvm \
 --name win11 \
 --ram 16384 \
 --vcpus=8 \
 --os-variant=win10  \
 --cdrom=/vm/windows11/windows_11_business_editions_version_24h2_2024_x64_dvd_29061b8c.iso \
 --network=bridge=br0,model=virtio \
 --graphics vnc,listen=0.0.0.0 --noautoconsole \
--disk path=/vm/data/win11/win11.qcow2,size=100,bus=virtio,format=qcow2

# 出现这样表示已经完成
Starting install...
Allocating 'win11.qcow2'                                    |  15 MB  00:00:19 ... 
Creating domain...                                          |    0 B  00:00:00     

Domain is still running. Installation may be in progress.
You can reconnect to the console to complete the installation process.

查看虚拟机

virsh list --all
...
 Id   Name    State
-----------------------
 3    win11   running

4、安装win11

这里不过多讲述,安装过程中遇到的坑记录一下

1、此电脑不支持,

这个情况需要shift+f10命令窗口进行添加

这里提供参考文档:https://blog.csdn.net/qq_38264240/article/details/121442084

2、扫描不到硬盘

此步骤参考:https://www.cnblogs.com/suixinnan/p/18168347

virsh domblklist win11
virsh change-media win11 sda /devlan/tools/win/virtio-win-0.1.266.iso

找到对应型号的驱动进行加载

安装时切换回自己的镜像

然后就能看到磁盘啦

5、命令

定义:virsh define xxx.xml xxx为xml文件所在的路径及文件名称,在当前目录下则不写路径

启动:virsh start xyz xyz为虚拟机xml配置文件中虚拟机的名字rhel6.2_2

停止:virsh shutdown xyz 此方法为正常关机方法,需要一段才能关机

下电:virsh destroy xyz 此方法为暴力下电,虚拟机立即关闭

删除:virsh undefine xxx 关闭了的虚拟机,只是不在运行状态而已,通过virsh undefine xxx就能从virsh列表里面(virsh list查看当前系统中的虚拟机列表,详见第2.4节)将其删除,undefine命令不会删除镜像文件和xml文件。运行状态的虚拟机是不能删除的。

临时起虚拟机:virsh create xxx.xml 此方法为方便开发调试等临时需求,不会持久化,虚拟机关机后就消失了,不推荐生产系统使用。

*查看**VNC端口:***virshvncdisplay xx 查看VNC端口,其中xx可通过virsh list查看

posted @ 2024-12-20 10:22  兰嘉轩  阅读(24)  评论(0编辑  收藏  举报