Lvm
休眠後損壞的文件系統
在每個休眠過程之後,我都會得到一個損壞的根文件系統。我的設置是 LVM 上的 LUKS 加密根和交換分區。我對根文件系統使用 GPG 加密密鑰,在根分區上使用未加密密鑰文件進行交換解密。initramfs 由 genkernel 生成
genkernel --lvm --luks --gpg initramfs
對於休眠設置,我遵循了Gentoo Wiki。我嘗試使用
pm-hibernate s2disk -r /dev/mapper/swap echo disk > /sys/power/state
但都會導致根分區損壞。我沒有使用 tuxonice 作為(afaik)我需要切換到其他核心源或應用更新檔。
系統:
Gentoo Kernel 4.9.6-gentoo-r1 genkernel 3.4.52.4-r2 pm-utils 1.4.1-r7
磁碟佈局:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 477G 0 disk ├─sda2 8:2 0 128M 0 part /boot ├─sda3 8:3 0 410G 0 part │ ├─vg1-swap 253:1 0 30G 0 lvm │ │ └─swap 253:3 0 30G 0 crypt [SWAP] │ └─vg1-root 253:0 0 380G 0 lvm │ └─root 253:2 0 380G 0 crypt / └─sda1 8:1 0 2M 0 part
我對根文件系統使用 GPG 加密密鑰,在根分區上使用未加密密鑰文件進行交換解密。
這是否意味著您必須掛載根文件系統才能解密交換?如果是這樣,這可能是您的問題的原因。您不允許在休眠時訪問(寫入)文件系統(因為它們“仍然被休眠系統掛載”)。
https://www.kernel.org/doc/Documentation/power/swsusp.txt
* BIG FAT WARNING ********************************************************* * * If you touch anything on disk between suspend and resume... * ...kiss your data goodbye. * * If you do resume from initrd after your filesystems are mounted... * ...bye bye root partition. * [this is actually same case as above] *
休眠是非常有前途的事情,基本上你必須希望你的 Initramfs 風格能夠正確處理所有情況。最好使用無需任何惡作劇即可訪問的普通交換分區。