ubuntu – 如何减少AWS EBS根卷大小?

前端之家收集整理的这篇文章主要介绍了ubuntu – 如何减少AWS EBS根卷大小?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
扩展EC2实例很容易就像一口气(例如,创建AMI,从中启动实例然后更改存储大小).

但减少它变得更加困难.我想减少Amazon Web Services(AWS)EC2实例弹性块存储(EBS)根卷大小.网上有一对旧的高级程序.我发现的更详细的版本是关于StackOverflow问题的一年回答:how to can i reduce my ebs volume capacity,步骤具有相当高的水平:

Create a new EBS volume that is the desired size (e.g. /dev/xvdg)

Launch an instance,and attach both EBS volumes to it

Check the file system (of the original root volume): (e.g.) e2fsck -f /dev/xvda1

Maximally shrink the original root volume: (e.g. ext2/3/4) resize2fs -M -p /dev/xvda1

Copy the data over with dd:

  • Choose a chunk size (I like 16MB)

  • Calculate the number of chunks (using the number of blocks from the resize2fs output): blocks*4/(chunk_size_in_mb*1024) – round up a bit for safety

  • Copy the data: (e.g.) dd if=/dev/xvda1 ibs=16M of=/dev/xvdg obs=16M count=80

Resize the filesystem on the new (smaller) EBS volume: (e.g.) resize2fs -p /dev/xvdg

Check the file system (of the original root volume): (e.g.) e2fsck -f /dev/xvdg

Detach your new EBS root volume,and attach it to your original instance

我无法找到详细的一步一步“如何”解决方案.

我的EBS根卷附加到HVM Ubuntu实例.

任何帮助将非常感激.

在AWS控制台中:

>停止要调整大小的实例
>创建活动卷的快照,然后从该快照创建“通用SSD”卷.
>根据需要创建另一个“通用SSD”卷.
>将这3个卷附加到实例:

> / dev / sda1表示活动卷.
> / dev / xvdf表示作为目标大小的卷.
> / dev / xvdg表示从活动卷的快照生成的卷.

>启动实例.
>通过SSH登录新实例.
>创建这些新目录:

mkdir / source / target

>在新卷上创建ext4文件系统:

mkfs.ext4 / dev / xvdf

>将它挂载到此目录:

mount -t ext4 / dev / xvdf / target

>这非常重要,文件系统需要一个e2label for linux来识别它并启动它,在活动实例上使用“e2label / dev / xvda1”来查看它应该是什么,在这种情况下标签是:“/”

e2label / dev / xvdf /

>挂载从快照创建的卷:

mount -t ext4 / dev / xvdg / source

>复制内容

rsync -ax / source / / target

注意:“/ target”后面没有“/”.此外,关于符号链接和attrs可能存在一些错误,但调整大小仍然是成功的

>卸载文件系统:

umount / target
umount / source

>返回AWS控制台:停止实例,并分离所有卷.
>将新大小的卷附加到实例:“/ dev / sda1”
>启动实例,它应该启动.

第10步是重要的:如上所述使用“e2label”标记新卷,或者实例似乎在aws中启动但不会通过连接检查.

原文链接:https://www.f2er.com/ubuntu/348906.html

猜你在找的Ubuntu相关文章