Linux top命令怎么看swap?swap占用高怎么解决

在 Linux 系统中,top 命令是监控系统资源使用情况最常用的工具之一,而 Swap(交换空间) 则是虚拟内存管理的重要组成部分,理解 top 中 Swap 相关的指标,对于排查内存瓶颈、性能问题至关重要。

以下是关于 top 命令中 Swap 部分的详细解读:

每天一个Linux命令-mkdir
加载中
每天一个Linux命令-mkdir

如何在 top 中查看 Swap 信息

默认情况下,top 命令会显示内存(Mem)和交换空间(Swap)的使用情况。

直接运行 top

top

在输出头部,你会看到类似这样的行:

MiB Mem :  16384.0 total,   2048.0 free,   8192.0 used,   6144.0 buff/cache
MiB Swap:   8192.0 total,   8192.0 free,      0.0 used.   7680.0 avail Mem

按 f 键自定义显示字段

如果某些 Swap 字段未显示,可以按 f 进入字段选择界面,确保以下字段被选中(用 标记):

  • SWAP 或 SWAP TOTAL
  • SWAP FREE
  • SWAP USED

Swap 关键字段详解

在 top 的输出中,Swap 部分通常包含以下四个关键指标:

Linux top命令怎么看swap?swap占用高怎么解决

字段 含义 说明
total 总交换空间大小 系统配置的 Swap 分区或 Swap 文件总容量。
free 空闲交换空间 尚未使用的 Swap 空间。
used 已使用的交换空间 当前正在被使用的 Swap 空间大小。这是最关键的性能指标。
avail Mem 可用物理内存 可供新应用程序使用的物理内存(包含可回收的缓存)。

⚠️ 注意:top 中显示的 avail Mem 是物理内存的可用量,不是 Swap 的。


如何解读 Swap 使用情况?

✅ 正常情况

  • used 为 0 或接近 0:系统物理内存充足,无需使用 Swap。
  • used 少量存在:系统偶尔将不活跃的数据页换出到 Swap,属于正常行为,有助于释放物理内存供缓存使用。

⚠️ 需要关注

  • used 持续增长:可能意味着物理内存不足,或者应用程序存在内存泄漏。
  • used 较高但系统响应正常:可能是历史遗留数据,尚未被回收。

❌ 性能问题(Swap Thrashing / 交换颠簸)

  • used 很高 + 系统响应缓慢 + CPU 等待 I/O 高:
    • 系统频繁地在物理内存和 Swap 之间交换数据。
    • 磁盘 I/O 成为瓶颈,导致系统卡顿。
    • 此时应检查是否有进程占用过多内存,或考虑增加物理内存。

Linux top命令怎么看swap?swap占用高怎么解决

常用相关命令与技巧

🔍 查看哪些进程在使用 Swap

top 本身不直接显示每个进程的 Swap 使用量,但你可以:

  1. 在 top 中按 P(按内存排序),然后查看 %MEM 列。
  2. 使用 ps 命令精确查询:
    # 按 Swap 使用量排序,显示前 10 个进程
    ps -eo pid,comm,swap --sort=-swap | head -n 11
  3. 使用 smem 工具(更直观):
    sudo apt install smem   # Debian/Ubuntu
    sudo yum install smem   # CentOS/RHEL
    smem -t -k -s swap      # 按 Swap 排序显示

📊 实时监控 Swap 变化

# 使用 watch 命令每秒刷新 top 的 Swap 信息
watch -n 1 'top -b -n 1 | grep -i swap'

🛠 调整 Swap 使用策略(swappiness)

Linux 内核有一个参数 vm.swappiness,控制系统倾向于使用 Swap 的程度(0~100):

  • 0:尽可能少用 Swap,只在物理内存极度不足时才使用。
  • 60:默认值,平衡使用。
  • 100:积极使用 Swap,类似 Windows 的行为。

查看当前值:

cat /proc/sys/vm/swappiness

临时修改(立即生效):

sudo sysctl vm.swappiness=10

永久修改(写入配置文件):

Linux top命令怎么看swap?swap占用高怎么解决

echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf sudo sysctl -p

💡 建议:对于数据库服务器(如 MySQL、PostgreSQL),通常建议将 swappiness 设置为较低值(如 10 或 0),以避免数据库页面被换出导致性能下降。


常见问题排查步骤

如果怀疑 Swap 导致性能问题,请按以下步骤排查:

  1. 确认 Swap 使用量:
    free -h
  2. 查看是否有进程大量占用物理内存:
    top -o %MEM
  3. 检查磁盘 I/O 是否瓶颈:
    iostat -x 1

    关注 %util 是否接近 100%,以及 await 是否很高。

  4. 检查内核日志是否有 OOM Killer 记录:
    dmesg | grep -i "out of memory"
    journalctl -k | grep -i "oom"

  • Swap 不是内存的替代品,而是物理内存不足时的“缓冲垫”。
  • top 中 Swap used 为 0 是理想状态,少量使用是正常的。
  • 高 Swap 使用 + 高 I/O 等待 = 性能瓶颈,需优化内存或增加物理内存。
  • 使用 ps 或 smem 可以更精确地定位占用 Swap 的进程。

如有具体 top 输出截图或系统状态描述,我可以提供更针对性的分析。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://test.idctop.com/article/483112.html

