精品軟體與實用教程
網上申請的一些雲端主機,記憶體都有一些偏低,為了滿足系統上應用需求,需要使用硬碟來增加伺服器的虛擬記憶體。以下教你如何加入虛擬內存SWAP。
什麼是swap
首先,虛擬記憶體的概念是windows下的。在linux中又稱為swap分區。
windows即使實體記憶體沒有用完也會去用到虛擬內存,而Linux不一樣Linux只有當物理內存用完的時候才會去動用虛擬內存(即swap分區)
swap類似windows的虛擬內存,不同之處在於,Windows可以設定在windows的任何盤符下面,預設是在C盤,可以和系統檔案放在一個分區裡。而linux則是獨立佔用一個分區,方便由於記憶體需求不夠的情況下,把一部分內容放在swap分區裡,待內存有空餘的情況下再繼續執行,也稱之為交換分區,交換空間是其中的部分。
windows的虛擬記憶體是電腦自動設定的,Linux的swap分割區是你安裝系統的時候分好的。
建立虛擬記憶體swap
首先使用df指令,查看伺服器上空間佔用狀況。
linux中df指令的功能是用來檢查linux伺服器的檔案系統的磁碟空間佔用情況。可以利用此指令來取得硬碟被佔用了多少空間,目前還剩下多少空間等資訊。
作業系統沒有配置swapfile(分配swap空間)會導致運行一段時間出錯,接下來開始建立虛擬內存,也就是swap分區。
看記憶體配置,如果Swap後面都是0的話需要加入swap
free -m
建立一個預先分配指定大小空間的檔案:
sudo dd if=/dev/zero of=/swapfile bs=1024 count=8388608
以用ls指令檢查檔案大小:
ls -lh /swapfile
更改swap檔案的權限:
sudo chmod 600 /swapfile
格式化swap檔:
sudo mkswap /swapfile
啟用swap交換文件:
sudo swapon /swapfile
修改fstab檔案來實現重新啟動後自動生效swap
sudo vi /etc/fstab
在文件末尾加入:
/swapfile swap swap sw 0 0
或直接使用指令設定swap檔案開機啟動:
echo '/swapfile swap swap sw 0 0' | sudo tee -a /etc/fstab
如果想停止swap:
swapoff /swapfile
如果想刪除swap:
rm -ir /swapfile
最後執行free -m查看Swap後面數值。
已經成功創建了8G大小的swap分區,Linux的虛擬記憶體就創建成功了。