在 Debian 加密的 lvm 設定上調整交換分割區大小已停用休眠功能,我該如何修復它?

在 Debian 加密的 lvm 設定上調整交換分割區大小已停用休眠功能,我該如何修復它?

我在一台古老的上網本上安裝了 Debian 11,使用單獨的 /home 分割區進行加密,否則接受所有預設設定。

設定好系統後,我意識到我只有 1GB 交換分割區和 2GB RAM,因此我將交換分割區的大小增加到 4GB(以確保它始終有足夠的交換空間用於休眠)

swapoff -a
lvextend --size +3G /dev/mapper/dell--mini--vg-swap_1 
mkswap /dev/mapper/dell--mini--vg-swap_1 
swapon -a

這工作得非常好,free/htop 確認我現在有 4GB 的交換空間

但現在當我的系統啟動時,會出現大量有關 mdadm「設定檔中找不到陣列」的錯誤。

休眠似乎可以工作,但不會恢復。

我損壞了什麼以及如何修復它?


看來(謝謝評論者!) mkswap 更改了交換分區的 UUID,並且需要更新它以便恢復可以找到它。有人知道我該怎麼做?

或者可能更乾淨的方法是重做 mkswap,強制 UUID 與前一個相同,但同樣,我可以在哪裡找到舊的 UUID?

答案1

我發現問題只是 mkswap 更改了交換文件的 UUID。

我發現舊的 UUID 為:

cat /etc/initramfs-tools/conf.d/resume 
RESUME=UUID=5caa6a65-ce03-4da5-aac2-9a9686c934d7

然後重新執行 mkswap 指令,強制使用原來的 uuid:

swapoff -a
mkswap --uuid 5caa6a65-ce03-4da5-aac2-9a9686c934d7  /dev/mapper/dell--mini--vg-swap_1 
swapon -a

交換和休眠現在工作正常。

相關內容