linux增加swap
A. linux下如何增加swap分區大小
1、檢查當前的分區情況:
[root@localhost]#free -m
2、增加交換分區文件及大小,如果要增加2G大小的交換分區,則命令寫法如下,其中的 count 等於想要的塊大小。
[root@localhost]# dd if=/dev/zero of=/home/swap bs=1024 count=2048000
3、設置交換文件:
[root@localhost]# mkswap /home/swap
4、立即啟用交換分區文件
[root@localhost]# swapon /home/swap
5、如果要在引導時自動啟用,則編輯 /etc/fstab 文件,添加行:
/home/swap swap swap defaults 0 0
系統下次引導時,它就會啟用新建的交換文件,再查看SWAP分區大小發現增加了2G。
批量刪除linux下文件夾命令如下:
比如我要刪除/var/www/html這個文件夾的話可以使用以下命令:rm -Rf html
然後在ls查看發現沒html這個文件夾了!
B. Linux下增加、刪除Swap文件---2018-02-08
swapon -s
若返回的信息概要是空的,則表示 Swap 文件不存在。
dd if=/dev/zero of=/swapfile bs=1024 count=4194304
【參數說明】
if=文件名:輸入文件名,預設為標准輸入。即指定源文件。< if=input file >
of=文件名:輸出文件名,預設為標准輸出。即指定目的文件。< of=output file >
bs=bytes:同時設置讀入/輸出的塊大小為bytes個位元組
count=blocks:僅拷貝blocks個塊,塊大小等於bs指定的位元組數。
mkswap /swapfile
swapon /swapfile
用 vim 打開 /etc/fstab 文件,在其最後添加如下一行:
/swapfile swap swap defaults 0 0
當下一次系統啟動時,新的swap文件就打開了。
chown root:root /swapfile
chmod 0600 /swapfile
9、刪除SWAP分區
swapoff /swapfile #卸載swap文件
並修改/etc/fstab文件 #從配置總刪除
rm -rf /swapfile #刪除文件
C. Linux - Swap
首先,swap是硬碟上的一塊空間。
其次,當內存沒有多餘空間的時候,可以將一部分數據交換到swap空間。也就是將內存中的一部分數據放到硬碟中,並釋放內存空間。這樣,釋放出的內存空間就又可以被利用來存儲其他數據了。
這樣,本來只有4G的內存,如果swap有2G的話,可使用的內存可以認為是6G。
但是,硬碟的速度比內存慢太多太多了。因此swap只是對內存的一種補充,是在內存不足時對內存的擴充,但是不能代替內存使用。
內存不足時, 操作系統 會選擇 最久沒被使用的內存數據 ,交換到swap空間。
注意,交換操作是由操作系統來進行的。
系統在什麼情況或條件下才會使用Swap分區的空間呢? 其實是Linux通過一個參數swappiness來控制的。當然還涉及到復雜的演算法。
這個參數值可為 0-100,控制系統 swap 的使用程度。
0告訴內核盡可能的不要將內存數據移到swap中,也即只有在迫不得已的情況下才這么做,而100告訴內核只要有可能,盡量的將內存中不常訪問的數據移到swap中。默認值為 60。注意:這個只是一個權值,不是一個百分比值,涉及到系統內核復雜的演算法
查看當前系統中swappiness的值
修改當前系統中swappiness的值
上面通過sysctl修改的swappiness值在系統重啟後會失效,要想重啟後繼續生效,需要修改配置文件/etc/sysctl.conf,將下面這行修改成10,如果文件中找不到這行的話,在文件末位加上這行就可以了
既然配置swap對桌面系統有幫助,那麼配置多少大小的swap比較合適呢?下面是ubuntu給出的建議:
Linux下有兩種類型的swap空間,swap分區和swap文件,他們有各自的特點:
swap分區上面由於沒有文件系統,所以相當於內核直接訪問連續的磁碟空間,效率相對要高點,但由於swap分區一般安裝系統時就分配好了了,後期要縮減空間和擴容都很不方便。
swap文件放在指定分區的文件系統裡面,所以有可能受文件系統性能的影響,但據說2.6版本以後的內核可以直接訪問swap文件對應的物理磁碟地址,相當於跳過了文件系統直接訪問磁碟,不過如果swap文件在磁碟上的物理位置不連續時,還是會對性能產生不利影響,但其優點就是靈活,隨時可以增加和移除swap文件。
如果配置有多個swap分區或者文件的話,這里將會有多行,每行代表一個正在被系統使用的swap分區或文件,下面是每個欄位的意思:
並不是swap空間佔用多就一定性能下降,真正影響性能是swap in和out的頻率,頻率越高,對系統的性能影響越大,我們可以通過vmstat命令來查看swap in/out的頻率
在添加swap分區前,首先得有一個空閑的分區,如果是一塊新的磁碟,可以用fdisk來創建一個新的分區用於swap。
添加swap文件就簡單多了,也沒有分區操作那麼有風險。
通過如下命令,能查看所有進程的使用swap情況
查看某個進程swap佔用內存大小腳本:
查看所有進程使用swap情況腳本:
D. 如何為已安裝的linux操作系統設置swap分區
已裝的linux系統新建swap分區的步驟如下:x0dx0a1.fdisk /dev/sdax0dx0a2.n (新建一個分區為/dev/sda6)x0dx0a3.t (修改分區的id)x0dx0a4.82 (swap的id為82)x0dx0a5.w (重寫分區表)x0dx0a6.partprobe (同步內存和分區表信息)x0dx0a7.mkswap /dev/sda6 (格式化成swap分區)x0dx0a8.swapon /dev/sda6 (打開swap分區)x0dx0a9.vim /etc/fstab (在fstab中增加一條記錄如下)x0dx0a/dev/hda6 swap swap defaults 0 0x0dx0a10.mount -a