1. 程式人生 > >Linux 修改 Swap 分割槽大小

Linux 修改 Swap 分割槽大小

一、新建 swap 分割槽(root)

1. # swapoff -a          #停止交換分割槽

2. 用 fdisk 命令加 swap 分割槽的碟符,(例:# fdisk /dev/sdb)剔除 swap 分割槽,輸入d刪除 swap 分割槽,然後再n新增分割槽(新增時硬碟必須要有可用空間,然後再用t將新添的分割槽id改為82(linux swap型別),最後用w將操作實際寫入硬碟(沒用w之前的操作是無效的)。

3. # mkswap /dev/sdb2       #格式化 swap 分割槽,這裡的sdb2要看您加完後p命令顯示的實際分割槽裝置名

4. # swapon /dev/sdb2      #啟動新的 swap 分割槽

5. 為了讓系統啟動時能自動啟用交換分割槽,可以編輯 /etc/fstab ,加入下面一行

/dev/sdb2 swap swap defaults 0 0

二、增加Swap分割槽

1.建立交換分割槽的檔案:增加1G大小的交換分割槽,則命令寫法如下,其中的 count 等於想要的塊大小。

# dd if=/dev/zero of=/home/swap bs=1M count=1024

2.設定交換分割槽檔案:

# mkswap /home/swap  #建立swap的檔案系統

3.立即啟用交換分割槽檔案:

# swapon /home/swap   #啟用swap檔案

4.使系統開機時自啟用,在檔案 /etc/fstab 中新增一行:

/home/swap swap swap defaults 0 0

三、修改 Swap 的使用優先順序 swappiness

swappiness=0 表示最大限度使用實體記憶體,swappiness=100 表示積極的使用swap分割槽,並且把記憶體上的資料及時的搬運到 swap。

1. # cat /proc/sys/vm/swappiness    #檢視系統預設的 swappiness 值

2. # sudo sysctl vm.swappiness=10   #修改swappiness值為10,臨時性的修改,重啟系統後會恢復預設值

3. # sudo vi /etc/sysctl.conf
    #在文件的最後加上這樣一行(永久修改 swappiness):

    vm.swappiness = 10

4. # sudo sysctl -p                          #使 /etc/sysctl.conf 的修改立即生效

推薦的 Swap 和 Ram 之間的大小關係

RAM

Swap Space

Between 1024 MB and 2048 MB

1.5 times the size of RAM

Between 2049 MB and 8192 MB

Equal to the size of RAM

More than 8192 MB

0.75 times the size of RAM