基于ubuntu22创建kvm虚拟机
运行以下命令检查 default 网络状态:
virsh net-list --all
输出可能类似:
 Name      State    Autostart   Persistent
-----------------------------------------
 default   inactive  no         yes
👉 看到了吗?default 是 inactive(未激活) 的。
✅ 步骤 1:启动 default 网络
sudo virsh net-start default
✅ 步骤 2:设置开机自启
sudo virsh net-autostart default
再次检查状态:
virsh net-list --all
现在应该是:
 Name      State    Autostart   Persistent
-----------------------------------------
 default   active   yes         yes
✅ 步骤 3:重新运行你的脚本
bash create-ubuntu-vm.sh
✅ 现在应该可以正常创建虚拟机了!
🛠️ 补充:如果 default 网络不存在?
极少数情况下,default 网络可能被删除了。你可以用下面命令恢复它:
1. 创建默认网络的 XML 文件
cat > /tmp/default-network.xml << 'EOF'
<network>
  <name>default</name>
  <uuid>8f55e2d1-2d15-46e8-9700-32f8e8db4780</uuid>
  <forward mode='nat'>
    <nat>
      <port start='1024' end='65535'/>
    </nat>
  </forward>
  <bridge name='virbr0' stp='on' delay='0'/>
  <ip address='192.168.122.1' netmask='255.255.255.0'>
    <dhcp>
      <range start='192.168.122.2' end='192.168.122.254'/>
    </dhcp>
  </ip>
</network>
EOF
2. 定义并启动网络
sudo virsh net-define /tmp/default-network.xml
sudo virsh net-start default
sudo virsh net-autostart default
3. 验证
virsh net-list --all
应该能看到 default 已激活。
✅ 你的脚本可以稍作优化(推荐)
在脚本开头加上 --network network=default 显式指定网络(虽然默认也是 default,但更清晰):
#!/bin/bash
virt-install \
  --name=vm01 \
  --memory=4096 \
  --vcpus=2 \
  --disk size=40 \
  --cdrom=/mnt/iso/ubuntu-22.04.5-live-server-amd64.iso \
  --os-variant=ubuntu22.04 \
  --network network=default \
  --graphics spice \
  --import \
  --noautoconsole
🔔 注意:
--import:告诉 libvirt 磁盘是空的,准备安装系统(推荐加上)--noautoconsole:不自动打开控制台(避免卡住)
✅ 验证虚拟机是否创建成功
安装开始后,另开一个终端查看:
virsh list
你应该看到:
 Id   Name    State
----------------------
 2    vm01    running
用 virt-manager 也可以图形化查看和操作。
✅ 如何连接虚拟机?
方法 1:使用 virt-manager 图形界面(推荐)
virt-manager
方法 2:查看 SPICE 控制台
virsh domdisplay vm01
输出如:spice://127.0.0.1:5900,可用 virt-viewer 打开:
sudo apt install -y virt-viewer
virt-viewer vm01
附加创建debian的脚本
root@bocheng-System-Product-Name:/data/tools# cat /data/tools/debian/install.sh 
#!/bin/bash
virt-install \
  --name debian13 \
  --memory 2048 \
  --vcpus 2 \
  --os-variant debian13 \
  --cdrom /data/tools/iso/debian-13.1.0-amd64-DVD-1.iso \
  --disk size=20,bus=virtio,format=qcow2 \
  --network network=default,model=virtio \
  --graphics vnc,listen=0.0.0.0,port=5905,password=123456 \
  --noautoconsole \
  --boot cdrom,menu=on,useserial=on \
  --rng /dev/urandom
                    
                
                
            
        
浙公网安备 33010602011771号