Luks
擴展 LUKS 分區
我已經建構了一個具有加密持久性的 kali live usb 32GB。
現在我已經使用 dd 命令將 32GB 的內容複製到了 64GB 的 USB 設備上,並且在新的 64GB 設備上一切正常。
由於 64 GB 記憶棒有可用空間,我想擴展加密 (LUKS) 分區。不幸的是,到目前為止,我還沒有關於如何實現這個分區擴展的可靠資訊。
有沒有人有什麼建議?
非常感謝!
考慮到此處找到的資訊,我終於設法調整了新的 64GB 設備的大小。
為了完整起見,我已經包含了單個命令的輸出。
- 使用原來的 USB 設備(32GB)啟動 kali-live 系統。
- 插入包含要修改(擴展)的 LUKS 分區的 U 盤(64GB)。
- 使用GParted創建一個新分區 (8 GB),將剩餘的可用空間留作他用。
- 刪除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.
- 解鎖分區:
sudo cryptsetup luksOpen /dev/sdb3 persistence Enter passphrase for /dev/sdb3:
- 文件系統檢查:
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
- 調整分區大小:
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.
我希望這可以幫助有類似問題的人。
就像您通常會擴展分區一樣。
LUKS 標頭不包括分區大小,並且分區是逐塊加密的。因此,當您擴展加密分區大小時,它應該自動擴展映射(未加密)分區的大小。
但是我不確定 LUKS 是否會檢測到已安裝分區的更改。您可能需要指示它調整活動映射的大小:
cryptsetup resize <mapping name>
或者,您可以關閉並重新打開映射或重新啟動系統。
只是為了避免任何疑問。擴展分區的正常方法是
- 在分區表條目中調整它的大小
- 讓核心發現新的大小(通常隱式發生,見下文)
- 調整分區上文件系統的大小。
有很多工具可以調整分區表條目的大小,但我推薦cfdisk。它是迄今為止此類工具中對使用者最友好的,甚至還有“調整大小”選項(不像
fdisk
)。兩者都
fdisk
提示cfdisk
核心發現塊設備的新大小。您通常不需要自己執行此操作。但如果沒有,你可以試試blockdev --rereadpt ...
。要調整 ext2/3/4 文件系統的大小,您可以使用resize2fs。請記住,這需要對未加密(映射)的塊設備進行,而不是對保存 LUKS 卷的加密分區進行。