Arch-Linux
縮小 LUKS2 btrfs 根分區上的根 LVM 以擴大交換分區
這是我的設置
$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS nvme0n1 259:0 0 238.5G 0 disk ├─nvme0n1p1 259:1 0 100M 0 part /boot/efi ├─nvme0n1p2 259:2 0 250M 0 part /boot └─nvme0n1p3 259:3 0 238.1G 0 part └─Be-Water-My-Friend 254:0 0 238.1G 0 crypt ├─Arch-swap 254:1 0 2G 0 lvm [SWAP] └─Arch-root 254:2 0 236.1G 0 lvm /
我有一個主 LUKS2 加密分區 (
nvme0n1p3
),一個 LVM 卷組 (Be-Water-My-Friend
) 包含兩個邏輯捲Arch-swap
和Arch-root
.這
Arch-root
是一個btrfs。當我設置它時,我只選擇了 2GB 的交換空間,結果證明這不足以滿足我的需求。我想將其增加到 24GB 的交換空間。
為此,我認為我需要
- 在 USB 實時密鑰上啟動
- 解密LUKS2分區
- 掛載
Arch-root
卷- 縮小
Arch-root
文件系統btrfs filesystem resize -22g
- 刪除
Arch-swap
邏輯卷- 重新創建
Arch-swap
佔用卷組中所有可用空間的邏輯卷Be-Water-My-Friend
。有什麼我想念的嗎?我真的不想搞砸了!
您需要在 4 和 5 之間多走一步——使用(可以選擇調整 LV 和文件系統的大小,但它目前不支持 btrfs,因此您不能在此處使用它) 來縮小
Arch-root
邏輯卷。這個答案很好地解釋了調整文件系統大小(在您的情況下為 btrfs)和塊設備(LVM 邏輯卷)之間的區別。lvresize -L-22G Arch/root``lvresize``--resizefs
您可能還想使用
--uuid
withmkswap
為新交換設置舊交換 UUID。在和 GRUB 中通常不使用 UUID 來引用交換/etc/fstab
,但使用舊的 UUID 可能會為您節省一些問題。此外,如果您只是想要更大的交換,您可以在 btrfs 上創建一個交換文件並將其用作第二個交換。