我在尝试从 EBS 卷启动 AMI 时遇到困难。我基本上是在尝试启动另一个基于 Linux (i386) 的 AMI 实例,我已经按照我想要的方式进行了配置。在过去的一周里,我遵循了许多指南。到目前为止,我能够创建自定义私有 AMI,但在启动新实例后我无法连接到它。我怀疑我创建的 AMI 以某种方式配置错误(可能文件没有被完全复制)。
无论如何,这是我尝试创建 AMI 的基本步骤:
ec2-create-volume -K pk-xxxxxx.pem -C cert-xxxxxx.pem --size 10 --availability-zone us-east-1a
ec2-attach-volume -K pk-xxxxxx.pem -C cert-xxxxxx.pem vol-xxxxxx --instance xxxxxx --device /dev/sdh
是的 | mkfs -t ext3 /dev/sdh mkdir/mnt/ebsimage
echo '/dev/sdh /mnt/ebsimage ext3 默认值,noatime 0 0' >> /etc/fstab
挂载/mnt/ebsimage
卸载 /mnt/ebsimage
ec2-detach-volume -K pk-xxxxxx.pem -C cert-xxxxxx.pem vol-xxxxxx --instance xxxxxx
ec2-create-snapshot -K pk-xxxxxx.pem -C cert-xxxxxx.pem vol-xxxxxx
ec2reg -K pk-xxxxxx.pem -C cert-xxxxxx.pem -s snap-xxxxx -a i386 -d -n --kernel aki-xxxxx --ramdisk ari-xxxxxx
我很确定我的 mount 周围的命令搞砸了,或者我的 ec2reg 周围的命令搞砸了。有什么建议么?
我也试过更换
是的 | mkfs -t ext3 /dev/sdh
mkdir/mnt/ebsimage
echo '/dev/sdh /mnt/ebsimage ext3 默认值,noatime 0 0' >> /etc/fstab
挂载/mnt/ebsimage
使用设计为使用 rsync 并添加一些其他细节的脚本,但再次启动的 ami 的新实例无法连接到。这是脚本的副本。
#!/bin/sh
vol=/dev/sdh
ebsmnt=/mnt/ebsimage
mkdir ${ebsmnt}
mkfs.ext3 -F ${vol}
sync
echo "mount $vol $ebsmnt"
mount $vol $ebsmnt
mkdir ${ebsmnt}/mnt
mkdir ${ebsmnt}/proc
mkdir ${ebsmnt}/sys
devdir=${ebsmnt}/dev
echo "mkdir ${devdir}"
mkdir ${devdir}
mknod ${devdir}/null c 1 3
mknod ${devdir}/zero c 1 5
mknod ${devdir}/tty c 5 0
mknod ${devdir}/console c 5 1
ln -s null ${devdir}/X0R
rsync -rlpgoD -t -r -S -l -vh \
--exclude /sys --exclude /proc \
--exclude /dev \
--exclude /media --exclude /mnt \
--exclude /sys --exclude /ebs --exclude /mnt \
-x /* ${ebsmnt}
df -h
因为我的结果与第一个示例相同,所以我不确定我是更接近解决这个问题还是更远。任何帮助,将不胜感激。