2010年4月12日星期一

虚拟机崩溃

我以前总是对VirtualBox的虚拟机不放心。因为每个虚拟的系统,在主系统上就对应一个巨大的映像文件VDI文件。如果这一个文件出点问题,整个系统就完蛋了。相比每个文件也都是单独的话,可靠性就不高了。这只是我的一个假想,但是昨晚的事情证明了这样的文件确实不可靠。

软件提供的功能,我总是喜欢去折腾。我的VB里面装了个Windows XP。我在Linux下没法和我爸爸视频聊天,因为他没有Skype,而Gtalk在Linux下又不支持视频聊天。为了支持USB,我已经把开源版的VB换成了不开源的版本。我在XP的Chrome里面,登录Gmail,打开视频聊天,能看到自己和对方的视频,也能听到声音。嗯,还不错。可是突然一下整个虚拟XP的窗口就关了,这应该不能算是Windows崩溃,而是VirtualBox崩溃了(但主窗口还在)。又试一次,结果整个Ubuntu桌面死机了。这样玩,破坏力太大了。只能强行重启电脑了。但是杯具还在后面。

重启再打开VB,XP虚拟机就进不去了。启动条滚动几下后,就蓝屏自动重启。这样多次都没法进去,只好在虚拟机里面挂载XP的安装盘,想修复一下。进入XP安装盘的修复模式,要求输入管理员密码。这个我都不知道,连密码都没有,哪里来管理员密码。还打算去找个找回密码的软件呢,再重启从硬盘启动,发现系统竟然可以进去了。登录前自动运行了磁盘检查,看起来磁盘错误很多,修复了很多问题。终于可以进去了,不用再为一个虚拟机去折腾了。

虚拟机崩溃的原因已经很清楚了,就是Ubuntu死机的时候,我强行重启,XP的VDI文件没有Sync到硬盘上,导致组成整个系统的单一文件不完整,后果自然很严重了。其实,当时很可能Linux内核本身并没有死掉,我应该按下ALT+SysRq+S键,Sync所有的文件,然后再重启,这样就可以比较安全地重启系统,不至于让虚拟系统崩溃了。

现在VPS很流行,这样如果发生类似上面的意外,后果岂不是会比较严重呢?VMWARE的虚拟机也是一个映像文件。需要赶紧研究一下Xen,看看Xen里面是怎么弄的。

没有评论:

发表评论