Linux 修改 swap 大小并修改使用策略

  • 2025年1月9日

修改大小涉及命令

  • 查看 swap 位置和大小:sudo swapon --show
  • 关闭 swap :sudo swapoff -a
  • 创建 swap 文件:sudo fallocate -l 10G /swapfile
  • 修改 swap 文件权限:sudo chmod 600 /swapfile
  • 在 swap 文件设置分区:sudo mkswap /swapfile
  • 使用 swap 文件作为 swap 分区:sudo swapon /swapfile
  • 自动挂载 swap 分区:echo '/swapfile swap swap defaults 0 0' >> /etc/fstab
  • 查看内存和 swap 相关信息:sudo free -h

修改 swap 使用策略

  • cat /proc/sys/vm/swappiness 查看当前的 swappiness 值。
  • sudo sysctl vm.swappiness=10临时修改 swappiness 的值,但此设置在重启后会失效。
  • 永久性修改需要编辑文件 /etc/sysctl.conf,添加或者修改 vm.swappiness=10

swappiness 的不同值 

  • swappiness=0: 极少使用交换分区。系统会优先使用物理内存,只在物理内存极度不足时才会考虑使用交换分区。
  • swappiness=60: 默认值。系统会在内存使用率约达到 40% 时开始频繁使用交换分区。
  • swappiness=100: 积极使用交换分区。系统会非常快速地将内存中的数据移入交换分区,适合内存较小的系统或对内存有较高需求的场景。
0
希望看到您的想法,请您发表评论x