无法调整 emmc 内存上的 rootfs 分区大小

无法调整 emmc 内存上的 rootfs 分区大小

我有一个包含可运行的 Ubuntu 系统的 emmc 内存。我想将其连接到我的 Ubuntu PC 并缩小 rootfs 分区,以便在产生的可用空间中创建一个新分区。我尝试使用 gparted(使用调整大小 GUI 并单击“应用”)和 fdisk,但文件系统损坏了。这是我使用 fdisk 的命令(rootfs 分区位于 /dev/sdb5 中):

  • fdisk /dev/sdb
  • d 5
  • n
  • 分区数:5
  • 第一部分:默认
  • 最后扇区:+12G

然后运行e2fsck /dev/sdb5

文件系统大小(根据超级块)为 3784187 个块 设备的物理大小为 3145728 个块 超级块或分区表可能已损坏!中止?

这些操作以前适用于 microSD 卡,而不是 emmc 内存。可能是什么原因?

答案1

fdisk可用于操作分区表。但fdisk不能操作分区中的内容。分区通常包含文件系统,在使用 减少分区大小之前,需要减少文件系统的大小fdisk

  • 增加分区大小:fdisk首先使用然后resize2fs
  • 减少分区大小:resize2fs先使用然后fdisk

如果您已经在新的未分配空间中创建了新的格式化分区,您的文件系统将被损坏,可能无法修复。您的文件系统的一部分将被覆盖。

如果您尚未创建新的格式化分区,您可以尝试修复损坏:

使用 增加分区的大小fdisk,至少将其增加到原来的大小,以便文件系统可以正确放入其中,然后e2fsck再次在该分区上运行以检查文件系统的一致性。如果没问题,您可以重新开始,首先使用 调整文件系统的大小,然后在第二步中resize2fs使用 减小分区的大小。fdisk


也许最好使用 GParted 来管理您的分区,Gparted 会处理所有必要的步骤并自动将文件系统大小调整到新的分区大小。

相关内容