赞
踩
KVM虚拟机发生故障,无法正常启动,但是里面存在重要数据,这时如何进行恢复
问题:如何恢复故障KVM虚拟机qcow2磁盘镜像文件LVM分区中的数据
下面以Fedora32 Cockpit方式安装的虚拟机为演示环境,介绍如何恢复故障KVM虚拟机qcow2磁盘镜像文件LVM分区中的数据
1)Fedora32默认安装了cockpit
yum安装cockpit-machines
yum install cockpit-machines.noarch
2)登录cockpit并创建虚拟机 https://192.168.31.155:9090登录cockpit
3)上传自动化安装CentOS7的系统镜像用于测试
4)创建虚拟机
5)在/data分区下写入数据,用于测试
6)模拟系统无法启动的故障
7)关闭虚拟机
接下来进入正题
Fedora32默认带nbd驱动,CentOS7系统需要手动编译modinfo nbd手动加载nbd驱动modprobe nbd max_part=16lsmod | grep nbd
qemu-nbd -c /dev/nbd0 /var/lib/libvirt/images/YF_OS.qcow2 ll /dev/nbd0*
lsblk lsblk -f 挂载mount /dev/mapper/vg_centos-lv_data /kvm_data/
并查看data分区下数据,这时就可以拷贝该分区下的数据进行备份恢复
yum install libguestfs libguestfs-tools -y
virt-filesystems 参数-a 检测虚拟机磁盘文件
virt-filesystems -a /var/lib/libvirt/images/YF_OS.qcow2
guestmount -a /var/lib/libvirt/images/YF_OS.qcow2 -m /dev/vg_centos/lv_data /mnt/kvm_images/
命令解释:
-a参数指定虚拟磁盘镜像文件
-m参数指定要挂载的设备在虚拟机中的挂载点
最后给出宿主机中的挂载点
cd /mnt/kvm_images/ll -trh
查看虚拟机中的/data数据下数据,这时就可以拷贝该分区下的数据进行备份恢复
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。