扩展LUKS加密分区以填充磁盘


20

我最近将磁盘从128GB SSD升级到512GB SSD。/分区使用LUKS加密。我正在寻找扩展分区以使用新磁盘上所有可用空间的帮助。我已经将旧驱动器添加到新驱动器中:

[root@localhost ~]# fdisk -l /dev/sda
Disk /dev/sda: 477 GiB, 512110190592 bytes, 1000215216 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x00009f33

Device     Boot   Start       End   Sectors   Size Id Type
/dev/sda1  *       2048   1026047   1024000   500M 83 Linux
/dev/sda2       1026048 250064895 249038848 118.8G 83 Linux

sda2之后大约有380GB的未使用空间。

更多相关信息:

[root@localhost ~]# vgs
  VG             #PV #LV #SN Attr   VSize   VFree
  fedora_chocbar   1   3   0 wz--n- 118.75g 4.00m

[root@localhost ~]# lvs
  LV   VG             Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  home fedora_chocbar -wi-a----- 85.55g                                                    
  root fedora_chocbar -wi-a----- 29.30g                                                    
  swap fedora_chocbar -wi-a-----  3.89g

[root@localhost ~]# pvs
  PV                    VG             Fmt  Attr PSize   PFree
  /dev/mapper/encrypted fedora_chocbar lvm2 a--  118.75g 4.00m

关于如何执行此操作似乎有很多信息,但解释很少。我对此表示感谢。

Answers:


35

好!最终的答案。我扩展LUKS加密卷的步骤...

  1. cryptsetup luksOpen /dev/sda2 crypt-volume 打开加密的卷。
  2. parted /dev/sda扩展分区。 resizepart NUMBER END
  3. vgchange -a n fedora_chocbar。停止使用VG,以便您可以进行下一步。
  4. cryptsetup luksClose crypt-volume。关闭加密卷以进行下一步。
  5. cryptsetup luksOpen /dev/sda2 crypt-volume。再次打开它。
  6. cryptsetup resize crypt-volume。将自动将LUKS卷的大小调整为可用空间。
  7. vgchange -a y fedora_chocbar。激活VG。
  8. pvresize /dev/mapper/crypt-volume。调整PV大小。
  9. lvresize -l+100%FREE /dev/fedora_chocbar/home。将/ home的LV大小调整为可用空间的100%。
  10. e2fsck -f /dev/mapper/fedora_chocbar-home。向调整后的fs投掷一些fsck魔术。
  11. resize2fs /dev/mapper/fedora_chocbar-home。在/ home中调整文件系统大小(自动使用100%可用空间)

我希望其他人觉得这很有用。现在我的笔记本电脑上有300 + GB的测试虚拟机!


1
谢谢,这非常有帮助,应该被接受!
弹簧加载

1
以上对我也很有效。我曾在那里一步,让我们叫它步骤7.5,我必须解开我的物理卷: sudo pvchange -x y /dev/mapper/crypt-volume(通过Ubuntu的文档help.ubuntu.com/community/ResizeEncryptedPartitions
four43

2

对于那些想知道如何简单地将LUKS分区的大小调整为调整后的容器大小的用户,命令如下:

  • 将打开的加密卷映射到crypt-volume,执行

    sudo cryptsetup resize /dev/mapper/crypt-volume
    
  • 然后调整文件系统的大小。如果是Ext4,则可以调整已挂载文件系统的大小

    sudo resize2fs /dev/mapper/crypt-volume
    

我在不中断的情况下对已挂载的文件系统执行了这两个命令,这是可能的,因为加密的卷是LVM卷。


1

由于这似乎不是LVM的特定问题,所以我想提一下,我已在Fedora 28上成功使用GParted移动并扩展了我的LUKS分区100GiB forward(!)。在Ubuntu 18.04中无法完成,但其他解决方案看起来像麻烦的dd或备份和还原(无论如何我都做了备份)。该陆氏容器自动扩展- IIRC的GParted通知您这-唯一剩下的就是扩展文件系统,所以我不得不这样做fsck.ext4 -f,并resize2fs在我的情况。

非常感谢GParted开发人员。


gparted甚至可以挂载加密分区(右键单击)-也为我工作。另一个有用的文章:medium.com/@tbeach/...
迈克尔范围Pollmeier

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.