全面剖析 Linux 系统中的内存查看22

前言

内存作为计算机系统中至关重要的组成部分,扮演着存储数据和指令的角色。在 Linux 操作系统中,管理和查看内存至关重要,有助于解决性能问题、内存泄漏等问题。本文将深入探讨 Linux 系统中查看内存的各种方法,为系统管理员和用户提供全面的指南。

使用 free 命令

free 命令是查看 Linux 系统中已用和可用内存的常用工具。它显示以下信息:

* Total: 系统总内存大小* Used: 已使用的内存量* Free: 可用的内存量* Shared: 正在共享的内存量* Buffers: 用于文件系统缓冲区的内存量* Cache: 用于文件系统高速缓存的内存量$ free -m # 以 MB 为单位显示结果 total used free shared buff/cache availableMem: 32759 2601 29767 771 457 29252Swap: 32767 0 32767复制代码

使用 vmstat 命令

vmstat 命令提供有关内存使用的持续报告。它显示虚拟内存统计信息,包括:

* r: 等待 CPU 时间的进程数* b: 等待 I/O 操作的进程数* si: 交换到内存的页面数* so: 交换到磁盘的页面数* free: 可用的内存量$ vmstat 5 2 # 每 5 秒更新输出,运行 2 次procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 0 0 29044 29576 52624 194928 0 0 1 0 12 17 1 1 98 0 0 0 0 29044 29576 52624 194928 0 0 0 0 11 15 0 1 99 0 0复制代码

使用 top 命令

top 命令显示系统中的实时进程信息,也提供了内存使用统计信息。它的输出显示:

* 总内存使用情况: 内存使用情况摘要,包括已用、已缓存和可用内存* 按进程排序的内存使用情况: 按内存使用量从高到低列出的进程列表$ top -o %MEM Tasks: 282 total, 1 running, 281 sleeping, 0 stopped, 0 zombie%Cpu(s): 0.3 us, 0.4 sy, 0.0 ni, 99.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 stMiB Mem : 32759.4 total, 29767.1 free, 2601.0 used, 391.3 buff/cacheMiB Swap: 32767.9 total, 32767.9 free, 0.0 used. 29044 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 25094 root 20 0 1447292 1.324g 4944 S 0.0 4.6 60:38.91 Xorg 22755 root 20 0 44852 1.296g 25852 S 0.3 3.9 128:09.24 gnome-shell 28535 root 20 0 59012 1.244g 20816 S 0.0 3.7 192:45.46 tracker-miner 22916 system 20 0 101128 1.076g 92332 S 0.3 3.2 126:50.86 gnome-terminal-se 21645 root 20 0 45152 1.068g 55400 S 0.0 3.2 131:58.39 gnome-software 13894 pavel 20 0 1301740 982.5m 41852 S 0.0 3.0 323:26.78 google-chrome 28534 root 20 0 40176 949.8m 30404 S 0.0 2.9 187:21.56 tracker-extract 29051 root 20 0 1219240 931.9m 95120 S 0.0 2.8 122:14.69 gpicview 29149 root 20 0 65396 913.6m 24168 S 0.0 2.8 66:53.80 gnome-documents 29137 root 20 0 71676 875.4m 28708 S 0.0 2.7 120:05.59 speech-dispatcher复制代码

使用 sar 命令

sar 命令收集并报告系统活动信息,包括内存使用情况。它提供:

* -r: 物理内存使用报告* -S: 交换空间使用报告$ sar -r 5 2 # 每 5 秒更新输出,运行 2 次Linux 5.10.0-6-amd64 (host) 06/29/2022 _x86_64_ (4 CPU)12:26:03 PM kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit12:26:08 PM 29767280 2601160 8.5 52624 194928 2925208 95.612:26:13 PM 29767280 2601160 8.5 52624 194928 2925208 95.6复制代码

使用 atop 工具

atop 是一个高级工具,用于监视和报告系统活动,包括内存使用情况。它提供:

* 可视化内存使用摘要: 内存使用情况的时间序列图* 按进程排序的内存使用情况: 按内存使用量从高到低列出的进程列表* 历史内存使用数据: 用于趋势分析的长时历史记录$ sudo apt install atop # 安装 atop$ atop ------------------------------------ atop ------------------------------------- Memory Usage, by Type, Active, and Inactive. |---------------------------------------------------------------------| | size resvd free inactive active buffers | |---------+---------+---------+---------+---------+---------+ | 16.0 GiB | 18.4 MiB | 16.0 GiB | 16.0 GiB | 11.1 MiB | 774.1 MiB | |---------------------------------------------------------------------| | inactive = memory "not" currently being used (but recently referenced) | | active = memory currently being used, but "not" recently referenced | | buffers = memory used by the kernel to cache disk accesses | |---------------------------------------------------------------------|复制代码

使用 glances 工具

glances 是一个基于终端的系统监视工具,用于实时显示系统信息,包括内存使用情况。它提供:

* 可视化内存使用摘要: 内存使用情况的饼图表示* 按类型分类的内存使用细分: 显示已用、已缓存、已缓冲和可用内存量的细分$ sudo apt install glances # 安装 glances$ glances ____ ) / / ( /___/ / /\_ / __/ (_/

2024-10-09


上一篇:Linux 操作系统:为各种需求量身定制的高效选择

下一篇:如何轻松升级 Windows 系统:分步指南