Debian
僅當驅動器可用時才使用外部交換分區
我使用在 SD 卡上安裝了 Debian Buster ( armhf )的單板電腦。它有 1 GB 的焊接 RAM,無法增加。我禁用了 Linux 交換,它通常工作正常。
但我有一個應用程序,我希望交換可用。我想在 USB 硬碟驅動器上有一個交換分區,並且只有在需要使用交換時才插入驅動器。此應用程序需要此驅動器存在,因此添加交換功能將非常方便。
到現在為止還挺好。
但是,我希望 Debian 在可用時自動檢測和使用交換空間,而無需使用者互動。
沒有使用者呼叫腳本的好方法嗎?重新啟動是可以接受的,但我寧願不需要它。如果我只是將交換分區放在fstab中,如果在啟動時沒有插入驅動器,則啟動會失敗。
最後,我不擔心禁用交換。應用程序完成後系統將關閉。
如果要使用自動掛載
fstab
條目,可以添加掛載選項nofail
和 systemd timeoutx-systemd.device-timeout=XX
。這樣就不會報告錯誤,並且在指定的超時設置後繼續引導。否則預設超時為 90 秒。
fstab
具有 3 秒超時的範例條目:/dev/sdb1 none swap nofail,sw,x-systemd.device-timeout=3s 0 0
要在啟動後掛載交換分區,您必須創建
udev
規則或手動執行swapon -a
或創建腳本來啟動檢查設備並執行的應用程序swapon -a
。