1. 程式人生 > >學習hadoop遇到的問題(阿里伺服器設定swap虛擬記憶體)

學習hadoop遇到的問題(阿里伺服器設定swap虛擬記憶體)

一,建立交換區 swap

1,增加4G 大小的 swap

dd if=/dev/zero of=/var/swapfile bs=1024 count=4096000

if是指input file,of是output file。dev/zero是linux的一種輸入裝置,用來建立用於初始化的空檔案,如臨時交換檔案,可以提供任何你需要的數目。 bs指 block size ,單位資料塊block,讀入/輸出的塊位元組大小為1024 個位元組,。count=4096000 :資料塊(block)數量為4096000 ,即4096000個1024位元組(1024位元組=1kb)。可以計算swap分割槽的容量為:4G。(dd命令裡的單位M表示1024*1024,k表示1024)

2,建立 swap 檔案

mkswap /var/swapfile

注意 mkswap 和/var/swap 之間有個空格

3,載入這個檔案

swapon /var/swapfile

注意 swapon 和/var/swap 之間有個空格

執行以上命令可能會出現:“不安全的許可權 0644,建議使用 0600”提示,其實已經激活了,可以忽略,修改許可權:

chmod -R 0600 /var/swapfile

4,設定系統啟動時自動掛載分割槽

新增到/etc/fstab

echo "/var/swapfile swap swap defaults 0 0" >> /etc/fstab

 

5,檢視分割槽大小

free -m

如果打印出   Swap:             0           0           0說明沒有分割槽

 

6.設定使用swap分割槽機制

cat /proc/sys/vm/swappiness

echo 50 /proc/sys/vm/swappiness

 

vim /etc/sysctl.conf

 

這裡需要簡單說明下,在Linux系統中,可以通過檢視/proc/sys/vm/swappiness內容的值來確定系統對SWAP分割槽的使用原則。當swappiness內容的值為0時,表示最大限度地使用實體記憶體,實體記憶體使用完畢後,才會使用SWAP分割槽。當swappiness內容的值為100時,表示積極地使用SWAP分割槽,並且把記憶體中的資料及時地置換到SWAP分割槽。


我們這裡設定的50,就表示當實體記憶體少於50%時便使用交換分割槽。

 

二,刪除 swap 分割槽

停止使用的分割槽

swapoff /var/swap

刪除

rm -rf  /var/swap