前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何恢复故障KVM虚拟机qcow2磁盘镜像文件LVM分区中的数据

如何恢复故障KVM虚拟机qcow2磁盘镜像文件LVM分区中的数据

作者头像
yuanfan2012
发布2020-10-10 10:48:36
2.2K0
发布2020-10-10 10:48:36
举报
文章被收录于专栏:WalkingCloudWalkingCloud

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)关闭虚拟机

接下来进入正题

如何恢复故障KVM虚拟机qcow2磁盘镜像文件LVM分区中的数据

方法一、使用qemu-nbd工具挂载KVM虚拟机的磁盘镜像文件

1. 首先检查当前系统的kernel对NBD模块的支持(NBD:network block device),并加载nbd驱动

代码语言:javascript
复制
Fedora32默认带nbd驱动,CentOS7系统需要手动编译
modinfo nbd

手动加载nbd驱动
modprobe nbd max_part=16
lsmod | grep nbd

2、将qcow2镜像映射为网络块设备(nbd)

代码语言:javascript
复制
qemu-nbd -c /dev/nbd0 /var/lib/libvirt/images/YF_OS.qcow2 
ll /dev/nbd0*

3、挂载nbd设备

代码语言:javascript
复制
lsblk 
lsblk -f 
挂载
mount /dev/mapper/vg_centos-lv_data /kvm_data/

并查看data分区下数据,这时就可以拷贝该分区下的数据进行备份恢复

方法二:使用guestmount挂载KVM虚拟机的磁盘镜像文件

1、安装软件包libguestfs和libguestfs-tools

代码语言:javascript
复制
yum install libguestfs libguestfs-tools -y

2、virt-filesystems检测虚拟机磁盘文件

virt-filesystems 参数-a 检测虚拟机磁盘文件

代码语言:javascript
复制
virt-filesystems -a /var/lib/libvirt/images/YF_OS.qcow2

3、guestmount命令进行挂载

代码语言:javascript
复制
guestmount -a /var/lib/libvirt/images/YF_OS.qcow2 -m /dev/vg_centos/lv_data /mnt/kvm_images/

命令解释:

-a参数指定虚拟磁盘镜像文件

-m参数指定要挂载的设备在虚拟机中的挂载点

最后给出宿主机中的挂载点

代码语言:javascript
复制
cd /mnt/kvm_images/
ll -trh

查看虚拟机中的/data数据下数据,这时就可以拷贝该分区下的数据进行备份恢复

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-10-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 WalkingCloud 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 如何恢复故障KVM虚拟机qcow2磁盘镜像文件LVM分区中的数据
  • 方法一、使用qemu-nbd工具挂载KVM虚拟机的磁盘镜像文件
    • 1. 首先检查当前系统的kernel对NBD模块的支持(NBD:network block device),并加载nbd驱动
      • 2、将qcow2镜像映射为网络块设备(nbd)
        • 3、挂载nbd设备
        • 方法二:使用guestmount挂载KVM虚拟机的磁盘镜像文件
          • 1、安装软件包libguestfs和libguestfs-tools
            • 2、virt-filesystems检测虚拟机磁盘文件
              • 3、guestmount命令进行挂载
              相关产品与服务
              文件存储
              文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档