在Linux上增加swap空間的技巧


在Linux上增加swap空間的技巧
 
 
Swap分區,即交換區
Swap空間的作用可簡單描述為:當系統的物理內存不夠用的時候,就需要將物理內存中的一部分空間釋放出來,以供當前運行的程序使用,那些被釋放的空間可能來自一些很長時間沒有什么操作的程序,這些被釋放的空間被臨時保存到Swap空間中,等到那些程序要運行時,再從Swap中恢復保存的數據到內存中。這樣,系統總是在物理內存不夠時,才進行Swap交換。
通常情況下,Swap空間應大於或等於物理內存的大小,最小不應小於64M,通常Swap空間的大小應是物理內存的2-2.5倍,Swap的調整對Linux服務器,特別是Web服務器的性能至關重要,通過調整Swap,有時可以越過系統性能瓶頸,節省系統升級費用。
查看已有swap空間
[root@test ~]# free -m
totalusedfreeshared  buffers  cached
Mem:  3949  244  3704  0  18  157
-/+ buffers/cache:69  3880
Swap:  42750  4275
新增swap分區空間
1、使用dd創建swapfile,bs單位bytes,也可以手動指定單位為M或者G,count為計數,例子為增加1M*1024=1G空間
[root@test swap]#pwd
/swap
[root@test swap]# dd if=/dev/zero of=swapfile bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 2.27273 seconds, 472 MB/s
[root@test swap]# ll
total 1049604
-rw-r--r-- 1 root root 1073741824 Sep 16 20:48 swapfile
2、mkswap創建交換文件
[root@test swap]# mkswap swapfile
Setting up swapspace version 1, size = 1073737 kB
3、swapon激活
[root@test swap]# swapon swapfile
4、查看增加后swap空間
[root@test swap]# free -m
totalusedfreeshared  buffers  cached
Mem:  3949  1293  2655  017  1181
-/+ buffers/cache:95  3854
Swap:  5299 0  5299
5、開機啟動
vim /etc/fstab 添加
/swap/swapfile  swap  swapdefaults  0 0
6、去掉增加swap
# 查看
[root@test swap]# free -m
# 停用
[root@test swap]# swapoff swapfile
# 刪除
[root@test swap]# rm swapfile -rf
# 確定
[root@test swap]# free -m
# 刪除隨即啟動swap
[root@test swap]#vim /etc/fstab
擴展閱讀(來自百度百科):
需要說明一點,並不是所有從物理內存中交換出來的數據都會被放到Swap中(如果這樣的話,Swap就會不堪重負),有相當一部分數據被直接交換到文件系統。例如,有的程序會打開一些文件,對文件進行讀寫(其實每個程序都至少要打開一個文件,那就是運行程序本身),當需要將這些程序的內存空間交換出去時,就沒有必要將文件部分的數據放到Swap空間中了,而可以直接將其放到文件里去。如果是讀文件操作,那么內存數據被直接釋放,不需要交換出來,因為下次需要時,可直接從文件系統恢復;如果是寫文件,只需要將變化的數據保存到文件中,以便恢復。但是那些用malloc和new函數生成的對象的數據則不同,它們需要Swap空間,因為它們在文件系統中沒有相應的“儲備”文件,因此被稱作“匿名”(Anonymous)內存數據。這類數據還包括堆棧中的一些狀態和變量數據等。所以說,Swap空間是“匿名”數據的交換空間。
 
 
來源:http://blog.sina.com.cn/s/blog_6aad8abe01019gqm.html
來源  :https://blog.csdn.net/click_idc/article/details/80591686


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM