調整swap分區大小
方法一:如果磁盤有剩余的空間,用分區工具新建一個swap分區.並寫到/etc/fstab里面.
再 #swapon -a
方法二:可以用一個文件做交換分區.
su root
cd /
mkdir /swap
1、建立swap文件,比如在/tmp下建立swapfree作為交換文件。建立
#dd if=/dev/zero f=swapfree bs=32k count=8192
(bs=32k指定每個扇區占用32kb,讀入了8192+0個區段,輸出了8192+0個區段)
注意:bs參數的目的在於指定每次讀取及輸入多少個bytes;由於磁盤存取的最小單位為扇區,因此設置bs也等於設置每個扇區的大小;而count的目的則在指定可以使用多少個扇區.因此,可以使用的硬盤空間就等於bs*count.以上范例為例,可以使用的硬盤空間等於32*8192=262144 (KB),亦等於256MB. )
執行上述命令后,會在/tmp目錄中創建一個256MB的swapfree的文件
2、格式華及啟動swap文件
接下來執行mkswap命令,將myswap文件格式化成s文件系統,系統才能使用,切換到/tmp目錄,並執行以下命令:
# mkswap swapfree (#將文件格式化為swap文件格式)
setting up swapspace version 1 , size = 262144 KB
# swapon /tmp/swapfree (#啟動swap分區)
要停止使用新創建的swap文件,只要執行 swapoff /tmp/swapfree命令即可,如果swap交換文件不再使用,可以刪除此文件。
3、檢查swap
#swapon -s
4、 開機時自動啟動新添加的swap分區
如果每次開機后都要執行swapon命令啟動swap分區或者文件,這太麻煩了.這時可以利用文字編輯器在/etc/fstab文件加一行,好讓開機時自動啟動swap分區及文件:
/dec/hdb5 swap swap defaults 0 0 (開機時啟動此swap分區)
/tmp/swapfree swap swap defaults 0 0 (開機時啟動此swap文件) .
swap空間大小:
通常情況下,Swap空間應大於或等於物理內存的大小,最小不應小於64M,通常Swap空間的大小應是物理內存的2-2.5倍。但根據不同的應用,應有不同的配置:如果是小的桌面系統,則只需要較小的Swap空間,而大的服務器系統則視情況不同需要不同大小的Swap空間。特別是數據庫服務器和Web服務器,隨着訪問量的增加,對Swap空間的要求也會增加,具體配置參見各服務器產品的說明。
swap數量:
Swap分區的數量對性能也有很大的影響。因為Swap交換的操作是磁盤IO的操作,如果有多個Swap交換區,Swap空間的分配會以輪流的方式操作於所有的Swap,這樣會大大均衡IO的負載,加快Swap交換的速度。如果只有一個交換區,所有的交換操作會使交換區變得很忙,使系統大多數時間處於等待狀態,效率很低。用性能監視工具就會發現,此時的CPU並不很忙,而系統卻慢。這說明,瓶頸在IO上,依靠提高CPU的速度是解決不了問題的。
root用戶下
1、以文件系統增加(以下是以增加512M的文件系統為例)
dd if=/dev/zero of=/home/oracle/myswaps/swapfile1 bs=1M count=512
注:of后面的路徑一定不能是/dev下,否則在激活swap文件時報參數無效
2、創建swap文件
mkswap /home/oracle/myswaps/swapfile1
3、激活swap文件
swapon /home/oracle/myswaps/swapfile1
4、此時用free -m就可以看到swap空間已經增加了,但是重啟后就不會存在了
5、添加重啟后還會生效,vi /etc/fstab添加如下內容:
/home/oracle/myswaps/swapfile1 swap swap defaults 0 0