Ubuntu22.04使用KVM

Ubuntu22.04中使用KVM

1、检查硬件是否支持虚拟化

grep -Eoc '(vmx|svm)' /proc/cpuinfo

输出大于0: 支持虚拟化(Intel VT-x或AMD-V)
无输出: 需在 BIOS/UEFI 中启用虚拟化功能

2、安装KVM及相关工具

sudo apt update
sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients virt-install bridge-utils virt-manager

3、验证安装及启用服务

# 检查 KVM 是否可用
sudo kvm-ok
# 输出 "KVM acceleration can be used" 表示成功

# 启动并启用 libvirtd 服务
sudo systemctl start libvirtd
sudo systemctl enable libvirtd

4、将用户添加到libvirt和kvm组

sudo usermod -aG libvirt $USER
sudo usermod -aG kvm $USER

5、启动虚拟机管理软件

virt-manager

如果启动之后报错“Unable to connect to libvirt qemu:///system”,需要重启计算机。

6、准备虚拟机镜像文件

下载ISO镜像文件

wget https://releases.ubuntu.com/22.04/ubuntu-22.04.5-live-server-amd64.iso
mv ubuntu-22.04.5-live-server-amd64.iso /var/lib/libvirt/images/

创建虚拟磁盘

qemu-img create -f qcow2 /var/lib/libvirt/images/ubuntu-vm.qcow2 20G
  • -f qcow2:使用支持动态扩展的磁盘格式
  • /var/lib/libvirt/images/ubuntu-vm.qcow2:磁盘文件存放路径
  • 20G:磁盘大小

7、使用virt-install创建虚拟机

virt-install \
  --name ubuntu-vm \
  --memory 2048 \
  --vcpus 2 \
  --os-type linux \
  --os-variant ubuntu22.04 \
  --disk path=/var/lib/libvirt/images/ubuntu-vm.qcow2,size=20 \
  --network bridge=virbr0 \
  --graphics vnc,listen=0.0.0.0 \
  --cdrom /var/lib/libvirt/images/ubuntu-22.04.5-live-server-amd64.iso \
  --extra-args "console=tty0 console=ttyS0,115200n8 serial"

参数详解:

  • –name:虚拟机名称
  • –memory:内存大小
  • –vcpus:CPU核数
  • –os-type:操作系统类型(Linux、Windows、MacOS等)
  • –os-variant:操作系统版本
  • –disk:磁盘路径及大小
  • –network bridge=virbr0:使用默认NAT网络(virbr0)
  • –graphics vnc:通过VNC连接虚拟机
  • –cdrom:指定ISO镜像路径
  • –extra-args:传递内核参数(如控制台输出)

出现此警告:WARNING --os-type is deprecated and does nothing. Please stop using it.
意思是:–os-type参数在最新版本的virt-install中已废弃,请停止使用

出现此错误:ERROR Kernel arguments are only supported with location or kernel installs.
意思是:–extra-args参数仅支持在location和kernel模式下使用。也就是说使用–extra-args参数就不能使用–cdrom参数,必须使用–location参数或者同时使用–kernel和–initrd参数

–location:指定操作系统的安装源地址,支持以下协议:

  • HTTP/HTTPS:如 http://example.com/centos7/
  • FTP:如 ftp://example.com/pub/centos7/
  • NFS:如 nfs://<NFS服务器IP>/exported/path/

–kernel:指定虚拟机启动时使用的内核文件路径(如 vmlinuz)(内核文件可以为自定义编译的内核或克隆系统内核)
–initrd:指定虚拟机启动时使用的初始 RAM 磁盘(initrd)文件路径(如 initrd.img)

8、连接虚拟机进行安装

查看虚拟机监听的VNC端口

virsh vncdisplay ubuntu-vm

输出类似 :0,表示端口为 5900 + 0 = 5900

使用VNC客户端进行连接

vncviewer <宿主机IP>:5900

手动完成操作系统安装

  • 在VNC界面中选择安装语言、分区、网络配置等
  • 安装完成后重启虚拟机

9、常用管理命令

  • 查看虚拟机状态:
virsh list --all
  • 启动/关闭虚拟机:
virsh start ubuntu-vm
virsh shutdown ubuntu-vm
  • 删除虚拟机:
virsh destroy ubuntu-vm
virsh undefine ubuntu-vm

10、网络配置

桥接模式

  • 创建桥接接口:
sudo brctl addbr br0
sudo brctl addif br0 eth0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柚子和香橼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值