Linux
在 Linux 中禁用交換的最佳方法
我正在執行一個自定義編譯的 3.18.9 核心,我想知道在系統上禁用交換的最佳方法。如果它有所作為,我也會使用 init。
是否足以註釋或刪除交換行
/etc/fstab
以防止交換在啟動時工作/掛載,或者我應該重新編譯核心而Support for paging of anonymous memory (swap)
不是 100% 確保它沒有被啟用?我執行加密分區並希望防止意外洩漏到硬碟。我的系統規格也足夠好,可以在無交換環境中生存。
- 使用 .標識配置的交換設備和文件
cat /proc/swaps
。- 使用 .關閉所有交換設備和文件
swapoff -a
。- 刪除在 中找到的任何匹配參考
/etc/fstab
。- **可選:**銷毀在步驟 1 中找到的所有交換設備或文件,以防止它們被重複使用。由於您擔心洩露敏感資訊,您可能希望考慮執行某種安全擦除。
過去只
/etc/fstab
自動使用交換分區,但是,systemd 可能會稍微改變一下。您可能需要這樣做:systemctl mask dev-sdXX.swap
(更改 sdXX)到您真正格式化的交換分區,這引出了一個問題,即如果您不想使用交換分區,為什麼要使用它…
如果您不使用 systemd,那麼從中刪除交換條目
/etc/fstab
就足夠了(據我所知)。也許真正的解決方案是擺脫交換分區,這樣它們就不會被意外使用。要刪除交換分區,我會使用 fdisk 將分區類型從交換更改為其他類型,然後重新格式化分區或使用:
dd if=/dev/zero of=/dev/old-swap-partition
以將其歸零並防止其使用。另請參閱*使用 systemd 設置交換分區的使用*。