如何启用linux系统的swap内存 (linux如何查看swap空间)

什么是swap

Linux中的Swap即为系统交换区,类似于Windows的虚拟内存,当内存不足的时候,把一部分磁盘空间虚拟成内存使用,以解决内存容量不足的情况。

swapon,则是启动系统交换区(swap area)。Linux系统的内存管理必须使用交换区来建立虚拟内存。

swap内存交换的功能是:当有数据被存放在物理内存里面,但是这些数据又不是常被CPU所取用时,那么这些不常被使用的程序将被丢到硬盘的swap交换空间中,而将速度较快的物理内存空间释放出来给真正需要的程序使用。所以,如果你的系统不是很忙,而内存又很大,自然不需要swap。

什么时候用到swap

上面已经说到,如果系统内存够大,那么是不需要设置swap的。但是有些场景下就需要设置swap来帮助系统工作,比如在一些低内存的板子上(实际场景是在内存为2G的瑞芯微rk3568板子)编译安装dlib,就需要设置swap。

交换分区设置大小建议

内存

交换分区

2G或者以下

两倍的内存

2G~8G

同等内存

8~64G

至少4G

64G以上

至少4G

如何设置swap

设置swap有两种方式:

  1. 设置一个swap分区
  2. 创建一个虚拟内存的文件

这里第一种方式后续介绍,我们来介绍如何创建一个虚拟内存的文件

  • 创建一个4G的交换空间:
fallocate -l 4G /var/swapfile
  • 给文件区设置权限
chmod 600 /var/swapfile
  • 设置交换分区
mkswap /var/swapfile
  • 启动交换分区
swapon /var/swapfile
  • 刷新交换分区
swapon -s
  • 查看内存
free -m

如何启用linux系统的swap内存,linuxswap内存

在swap行中就能看到交换分区的总量、已使用量和空余量

  • 关闭交换分区
swapoff/var/swapfile
  • 设置开机挂载

在/etc/fstab底部增加“/var/swapfile swap swap defaults 0 0”

vim/etc/fstab
/var/swapfile swap swap defaults 0 0

参考:

debian11设置系统交换区Swap_debian11设置虚拟内存-debian 11系统教程-热主机

Linux系统配置交换分区_江湖有缘的博客-CSDN博客_linux交换分区