增加 Swap虚拟内存+设置

1.查看内存使用情况

复制代码
free -h

这样可以了解物理内存和 Swap 的使用状况。如果内存充裕(可用 > 2GB),那么当前缓冲池完全合适;如果内存紧张,可考虑降低其他服务的内存占用。

**2.**即使内存当前充裕,但 Swap 是系统稳定的最后一道防线 。它可以防止因瞬时内存分配峰值导致的进程被杀死。建议2048GB执行:

复制代码
dd if=/dev/zero of=/swapfile bs=1M count=2048
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
echo '/swapfile swap swap defaults 0 0' >> /etc/fstab

3.配置后,设置 vm.swappiness = 10,让系统只在内存极度紧张时使用 Swap

复制代码
sysctl vm.swappiness=10

或者下面的代码

4. 验证**vm.swappiness = 10**** **有没有设置成功?

复制代码
sysctl vm.swappiness

输出 vm.swappiness = 10 即为成功。

**5.**如果上面不行 用下面的方法

第一步:创建独立配置文件(优先级最高,不受锁定影响)

复制代码
echo "vm.swappiness = 10" > /etc/sysctl.d/99-my-swappiness.conf
sysctl -p /etc/sysctl.d/99-my-swappiness.conf

第二三步:验证

此时应该输出 vm.swappiness = 10

复制代码
echo "vm.swappiness = 10" >> /etc/sysctl.conf
sysctl -p

验证方法:


✅ 验证步骤

1️⃣ 检查当前生效值

复制代码
sysctl vm.swappiness
  • 如果输出 vm.swappiness = 10,说明当前内核已采纳该值。

  • 如果输出不是 10,说明设置未生效,需重新执行 sysctl -w 或排查冲突。


✅ 验证永久化

复制代码
grep -r "vm.swappiness" /etc/sysctl.conf /etc/sysctl.d/*.conf 2>/dev/null

你会看到类似这样的输出:

复制代码
/etc/sysctl.conf:vm.swappiness = 10
/etc/sysctl.d/99-swappiness.conf:vm.swappiness = 10
  • 如果有输出,说明配置已写入文件,重启后会自动加载。

  • 如果无输出 ,说明只用了 sysctl -w 临时设置,重启会丢失,需按之前方法写入文件。