我可以更改我的amazon EC2实例的根EBS设备吗?

我有一个EBS支持的Amazon EC2实例。 我想改变这个实例的根设备。 你可以请build议最好的方式去做这个?

我只find有关更改块设备的几个属性的文档,但似乎没有将其设置为根设备。 提前致谢。

是的,这很容易:

  1. 停止实例。
  2. 分离根EBS卷。
  3. 以root身份挂载备用EBS卷: /dev/sda1
  4. 启动实例。

这假定您的备用EBS卷是可启动的,当然 – 它必须包含可引导的OS映像。

我没有足够的代表添加评论到选定的答案,但我想指出,对于我, /dev/sda1没有工作(没有作为根连接),但使用/dev/xvda工作(作为根连接)。 这个实例是使用HVM的最新的t2.micro实例之一。

为了详细说明Diomidis Spinellis在接受答案的评论主题中的评论,检查您尝试切换的设备的文件系统标签作为新的根设备非常重要。 在排除我自己的服务器迁移故障时,我必须在启动实例之前执行以下操作:

使用e2label命令更改为新的根设备创build的ext2 / ext3 / ext4文件系统上的标签。

首先,检查当前根设备的文件系统标签。

 $ sudo e2label /dev/xvda1 cloudimg-rootfs 

将新设备设置为具有相同的文件系统标签。

 $ sudo e2label /dev/xvdg 'cloudimg-rootfs' 

在我的情况下,标签是cloudimg-rootfs 。 有时它会简单地成为/

了解e2label的工作原理非常重要。 请在您的计算机上检查man e2label或访问http://linux.die.net/man/8/e2label获取更多信息。;