首页主机资讯Ubuntu Swapper关闭方法

Ubuntu Swapper关闭方法

时间2025-11-14 16:27:04发布访客分类主机资讯浏览409
导读:Ubuntu 关闭 Swapper 的正确方法 一 概念与风险 Swapper在 Ubuntu 中通常指系统的交换空间(swap),用于在物理内存不足时将数据换出到磁盘。完全关闭交换可能导致内存不足时崩溃或 OOM,请在确保有足够物理内存...

Ubuntu 关闭 Swapper 的正确方法

一 概念与风险

  • Swapper在 Ubuntu 中通常指系统的交换空间(swap),用于在物理内存不足时将数据换出到磁盘。完全关闭交换可能导致内存不足时崩溃或 OOM,请在确保有足够物理内存、且业务允许的前提下操作。若只是想减少使用,可先调整内核参数 vm.swappiness(默认一般为60)来降低换出倾向。

二 临时关闭(立即生效,重启后恢复)

  • 查看当前交换状态:
    • 命令:sudo swapon --showfree -h
  • 关闭所有交换:
    • 命令:sudo swapoff -a
  • 验证:再次执行 sudo swapon --show,应无输出;free -h 中 Swap 为 0。此方式适合测试或短期维护。

三 永久关闭(重启后不再启用)

  • 步骤1:先临时关闭
    • 命令:sudo swapoff -a
  • 步骤2:处理交换来源
    • 交换文件(常见为 /swapfile/swap.img):删除文件
      • 命令:sudo rm /swapfilesudo rm /swap.img
    • 交换分区(如 /dev/sdXN):如需改作他用,先备份数据后格式化
      • 命令:sudo mkfs.ext4 /dev/sdXN(注意:会清空该分区数据)
  • 步骤3:禁止开机自动挂载
    • 编辑 /etc/fstabsudo nano /etc/fstab
    • 注释或删除所有包含 swap 的行(如:/swapfile none swap sw 0 0/dev/sdXN none swap sw 0 0
    • 保存退出
  • 步骤4:验证并重启
    • 验证:sudo swapon --show 无输出
    • 重启:sudo reboot
    • 说明:某些环境(如云镜像、容器)可能通过其他方式管理 swap,仅编辑 fstab 未必彻底,见下文针对新版本 Ubuntu 的处理。

四 Ubuntu 20.04 及更新版本的注意事项

  • 新版本 Ubuntu 使用 systemd.swap 管理交换单元,即使注释了 /etc/fstab,仍可能由 systemd 自动激活交换。可按下列方式彻底屏蔽:
    • 屏蔽 swap.target(强烈方式,完全阻止激活):
      • 命令:sudo systemctl mask swap.target
      • 重启后:sudo swapon --show 应为空
      • 如需恢复:sudo systemctl unmask swap.target
    • 或仅让 fstab 中的 swap 条目不自启(较温和):
      • 将 fstab 中的 swap 行改为:/dev/disk/by-uuid/< UUID> none swap noauto 0 0
      • 这样该交换不会随 swap.target 自动拉起,除非其他单元显式依赖
  • 建议操作前先确认是否存在由 systemd 生成的 swap 单元:systemctl list-unit-files | grep swap

五 仅降低交换使用而非彻底关闭

  • 查看当前值:cat /proc/sys/vm/swappiness
  • 临时调整(立即生效):sudo sysctl vm.swappiness=10
  • 永久调整:编辑 /etc/sysctl.conf,添加或修改 vm.swappiness=10,然后 sudo sysctl -p 使配置生效。数值范围 0–100,值越低越倾向使用物理内存。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu Swapper关闭方法
本文地址: https://pptw.com/jishu/748148.html
Linux下Postman如何管理环境 Ubuntu Swapper调优方法

游客 回复需填写必要信息