本文最后更新于 2025-04-01,文章内容可能已经过时。

首先创建一个作为swap数据传输的文件这里举例是/data/swapfile

dd if=/dev/zero of=/data/swapfile bs=1M count=2048

修改下他的权限 安全一些

chmod 600 /data/swapfile

将空文件转换为交换文件

mkswap /data/swapfile

临时启用这个交换分区即刻生效(重启失效)

swapon /data/swapfile

使得swap开机生效 只用输入一次

echo '/data/swapfile none swap sw 0 0' >> /etc/fstab

使用一下命令查看你的交换分区

swapon -s

亦或者

free -h

进阶设置

在Linux系统中,vm.swappiness的默认值是60,这个数字表示的是内核在决定是否使用交换分区时的“积极性”。具体来说,这个数值越小,内核在内存不足时就越倾向于使用物理内存,而尽量避免使用交换分区;相反,这个数值越大,内核就越倾向于使用交换分区。

vm.swappiness的取值范围是0到100,其中0表示内核在内存不足时绝对不使用交换分区,100表示内核在内存不足时绝对使用交换分区。通常情况下,Linux系统会将vm.swappiness设置为60,这意味着内核在内存不足时会权衡物理内存和交换分区的使用,根据实际情况来决定使用哪种资源。

在实际应用中,可以根据系统的内存使用情况和性能需求来调整vm.swappiness的值。如果系统内存充足,可以将vm.swappiness设置得较小,这样可以减少交换分区的使用,提高系统性能;如果系统内存不足,可以将vm.swappiness设置得较大,这样可以缓解内存不足的问题。

查看swap调用优先度 默认是60

cat /proc/sys/vm/swappiness

修改wasp调用度(重启失效)数值是1-100 这里以100举例也就是总是调用

echo "vm.swappiness=100" >> /etc/sysctl.conf

因为它要修改系统配置文件。在执行这个命令后,您需要重新加载 sysctl 配置

sysctl -p

关闭Swap(如果内存空间足够回移动回内存)

swapoff -a