扩展LUKS分区

扩展LUKS分区

我已经构建了一个具有加密持久性的 kali live usb 32GB。

现在,我已使用 dd 命令将 32GB 内容复制到 64GB USB 设备,并且在新的 64GB 设备上一切正常。

由于 64 GB 棒有可用空间,我想扩展加密 (LUKS) 分区。不幸的是,到目前为止我还没有关于如何实现这个分区扩展的可靠信息。

有没有人有什么建议?

非常感谢!

答案1

就像您通常扩展分区一样。

LUKS 标头不包含分区大小,并且分区是逐块加密的。因此,当您扩展加密分区大小时,它应该自动扩展映射(未加密)分区的大小。

但是我不确定 LUKS 是否会检测到已安装分区上的更改。您可能需要指示它调整活动映射的大小:

cryptsetup resize <mapping name>

或者,您可以关闭并重新打开映射或重新启动系统。


只是为了避免任何疑问。扩展分区的正常方法是

  • 在分区表条目中调整它的大小
  • 让内核发现新的大小(通常是隐式发生的,见下文)
  • 调整分区上文件系统的大小。

有很多工具可以调整分区表条目的大小,但我推荐cfdisk。它是迄今为止此类工具中最用户友好的,甚至具有“调整大小”选项(与 不同fdisk)。

两者fdisk都会cfdisk提示内核发现块设备的新大小。您通常不需要自己执行此操作。但如果没有,你可以尝试一下blockdev --rereadpt ...

要调整 ext2/3/4 文件系统的大小,您可以使用调整2fs大小。请记住,这需要对未加密(映射)的块设备执行,而不是对保存 LUKS 卷的加密分区执行。

答案2

考虑到找到的信息,我终于设法调整了新的 64GB 设备的大小这里

为了完整起见,我包含了单个命令的输出。

  1. 使用原始USB设备(32GB)启动kali-live系统。

  2. 插入包含要修改(扩展)的LUKS分区的U盘(64GB)。

  3. 使用格帕特,创建一个新分区(8 GB),保存剩余的可用空间以供其他使用。 在此输入图像描述 在此输入图像描述

  4. 删除LUKS分区,删除要添加的分区(8GB),并创建新分区(大小old_LUKS_partition + 8GB)

    sudo fdisk /dev/sdb
    
    Welcome to fdisk (util-linux 2.37.2).
    
    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.
    
    
    Command (m for help): p
    Disk /dev/sdb: 59.63 GiB, 64023257088 bytes, 125045424 sectors
    Disk model: Extreme         
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: dos
    Disk identifier: 0x59536a28
    
    Device     Boot    Start      End  Sectors  Size Id Type
    /dev/sdb1  *          64  7866239  7866176  3.8G 17 Hidden HPFS/NTFS
    /dev/sdb2        7866240  7867711     1472  736K  1 FAT12
    /dev/sdb3        7868416 60088319 52219904 24.9G 83 Linux
    /dev/sdb4       60088320 76865535 16777216    8G 83 Linux
    
    Command (m for help): d
    Partition number (1-4, default 4): 
    
    Partition 4 has been deleted.
    
    Command (m for help): d
    Partition number (1-3, default 3): 
    
    Partition 3 has been deleted.
    
    Command (m for help): n
    Partition type
       p   primary (2 primary, 0 extended, 2 free)
       e   extended (container for logical partitions)
    Select (default p): p
    Partition number (3,4, default 3): 
    First sector (7867712-125045423, default 7868416): 
    Last sector, +/-sectors or +/-size{K,M,G,T,P} (7868416-125045423, default 125045423): -22.9G
    
    Created a new partition 3 of type 'Linux' and of size 32.9 GiB.
    Partition #3 contains a crypto_LUKS signature.
    
    Do you want to remove the signature? [Y]es/[N]o: N
    
    Command (m for help): w
    
    The partition table has been altered.
    Calling ioctl() to re-read partition table.
    Syncing disks.
    
  5. 解锁分区:

    sudo cryptsetup luksOpen /dev/sdb3 persistence
    Enter passphrase for /dev/sdb3: 
    
  6. 文件系统检查:

    sudo e2fsck -f /dev/mapper/persistence
    
    e2fsck 1.46.4 (18-Aug-2021)
    persistence: recovering journal
    Pass 1: Checking inodes, blocks, and sizes
    Pass 2: Checking directory structure
    Pass 3: Checking directory connectivity
    Pass 4: Checking reference counts
    Pass 5: Checking group summary information
    Free blocks count wrong (2400085, counted=2397778).
    Fix<y>? yes
    
    Free inodes count wrong (1243709, counted=1243712).
    Fix<y>? yes
    
    persistence: ***** FILE SYSTEM WAS MODIFIED *****
    persistence: 388288/1632000 files (6.2% non-contiguous), 4125614/6523392 blocks
    
  7. 调整分区大小:

    sudo resize2fs /dev/mapper/persistence
    
    resize2fs 1.46.4 (18-Aug-2021)
    Resizing the filesystem on /dev/mapper/persistence to 8613632 (4k) blocks.
    The filesystem on /dev/mapper/persistence is now 8613632 (4k) blocks long.
    
  8. 在 64GB 内存条上运行 kali-live 文件系统本身的最终结果: 在此输入图像描述

我希望这可以帮助有类似问题的人。

相关内容