Linux系統內存不足時的一種解決辦法,比如虛擬機主機內存因爲價格問題而導致緊張。
環境:ubuntu14
1 查看內存情況:
root@ubuntu:/# free -h
total used free shared buffers cached
Mem: 741M 538M 203M 41M 6.3M 60M
-/+ buffers/cache: 472M 269M
Swap: 0B 0B 0B
可見swap爲0
2 用mkdir /myswap 創建swap文件的位置(隨意)
root@ubuntu:/# mkdir myswap
3 創建1GB的交換空間swapfile(文件名隨意)
root@ubuntu:/# dd if=/dev/zero of=/myswap/swapfile bs=1024 count=1000000
1000000+0 records in
1000000+0 records out
1024000000 bytes (1.0 GB) copied, 2.42013 s, 423 MB/s
4 強制轉換爲swap文件
root@ubuntu:/# mkswap -f /myswap/swapfile
Setting up swapspace version 1, size = 999996 KiB
no label, UUID=5da3e3c3-eff1-439a-9813-5820890e9fbc
5 啓用swap並查看內存情況
root@tokyo1:/# swapon /myswap/swapfile
root@tokyo1:/# free -h
total used free shared buffers cached
Mem: 741M 686M 55M 41M 880K 205M
-/+ buffers/cache: 479M 262M
Swap: 976M 0B 976M
可見swap已經可以使用了
6 停用swap
root@ubuntu:/# swapoff /myswap/swapfile
7 此swap會在系統reboot後就會消失,讓其一直存在的方法如下:
root@ubuntu:/#echo /myswap/swapfile none swap sw 0 0 >> /etc/fstab