在实时系统上调整 ext2/3 分区(包括 /usr)的大小

在实时系统上调整 ext2/3 分区(包括 /usr)的大小

我正在构建一个磁盘空间相当有限的系统,该系统将使用 LVM,我希望能够尽可能自由地调整分区大小,而不会导致系统崩溃。特别是,我希望能够增大或缩小* /usr

据我了解,这是不可能的(这只对了一半:见更新调整已挂载的 ext2/3 分区的大小,即使它是 LVM 卷的一部分。

是否可以在调整大小期间卸载除 和 之外的所有文件(当然,假设这些目录位于单独的分区中)?或者是否/bin需要中的库或其他实体?/sbinresize2fs/usr

也许在 chroot 环境中或通过其他方法更适合做到这一点?

*:缩小分区/usr可能仅在安装后才有必要,因此并不像扩大分区那么必要。

更新

我发现(参见@baumgart 的回答及其评论)在最近的/现代的 Linux 内核下,不需要卸载 ext3 文件系统即可增加它的大小。虽然我不太可能需要以任何频率或即时性来减小 /usr 文件系统的大小,但我仍然有兴趣了解如何设置以便能够这样做,或者至少被告知“你无法从这里到达那里”。

所以我最初的问题仍然存在。

答案1

如果您使用 LVM,您绝对可以调整 ext2/3 文件系统的大小。您可以在线扩展文件系统,但缩小文件系统则需要离线。

如果您使用 LVM 配置所有文件系统(/boot 除外),则您可以简单地说lvresize -L +1G /dev/vgname/lvname,然后使用resize2fs /dev/vgname/lvname它来调整文件系统大小。

查看维基百科上的 LVM 页面您将会看到它能做什么。

编辑:注意到缩小需要使文件系统脱机。

相关内容