AWS实例:AMI捆绑软件,快照和熊,哦,我的

我GOOGLE了很多,我仍然很困惑,感觉就像我失踪或俯瞰的东西。 我的目标是使用捆绑软件恢复主机。

我有一个坐在S3中的现在不存在的实例的AMI包。 我已经注册了bundle,可以使用ec2-run-instance“启动”实例。 但是,每个实例显示为在Web界面上运行后都是不可见的。 通过Web界面查看控制台日志,这是新实例上文件系统的问题(以下错误)。

检查所有文件系统。

[/sbin/fsck.ext3(1) – /] fsck.ext3 -a / dev / sda1

/ dev / sda1:clean,156721/1310720文件,1683095/2621440块

[/sbin/fsck.ext3(1) – / mnt] fsck.ext3 -a / dev / sdb

/ dev / sdb被挂载。 e2fsck:无法继续,正在中止。

[FAILED]

***在文件系统检查过程中发生错误。

***把你放到壳里; 系统将重新启动

***当你离开壳。

提供root密码进行维护

(或键入Control-D以继续):

显然,我不能按Control-D或者与之交互。 是否有可能把这个bundle安装成一个EBS卷,或者把这个bundle的快照,然后签出文件系统? 如果是的话,我会怎么做呢? 另外,虽然我没有看到任何错误,但是有没有人知道捆绑过程中出了什么问题?

提前致谢!

从S3支持的软件包中创buildEBS卷将需要一些工作,但可以完成:

  • 开始一个新的实例,并附上一个足够大的EBS卷
    • 您还需要在实例上有足够的可用空间来临时存储图像(小实例上的临时存储应该是足够的)。

  • 将您的捆绑卷下载到实例中:
      ec2-download-bundle -b BUCKET_NAME -m MANIFEST.xml -d TARGET_DIRECTORY 
    • 您还需要传递您的ACCESS_KEY,SECRET_ACCESS_KEY和PRIVATE_KEY,或者将其设置为环境variables。
  • 分解音量:
      ec2-unbundle -m /local/path/to/manifest.xml -s SOURCE_DIRECTORY -d DESTINATION_DIRECTORY 
  • 复制到EBS卷:
      dd if = / path / to / image = / dev / NAME 

您现在应该能够将EBS卷作为根卷附加到实例(停止,分离原始根,附加新根,启动),或者从卷的快照创build新映像。 当然,除非你解决这个问题,否则你会希望现有的问题能够坚持新的实例。

我build议,根据这篇文章 ,你在/ etc / fstab中有一个不符合附加设备的条目,导致e2fsck无法运行,引导过程失败。 查找/ mnt条目并删除(或更正)它以反映可用卷。