0

我正在尝试从正在运行的实例创建一个 EBS 支持的图像,类似于SO 上的这篇文章。我主要使用这些网站作为参考:

  1. 从正在运行的实例创建可启动的 EBS AMI
  2. 将正在运行的 Linux 操作系统同步到映像文件的脚本

我成功创建了 EBS 卷,对其运行mkfs.ext3我格式化了整个驱动器,而不是分区——这可能是问题所在吗?)并使用以下rsync命令制作文件系统的副本:

rsync --stats -avv --exclude=/root/.bash_history --exclude=/home/*/.bash_history --exclude=/etc/ssh/ssh_host_* --exclude=/etc/ssh/moduli --exclude=/etc/udev/rules.d/*persistent-net.rules --exclude=/mnt/* --exclude=/proc/* --exclude=/tmp/* --exclude=/sys/* --exclude=/dev/* --exclude=/production --exclude=/media / /mnt/ebs-root/

(其中/media/production是从其他 EBS 卷挂载的目录,并且/mnt/ebs-root/是包含图像的新 EBS 卷)

rsync 工作得很好,我可以卸载卷,对其进行快照,并使用 AWS 控制台制作可启动映像......但是当它启动时,我无法通过 web/ssh 访问它(在更改其弹性 IP 之后在 AWS 控制台中)。

我注意到我可能需要编辑新 EBS 卷中的一些文件(如 /etc/fstab),但我不确定。无论如何,这是我的 /mnt/ebs-root/etc/fstab 的内容:

# Legacy /etc/fstab
# Supplied by: ec2-ami-tools-1.3-34544
/dev/sda1 /     ext3    defaults 1 1
/dev/sda2 /mnt  ext3    defaults 0 0
/dev/sda3 swap  swap    defaults 0 0
/dev/sdp1 /production  ext3    defaults 0 0
none      /proc proc    defaults 0 0
none      /sys  sysfs   defaults 0 0

我在这里的知识库之外,希望有人能指出我正确的方向。提前致谢。

4

1 回答 1

1

问题是我试图在实例运行时对其进行映像。我想由于没有人访问该站点,因此我可以在运行时对其进行映像,但显然不是。这是我跑的:

/etc/init.d/apache2 stop

/etc/init.d/mysql stop

然后我rsync从上面重新运行了我的命令,现在可以通过 SSH 访问该实例!(我现在有一个新问题,但那是另一个话题;)

感谢Jonners的提示。

于 2012-01-17T23:13:35.820 回答