4、 mkfs -t ext4/dev/nvme1n1
(分区完成后,如果不格式化写入文件系统,则是不能正常使用的。所以我们需要使用 mkfs 命令即make file system进行格式化。
mkfs [-V] [-t fstype] [fs-options] filesys [blocks]

  • device : 预备检查的硬盘分区,例如:/dev/sda1
  • -t : 给定档案系统的型式,Linux 的预设值为 ext2
  • -c : 在制做档案系统前,检查该partition 是否有坏轨
  • -l bad_blocks_file : 将有坏轨的block资料加到 bad_blocks_file 里面
  • block : 给定 block 的大小

    5、mkdir /mnt/new-volume

    6、mount /dev/nvme1n1 /mnt/new-volume

    7、 rsync -axv / /mnt/new-volume/

    (remote synchronizetion  rsync具有可使本地和远程两台主机之间的数据快速复制同步镜像、远程备份的功能,这个功能类似ssh 带的scp命令,但是又优于scp命令的功能,scp每次都是全量拷贝,而rsync可以增量拷 贝。当然,rsync还可以在本地主机的不同分区或目录之间全量及增量的复制数据,这又类 似 cp命令。但是同样也优于 cp命令, cp每次都是全量拷贝,而rsync可以增量拷贝。

    rsync是不支持实时同步的,通常我们借助于inotify这个软件来实时监控文件变化,一旦inotify监控到文件变,则立即调用rsync进行同步。

    8、 grub2-install --root-directory=/mnt/new-volume/ --force /dev/ nvme1n1

    9、umount /mnt/new-volume

    10、blkid

    确认旧系统盘的uuid

    11. fsck -f /dev/nvme1n1

    12. tune2fs -U "运行blkid看到的旧系统盘uuid" /dev/nvme1n1

    13、e2label /dev/nvme0n1p1

    14、e2label /dev/nvme1n1 /

    15、退出登录,停止实例。

    16、用实例id到卷中查找卷,并断开所有新旧卷,然后添加小的新卷/dev/ sda1

    17、启动实例,这时系统盘就是新的小磁盘。

    注意: 1、第八步是centos的命令 grub2-install。 有的系统是grub-install命令

    2、第二步 mkfs -t ext4 /dev/nvme1n1。  格式如果写xfs,后面会提示失败。

    原系统盘是xfs,新系统盘是ext4,也可以顺利完成,并且不需要修改/etc/fstab

    参考链接:

    https://www.joe0.com/2021/09/27/how-to-reduce-the-size-of-aws-ebs-root-volume/

    https://fitdevops.in/how-to-reduce-aws-ebs-root-volume-size/

  •