Ubuntu 下增加 Swap
前言
什么是Swap
Linux 系统中的 Swap ,又名交换空间。是类似于 Windows 系统的虚拟内存 (pagefile.sys),当内存不够用的时候会把一部分硬盘空间虚拟成内存,用来存储内存中暂时不使用的数据。
安装
查看
1
free -m
1
2
3
4total used free shared buffers cached
Mem: 3952 2035 1916 9 217 1392
-/+ buffers/cache: 425 3526
Swap: 0 0 0可以看到 Swap 没有开启,下面我们来将其增加到内存大小 (4G)。
创建 Swap 文件
1
2
3
4
5
6
7
8mkdir swap
cd swap
sudo dd if=/dev/zero of=swapfile bs=1024 count=4M # bs 表示块大小 count 表示块数目 1024 * 4M = 4G
# 4194304+0 records in
# 4194304+0 records out
# 4294967296 bytes (4.3 GB) copied, 88.3999 s, 48.6 MB/s把文件转换成 Swap 文件
1
2
3sudo mkswap -f swapfile
# Setting up swapspace version 1, size = 4194300 KiB
# no label, UUID=bebbcbad-dda2-49f9-9aab-4b24b1d62d87激活 Swap
1
sudo swapon swapfile
查看激活情况
1
free -m
1
2
3
4total used free shared buffers cached
Mem: 3952 3842 109 9 1 3369
-/+ buffers/cache: 470 3481
Swap: 4095 0 4095配置
修改swappiness
swappiness 为 0 - 100的数值,数值越大表示越积极的去使用 Swap。暂时修改
1
sudo sysctl vm.swappiness=40
永久修改
1
2
3sudo vim /etc/sysctl.conf
# 增加一行
vm.swappiness = 40
修改权限
设置成只有 root 用户具有读写权限1
2sudo chown root:root /swap/swapfile
sudo chmod 0600 /swap/swapfile
开机启动
1
sudo vim /etc/fstab
在文件最后面添加
1
/swap/swapfile none swap sw 0 0