Linux
如何在 Linux 中設置加密交換文件?
**2017 警告!**接受的答案似乎有效,但是對於最近的核心,我發現系統一開始交換就會掛起。如果您嘗試使用加密的交換文件,請確保它確實正確交換。我花了很長時間才弄清楚為什麼我的系統無緣無故地一直鎖定。我已經回到使用加密交換分區,它確實可以正常工作。
如何在 Linux 中設置加密交換文件(不是分區)?甚至可能嗎?我找到的所有指南都在談論加密交換分區,但我沒有交換分區,我寧願不必重新分區我的磁碟。
我不需要對磁碟的掛起支持,所以我想在每次啟動時使用一個隨機密鑰。
我已經在為我的數據使用TrueCrypt文件託管卷,但我不想將我的交換放在那個卷中。如果有更好的解決方案,我不會將 TrueCrypt 用於交換文件。
如果這很重要,我正在使用帶有預設核心的Arch Linux 。
實際上,該頁面描述了設置分區,但它與交換文件類似:
dd if=/dev/urandom of=swapfile.crypt bs=1M count=64 loop=$(losetup -f) losetup ${loop} swapfile.crypt cryptsetup open --type plain --key-file /dev/urandom ${loop} swapfile mkswap /dev/mapper/swapfile swapon /dev/mapper/swapfile
結果:
# swapon -s Filename Type Size Used Priority /dev/mapper/swap0 partition 4000176 0 -1 /dev/mapper/swap1 partition 2000084 0 -2 /dev/mapper/swapfile partition 65528 0 -3
swap0 和 swap1 是真正的分區。