开放的编程资料库

当前位置:我爱分享网 > PHP教程 > 正文

coLinux 恢复

正如我之前所写,我使用coLinux是为了让Linux虚拟机在我的WindowsXP安装上运行。它运行Debianunstable(SID),它给了我所有我想要的apt-get爱。

除非基于apt-get的安装出现问题,也就是说,就像星期六晚上那样。这是我如何让它恢复运行的故事。

首先,我想指出,下面的叙述显示了我采取的最后的、成功的步骤,这些步骤让我重新开始并运行。事实上,我有过多次失败的尝试,但是,就像一名科学家一样,不断改变一个变量,直到我获得成功。以下内容可能适合您,也可能不适合您,但它确实适合我。

现在,对于这个事件:我一直在我的机器上安装一些更新,包括对mutt和一些相关程序的更新。突然之间,我的机器死机了,一旦硬盘驱动器指示灯停止所有活动并且时钟无法显示任何更新,我就知道这是一个无法恢复的死机。

重新启动后,我的coLinux守护程序在启动时静默失败,我无法确定它是无法启动,还是在启动后崩溃。我花了一段时间才弄清楚如何从命令行运行它,但这帮助我诊断了问题。要从命令行运行coLinux服务,cd进入包含coLinux可执行文件的目录,然后运行​​colinux-daemon.exe-cyourConfig.xml(其中yourConfig.xml是配置文件的名称;最好使用配置文件的完整Windows(不是Cygwin)路径。

不幸的是,我得到的是内核恐慌。我决定我需要进入单用户模式来尝试诊断问题。谷歌搜索告诉我,我需要在我的coLinux配置文件中的bootparams指令中添加尾随1

    <bootparams>root=/dev/cobd0 1</bootparams>

不幸的是,内核恐慌发生在init阶段之前—显然,ext3分区上的日志记录存在问题。

所以,我被困住了。然后它击中了我:如果我可以启动到不同的coLinux安装,我可以添加一个额外的块设备和我自己的根分区,然后进行一些磁盘分析。幸运的是,我下载了用于coLinux的原始Debian映像,所以我开始试验。

果然,我能够获取我的分区,在其上运行e2fsck,甚至使用tune2fs删除和恢复日志记录。分区安装良好,我能够毫无问题地细读数据。

但我仍然无法启动它,这让我陷入了困境:我当前的所有工作都在那台机器上,而且我在那里设置了双Apache(适用于PHP4和PHP5)。我需要能够启动它。

第一步是创建一个新的10GB分区,并在上面安装一个可用的Debian。我复制了可用的Debian安装(小于2GB),并找到了一个名为toporesize的实用程序,它可以将分区大小调整为我想要的10GB。这个过程需要相当长的时间,而且因为它是磁盘和CPU密集型的,所以笔记本电脑会发热得很厉害,所以我在睡觉前启动它并将机器放在一边。

早上,我更改了我的coLinux配置文件以启动此映像—它运行完美。快速df-l显示分区确实已调整大小。现在是时候测试apt-get来安装那些我一直试图更新的程序了。一切顺利。

我退出会话,为我的旧coLinux安装添加一个块设备到coLinux配置,然后重新启动虚拟机。该设备已找到,我将其安装在本地,以便可以开始rsyncing。我需要同步我的/home/usr/local树,以及我的/etc树中的一些关键文件(samba配置,resolve.conf文件、hosts文件和一个自定义的apacheinitscript)。同样,这是一个时间和CPU密集型操作;但是,现在是早上,该上班了,所以我在等待的时候将我的活动限制在检查电子邮件上。

最终结果是,我有了一个闪亮的新安装,包括我所有的工具,更好的是,我所有的工作数据。更好的是,我现在更好地了解coLinux的工作原理,并且知道我可以在未来从故障中快速有效地恢复。

未经允许不得转载:我爱分享网 » coLinux 恢复

感觉很棒!可以赞赏支持我哟~

赞(0) 打赏