赞 (0)
SSL证书中间证书链怎么补全?如何配置中间证书
上一篇 2026年7月11日 20:12
GEO优化CPA模式可以吗2026最新?百度GEO优化怎么做
下一篇 2026年7月11日 20:15

相关推荐

  • cs1.6自己架设服务器要多少钱,需要什么配置?

    搭建一个CS1.6服务器,最低每月花费不到50元,但具体要看你选哪种方案, 对于大多数玩家,云服务器是最佳选择,成本在几十元到几百元之间,具体取决于人数和带宽需求,CS1.6服务器搭建成本全解析家用电脑自建——零成本开服如果你家里有一台旧电脑,或者你日常使用的电脑配置足够,完全可以利用它来搭建CS1.6服务器……

    2026年7月24日
    2200
  • RAKsmart春节活动7折是真的吗?RAKsmart云服务器价格

    RAKsmart春节大促期间,全场裸机云、云服务器及VPS享受7折优惠,独立服务器限量秒杀低至$30/月起,这是目前获取高性价比海外算力资源的最佳窗口期,春节不仅是阖家团圆的时刻,也是IT基础设施升级的黄金节点,对于许多站长、开发者以及中小企业而言,服务器性能的瓶颈往往在业务高峰期暴露无遗,RAKsmart此次……

    2026年7月7日
    3600
  • 手机2b2t服务器ip地址是多少,怎么进2b2t手机版

    手机版2b2t没有独立专属IP,需通过Java版原地址connect.2b2t.org配合第三方启动器进入,或连接国内公益镜像端,为什么手机玩家总在问“手机2b2t服务器ip是多少”这个问题背后,通常藏着两种场景:一是手机端《我的世界》基岩版玩家,想点“加入服务器”却发现压根搜不到这个传说中的“最古老无政府服务……

    2026年8月22日
    000
  • Apache软件怎么安装?Apache安装配置详细教程

    Apache作为全球最流行的Web服务器软件之一,其安装过程直接影响网站性能与安全性,正确的Apache安装需遵循环境准备、依赖处理、编译安装、配置优化四个核心步骤,本文将详细拆解每个环节的关键技术要点,环境准备阶段操作系统选择:推荐CentOS 7+或Ubuntu 18.04+,内核版本需≥3.10依赖库安装……

    2026年3月17日
    11200
  • asp装修公司网站源码怎么选?装修店铺源码哪个好

    在数字化转型的浪潮下,装修行业竞争日益白热化,企业若想突围,必须拥有一个功能强大、用户体验极佳的线上门户,核心结论在于:选择一套成熟、稳定的ASP装修公司网站源码,是装修店铺实现快速建站、低成本运营与高效获客的最佳路径, 这不仅是技术层面的选择,更是商业策略的体现,通过源码建站,企业能够摆脱高昂的定制开发费用……

    2026年3月15日
    13400
  • 斗罗大陆h5到底有几个服务器,哪个服务器最火?

    斗罗大陆H5的服务器数量已经超过500个,涵盖官方服、渠道服与平台服,具体数字随新服开放持续更新,可在登录界面直接查看当前服务器列表,服务器数量与分布现状斗罗大陆H5的服务器体系采用“大区+子服”结构,每个大区下包含若干组服务器,编号从1区开始,目前最新区服编号已突破500,这个规模在同类放置卡牌H5游戏中处于……

    2026年8月3日
    300
  • HyperVMart英国VPS值得入手吗?2026年高性价比海外VPS推荐

    HyperVMart的英国与荷兰节点凭借$10.97/季的极致性价比,为需要高带宽、低延迟且预算有限的用户提供了2核3GB内存与25GB NVMe存储的入门级高性能方案,是搭建轻量级应用或测试环境的理想选择,在云服务器市场日益内卷的当下,寻找一款既能满足基础性能需求,又不会让钱包“大出血”的产品并非易事,Hyp……

    2026年6月29日
    2900
  • API怎么使用教程?API接口调用方法详解

    API使用的核心在于通过HTTP协议发送标准化请求,获取结构化数据,关键在于理解鉴权机制、参数规范及错误处理逻辑,很多开发者在面对API文档时,往往感到头大如斗,觉得那是只有资深工程师才能读懂的天书,API(应用程序接口)就像是一个餐厅的服务员,你只需要告诉它你需要什么菜(发送请求),它就把做好的菜端给你(返回……

    2026年6月13日
    8100
  • 服务器UPS不间断电源多少钱,哪个品牌好?

    服务器UPS不间断电源多少钱? 直接给结论:一台满足标准机柜需求的在线式UPS,主流预算在2000元至2万元之间,具体取决于功率容量和后备时间,很多朋友第一次接触机房供电,容易陷入两个极端:要么觉得UPS就是个“大插排”,几百块搞定;要么被销售忽悠,上来就推几万块的三相大机器,作为在机房行业摸爬滚打多年的“老供……

    2026年8月24日
    300
  • 国外CDN云存储备份失败怎么办,如何解决连接超时?

    遇到国外cdn云存储备份失败时,核心原因通常归结为跨国网络链路的不稳定性、API接口调用限制以及存储桶权限配置的疏漏,解决这一问题不能仅依赖简单的手动重试,而必须构建一套具备自动容错、断点续传及多层冗余机制的自动化备份架构,通过优化传输协议、精细化管理配额以及实施异地多活策略,可以将备份成功率提升至99.9%以……

    2026年3月1日
    15500

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注