用wordpress建仿站,dtu网站开发,网站开发和软件开发那个简单,旅游网站建设多少钱文章目录 kvm 虚拟机命令行虚拟机操作、制作快照和恢复快照一、kvm 虚拟机命令行虚拟机操作(创建和删除)查看虚拟机virt-install创建一个虚拟机关闭虚拟机重启虚拟机销毁虚拟机 二、kvm 制作快照和恢复快照**创建快照**工作常见问题创建快照报错#xff1a;#xff1a;intern… 文章目录 kvm 虚拟机命令行虚拟机操作、制作快照和恢复快照一、kvm 虚拟机命令行虚拟机操作(创建和删除)查看虚拟机virt-install创建一个虚拟机关闭虚拟机重启虚拟机销毁虚拟机 二、kvm 制作快照和恢复快照**创建快照**工作常见问题创建快照报错internal snapshots of a VM with pflash based firmware are not supported检查虚拟机是否包含 pflash 设备 工作常用总结获取某个镜像的qcow文件压缩快照 kvm 虚拟机命令行虚拟机操作、制作快照和恢复快照
一、kvm 虚拟机命令行虚拟机操作(创建和删除)
查看virsh支持的命令
virsh --help查看虚拟机
显示服务器上所有虚拟机如果没有root权限将只能输出当前用户创建的虚拟机。
virsh list --allvirt-install创建一个虚拟机
我们在最新欧拉系统Kylin Linux Advanced Server release V10 (Lance) 上创建Kylin-Server-V10-SP3-General-Release-2303-ARM64 为例子
virt-install \
--virt-typekvm \
--name KylinV10-{ip} \
--vcpus8 \
--ram 16384 \
--os-variantgeneric \
--location/home/she/Kylin-Server-V10-SP3-General-Release-2303-ARM64.iso \
--network bridgevirbr0 \
--graphics none \
--console pty \
--noautoconsole -v \
--disk path/home/she/kvm/KylinV10.qcow2,formatqcow2,size200–name:指定虚拟机名称 –ram:内存大小 –disk:系统盘路径和大小 –vcpus:vCPU核心数 –os-type:操作系统类型 –network:网络模式,桥接到 virbr0, virt-install 前可以使用 brctl show 查看当前主机上的桥设备 –os-variant:操作系统变种,这里用generic
如果指定了 --console pty 参数,可以通过 virsh console 来连接:
virsh console vm-name或者通过ID值接入虚拟机终端窗口进入虚拟机窗口。
virsh console 2在使用 virt-install 创建虚拟机时,有两种方法可以提供 ISO 镜像:
使用 --location 参数指定 ISO 镜像路径: –location/path/to/iso/image.iso 这会在创建虚拟机时上传指定的 ISO 到虚拟机中。使用 --cdrom 参数指定 ISO 镜像路径: –cdrom/path/to/iso/image.iso 这会在虚拟机创建后,挂载给定的 ISO 作为 CDROM。 两者的区别是:
–location: 在虚拟机安装时提供 ISO,系统安装完成后会被删除。–cdrom: 挂载 ISO 作为 CDROM,可以在系统运行时继续访问。 如果只需要在安装时使用 ISO,推荐使用 --location 参数,这样安装完成后不会占用资源。 如果需要持续访问 ISO 中的数据,则可以使用 --cdrom,这样可以像真实 CDROM 一样使用。
虚拟机安装前设置[!]表示必填[X]表示选填。 各选项含义如下 1语言设置 2时区设置 3安装源 4软件包选择 5系统分区 6Kdump功能 7网络配置 8密码设置 9创建用户 按“q”退出按“b”开始安装。必须把带“”号的都设置好才能开始安装。 总结发现使用命令行安装也需要很多交互因此这里推荐使用界面安装虚拟机创建快照等操作再使用命令行方式。 关闭虚拟机
virsh shutdown CNEOS-xxx重启虚拟机
virsh reboot CNEOS-wangyang16-1销毁虚拟机
virsh undefine CNEOS-wangyang16-1二、kvm 制作快照和恢复快照
在 KVM 中,可以通过 libvirt 提供的接口来为虚拟机创建快照和恢复快照。
创建快照
使用 virsh snapshot-create 命令创建快照:
virsh list
virsh snapshot-create vm1 --atomic --disk-only这里我们为虚拟机 vm1 创建了一个快照,使用了 --disk-only 表示仅对磁盘创建快照。
查看快照 使用 virsh snapshot-list 命令可以查看虚拟机的快照: bash
virsh snapshot-list vm1这会列出 vm1 所有可用的快照。 恢复快照 使用 virsh snapshot-revert 命令可以恢复快照:
virsh snapshot-revert vm1 snapshot1这会将 vm1 恢复到名为 snapshot1 的快照状态。 删除快照 使用 virsh snapshot-delete 命令可以删除快照:
virsh snapshot-delete vm1 snapshot1这会删除名为 snapshot1 的快照。 在创建和管理快照时,可以添加选项控制快照类型(disk-only、system-checkpoint等)、是否包含内存状态等,灵活控制快照行为。
工作常见问题
创建快照报错internal snapshots of a VM with pflash based firmware are not supported
virsh snapshot-create 24 错误不支持的操作internal snapshots of a VM with pflash based firmware are not supported
在通过图形界面创建 KVM 虚拟机时,可以选择不添加 pflash 设备。 通常 pflash 设备是默认被添加的,用于提供 UEFI 固件支持。但是它也会带来快照不兼容等限制。 如果您使用 Virt Manager 等图形工具创建虚拟机,可以在存储配置界面,取消选择 “UEFI ROM” 选项,即可避免添加 pflash 设备。 具体步骤如下:
在创建虚拟机向导的“存储”界面找到“控制器”下拉框,选择需要的控制器模型(如 VirtIO)在下方的“管理固件”组取消勾选“UEFI ROM”选项点击完成后,pflash 设备就不会被添加到虚拟机中 如果已经添加了 pflash,也可以通过编辑 XML 配置移除它们。 通过跳过 pflash的添加,可以避免后续的快照问题。但虚拟机将无法使用自定义 UEFI 固件。需要根据需求权衡。
检查虚拟机是否包含 pflash 设备
关闭虚拟机
virsh shutdown your_vm打印虚拟机 XML 配置, 在输出的 XML 中查找是否存在 pflash 的定义
virsh dumpxml your_vm |grep pflash 为了移除 pflash 并解决快照问题:
virsh edit your_vm在XML文件里找到上面这一段 pflash loader 的定义删除这一整段内容,移除 pflash loader 保存编辑后的XML文件 修改完xml报错配置报错# virsh edit openEuler22.03-144.65 错误不支持的配置ACPI requires UEFI on this architecture 失败的。 再次尝试? [y,n,i,f,?]: 在删除了 pflash loader 配置后,虚拟机的 ACPI 设置还依赖于 UEFI 模式。 由于 pflash 提供了 UEFI 支持,直接删除它会导致这种不兼容。 可以尝试:同时删除 XML 文件里与 ACPI 相关的设置,例如: xml 测试失败改为之后虚拟机启动不起来了。 直接在虚拟机配置中删除 pflash 设备后导致虚拟机无法启动,这通常有以下几个原因:
删除pflash后,虚拟机仍被配置为UEFI模式启动,而缺少pflash无法实现UEFI启动。虚拟机配置依赖于pflash提供的OVMF固件,删除后引发不兼容。pflash上保存了UEFI NVRAM变量数据,删除后这些变量丢失,导致启动失败。pflash删除后,虚拟机的其他设备配置存在不兼容,例如声明需要APIC/ACPI但未正确启用。
不推荐该方式尝试~ 如果machine是virt,表示默认是UEFI固件。
工作常用总结
获取某个镜像的qcow文件
列出所有虚拟机 首先使用以下命令列出所有虚拟机及其状态
virsh list --all这将显示所有虚拟机包括正在运行和已关闭的虚拟机。
检查虚拟机的 XML 配置 使用 virsh dumpxml 命令查看虚拟机的完整 XML 配置其中将包含有关磁盘设备的信息
virsh dumpxml vm-name-or-id替换 为您的虚拟机名称或 ID。
查找 标签
在输出中查找包含 标签的部分。这通常会包含关于虚拟磁盘的信息例如
disk typefile devicediskdriver nameqemu typeqcow2/source file/var/lib/libvirt/images/your_image.qcow2/...
/disk压缩快照
镜像主机先关机通过宿主机压缩镜像
镜像主机先关机
poweroff获取镜像的qcow文件参考前面
virsh list --all
virsh dumpxml vm-name-or-id |grep qcow通过宿主机压缩镜像
virt-sparsify --compress 源qcow2镜像路径 新qcow2镜像路径