将EC2里的实例导出到RAW文件并进行修改

你可能有自己的instance在amazon云环境里面,或者是你想深度修改一下marketplace里面提供的那些系统又估计运行中的instance改动不方便

亚马逊作为云计算领域的大哥大,我不得不说他在导入导出这方面支持的相当有限

导入的话如果从VMWare有Import Connector(只支持Windows),其他的需要用AMI Tools和API Tools,导出也是

这里不讨论这些支持背后的市场原因,只说一种导出修改方法

以Amazon Linux t1.micro 为例

先Launch起来,使用开放22端口的SecurityGroup方便一会儿SSH进去

证书保存好,如果使用SecureCRT登录需要转换一下

以ec2-user身份登录启动的新系统里

给root加口令:sudo passwd root

改sshd配置允许root:vi /etc/ssh/sshd_config

将PermitRootLogin改为允许: PermitRootLogin yes

改另一个文件: 

sudo vi /root/.ssh/authorized_keys
删掉 “ssh-rsa” 前面的

重启sshd:

sudo /etc/init.d/sshd reload
service sshd restart

找一台有足够空间的机器准备导出,这个例子需要8个G

可以先试试root的ssh是否已经可行,然后:

ssh -i mykeypair_nv.pem root@ec2-184-72-73-20.compute-1.amazonaws.com 'dd if=/dev/xvda1 bs=1M |gzip'|gunzip| dd of=./ec2-imageminilinux.raw

根据你的网络状况和选择的数据中心位置不同,导出速度也不一样,有可能要若干个小时

最后提示导出完毕:

8192+0 records in
8192+0 records out
8589934592 bytes (8.6 GB) copied, 13276 s, 647 kB/s
16777216+0 records in
16777216+0 records out
8589934592 bytes (8.6 GB) copied, 13287 s, 646 kB/s

然后建一个空目录准备mount:

mount -o loop ec2-imageminilinux.raw ./mntmini

成功后就可以进入mntmini,就是之前的instance的所有目录结构和文件

 

 

posted @ 2013-07-12 10:25  伪程序员的自我修养  阅读(373)  评论(0编辑  收藏  举报