收缩/减少非lvm磁盘文件系统

收缩/减少非lvm磁盘文件系统

我有一个 vmware ext4 文件系统,该文件系统是非 lvm、非分区文件系统,驻留在虚拟 300GB 磁盘上。换句话说,没有分区,文件系统可能是通过以下方式创建的:

mkfs.ext4 /dev/sdd1

该磁盘几乎没有使用(1%),但我想将数据保留在上面。有没有安全的方法来缩小它?我正在考虑将 Vmware 中的磁盘大小从 300 调整为 100 并运行 resize2fs /dev/sdd1 但不确定是否不会丢失任何内容。

任何建议将不胜感激。

P。

答案1

您的问题不一致:如果有分区,则文件系统是由诸如 之类的命令创建的mkfs.ext4 /dev/sdd1。如果没有分区,则文件系统是通过命令行创建的mkfs.ext4 /dev/sdd。检查 的输出,df /path/to/some/directory/on/that/filesystem看看它是哪一个。

无论哪种方式,您都可以调用resize2fs来收缩文件系统。这与 LVM 的任何使用无关。您只能在卸载时收缩文件系统,因此如果它是您的根文件系统,则需要从救援系统执行此操作。请注意,救援系统中的磁盘盘符可能会有所不同,例如,sdb而不是sdd

将文件系统收缩到所需大小后,如果它位于分区上,则需要收缩分区。您可以使用fdisk它,但它有点微妙:您需要删除并重新创建分区,确保您不会更改其起始位置。您还可以使用parted,它结合了文件系统大小调整和分区大小调整,但使用起来也很麻烦,因为需要计算目标起始地址。

之后,您可以在VMware中缩小磁盘映像的大小。确保文件系统(和分区,如果适用)适合磁盘映像;如果有分区,请记住分区表在开始时使用了额外的512B。

相关内容