拯救无法启动的虚拟机文件.vmdk中的数据

FROM: http://blog.csdn.net/npy_lp/article/details/7686583

 

    从事Linux开发的软件工程师几乎都使用过虚拟机软件,如VMware workstation,一般把虚拟机软件运行在微软的操作系统中,把Linux操作系统(如Ubuntu)运行在虚拟机软件中,这样就可以在一台主机上同时使用两个不同类型的操作系统,非常方便。

    运行在虚拟机中的操作系统以.vmdk文件的形式保存。

    在实际工作中,经常会遇到运行在虚拟机中的操作系统彻底崩溃,再也无法启动,导致几天甚至十几天的劳动成果灰飞烟灭。

    本文就介绍一个简单的方法,告诉大家如何拯救无法启动的操作系统中的重要数据。基本原理就是把无法启动的操作系统所在的虚拟机文件.vmdk当成另一个能够启动的操作系统的一个磁盘。

    操作如下:

    (1)、打开能够正常运行的操作系统

 

    (2)、把无法启动的操作系统所在的虚拟机文件设置成能够正常运行的操作系统的一个磁盘

 

 

 

    (3)、启动能够正常运行的操作系统

 

    (4)、登入操作系统,挂载新增的磁盘到系统中的某个目录下 

[cpp] view plain copy
 
  1. $ ls -l /dev/sd*  
  2. brw-rw---- 1 root disk 8,  0 2012-06-23 19:16 /dev/sda  
  3. brw-rw---- 1 root disk 8,  1 2012-06-23 19:16 /dev/sda1  
  4. brw-rw---- 1 root disk 8,  2 2012-06-23 19:16 /dev/sda2  
  5. brw-rw---- 1 root disk 8,  5 2012-06-23 19:16 /dev/sda5  
  6. brw-rw---- 1 root disk 8, 16 2012-06-23 19:16 /dev/sdb   //sdb1、sdb2和sdb5就是新增磁盘的分区  
  7. brw-rw---- 1 root disk 8, 17 2012-06-23 19:16 /dev/sdb1  
  8. brw-rw---- 1 root disk 8, 18 2012-06-23 19:16 /dev/sdb2  
  9. brw-rw---- 1 root disk 8, 21 2012-06-23 19:16 /dev/sdb5  
  10.   
  11. $ mkdir $HOME/mnt  //新建挂载点  
  12. $ sudo mount /dev/sdb1 $HOME/mnt  //挂载sdb1  
  13.   
  14. //查看,无法启动的操作系统的所有文件都在$HOME/mnt目录下了  
  15. $ cd mnt/  
  16. $ ls  

 

 

 

虚拟机硬盘被其他虚拟机占用无法打开的情况:
  删除lock文件,删除镜像文件,从虚拟机配置中删除硬盘,然后重新添加虚拟机硬盘,选scsi接口,再选择添加现有虚拟机硬盘文件 
posted @   ecalf  阅读(2270)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示