基于ubuntu22创建kvm虚拟机

运行以下命令检查 default 网络状态:

virsh net-list --all

输出可能类似:

 Name      State    Autostart   Persistent
-----------------------------------------
 default   inactive  no         yes

👉 看到了吗?defaultinactive(未激活) 的。


✅ 步骤 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

posted @ 2025-10-23 10:35  完颜振江  阅读(9)  评论(0)    收藏  举报