Raspberry Pi僅具有256 MB的RAM,因此我想使用交換空間(在SD卡或連接的USB存儲設備上)。如何設置?
Raspberry Pi僅具有256 MB的RAM,因此我想使用交換空間(在SD卡或連接的USB存儲設備上)。如何設置?
Raspbian使用 dphys-swapfile,它是基於交換文件的解決方案,而不是基於“標準”交換分區的解決方案。更改交換大小更容易。
配置文件為:
/ etc / dphys-swapfile
內容非常簡單。默認情況下,我的Raspbian具有100MB的交換空間:
CONF_SWAPSIZE = 100
如果要更改大小,則需要修改數字並重新啟動phys -swapfile:
/etc/init.d/dphys-swapfile restart
編輯:在Raspbian上,默認位置為/ var / swap,即(當然)位於SD卡上。我認為這是一個壞主意,所以我想指出,/ etc / dphys-swapfile也可以具有以下選項:CONF_SWAPFILE = / media / btsync / swapfile
我唯一的問題是它會自動安裝USB存儲設備,因此在這裡有潛在的競爭(自動安裝與swapon)
您可以非常簡單地設置交換空間。例如,如果您的USB驅動器是 / dev / sdx
,則可以使用(必須是root用戶):
$ mkswap / dev / sdx $ swapon / dev / sdx
請注意,這將使用整個設備,並且您可能會丟失所有現有數據。
您還可以創建交換文件(通過使用 loop
設備),像這樣:
$ dd if = / dev / zero of = / path / to / swapfile bs = 1M count = 1024#對於1GB交換文件$ mkswap / path / to / swapfile $ swapon / path / to / swapfile
不再需要交換文件時(例如,如果要彈出USB驅動器) ,則必須使用 swapoff <device>
。不這樣做可能會導致系統崩潰。
您應該要小心。 SD卡具有有限的讀/寫限制,並且會縮短其使用壽命。如果您使用的是外部硬盤驅動器,則應該可以,但是會很慢。
完全不要執行此操作。
您應該不要在Raspberry Pi上啟用交換。
儘管如此即使在10類SDHC卡上,它也太慢了。
在任何基於閃存的存儲設備(SD卡,SDD,USB拇指驅動器)上,您也可能會看到系統範圍內的暫停,而同時
可能的例外:
Raspbmc使用 /etc/init/swap.conf
通過/ swap文件配置交換。它首先檢查 /home/pi/.enable_swap
的存在。
如果刪除 /home/pi/.enable_swap
,則交換文件不是創建,然後如果需要打開並重新啟動交換,請使用 touch /home/pi/.enable_swap
重新創建。
可惜Raspberry Pis沒有千兆以太網,但理論上至少在網絡設備上有交換空間是可能-Linux Terminal Server Project可以從服務器提供它根據客戶在其Wiki上的此項向客戶展示。
我發現了一個基金會論壇主題“技巧:交換nfs”,該主題顯示了某人已經有一些NFS掛載的地方已經在其中一個上使用了交換文件,並通過循環掛載將其掛載(可能是必要的,因為Linux不允許直接使用NFS掛載)。鑑於遠程交換文件將保留操作系統絕不能丟失的數據,我只考慮將其用於有線以太網網絡-無線鏈接太脆弱了恕我直言。另外,當然,您必須不允許關閉遠程服務器而不關閉交換,並先使其完全清空!