不使用 LVM 时调整 LUKS 分区大小

不使用 LVM 时调整 LUKS 分区大小

我的硬盘上以前有两个分区,/dev/sdb1 和 /dev/sdb2。sdb1 未加密,sdb2 使用 LUKS 加密。我删除了 sdb1,现在想调整 sdb2 的大小以占用 sdb1 以前占用的空间。我该如何在不破坏数据的情况下做到这一点?

Cryptsetup 有一个选项叫 resize。这个选项有什么用?我是否可以使用它来扩大 LUKS 容器以占用磁盘上的所有空间,然后打开容器并像平常一样调整底层 ext4 文件系统的大小?问题在于我通常使用 gparted 来做这样的事情,但 gparted 不支持调整 LUKS 的大小,我不知道如何使用其他工具来做到这一点。

答案1

使用 gparted移动将分区一直移到左边,然后您可以使用命令行parted来调整分区大小,然后听起来您可以使用选项cryptsetup resize来扩大加密容器,最后resize2fs扩大其中的文件系统。

答案2

KDE Partition Manager 2.2.0 可以调整 LUKS 分区的大小,因此您无需手动处理分区大小。

它还没有为 Ubuntu 打包,但您可以尝试自己编译 kpmcore 2.2.0,然后编译 partitionmanager 2.2.0(这可能比手动调整分区大小的风险更小)。

或者您也可以尝试一些已经打包了 kpmcore/kde 分区管理器 2.2.0 的发行版的 LiveCD。例如它基于 Ubuntu LTS。

答案3

GParted 0.28(2017 年 2 月发布)增加了对调整开放 LUKS 卷内文件系统大小的支持。

目前还没有 Ubuntu 发行版提供该版本,但从源代码安装很简单,因为 libparted2 的打包版本足够新,可以运行。Aapt-get build-dep gparted会为您提供所需的依赖项(另外,apt-get install gnome-common如果您需要(重新)生成配置脚本)。

[1]http://gparted.org/news.php?item=207

相关内容