Linux 中的 Swap 交换分区就是 Windows 中的虚拟内存,将 Linux 服务器的物理硬盘空间虚拟成内存使用,以解决内存不够的问题。不同 Linux 发行版(CentOS/Ubuntu/Debian)新建以及增加 Swap 分区的方法是一样的,下面便宜VPS网就分享下如何确定 Swap 分区大小,以及如何创建 Swap 分区。
一、Linux Swap 分区大小选择
Linux Swap 分区大小跟你服务器本身的物理内存大小有关,内存越大,设置的 Swap 分区也应该越大,两者的关系如下。
物理内存 交换分区(SWAP)
- <= 4g 至少 4G
- 4~16G 至少 8G
- 16G~64G 至少 16G
- 64G~256G 至少 32G
二、Linux Swap 分区新建/增加 Swap 分区
1、查看 Linux 当前 Swap 分区
命令如下:
free -m
如果我们需要增加 Swap 分区,则先关闭 Swap 分区,命令如下:
swapoff -a
如果无法关闭 Swap 分区,那可能是因为物理内存当前用量 + Swap 分区当前用量已经超过了物理内存的总大小,我们可以先重启服务器,在机器刚启动的时候关闭 Swap 分区。
3、创建 Swap 分区文件
创建命令如下,其中 /var/swapfile
是文件位置,bs*count
是文件大下,例如以下命令就会创建一个 4G 的文件:
dd if=/dev/zero of=/var/swapfile bs=1M count=4096
4、建立 Swap 文件系统
将刚才的文件格式化为 Swap 分区文件,命令如下:
mkswap /var/swapfile
5、启用 Swap 分区
基于新的 Swap 分区文件开启 Swap 分区:
swapon /var/swapfile
6、查看 Linux 当前分区
查看是否成功新建/增加 Swap 分区:
free -m
如下图所示,已经成功创建了一个 4GB 的 Swap 分区空间:
7、设置开启启动
在 /etc/fstab
文件中加入以下代码让 Linux 交换分区开机自动挂载:
/var/swapfile swap swap defaults 0 0