精华内容
下载资源
问答
  • DiskGenius Pro 5是一款集磁盘分区管理和数据修复于一体的磁盘管理工具,该软件功能非常强大,不仅可以轻松帮助用户实现最简单化的硬盘数据格式化或者恢复,还能让用户一键管理自己的硬盘,并且支持支持对磁盘分区...

    DiskGenius Pro 5是一款集磁盘分区管理和数据修复于一体的磁盘管理工具,该软件功能非常强大,不仅可以轻松帮助用户实现最简单化的硬盘数据格式化或者恢复,还能让用户一键管理自己的硬盘,并且支持支持对磁盘分区进行创建、删除、格式化、无损调整、隐藏、分配、删除盘符等操作。而且DiskGenius Pro 5在数据恢复方面,除了可以再正常情况下对文件、分区丢失恢复外,还支持文件预览、重构编辑,RAID恢复等高级数据恢复功能,更高层次的满足用户需求。除此之外,它还支持vmware虚拟机磁盘文件功能和向隐藏分区写入文件的功能,而且利用这些功能,你能将更好的管理自己的磁盘,可以说是你数据恢复和硬盘磁盘分区修复、管理的好帮手。ps:小编本次带来的是DiskGenius Pro 5.3,内附补丁,可以完美激活软件,让用户可以使用全部功能,亲测有效。

    分区丢失数据恢复方法

    1、下载并运行DiskGenius数据恢复软件。

    1c0aeb34021920e66cb49c4f04b4a002.png

    注意:不要将软件放在丢失数据的盘,以免造成数据覆盖,软件下载后,解压缩后就可以直接打开软件了。

    2、在软件中找到丢失分区所在的硬盘,右击该硬盘并选择 "搜索已丢失分区(重建分区表)" 选项,如下图所示:

    4259db9d9fd3499d6506e44ac3185e75.png

    3、点击 "开始搜索" 按钮,软件开始搜索丢失的分区。

    fcad5360e6c4cd6d59c0df15eba12e84.png

    如果对搜索分区这个功能非常熟悉,还可以自己指定搜索范围,例如设置柱面范围,这可以让搜索过程更有效率。

    4、选择 "保留" 或是 "忽略"

    每当DiskGenius发现一个分区的时候,就会提示用户选择 "保留" 还是 "忽略",如何判断找到的分区是否应该保留呢?其实可以通过预览分区中的数据来轻松判断是否需要保留,如果搜索到的分区数据不正确,选择 "忽略" 即可。

    如果不小心保留了错误的分区或是将需要的分区忽略了也没有关系,因为这个搜索过程是只读的,不会对硬盘写入任何信息,这时候,可以停止搜索,然后从第二步开始重新进行扫描即可。

    0e20243e7170439c9c9f58e302a80349.png

    分区搜索完成后点击 "确定" 按钮。

    c0561e29fbdc632c9ae98614bf6a5e25.png

    5、点击 "保存更改" 按钮来保存分区表

    c0d3b2b76d2224a35096b33788f2156f.png

    在保存分区表之前,可以对DiskGenius Pro 5找到的分区进行只读操作,例如预览分区中的数据、恢复文件等,但不能进行与写盘有关的操作,例如分配盘符等。保存分区表之后,软件中看的分区就会在系统中正常显示了。

    不过,有些情况保存分区表的操作需要慎重,例如,当保存分区表的操作会破坏现有系统分区的时候,保存分区表后电脑将无法正常启动,如果依然想保存分区表,那么保存后要重新安装系统,如果不希望重装系统,那么可以选择不保存分区表,而是将DiskGenius找到的数据复制到其他的硬盘上。

    展开全文
  • 本文作者 / 飞哥专注于OpenStack计算、Python热爱大海、雪山导 言UEFI正在逐渐取代...怎样才能修复这些问题使得虚拟机能够正常工作?本篇描述了在openstack环境下一次引导文件丢失问题的修复过程。一、问题描述在...
    2f06622fa502ee6e38702351bb4d250d.png

    本文作者 / 飞哥

    专注于OpenStack计算、Python

    热爱大海、雪山

    导 言UEFI正在逐渐取代传统的BIOS,在使用UEFI启动系统的过程中,有时会遇到系统无法启动的问题。如,制作好的centos虚拟机镜像与iso分离后竟无法启动?突然掉电导致引导文件丢失?怎样才能修复这些问题使得虚拟机能够正常工作?本篇描述了在openstack环境下一次引导文件丢失问题的修复过程。

    一、问题描述

    在一个openstack环境中,对几台虚拟机进行了resize操作,将内存有32G调整到了48G,磁盘和cpu均保持不动。其中有2个虚拟机出现了resize完成后无法启动的情况,通过虚拟机console界面可以看到虚拟机报如下错误信息:b0770a38b6587480c02a48d3463c0ca3.png从前面的输出可以看出,这是一个关于UEFI的问题,无法加载\EFI\neokylin\grubaa64.efi。

    二、UEFI是什么

    UEFI(Unified Extensible Firmware Interface, 统一的可扩展固件接口)是一种用来替代 BIOS 的标准,它一开始叫 EFI,后来统一之后改叫 UEFI。对于硬盘启动而言,UEFI 的作用之一是读取硬盘上的引导信息,然后加载。UEFI固件会遍历磁盘上的每个EFI系统分区(按照磁盘上的分区顺序),固件将查找位于特定位置的具有特定名称的文件,即\EFI\BOOT\BOOT{计算机类型简称}.EFI。对于x86_64平台来说,计算机类型简称为x64,所以这个默认的特定文件是\EFI\BOOT\BOOTx64.EFI;对于aarch64平台来说,计算机类型简称为AA64,所以这个默认的特定文件是\EFI\BOOT\BOOTAA64.EFI。在安装CentOS操作系统的时候,系统会要求必须创建一个/boot/efi分区,否则系统无法引导启动,这个分区就是前面提及的EFI系统分区,这个分区里面存放了UEFI启动所需要的文件。下面通过一个具体的虚拟机来看下这个分区下的文件:3164cc4e559994f28c0b008e8cfe1d28.pngecbdab836f97b9509429a0ee5ade5624.png

    三、问题分析

    现在再来看一下刚开始提到的系统启动失败的问题,从打印信息可知shim调用StartImage()发生了异常,原因是找不到\EFI\neokylin\grubaa64.efi文件。3bf04bf1ded1286e0d9cfa43c1d34c32.png首先进入正常的虚拟机,查看文件\EFI\neokylin\grubaa64.efi是否存在,文件的具体路径从前面可以知道是/boot/efi/EFI/neokylin/grubaa64.efi:5dc0baea02e403e0e842d84194b3419b.png从上面的输出可以看到,正常虚拟机是有grubaa64.efi这个文件的。那么对于存在问题的虚拟机,猜测可能是该文件丢失导致的无法启动。由于目前虚拟机已经无法正常启动,我们可以将虚拟机的磁盘挂载到正常的操作系统上来进行修复。这里我们将虚拟机的系统盘挂载到宿主机的目录下,进行查看和修改。要挂载虚拟机的磁盘文件到宿主机的文件系统中,需要使用到libguestfs-tools,安装方法如下:
    [root@compute ~]# yum install -y libguestfs-tools
    接下来使用guestmount命令将虚拟机的系统盘挂载到/mnt目录下:0dd3099d7aa842cb8d0444b83fa52d29.png从命令输出可以看到,当前这个有问题的虚拟机确实丢失了grubaa64.efi文件。

    四、问题解决

    知道具体的原因后,问题解决就变得很容易了,只需要从正常的虚拟机中将grubaa64.efi文件拷贝出来,并放到/mnt/boot/efi/EFI/neokylin目录下就可以完成虚拟机的修复。963d32393554fcb5f5c169bc5efc89a8.png执行完上面的操作后,虚拟机就可以正常启动了。

    参考资料:

    1、https://blog.woodelf.org/2014/05/28/uefi-boot-how-it-works.html2、http://bbs.wuyou.net/forum.php?mod=viewthread&tid=3036793、http://jcf94.com/2017/08/06/2017-08-06-efi/4、https://access.redhat.com/documentation/zh-tw/red_hat_enterprise_linux/6/html/installation_guide/s2-grub-whatis-booting-uefi

    5、http://blog.itpub.net/20747382/viewspace-2153053/

    10c2ffdaf672e5d0d8e287935cb5f408.gif猜你还想看这些内容●Harbor企业级实践丨20倍性能提升so easy!Harbor企业级实践丨零侵入改造!Kustomize上篇丨Helm 和 Kustomize:不只是含谷量的区别Kustomize下篇丨Kustomize 中的增删改查· END · dcfa4fb0fe222c66c305f77f33c0a49a.gif记得文末点个好看鸭~
    1ce9e91daa9ab58f6e7f1dfa6fed34f8.png点就完事儿了!1fe4b653a99aff8a7aeb00e005a77810.png
    展开全文
  • 最近几天因为机房改造,导致云环境断电,重启之后发现有2台机器无法ping到,所以再次重启,登录修复网卡,最后发现无法用XenCenter找到Local Storage,部分主机的该栏目内容为空,导致一些重要的虚拟机无法启动。...

    1.现象

    公司云平台使用的是XenServer 5.5,版本比较老了。最近几天因为机房改造,导致云环境断电,重启之后发现有2台机器无法ping到,所以再次重启,登录修复网卡,最后发现无法用XenCenter找到Local Storage,部分主机的该栏目内容为空,导致一些重要的虚拟机无法启动。

    2.诊断 

    于是远程登录机器,运行lvscan命令查看LVM的逻辑卷情况,发现结果如下:

    [root@host202 backup]# lvscan
    inactive          '/dev/VG_XenStorage-4883c621-cad8-e6db-7d17-b33ac4eb1aaa/MGT' [4.00 MB] inherit

    再用 lvdisplay 查看,发现只有一个逻辑卷,原本的几个逻辑卷全部不见了。于是断定LVM的磁盘丢失了,再去查看/etc/lvm/backup目录,发现有2个备份文件

    [root@host202 backup]# ls -al /etc/lvm/backup/
    total 16
    drwx------ 2 root root 4096 Jan 22 16:48 .
    drwxr-xr-x 5 root root 4096 Sep 19 2011 ..
    -rw------- 1 root root 4072 Jan 21 15:24 VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923
    -rw------- 1 root root 1259 Jan 22 16:48 VG_XenStorage-4883c621-cad8-e6db-7d17-b33ac4eb1aaa

    依次cat一下两个文件的内容,发现大的那个文件是我需要的。于是准备着手恢复。

    3.实验

    恢复的方案是先创建一个实验环境,在VMWare下安装一个centos,创建几个逻辑卷,备份,然后全部删除,再创建一个逻辑卷,覆盖掉原数据,然后再开始恢复,看看是否能够成功。整个实验环境的配置情况是添加2个磁盘,一个是系统盘10G大小,另一个是2G的试验盘,centos安装在10G的盘上。

    3.1 实验初始化

    初始化实验环境,使用的命令如下:

    pvcreate /dev/sdb1    ## 创建lvm的物理卷
    vgcreate lvmfix /dev/sdb1  ## 在物理卷上创建卷组,也就是将不同的磁盘组合成概念上的单个磁盘
    lvcreate -n fix01-10M -L 10M lvmfix ## 创建10M大小的逻辑卷,linux会把它当磁盘分区那么用
    lvcreate -n fix01-101M -L 101M lvmfix ## 连续创建多个,这个101M
    lvcreate -n fix01-502M -L 502M lvmfix ## 创建502M的空间

    格式化并放进一些有内容的文件,以下步骤要每个逻辑卷都做一次

    mkfs -j /dev/lvmfix/fix01-10M  ##
    mkdir /root/f10m
    mount /dev/lvmfix/fix01-10m /root/f10m
    echo "abc 10m hello" > /root/f10m/f10m-readme

    其余的两个目录同样处理之后,备份一下lvm的分区情况

    vgcfgbackup -f %s-20140124 

    开始模拟故障情况,首先彻底删除卷,然后创建一个新的卷组去覆盖部分数据

    vgremove lvmfix ## 删除卷组,如果询问,则一路yes到底
    pvremove /dev/sdb1 ## 连物理卷都删掉

    重新创建一个临时的,覆盖掉原来的数据

    pvcreate /dev/sdb1
    vgcreate vg-fix-2 /dev/sdb1
    lvcreate -n wrong-op -L 1G vg-fix-2
    vgcfgbackup -f %s-after-wrong-op ## 备份一下破坏的卷信息,其实也可以不备份

    3.2 恢复过程

    此时准备开始恢复,先删除临时创建的内容

    vgremove vg-fix-2
    pvremove /dev/sdb1

    然后检查早先备份的分区情况 /root/lvmfix-20140124,提取pv的uuid和vg的uuid

    grep "id =" /root/lvmfix-20140124

    第二行的是pv的uuid,记下来,这里用{pvuuid}代替。 然后开始创建,用命令创建一个相同uuid的物理卷

    pvcreate --restorefile /root/lvmfix-20140124 --uuid {pvuuid} /dev/sdb1 ## 要注意,低版本的lvm不要下划线部分

    然后恢复卷组

    vgcfgrestore --test --file /root/lvmfix-20140124 lvmfix ## 恢复初始的卷组情况,先测试一下
    vgcfgrestore --file /root/lvmfix-20140124 lvmfix ## 然后再去掉--test参数进行实际操作
    lvscan ##执行完毕之后,看看物理卷是否恢复原样
    vgchange -ay lvmfix ## 记得要激活一下,使之状态为active
    mount -t ext3 /dev/lvmfix/fix01-10m /root/f10m ## 重新 mount,要进行磁盘检查

    扫描的结果报告mount: wrong fs type, bad option, bad superblock错误,看来磁盘已经损坏了,需要修复。

    e2fsck /dev/lvmfix/fix01-10m ## 修复磁盘

    记得每一个逻辑分区都需要mount并扫描一下,有错误就修复。不过根据经验,一般只会前一个或两个分区损坏,越后的分区基本都完好。不过要注意,这里的修复方式不适用于对XenServer的VHD修复。

    4.实际操作

    实验成功之后,需要对损坏的主机进行实际操作,过程中出现了很多其他异常情况,让人感觉非常艰苦,套用搜索资料过程中的一个老外的网名:I Hate Xen!

    4.1 第一阶段,清除

    首先寻找物理卷的uuid

    [root@host202 backup]# head -50 /etc/lvm/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923
    # Generated by LVM2 version 2.02.56(1)-RHEL5 (2010-04-22): Tue Jan 21 15:24:17 2014
    contents = "Text Format Volume Group"
    version = 1
    description = "Created *after* executing '/usr/sbin/pvresize /dev/disk/by-id/scsi-3600605b00283629017a39a1525dc3ec8-part3'"
    creation_host = "host202"       # Linux host202 2.6.32.12-0.7.1.xs1.1.0.327.170596xen #1 SMP Fri Sep 16 17:45:00 EDT 2011 i686
    creation_time = 1390289057 # Tue Jan 21 15:24:17 2014
    VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923 { ## 要记住这个卷组的编号,接下来要创建
    id = "vcm98B-U8Ii-rB2z-Z0hP-0svE-DiM7-lsHXSe"
    seqno = 18
    status = ["RESIZEABLE", "READ", "WRITE"]
    flags = []
    extent_size = 8192 # 4 Megabytes
    max_lv = 0
    max_pv = 0
            physical_volumes {
                    pv0 {
    id = "OfQbfY-Fbvf-p5KW-8s8x-iyrx-VZ4F-ogDpIv" ## 这个就是我们要找的物理卷编号pvuuid
    device = "/dev/sda3" # Hint only
                            status = ["ALLOCATABLE"]
    flags = []

    查看一下实际卷组的编号,准备删除XenServer自动恢复时候创建的卷。

    [root@host202 backup]# vgscan
      Reading all physical volumes.  This may take a while...
    Found volume group "VG_XenStorage-4883c621-cad8-e6db-7d17-b33ac4eb1aaa" using metadata type lvm2

    依照实验步骤,删除无用的卷组

    [root@host202 backup]# vgremove VG_XenStorage-4883c621-cad8-e6db-7d17-b33ac4eb1aaa
    Do you really want to remove volume group "VG_XenStorage-4883c621-cad8-e6db-7d17-b33ac4eb1aaa" containing 1 logical volumes? [y/n]: y
    Logical volume "MGT" successfully removed
    Volume group "VG_XenStorage-4883c621-cad8-e6db-7d17-b33ac4eb1aaa" successfully removed

    看一下物理卷,然后准备删除,要注意下面的黑体字,说明物理卷是空的,但是不要害怕,只要没有往这个物理卷里边写过东西,原先的内容就还都可以恢复。删的时候要注意以下命令的黑体下划线部分,你的磁盘分区位置和我机器上的是不同的。

    [root@host202 backup]# pvscan
    PV /dev/sda3 lvm2 [456.73 GB]
    Total: 1 [456.73 GB] / in use: 0 [0 ] / in no VG: 1 [456.73 GB]

    删掉这个物理卷

    [root@host202 backup]# pvremove /dev/sda3
    Labels on physical volume "/dev/sda3" successfully wiped

    4.2 第二阶段,恢复lvm

    根据实验步骤,我们重新创建名字和uuid一样的物理卷,这里黑体部分就是记下来的pvuuid。另外千万不要忘记带下划线的/dev/sda3部分,我的机器和读者你的机器是不同的,看好上一步pvremove的是哪一个分区,建错了就什么都没了哦

    [root@host202 backup]# pvcreate --restorefile ./VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923  -uuid OfQbfY-Fbvf-p5KW-8s8x-iyrx-VZ4F-ogDpIv /dev/sda3
    Can only set uuid on one volume at once
    Run `pvcreate --help' for more information.
    [root@host202 backup]# pvcreate --uuid OfQbfY-Fbvf-p5KW-8s8x-iyrx-VZ4F-ogDpIv /dev/sda3
    Physical volume "/dev/sda3" successfully created

    然后开始恢复磁盘卷,记住磁盘卷的名字是从第一阶段的第一步里得来的。先测试,再实际写入。

    [root@host202 backup]# vgcfgrestore --test --file VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923 VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923
    Test mode: Metadata will NOT be updated.
    Restored volume group VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923

    实际写入并恢复lvm分区信息,再次提醒磁盘物理卷名字

    [root@host202 backup]# vgcfgrestore  --file VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923 VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923
    Restored volume group VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923

    看看战果如何,还是蛮喜人的,先看逻辑卷的情况。大家注意inactive的状态

    [root@host202 backup]# lvscan
    inactive '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/MGT' [4.00 MB] inherit
    inactive '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-b4df3ed3-d6fd-4276-832b-a3a0f1c70bd0' [8.02 GB] inherit
    inactive '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-5ceec995-26ec-4986-931f-3d1804807650' [192.38 GB] inherit
    inactive '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-3a3a681d-c1c2-4636-a656-f9901343d33d' [92.19 GB] inherit
    inactive '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-a69ae385-924c-42e7-af38-2e38ffeaf851' [8.02 GB] inherit
    inactive '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-a3e49a56-2326-44d4-a136-3e4a28beded7' [6.02 GB] inherit
    inactive '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-2b1a8fca-90d7-4ff4-b12a-aa2c8b589ba0' [6.02 GB] inherit
    inactive '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-5e734d3c-2669-432d-8d38-4099d320375d' [8.00 MB] inherit
    inactive '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-db2d7fd2-018a-4719-ae73-046d402224c6' [6.02 GB] inherit

    卷组情况也看来不错

    [root@host202 backup]# vgscan
    Reading all physical volumes. This may take a while...
    Found volume group "VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923" using metadata type lvm2

    物理卷的情况看起来也很喜人,而且看看下划线黑体字部分,我们的磁盘空间显然已经回来了。

    [root@host202 ~]# pvscan
    PV /dev/sda3 VG VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923 lvm2 [456.71 GB / 138.02 GB free]
    Total: 1 [456.71 GB] / in use: 1 [456.71 GB] / in no VG: 0 [0 ]

    依据实验过程,激活整个卷组

    [root@host202 backup]# vgchange -ay VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923
    9 logical volume(s) in volume group "VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923" now active
    [root@host202 backup]# lvscan
    ACTIVE '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/MGT' [4.00 MB] inherit
    ACTIVE '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-b4df3ed3-d6fd-4276-832b-a3a0f1c70bd0' [8.02 GB] inherit
    ACTIVE '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-5ceec995-26ec-4986-931f-3d1804807650' [192.38 GB] inherit
    ACTIVE '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-3a3a681d-c1c2-4636-a656-f9901343d33d' [92.19 GB] inherit
    ACTIVE '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-a69ae385-924c-42e7-af38-2e38ffeaf851' [8.02 GB] inherit
    ACTIVE '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-a3e49a56-2326-44d4-a136-3e4a28beded7' [6.02 GB] inherit
    ACTIVE '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-2b1a8fca-90d7-4ff4-b12a-aa2c8b589ba0' [6.02 GB] inherit
    ACTIVE '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-5e734d3c-2669-432d-8d38-4099d320375d' [8.00 MB] inherit
    ACTIVE '/dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-db2d7fd2-018a-4719-ae73-046d402224c6' [6.02 GB] inherit

    4.3 第三阶段,磁盘检查

    这里的磁盘检查和实验环境的完全不一样,因为XenServer使用了微软的VHD格式,所以千万不能用e2fsck来修复,否则数据永久丢失!

    我们使用专用的修复工具来进行修复,如果不想麻烦的话,就手工一个个敲,如果量大的话,可以到参考文献中找检查脚本。不过有TAB键自动完善的功能,10个左右就直接敲命令吧

    [root@host202 backup]# vhd-util check -n /dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-db2d7fd2-018a-4719-ae73-046d402224c6
    /dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-db2d7fd2-018a-4719-ae73-046d402224c6 is valid
     
    vhd-util check -n /dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/MGT
    /dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/MGT appears invalid; dumping headers
    VHD Footer Summary:
    -------------------
    Cookie : XSSMc
    Features : (0x01000000)
    File format version : Major: 15423, Minor: 30829
    Data offset : 77913575334348
    Timestamp : Tue Jul 4 22:41:33 1922
    Creator Application : '.0" '
    Creator version : Major: 16190, Minor: 2620
    Creator OS : Unknown!
    Original disk size : 7997602797382 MB (83860943508677 Bytes)
    Current disk size : 634683573958 MB (66551396324759 Bytes)
    Geometry : Cyl: 29801, Hds: 111, Sctrs: 110
    : = 177671 MB (186301547520 Bytes)
    Disk type : Unknown type!
    Checksum            : 0x74686963|0xffffe4c8 (Bad!)
    UUID : 6b0a093c-2f61-6c6c-6f63-6174696f6e3e
    Saved state : Yes
    Hidden : 60
    VHD Header Summary:
    -------------------
    Cookie :
    Data offset (unusd) : 0
    Table offset : 0
    Header version : 0x00000000
    Max BAT size : 0
    Block size : 0 (0 MB)
    Parent name :
    Parent UUID : 00000000-0000-0000-0000-000000000000
    Parent timestamp : Sat Jan 1 00:00:00 2000
    Checksum : 0x0|0xffffffff (Bad!)

    扫描结果不容乐观,我的机器上前两个分区都坏了,一个是MGT,另外一个是数据盘,大约8G大小。进一步检查,看看分区表是否还在

    [root@host202 ~]# fdisk -l /dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/MGT
    
    Disk /dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/MGT: 4 MB, 4194304 bytes
    255 heads, 63 sectors/track, 0 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    
    Disk /dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/MGT doesn't contain a valid partition table
    
    

    分区表已经损坏!在搜索资料过程中,发现MGT是VDI插入时自动创建的,因此决定重建MGT,并且抛弃8G的那个盘,理由是我发现有很多8G和6G大小的VHD,怀疑这些都是自动生成的快照。

     4.4 第四阶段,重新识别VHD

     重新识别磁盘的方案很简单,就是把本地存储库忘记(forget)掉,然后再重新介绍(introduce)一次,对于无法识别的错误VHD,我们要把它改名,Xen会扫描VHD-*形式的磁盘镜像名称,我们简单修改成old-VHD-*即可跳过扫描。

    首先我们要识别一下信息,用pvscan找到存储库的uuid,下方黑色画线部分要记下来

    [root@host202 ~]# pvscan
    PV /dev/sda3 VG VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923 lvm2 [456.71 GB / 138.02 GB free]
    Total: 1 [456.71 GB] / in use: 1 [456.71 GB] / in no VG: 0 [0 ]

    然后找到本机磁盘 /dev/sda3对应的id,再次强调,我这里是/dev/sda3,但是读者你的机器不一定是这个磁盘,不能搞错。

    ls -al /dev/disk/by-id

    再找到本机的uuid,用xe命令。黑体部分的就是主机uuid了

    [root@host202 ~]# xe host-list
    uuid ( RO)                : 0bb221af-3f0b-44ff-9dba-2564fd7b8a11
    name-label ( RW): host202
    name-description ( RW): Default install of XenServer

     然后看看本机的SR名字是否正确,这里显然斜体部分内容是错误的,所以需要重建SR

    [root@host202 ~]# xe sr-list type=lvm
    uuid ( RO)                : 4883c621-cad8-e6db-7d17-b33ac4eb1aaa
    name-label ( RW): Local Storage
    name-description ( RW):
    host ( RO): host202
    type ( RO): lvm
    content-type ( RO):

     重建的思路是先把SR相关的VDI做一个unplug操作,然后forget掉SR,再重新创建一个名字正确的SR,插入VDI之后会自动生成新的MGT,再让XenServer自己扫描出剩余的好的VHD。

    先要找出SR关联的pbd,

    xe pbd-list sr-uuid=4883c621-cad8-e6db-7d17-b33ac4eb1aaa

    然后忘记SR

     xe sr-forget uuid=4883c621-cad8-e6db-7d17-b33ac4eb1aaa

    再开始创建SR,就是这一步折腾我很久,

    xe sr-create host-uuid=0bb221af-3f0b-44ff-9dba-2564fd7b8a11 content-type=user name-label="Local Storage" shared=false device-config:device=/dev/disk/by-id/scsi-3600605b00283629017a39a1525dc3ec8-part3 type=lvm
    
    

     

     

     

    [root@host202 ~]# lvrename /dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/VHD-b4df3ed3-d6fd-4276-832b-a3a0f1c70bd0 /dev/VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923/old-VHD-b4df3ed3-d6fd-4276-832b-a3a0f1c70bd0
    Renamed "VHD-b4df3ed3-d6fd-4276-832b-a3a0f1c70bd0" to "old-VHD-b4df3ed3-d6fd-4276-832b-a3a0f1c70bd0" in volume group "VG_XenStorage-0b3d830f-b140-3fdf-f384-7c56f1e72923"

    [root@host202 ~]# xe sr-scan uuid=0b3d830f-b140-3fdf-f384-7c56f1e72923          

     

     

     

     

     

     

     

    [root@host204 backup]# pvscan
    PV /dev/sda3 VG VG_XenStorage-844f33b1-36ce-a8a1-699f-6e53c2ca3a23 lvm2 [456.71 GB / 135.02 GB free]
    Total: 1 [456.71 GB] / in use: 1 [456.71 GB] / in no VG: 0 [0 ]
    [root@host204 backup]# xe pbd-list sr-uuid=df81f6b1-22ae-3fad-8f24-7654baa4f385
    uuid ( RO) : 4a8f5318-98b0-f932-2f98-950198ab6e28
    host-uuid ( RO): 78c36865-1129-45f1-98ae-e0428625652e
    sr-uuid ( RO): df81f6b1-22ae-3fad-8f24-7654baa4f385
    device-config (MRO): device: /dev/disk/by-id/scsi-3600605b00281e90017a3c8ab1eaa9739-part3
    currently-attached ( RO): true


    [root@host204 backup]# xe host-list
    uuid ( RO) : 92d731ad-3936-4cfd-8584-ecc16b425114
    name-label ( RW): host205
    name-description ( RW): avm


    uuid ( RO) : 78c36865-1129-45f1-98ae-e0428625652e
    name-label ( RW): host204
    name-description ( RW): Default install of XenServer


    uuid ( RO) : 0bb221af-3f0b-44ff-9dba-2564fd7b8a11
    name-label ( RW): host202
    name-description ( RW): Default install of XenServer

     

    [root@host204 backup]# xe pbd-unplug uuid=4a8f5318-98b0-f932-2f98-950198ab6e28

     

    [root@host204 backup]# xe sr-list host=host204
    uuid ( RO) : df81f6b1-22ae-3fad-8f24-7654baa4f385
    name-label ( RW): Local storage
    name-description ( RW):
    host ( RO): host204
    type ( RO): lvm
    content-type ( RO): user


    uuid ( RO) : 04509a62-85b7-b5b0-95fe-6fcbfb14323f
    name-label ( RW): DVD drives
    name-description ( RW): Physical DVD drives
    host ( RO): host204
    type ( RO): udev
    content-type ( RO): iso


    uuid ( RO) : c44f02e6-5717-211a-eed0-f2ef74ee6e0d
    name-label ( RW): Removable storage
    name-description ( RW):
    host ( RO): host204
    type ( RO): udev
    content-type ( RO): disk

     

    [root@host204 backup]# xe sr-forget uuid=df81f6b1-22ae-3fad-8f24-7654baa4f385

     

    [root@host204 backup]# xe sr-introduce uuid=844f33b1-36ce-a8a1-699f-6e53c2ca3a23 type=lvm name-label="Local Storage"
    844f33b1-36ce-a8a1-699f-6e53c2ca3a23

     

    [root@host204 backup]# lvscan
    ACTIVE '/dev/VG_XenStorage-844f33b1-36ce-a8a1-699f-6e53c2ca3a23/MGT' [4.00 MB] inherit
    ACTIVE '/dev/VG_XenStorage-844f33b1-36ce-a8a1-699f-6e53c2ca3a23/VHD-e5163350-7a65-4424-9e98-91ed74b1771b' [8.02 GB] inherit
    ACTIVE '/dev/VG_XenStorage-844f33b1-36ce-a8a1-699f-6e53c2ca3a23/VHD-3ad95f97-cc0a-4033-b832-ceeaac19ddf6' [192.38 GB] inherit
    ACTIVE '/dev/VG_XenStorage-844f33b1-36ce-a8a1-699f-6e53c2ca3a23/VHD-e163f2b5-0d1a-4e2a-8bc9-0d9ab467a01a' [50.11 GB] inherit
    ACTIVE '/dev/VG_XenStorage-844f33b1-36ce-a8a1-699f-6e53c2ca3a23/VHD-74bc6f50-c8a4-4f50-af0f-db463d2d0cad' [8.02 GB] inherit
    ACTIVE '/dev/VG_XenStorage-844f33b1-36ce-a8a1-699f-6e53c2ca3a23/VHD-c6ad7774-1419-49aa-a984-0348e4848683' [6.02 GB] inherit
    ACTIVE '/dev/VG_XenStorage-844f33b1-36ce-a8a1-699f-6e53c2ca3a23/VHD-52429a66-a0bf-410a-8858-f9e45c1e700a' [6.02 GB] inherit
    ACTIVE '/dev/VG_XenStorage-844f33b1-36ce-a8a1-699f-6e53c2ca3a23/VHD-bb78fd95-7746-46a6-ab6a-fab578b7d64e' [6.02 GB] inherit
    ACTIVE '/dev/VG_XenStorage-844f33b1-36ce-a8a1-699f-6e53c2ca3a23/VHD-5f27bce7-6cf5-4cce-a8d6-c77fbfa51774' [45.09 GB] inherit
    [root@host204 backup]# lvrename /dev/VG_XenStorage-844f33b1-36ce-a8a1-699f-6e53c2ca3a23/MGT /dev/VG_XenStorage-844f33b1-36ce-a8a1-699f-6e53c2ca3a23/oldMGT
    Renamed "MGT" to "oldMGT" in volume group "VG_XenStorage-844f33b1-36ce-a8a1-699f-6e53c2ca3a23"
    [root@host204 backup]# lvrename /dev/VG_XenStorage-844f33b1-36ce-a8a1-699f-6e53c2ca3a23/VHD-e5163350-7a65-4424-9e98-91ed74b1771b /dev/VG_XenStorage-844f33b1-36ce-a8a1-699f-6e53c2ca3a23/bad-VHD-e5163350-7a65-4424-9e98-91ed74b1771b
    Renamed "VHD-e5163350-7a65-4424-9e98-91ed74b1771b" to "bad-VHD-e5163350-7a65-4424-9e98-91ed74b1771b" in volume group "VG_XenStorage-844f33b1-36ce-a8a1-699f-6e53c2ca3a23"

     

    [root@host204 backup]# xe pbd-create sr-uuid=844f33b1-36ce-a8a1-699f-6e53c2ca3a23 host-uuid=78c36865-1129-45f1-98ae-e0428625652e device-config:device=/dev/disk/by-id/scsi-3600605b00281e90017a3c8ab1eaa9739-part3
    e45ba036-c59e-e3e3-d8b5-19be0cbfe336
    [root@host204 backup]# xe pbd-plug uuid=e45ba036-c59e-e3e3-d8b5-19be0cbfe336

     

    [root@host204 backup]# xe sr-scan uuid=844f33b1-36ce-a8a1-699f-6e53c2ca3a23

     

     

     

     

     

     

     参考文献

    1. 硬盘ext2/3文件系统superblock损坏修复试验 http://blog.sina.com.cn/s/blog_4b51d4690100ndhm.html
    2. Recovering a Lost LVM Volume Disk http://www.novell.com/coolsolutions/appnote/19386.html 
    3. XenServer Databaser Tool  http://support.citrix.com/article/CTX121564 
    4. VDI Metadata Corruption   http://discussions.citrix.com/topic/300932-vdi-metadata-corruption/
    5. XenServer Metadata Corrupt Workaround  http://virtualdesktopninja.com/VDINinja/2012/xenserver-metadata-corrupt-workaround/
    6. http://www.ganomi.com/wiki/index.php?title=Check_for_consistency_in_the_VHD_metadata
    7. http://blog.adamsbros.org/2009/05/30/recover-lvm-volume-groups-and-logical-volumes-without-backups/
    8. http://discussions.citrix.com/topic/282493-vdi-is-not-available-xenserver-56fp1/page-2
    9. http://rritw.com/a/bianchengyuyan/C__/20130814/411428.html
    10. http://support.citrix.com/article/CTX136342
    11. http://help.31dns.net/index.php/category/xenserver/
    12. http://golrizs.com/2012/01/how-to-reinstall-xenserver-and-preserve-virtual-machines-on-a-local-disk/ 
    13. http://www.xenme.com/1796
    14. http://blogs.citrix.com/2013/06/27/openstack-xenserver-type-image-to-volume/
    15. http://natesbox.com/blog/data-recovery-finding-vhd-files/
    16. http://itknowledgeexchange.techtarget.com/linux-lotus-domino/recovering-files-from-an-lvm-or-ext3-partition-with-testdisk/
    17. http://zhangyu.blog.51cto.com/197148/1095637
    18. 详解MBR分区结构以及GPT分区结构  http://dengqi.blog.51cto.com/5685776/1348951
    19. FAT32文件系统详解 http://dengqi.blog.51cto.com/5685776/1349327
    20. 分析NTFS文件系统内部结构 http://dengqi.blog.51cto.com/5685776/1351300
    21. NTFS文件系统数据恢复-解析分区结构  http://blog.csdn.net/jha334201553/article/details/9088921
    22. Troubleshooting Disks and File Systems    http://technet.microsoft.com/en-us/library/bb457122.aspx
    23. http://support.microsoft.com/kb/234048
    24. Logical Disk Management http://www.ntfs.com/ldm.htm
    25. https://stackoverflow.com/questions/8427372/windows-spanned-disks-ldm-restoration-with-linux
    26. http://uranus.chrysocome.net/explore2fs/es2fs.htm
    27. http://blog.csdn.net/ljianhui/article/details/8604140
    28. https://superuser.com/questions/693045/how-to-recover-partitions-from-an-external-hard-disk
    29. http://www.r-tt.com/Articles/External_Disk_Recovery/
    30. http://major.io/2010/12/14/mounting-a-raw-partition-file-made-with-dd-or-dd_rescue-in-linux/

     

     

     

     

    mysql Cannot find or open table x/x 及解决办法
    http://blog.csdn.net/xiangliangyu/article/details/8450765

    mysql通过idb文件恢复数据
    http://blog.csdn.net/xiangliangyu/article/details/8450812

    Can I find out what version of MySQL from the data files?
    https://dba.stackexchange.com/questions/41338/can-i-find-out-what-version-of-mysql-from-the-data-files

    Can I find mysql version from data files, need for data restoration
    https://stackoverflow.com/questions/16324569/can-i-find-mysql-version-from-data-files-need-for-data-restoration

    How to Recover Data using the InnoDB Recovery Tool
    http://www.chriscalender.com/?p=49

    MySQL 不停服务来启用 innodb_file_per_table
    http://www.php-oa.com/2012/04/20/mysql-innodb_file_per_table.html

    工具
    https://github.com/jaylevitt/recover_innodb_tables
    https://launchpad.net/percona-data-recovery-tool-for-innodb
    http://www.percona.com/docs/wiki/innodb-data-recovery-tool:mysql-data-recovery:start

     

     

     

     

    展开全文
  • 现在流行的主流虚拟机有以下VMWare、Virtual PC、VirtualBox几种,虽然说部分虚拟机...开启DiskGenius工具软件,在软件的界面中选择菜单上的【磁盘】下面的【虚拟磁盘格式转换】,开启相关的虚拟机硬盘格式的转换界...


    现在流行的主流虚拟机有以下VMWare、Virtual PC、VirtualBox几种,虽然说部分虚拟机软件也可以支持其他的虚拟机硬盘的格式,但在使用中还是使用本身虚拟机的获取 硬的支持比较好一些。下面介绍下使用DiskGenius工具进行个虚拟机之间的硬盘格式进行转换。

    开启DiskGenius工具软件,在软件的界面中选择菜单上的【磁盘】下面的【虚拟磁盘格式转换】,开启相关的虚拟机硬盘格式的转换界面。

    4e4d4fcacada7fd69e771bda80ad7663.png

    在转换的界面当中,点击【源虚拟磁盘】来选择虚拟磁盘文件,这里的源磁盘文件支持的格式有vmdk,vdi,vhd,img等。比较流行的虚拟机VMWare、Virtual PC、VirtualBox也能够支持。

    a164235d106bfd6eb240a13120eaf074.png

    选择你需要转换的虚拟机磁盘文件,这里选择vmware软件的磁盘文件vmdk。完成选择后,对应虚拟机磁盘就挂接到DiskGenius中。

    a7b162898cfe7d564c13ea0af1f1b640.png

    接下来选择需要转换的虚拟机磁盘格式。例如:这里需要将上面的vmware虚拟机磁盘文件格式转换为微软虚拟机的VHD格式。所以在【转换为】后面选择【Virtual PC虚拟磁盘文件(vhd)】。

    d4fd5e8df93a4fbb5cc9b6e88f3e9abe.png

    转换的过程比较的快,其实该过程只是进行与源盘进行同类型的克隆复制,并未进行虚拟机的数据或者系统的复制

    7b00c0042dfe0552151dbd625f095064.png

    如果需要虚拟机的整个磁盘的数据和系统的复制,可以选择DiskGenius中菜单上的【工具】-【克隆磁盘】将整盘的数据进行复制。来源的磁盘选择vmdk虚拟机磁盘,点击【确定】

    5a9468025318a9a1b336b0546a20157e.png

    选择目标磁盘选择vhd虚拟机磁盘,点击【确定】

    09c5b46772e3a7135242a26402038ed3.png

    返回到克隆磁盘的界面。选择【开始】进行虚拟机之间的磁盘对拷贝。出现目标盘的数据将会被覆盖的提示。点击【确定】

    f3604374d77cd91d28597ff09c8dd7d1.png

    开始进行两个虚拟机文件的对拷,进度条下有剩余时间的预计,时间的长短与 请虚拟机的文件大小有关。耐心等待。完成后就完成个整个虚拟机文件的转换操作。

    2fd2ede52c275576e2bdde1cfd4cf6b3.png
    展开全文
  • Centos7虚拟机磁盘恢复

    千次阅读 2019-07-04 15:47:15
    背景 先介绍背景。我的开发环境是一个centos7的虚拟机,由于临时外出,我把电脑盖子合上了。当我回来的时候,把盖子打开,屏幕...网上搜到的那些修复虚拟机的方法都试过了,没有效果。我就想把这个centos的虚拟机...
  • Kali Linux虚拟机磁盘扩容后启动慢问题修复 扩容自行操作 修复SWAP分区 由于在重建SWAP分区过程中分区的ID发生了改变,因此Kali启动时找不到对应分区,每次启动时都会等待极长时间来等待该分区 为了修复这个问题,...
  • 托管磁盘机器 A 由于系统误配置导致无法正常连接使用,需要将 A 机器的 OS 磁盘挂载到正常机器 B 进行修复后,重新创建机器 C 连接使用。 该文使用的方式为复制问题机器 A 的操作系统磁盘,挂载 OS 磁盘到正常机器 B...
  • 1.托管磁盘机器A由于系统误配置导致无法正常连接使用,需要将A机器的OS磁盘挂载到正常机器B进行修复后,重新创建机器C连接使用。 2.该文使用的方式为删除问题机器A,挂载OS磁盘到正常机器B修复后重新创建的示例。 ...
  • ContentsLinux分区类型、kvm-qemu虚拟机磁盘附加以及存储基础(RAID、LVM)1. 分区类型1.1. 破坏并修复磁盘的MBR2. RAID级别以及介绍3. 简单分区创建以及格式化4. 基于LVM的分区创建以及格式化5. References Linux...
  • 虚拟机由于磁盘不足而损坏,如何修复?? ** 按照大神的链接成功了,特来转载!!!!!https://blog.csdn.net/shuideyidi/article/details/40688369 ** PS: 昨天真的是经历了一番苦难
  • linux虚拟机长时间不关,重启的时候可能会报一个磁盘损坏的错误:  这是由于磁盘有损坏造成的。在后面直接输入root密码,...  在Fix&... 重启Reboot,若还有磁盘报同样的错,则重复上述步骤修复即可。  ...
  • 虚拟机修复

    2011-01-07 22:24:16
    提供 虚拟机磁盘修复 数据恢复等业务 电话 158 4651 2151 转载于:https://blog.51cto.com/haobinnan/474093
  • 今天启动虚拟机ubuntu18.04 莫名奇妙的提示“此文件不是虚拟磁盘文件”。后检查.vmdk文件发现被破坏(可能由于近期频繁挂起,分正常关机)。查看网上的解决办法都不对症。 解决办法: 按照之前的配置(相同的磁盘...
  • 虚拟机扩展磁盘后 无法启动系统

    千次阅读 2018-11-05 21:45:11
    扩展完系统盘后,win7无法启动1、制作老毛桃ISO镜像2、虚拟机挂载老毛桃ISO镜像3、进入虚拟机BIOS选择光驱启动4、进入PE5、选择修复系统引导程序修复6、进入BIOS恢复硬盘启动7、OK了 转载于:...
  • 重启reboot;(往往损坏的都是两个盘符,所以都要修复) 转载于:https://www.cnblogs.com/King-boy/p/10945231.html
  • 遇到这种问题的时候,由于Azure没有开放控制台登录虚拟机的功能,所以只能将原来的虚拟机以保留磁盘的方式删除掉,然后将系统磁盘挂载到其他机器上修复各种问题,再使用修复后的磁盘重新创建出虚拟机来。 对于...
  • 遇到这种问题的时候,由于Azure没有开放控制台登录虚拟机的功能,所以只能将原来的虚拟机以保留磁盘的方式删除掉,然后将系统磁盘挂载到其他机器上修复各种问题,再使用修复后的磁盘重新创建出虚拟机来。 对于经典...
  • 确认虚拟机磁盘配置,如下图可以看到配置上指向的是增量磁盘 再去快照管理器看下,有個快照: 进到数据浏览,把vmware.log下载下来再确认一下.父磁盘ID不匹配 回到veeam的restore log里去看会发现删除快照的步骤是...
  • 一、服务器数据恢复描述需要进行数据恢复的服务器采用Linux操作系统、EXT4文件系统...二、恢复服务器虚拟机过程1、分析服务器中的EXT4文件系统,将被删除的虚拟机磁盘文件节点位置定位;2、获取磁盘文件残留的索引信...
  • ![图片说明](https://img-ask.csdn.net/upload/201504/13/1428917446_276884.png) 求解怎么解决啊? 删除"*.lck "文件不行啊
  • 修复虚拟磁盘LVM表

    2017-11-07 12:34:00
    今天在一个Xen半虚拟机里编译内核时磁盘不够用了,不过幸亏分区时用了LVM,可以扩展空间。 原先的分区如下: /dev/xvda1 ==> /boot (100M) /dev/xvda2 ==> VolGroup00 ==> root(2.8G) swap(1G) root分区...
  • 背景:手残修改了Ubuntu_10.04版本系统的关键位置文件,导致系统开机之后瞬间死掉,当然有很多...1> 找到被损坏的虚拟机磁盘*.vmdk; 2> 从虚拟机列表中找到一个同样或近似的Linux操作系统redhat_x;点击编辑虚拟机设置
  • [Azure]Linux虚拟机使用rc.local启动脚本进行磁盘挂在

    千次阅读 多人点赞 2017-01-08 22:42:29
    会导致虚拟机无法成功启动,这种情况下,由于没有控制台的登录方式,往往需要通过将系统磁盘挂在到其他虚拟机上进行fstab文件的修改或者磁盘修复修复完成后再使用修复后的磁盘重建虚拟机。这种方法相对比较耗时,...

空空如也

空空如也

1 2 3 4 5 ... 13
收藏数 245
精华内容 98
关键字:

修复虚拟机磁盘