1. 确认 CPU 支持硬件虚拟化
egrep -c '(vmx|svm)' /proc/cpuinfo输出大于 0 表示 CPU 支持虚拟化(Intel 为 vmx,AMD 为 svm)。
若输出为 0,请先进入 BIOS/UEFI 开启
VT-x或AMD-V,某些云服务器可能不支持嵌套虚拟化。
检查系统架构(KVM 需要 64 位):
uname -m# 应输出 x86_64 或 aarch64
2. 安装 KVM 及相关工具
更新软件包列表并安装:
sudo apt updatesudo apt install -y qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager virtinst
主要组件说明:
qemu-kvm:KVM 核心虚拟化模块。libvirt-clients:包含virsh等命令行管理工具。bridge-utils:用于配置网桥(可选,如果不需要高级桥接可省略)。virt-manager:图形界面的虚拟机管理器(服务器无 GUI 可不装)。virtinst:包含virt-install、virt-clone等命令行创建工具。
3. 验证安装与启动服务
# 检查 libvirtd 是否运行sudo systemctl status libvirtd# 若未运行则启动并设为开机自启sudo systemctl enable --now libvirtd# 验证 KVM 模块已加载lsmod | grep kvm# 应有 kvm_intel 或 kvm_amd
4. 将当前用户加入所需组(免 root 运行虚拟机)
sudo usermod -aG libvirt $USERsudo usermod -aG kvm $USER
重新登录或执行 newgrp libvirt 使组成员关系生效,之后便可用普通用户管理虚拟机。
5. 网络配置(可选)
KVM 默认会创建一个 NAT 虚拟网络 virbr0(IP 段 192.168.122.0/24),虚拟机可通过宿主机上网。
# 查看默认网络virsh net-list --all# 若 default 未启动,则激活:virsh net-start defaultvirsh net-autostart default
/etc/netplan/01-netcfg.yaml(文件名可能不同):network:version: 2ethernets:enp3s0:dhcp4: falsebridges:br0:interfaces: [enp3s0]dhcp4: true
应用配置:sudo netplan apply。之后创建虚拟机时选择 br0 即可。
6. 创建第一台虚拟机
图形界面方式(virt-manager)
启动
virt-manager(在终端输入virt-manager或从菜单打开)。连接 → 新建虚拟机,按向导选择 ISO 镜像、内存、磁盘等。
在网络步骤中,NAT 网络选
default,桥接网络选之前创建的br0。
命令行方式(virt-install)
例如安装 Ubuntu Server:
sudo virt-install--name ubuntu-test--ram 2048--vcpus 2--disk path=/var/lib/libvirt/images/ubuntu-test.qcow2,size=20,format=qcow2--os-variant ubuntu22.04--network network=default--graphics spice,listen=0.0.0.0--console pty,target_type=serial--cdrom /path/to/ubuntu-22.04-live-server-amd64.iso
--disk中qcow2是精简置备格式,节省空间。--network network=default使用默认 NAT 网络。若需通过 VNC/SPICE 远程连接,可添加
--graphics vnc,listen=0.0.0.0。
7. 常用管理命令(virsh)
virsh list --all # 查看所有虚拟机virsh start vm-name # 启动virsh shutdown vm-name # 正常关机virsh destroy vm-name # 强制关闭virsh undefine vm-name --remove-all-storage # 删除虚拟机及磁盘virsh console vm-name # 进入字符控制台
8. 远程管理(可选)
ssh + virsh:
virsh -c qemu+ssh://user@host/system list。网页控制台 Cockpit:
sudo apt install cockpit cockpit-machines,访问https://<IP>:9090。
常见问题排查
权限错误:确认用户已加入
libvirt和kvm组,并且已重新登录。虚拟机无法上网:检查
default网络是否启动,宿主机是否开启 IP 转发(cat /proc/sys/net/ipv4/ip_forward应为 1)。无法启动虚拟机,报
kvm: permission denied:当前用户可能无权访问/dev/kvm,执行ls -l /dev/kvm确认其组为kvm,并确保用户在kvm组内。
至此,Ubuntu KVM 虚拟化环境已搭建完成,可以开始创建和管理虚拟机了。
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……




还没有评论,来说两句吧...