我刚刚使用 扩展了我的 1G“主文件”,它通过另一个 GB 安装到 /home/user truncate -s +1G homefile
,虽然它将显示的主文件的大小更改df
为 2GB,但安装时它仍然只有 1GB。我错过了什么吗?我不必再次使用 mkfs.etx4 吗?...因为这会擦除数据并破坏我使用 truncate over fallocate 的目的,我必须在扩展后使用 resize2fs,但不会更改数据。我尝试在截断后使用 resize2fs,但它在文件系统类型上出现错误(如果相关,我将不得不重新启动我的虚拟机)。
如果我无法使用 truncate 进行扩展,是否有另一种方法可以挂载动态扩展文件?我知道 qcow2 可以做到这一点,但这似乎有点笨拙。我知道 PuppyOS 和 PorteuOS 之类的 squashfs,但是当我查看时,它涉及到更多的设置步骤。如果它可以工作,我喜欢截断的简单性。
您只是调整了底层存储的大小,而不是文件系统。所以,这是完全可以预料的!
resize2fs
是您需要的工具;resize2fs homefile
还没有工作(不要这样做),因为你首先必须告诉循环设备,通过它安装它的底层存储已经改变。所以,整个过程是这样的:
truncate
/fallocate
...)losetup -c $(losetup -j homefile)
resize2fs $(losetup -j homefile)