作为VMware虚拟化环境管理员,你肯定遇到过虚拟机无法启动的情况。实施排错时,你需要对虚拟机的内部进行检查。而Libguestfs Linux工具集可以在这种情况下为你提供帮助。

利用Libguestfs找出损坏的虚拟机文件

Libguestfs允许在虚拟机上挂载任何类型的文件系统,以便修复启动故障。作为一款管理KVM环境中虚拟机的原生Linux工具,默认情况下并不适用于所有VMware平台。所以管理员不会将其作为首选的工具,但是却值得花费一些时间来配置和使用。

使用Libguestfs,首先需要使用Libvirt.Libvirt是一个管理接口,可以和KVM、Xen和其他一些基于Liunx的虚拟机相互连 接。Libguestfs的功能更加强大,可以打开Windows虚拟机上的文件。这意味着除了能够使用libguestfs,你还需要一些关于虚拟机操 作系统内部架构的知识。但是首先你需要将虚拟机迁移到libguestfs可用的环境当中,也就是Linux环境。

为了将虚拟机迁移到Linux当中,你可以使用SSH连接到ESXi主机,这意味着你首先需要启用ESXi主机上的SSH访问方式。

完成之后,在Linux平台上运行下面的scp命令:scp –r192.168.178.30:/vmfs/volumes/datastore1/Windows*

使用guestfish操作虚拟机

完成虚拟机磁盘镜像文件的复制之后,可以在libguestfs中使用guestfish这样的工具将其打开,这样就可以直接在vmdk文件上进行操作了。使用guestfish -rw -a /path/to/windows.vmdk命令来在虚拟机中创建一个连接到文件系统的交互式shell.在新出现的窗口中,你可以使用特定的命令来操作虚拟机文件。

第一个任务就是找到可用的文件系统:

> run

> list-filesystems

/dev/sda1: ntfs

/dev/sda2: ntfs

当你使用guestfish shell找到可用文件系统类型之后,就可以进行挂载了。使用命令mount /dev/sda2 / 来挂载二个分区的内容--在Linux中是/dev/sda2--到guestfish根目录下。在guestfish中,你不能像在其他shell环境 中一样操作目录。挂载的分区就是根目录,你不能使用cd命令来切换目录,这意味着所有的路径必须是完全限定路径,从根目录开始。在guestfish shell当中可以使用像ls、cat、more、download这样的命令,来查看和下载文件以及目录,输入help可以看到完整的命令信息。在完整 所有操作之后可以使用exit来关闭guestfish shell.

Virt-rescue提供了直接访问方式

在libguestfs工具中,还有许多其他可用的工具。virt-rescue命令--是使用正常的Linux文件系统工具来实现ad-hoc变化的最 佳命令--可以在安全shell中启动虚拟机。你可以在虚拟机中操作这些文件,就像对挂载的文件系统上进行操作一样,其提供了对虚拟机内容更加直接的访问 方式。

为了在虚拟机上使用virt-rescue命令进行操作,使用virt-rescure加上客户端主机名来打开virt-rescue shell,之后就进入了>模式。

如果需要在虚拟机中挂载系统文件,可以使用fdisk -l /dev/sda命令来查看虚拟机的分区情况,之后再使用命令mount /dev/sda1 /sysroot挂载你想要访问的分区。这样你就可以通过更改来修复虚拟机的内容了。

虚拟机修复之后,关闭virt-rescue shell,将虚拟机重新移动到ESXi服务器的数据存储当中。虚拟机返回原位置之后,如果之前的操作一切顺利,你就应该可以访问它了。

转载于:https://blog.51cto.com/vmware51/1605400

