以上轉自樹莓派實驗室https://shumeipai.nxez.com/2017/12/18/how-to-modify-raspberry-pi-swap-partition.html
樹莓派實驗室按:Swap分區是磁盤上的一個特殊用途的分區。是當系統的物理內存不夠用的時候,把物理內存中的一部分空間釋放出來,以供當前運行的程序使用。那些被釋放的空間可能來自一些很長時間沒有什麼操作的程序,這些被釋放的空間被臨時保存到Swap分區中,等到那些程序要運行時,再從Swap分區中恢復保存的數據到內存中。
分配太多的Swap空間,會浪費磁盤空間,而Swap空間太少,則系統會發生錯誤。一般在內存小於2G的情況下,交換分區應爲內存的2倍。對於樹莓派來說,可以設置爲2GB。當然也需要考慮 microSD 卡容量和使用情況。
錯誤的做法
下面是錯誤的做法!錯誤的做法!錯誤的做法!重要的事情說三遍!!!
一直以來,我以爲樹莓派的 swap 和普通 linux 的差不多,也就照着某些網站上的方法修改樹莓派的交換分區大小。
熟悉的套路開始了!
首先,查看內存大小:
1 2 3 4 |
|
然後:
1 2 3 4 5 6 |
|
接着,添加以下內容到fstab文件尾:
1 |
|
查看是否有swap空間
1 |
|
重啓後,你就會發現樹莓派的 swap 又回到還原了。
正確的做法
如果你按照上面的方法做了,只需刪除 swap 分區:
1 2 |
|
然後將自己在 /etc/fstab 文件添加的那一行刪除。
下面開始正式修改樹莓派的 swap 的大小:
1 |
|
將 CONF_SWAPSIZE 的值修改成你想要的大小。 一般在內存小於2G的情況下,交換分區應爲內存的2倍!
然後,重新啓動 dphys-swapfile 文件服務:
1 |
|
最後查看大小:
1 2 3 4 |
|
後記
在修改 /etc/fstab 文件的時候,我在下面的註釋裏發現了這樣的兩句話:
# a swapfile is not a swap partition, no line here
# use dphys-swapfile swap[on|off] for that
不過當時並不知道 dphys-swapfile 是什麼,也不知道它在哪。後來通過搜索 dphys-swapfile 查閱到這篇文章 How to change Raspberry Pi’s Swapfile Size on Raspbian,終於找到了正確修改樹莓派交換分區的方法。
文章標題:修改樹莓派交換分區 SWAP 的正確姿勢 - 樹莓派實驗室
固定鏈接:https://shumeipai.nxez.com/2017/12/18/how-to-modify-raspberry-pi-swap-partition.html