Swap
SWAP 失敗的影響
一位團隊成員在我們的一台機器上創建了一個交換文件,需要更多交換。他在 SSD 上的文件系統上創建了它。雖然我們的伺服器沒有進行很多交換,並且可能安全地將交換文件保存在 SSD 上,其寫入周期有限,但我很想知道如果 SWAP 分區在使用交換的伺服器上發生故障會發生什麼(比如 SWAP 驅動器死了)。
- 正在執行的機器上的 SWAP 分區故障是災難性的嗎?或者它會被視為有人發出了一個
swapoff -a
儘管沒有刷新緩衝區和記憶體的情況。- 我假設在 SWAP 上有其頁面的程序可能會崩潰。
- 如果我要重新啟動一台 SWAP 失敗的機器,在 fstab 中註釋掉交換條目是否足以防止卡在啟動時?我可以添加一個新的交換分區並更新 fstab 條目,它會像什麼都沒發生一樣重新啟動嗎?
我假設您在這裡使用 linux,部分原因是提到
swapoff -a
但建議明確說明這一點,無論是在您的問題文本中和/或通過標籤。交換失敗將在將其記憶體分頁到交換設備的程序中產生記憶體錯誤,即該程序將被終止。
使用失敗的交換設備重新啟動系統只會在執行時給出錯誤,
swapon
但係統將在沒有該交換設備的情況下繼續執行。然後,您可以直接使用另一個交換設備swapon /dev/whatever
和/或編輯/etc/fstab
和重新啟動和/或swapon -a
。請注意,您還可以將文件用作交換設備:
# create a large enough file (1GB here) dd if=/dev/zero of=/var/SWAPFILE bs=1024k count=1024 # write swap signature to the file so that the kernel recognizes it mkswap /var/SWAPFILE # activate it swapon /var/SWAPFILE