1. 程式人生 > >Centos7中新增、刪除Swap交換分割槽的方法

Centos7中新增、刪除Swap交換分割槽的方法

Swap空間的作用是當系統的實體記憶體不夠用的時候,就需要將實體記憶體中的一部分空間釋放出來,以供當前執行的程式使用。這篇文章主要給大家介紹了關於Centos7中新增、刪除Swap交換分割槽的相關資料,以及Centos7下增加swap分割槽大小的方法,需要的朋友可以參考下。

Swap介紹:

Linux 將實體記憶體分為記憶體段,叫做頁面。交換是指記憶體頁面被複制到預先設定好的硬碟空間(叫做交換空間)的過程,目的是釋放對於頁面的記憶體。實體記憶體和交換空間的總大小是可用的虛擬記憶體的總量。

Swap即:交換分割槽,類似於Windows的虛擬記憶體,但實體記憶體不足時,把部分硬碟空間當成虛擬記憶體使用,從而解決了實體記憶體容量不足。

優點:節省成本。
缺點:效能不足。

此方法不侷限於Centos 7,Linux系統均可使用。

操作使用者:root。

1.新增swap交換分割槽空間

使用dd命令建立swap交換分割槽檔案/dev/mapper/centos-swap,大小為2G:

1

$ dd if=/dev/zero of=/dev/mapper/centos-swap bs=1024 count=2048000

格式化swap分割槽:

1

$ mkswap /dev/mapper/centos-swap

設定交換分割槽:

1

$ mkswap -f

/dev/mapper/centos-swap

啟用swap分割槽:

1

$ swapon /dev/mapper/centos-swap

設為開機自動啟用:

1

$ vim /etc/fstab

在該檔案底部新增如下內容:

1

/dev/mapper/centos-swap swap swap default 0 0

2.刪除swap交換分割槽

停止正在使用的swap分割槽:

1

$ swapoff /dev/mapper/centos-swap

刪除swap分割槽檔案:

1

$ rm /dev/mapper/centos-swap

刪除或註釋在/etc/fstab檔案中的以下開機自動掛載內容:

1

/dev/mapper/centos-swap swap swap default 0 0

大功告成!

Centos7下增加swap分割槽大小

如果系統的實體記憶體用光了,系統就會跑得很慢,但仍能執行;如果Swap空間用光了,那麼系統就會發生錯誤。例如,Swap空間用完,則服務程序無法啟動,通常會出現“application is out of memory”的錯誤,嚴重時會造成服務程序的死鎖。因此Swap空間的分配是很重要的,通常Swap空間的大小應是實體記憶體的2-2.5倍.

此方法不限於centos,linux均適用

以下命令均需在root帳號下操作

1.先用free -m檢視一下swap的大小

2. 使用dd命令建立/home/swap這麼一個分割槽檔案。檔案的大小是512000個block,一般情況下1個block為1K,所以這裡空間是512M。

1

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

3.接著再把這個分割槽變成swap分割槽。

1

#/sbin/mkswap /home/swap

4.再接著使用這個swap分割槽。使其成為有效狀態。

1

#/sbin/swapon /home/swap

現在再用free -m命令檢視一下記憶體和swap分割槽大小,就發現增加了512M的空間了。

注意當計算機重啟了以後,發現swap還是原來那麼大,新的swap沒有自動啟動,還要手動啟動。那我們需要修改/etc/fstab檔案,增加如下一行

1

2

#vi /etc/fstab

/home/swap swap swap defaults 0 0