您可以将根卷转换为XFS或创建第二个卷.就个人而言,我赞成后者,因为它提供了更大的灵活性.
选项1:将根卷转换为XFS
>停止你的实例(不终止)(我们称之为实例A)
>开始一个新实例(让我们称之为实例B)
>从实例A中分离根卷并将其附加到实例B
>创建第二个EBS卷,将其附加到实例B
>将新EBS卷格式化为XFS(如果尚未安装xfsprogs)
完成)
>将所有数据从第一卷复制到新卷(例如使用
rsync -aHAXxSP / source / target)
>从实例B中分离新卷并将其作为根附加
实例A的数量
>启动实例A.
>终止实例B(原始根卷应该保留,保留
它直到事情按你的喜好工作).
将根卷附加到另一个实例的原因是为了获得一致性,这对于使用的卷来说是困难的.
选项2:将数据移动到第二个EBS卷
>创建第二个EBS卷并将其附加到您的实例;格式化它
作为XFS并挂载它
>确定要移动到新卷的目录(某些目录)
考虑包括:/ var / log,/ var / lib / MysqL,/ var / www,
/ var / spool / mail,/ var / vmail)
>停止尽可能多的服务以删除写锁
>使用lsof | grep / path / to / dir检查剩余的写锁
>将目录移动到新的EBS卷
> Mount将新目录绑定到其旧位置(即mount -o bind
/ mnt / path / to / dir / orig / path / to / dir)
>对每个目录重复一次
>启动您的服务以确保一切正常
>编辑/ etc / fstab文件以使挂载点永久化;例如:/ mnt / path / to / dir / orig / path / to / dir bind defaults,noatime,bind 0 0
重新启动以确保一切都持续存在并按预期运行.您可能还想考虑将根卷缩小一点,因为希望它不会随着从中删除所有数据而增长(或改变).
(作为一个提及,可以使用fsfreeze冻结ext4文件系统,它包含在util-linux-ng中).