受损虚拟机的修复方法相关推荐

  1. linux虚拟机漏洞修复,linux幽灵漏洞检测和修复方法

    没想到最近linux的漏洞越来越多了,上一次的bash漏洞没过去多久,又爆出了新的漏洞,名为"幽灵漏洞(GHOST)".当我一看到有新的漏洞时,马上为我所管的服务器都打上了最新补丁 ...

  2. EV录制文件损坏-修复方法

    目录 1. 损坏原因 2. 恢复方法 1. 损坏原因 参考链接:Ev录屏视频的视频损坏的原因有哪些? 第一个是由于电脑配置原因导致录屏软件闪退,这样会使得录制的视频受损. 第二个原因是录屏时间过长.当 ...

  3. 损坏Word文档的几种修复方法

    http://www.pcdog.com/edu/word/2006/11/v173886.html 损坏Word文档的几种修复方法 来源: 作者:微电脑世界 2006-11-22 出处:PCDOG. ...

  4. 怎样获得元气骑士的损坏的机器人_元气骑士损坏的机器人怎么修复?机器人修复方法...

    元气骑士损坏的机器人怎么修复?游戏中玩家的机器人会发生损坏,很多玩家不知道游戏中损坏的机器人要怎么修复,今天哆来咪为玩家们带来了关于元气骑士机器人修复方法的文章,想要了解的玩家记得前来看看了解一下哦. ...

  5. 硬盘零磁道损坏的修复方法

    硬盘零磁道损坏的修复方法 故障现象:一台电脑的三星2.1GB硬盘的引导区损坏,听说将引导区从0磁道改至1磁道可以将其修复,如何操作? 解决方法:首先需要找一块采用FAT16文件系统的硬盘,在其中安装好 ...

  6. 手机SD卡损坏的修复方法

    手机SD卡损坏的修复方法 经常会网友遇到手机使用时间较久后会遇到提示"SD卡已损坏,您可能必须将其重新格式化"故障,导致手机SD卡无法使用.最近身边有朋友手机就遇到了这种情况,经过 ...

  7. 文档乱码或文档损坏的修复方法

    本文章介绍的Office文档的数据恢复的原理和程序设计方法,都来源于对Office文档结构的分析.如果对Office文档的结构进行更深入的研究,将会发现更好的修复方法, 从而挽救更多的数据,并有可能开 ...

  8. 怎么修复老照片?轻松的修复方法

    怎么修复老照片?看以前的照片,有没有发现有些照片颜色发黄,甚至部分出现了彩条.模糊等情况,一旦出现我们肯定会想办法解决它,总不能直接要这些照片吧.那么我们该如何解决呢?下面小编教你实用的修复方法,让你 ...

  9. win10自带dll修复以及多种dll修复方法分享

    修复DLL文件是解决Windows系统中发生的许多问题的重要步骤之一.在Windows 10中,自带了一些工具和功能来修复损坏的DLL文件.本文将讨论Windows 10自带的DLL修复工具以及其他常 ...

最新文章

  1. hibernate savealiasentity 保存后id为空_好程序员Java教程分享Java面试题之Hibernate
  2. 使用 wxImage 为 OpenGL 加载纹理
  3. VTK:相互作用之RubberBandPick
  4. 【详细解析】1033 To Fill or Not to Fill (25 分)
  5. 1+X web中级 Laravel学习笔记——blade模版
  6. Pytorch解决LSTM前向传播时报错:RuntimeError: input must have 3 dimensions, got 2
  7. javaEE之--------统计站点在线人数,安全登录等(观察者设计模式)
  8. pytorch的余弦退火学习率
  9. java ssh 框架下 利用junit4 spring-test进行单元测试
  10. GIS开发实习地图符号图式制作
  11. 帝云CMS内容管理系统
  12. Axure 获取焦点
  13. 数据库范式的经典例题,what are you 弄啥嘞?
  14. SaaS最通俗易懂的解释是什么?看这篇就够了
  15. 量化投资教父爱德华·索普人生路:打败赌场 战胜股市
  16. 【PPT 资源下载】甲骨文数据库大会精彩主题分享
  17. BAT脚本实现FTP文件自动传输
  18. 奔驰激活carplay手机互联系统编程改装 成都蔚一名车汇
  19. 测试之道——阿里巴巴八年测试专家倾情奉献
  20. 电脑速度慢的一些方法

热门文章

  1. Python-使用jmespath来格式化处理json数据
  2. java 私有成员方法_Java Reflection 教程(7):类私有成员变量和方法
  3. 四川南充计算机经贸学校,四川南充工贸学校计算机应用专业秋季计划
  4. Hibernate框架ORM的实现原理-不是技术的技术
  5. 安卓案例:利用下拉列表选择科目
  6. arm-linux-gcc /lib/libc.so.6,链接器 – 找不到/lib/libc.so.6
  7. bzoj3944 Sum 杜教筛
  8. bzoj1047 [HAOI2007]理想的正方形 单调队列
  9. 【英语学习】【Level 07】U08 Old Stories L5 Fulfilling a life goal
  10. Pentium 4处理器架构/微架构/流水线 (7) - NetBurst前端详解 - 分支预测