我创建了一个具有 16GB 空间的 ext4 文件容器。
dd if=/dev/zero of=./container_16GB.img bs=1M count=16384
mkfs.ext4 container.img
安装这个容器文件没有问题,但是可以调整它的大小吗?
如果是,我该如何将其调整为 20GB?
谢谢。
答案1
是的,您可以调整文件系统的大小。具体方法取决于您是要扩大还是缩小它、您拥有的工具以及您使用的文件系统。广义上讲 -
从概念上来说,种植容器很简单 -
增大底层文件。您可以做一些简单的事情,例如将字节“catting”到底层文件的末尾,或者使用截断来增大文件,或者使用虚拟机软件提供的工具,如 qemu-image resize。请注意预分配磁盘和稀疏磁盘之间的区别。稀疏磁盘可能看起来比磁盘上的实际大小大,如果主机上的磁盘用完,可能会导致后续问题,但创建速度更快,更紧凑。我总是为虚拟机使用预分配磁盘。
使用类似 resize2fs / resize4fs (相同的东西,不同的发行版) 或文件系统等效的工具来扩大文件系统。
缩小文件系统比较困难。它需要卸载文件系统,缩小它(也使用 resize2fs 或同等工具),然后截断磁盘**但要确保截断的磁盘不小于您告诉 resize2fs 的大小。我通常这样做的方法是使用 resize2fs 将磁盘缩小到比新目标大小更小,然后将磁盘缩小到所需大小,然后将文件系统扩展到磁盘的新大小。
其他 -
如果您要调整 swao 的大小,请不要这样做。卸载它,调整文件大小,重新格式化交换。如果系统处于活动状态并且使用的内存比您拥有的内存多,您可以创建第二个临时交换文件并安装该文件,然后停用要调整大小的文件 - 但这会影响性能。
某些操作系统/文件系统(主要是 Windows)在缩小之前需要进行碎片整理。某些系统文件可能需要在缩小文件系统之前禁用/删除,具体取决于它们所在的位置。