Ubuntu中创建和管理虚拟机的完整指南
在Ubuntu系统中,虚拟化是提高硬件利用率、隔离开发/测试环境的常用技术。以下是使用KVM(内核虚拟机)(推荐,性能最佳)和VirtualBox(图形化友好,适合新手)创建与管理虚拟机的详细步骤:
在安装虚拟化工具前,需确认CPU是否支持虚拟化技术(Intel VT-x/AMD-V):
egrep -c '(vmx|svm)' /proc/cpuinfo # 输出非零则表示支持
若结果为0,需进入BIOS/UEFI设置(开机按F2/Del/Esc键),启用“Virtualization Technology”或“SVM Mode”选项。
KVM是Ubuntu原生支持的虚拟化技术,性能接近物理机,适合生产环境。
sudo apt update
sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager -y
安装完成后,启动libvirtd服务并设置开机自启:
sudo systemctl start libvirtd
sudo systemctl enable libvirtd
使用virt-install命令创建虚拟机,以下为创建Ubuntu 22.04虚拟机的示例:
sudo virt-install \
--name ubuntu-vm \ # 虚拟机名称
--ram 2048 \ # 分配内存(MB)
--vcpus 2 \ # 分配CPU核心数
--disk path=/var/lib/libvirt/images/ubuntu-vm.img,size=20 \ # 磁盘路径与大小(GB)
--os-type linux \ # 操作系统类型
--os-variant ubuntu22.04 \ # 操作系统变种(需匹配ISO版本)
--network network=default \ # 使用默认虚拟网络(NAT模式)
--graphics spice \ # 图形界面(支持远程连接)
--cdrom /path/to/ubuntu-22.04.iso # Ubuntu ISO镜像路径
参数说明:
--network:可替换为--network bridge=br0(桥接模式,虚拟机直接接入物理网络);--graphics:若无需图形界面,可设置为none(适用于服务器场景)。安装virt-manager(虚拟机管理器)后,可通过图形界面完成虚拟机创建与管理:
sudo apt install virt-manager -y
virt-manager # 打开图形管理工具
在virt-manager中点击“新建”,按照向导填写虚拟机名称、内存、CPU、ISO路径等信息即可。
# 启动虚拟机
virsh start ubuntu-vm
# 关闭虚拟机(正常关机)
virsh shutdown ubuntu-vm
# 强制关闭虚拟机(类似物理机强制关机)
virsh destroy ubuntu-vm
# 删除虚拟机(彻底移除,包括磁盘文件)
virsh undefine ubuntu-vm --remove-all-storage
# 查看所有虚拟机状态
virsh list --all
# 创建虚拟机快照(保存当前状态)
virsh snapshot-create-as ubuntu-vm snap1 "Initial snapshot"
# 恢复虚拟机快照
virsh snapshot-revert ubuntu-vm snap1
VirtualBox是开源免费的虚拟化工具,适合新手或不熟悉命令行的用户。
sudo apt update
sudo apt install virtualbox -y
虚拟机共享主机IP,可直接访问外网,但主机无法直接访问虚拟机(需通过端口转发)。
虚拟机直接接入物理网络,拥有独立IP(与主机同一网段),适合需要虚拟机对外提供服务(如Web服务器)的场景。
配置桥接模式(KVM):
编辑网络配置文件(如/etc/netplan/01-netcfg.yaml):
network:
version: 2
renderer: networkd
ethernets:
enp0s3: # 物理网卡名称(通过`ip a`查看)
dhcp4: no
bridges:
br0:
interfaces: [enp0s3]
dhcp4: yes
应用配置:
sudo netplan apply
创建虚拟机时,将--network参数设置为bridge=br0即可。
通过以上步骤,可在Ubuntu系统中轻松创建、管理虚拟机,满足开发、测试或运行多系统应用的需求。