linux下如何查看内存

Linux下,可使用free -m命令查看内存使用情况,也可通过`top

Linux系统中,有多种方法可以查看内存的使用情况,以下是一些常用的命令和工具,以及它们的详细使用方法。

free 命令

free 命令是查看Linux系统内存使用情况的最常用工具之一,它显示了系统的总内存、已用内存、空闲内存以及缓冲区和缓存的内存使用情况。

基本用法:

free

输出示例:

              total        used        free      shared  buff/cache   available
Mem:        16384        3000        5000         200        8384        12000
Swap:         2048           0        2048

选项说明:

  • -h:以人类可读的格式显示(如MB、GB)。
  • -m:以MB为单位显示。
  • -g:以GB为单位显示。

示例:

free -h

top 命令

top 命令是一个动态的系统监控工具,可以实时查看系统的内存、CPU、进程等使用情况。

基本用法:

top

输出示例:

top 12:34:56 up  1:23,  2 users,  load average: 0.00, 0.01, 0.05
Tasks:  75 total,   1 running,  74 sleeping,   0 stopped,   0 zombie
%Cpu(s):  1.0 us,  0.5 sy,  0.0 ni, 98.0 id,  0.5 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem : 16384 total,   3000 used,  5000 free,   8384 buffers
KiB Swap: 2048 total,      0 used,  2048 free

选项说明:

  • -d:设置刷新间隔时间(默认为5秒)。
  • -n:指定显示的次数后退出。

示例:

top -d 2 -n 5

htop 命令

htoptop 命令的一个增强版,提供了更友好的用户界面和更多的功能,如果系统中没有安装 htop,可以使用包管理器进行安装。

安装方法:

sudo apt-get install htop  # Debian/Ubuntu
sudo yum install htop      # CentOS/RHEL

基本用法:

htop

输出示例:

[ htop ]
Tasks: 75 total, 1 running, 74 sleeping, 0 stopped, 0 zombie
%Cpu(s): 1.0 us, 0.5 sy, 0.0 ni, 98.0 id, 0.5 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 16384 total, 3000 used, 5000 free, 8384 buffers
KiB Swap: 2048 total, 0 used, 2048 free

vmstat 命令

vmstat 命令提供了关于系统虚拟内存、进程、CPU等的统计信息。

基本用法:

vmstat

输出示例:

procs -----------memory------------swap------io----system-------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0  5000  8384  3000      0    0     0     0   10   20  1  0 98  0  0

选项说明:

  • -s:显示一次并退出。
  • -d:显示磁盘统计信息。
  • -p:指定进程ID。

示例:

vmstat -s

/proc/meminfo 文件

/proc/meminfo 文件包含了系统内存的详细信息,可以直接查看或使用 cat 命令读取。

基本用法:

cat /proc/meminfo

输出示例:

MemTotal:        16384 kB
MemFree:         5000 kB
Buffers:         8384 kB
Cached:          3000 kB
SwapCached:          0 kB
Active:          3000 kB
Inactive:        2048 kB
...

dmidecode 命令

dmidecode 命令用于查看系统的硬件信息,包括内存模块的详细信息,需要超级用户权限。

基本用法:

sudo dmidecode -t memory

输出示例:

# dmidecode 3.2
SMBIOS 3.0 present.
Handle 0x0038, DMI type 17, 34 bytes
Memory Device
        Array Handle: 0x0037
        Error Information Handle: Not Provided
        Total Width: 64 bits
        Data Width: 64 bits
        Size: 8192 MB
        Form Factor: DIMM
        Set: None
        Locator: DIMM_A1
        Bank Locator: BANK 0
        Type: DDR4
        Type Detail: Synchronous Unregistered (Unbuffered)
        Speed: 2400 MT/s
        Manufacturer: Samsung
        Serial Number: 12345678
        Asset Tag: Not Specified
        Part Number: M378A1K43CB2-CTD
        Rank: 2
        Configured Memory Speed: 2133 MT/s
...

lsblkblkid 命令

虽然这些命令主要用于查看块设备信息,但也可以用来查看内存相关的设备信息。

基本用法:

lsblk -m
blkid

输出示例:

NAME        SIZE TYPE FSTYPE LABEL UUID                                 MOUNTPOINT
sda         20G disk                                                   
├─sda1       1G part ext4                                       /boot
└─sda2      19G part ext4                                       /

nvidia-smi 命令(适用于NVIDIA显卡)

如果你的系统配备了NVIDIA显卡,可以使用 nvidia-smi 命令查看GPU内存的使用情况。

基本用法:

nvidia-smi

输出示例:

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 45.0.0      Driver Version: 45.0.0       CUDA Version: 11.1     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Mem-Util |
|===============================+======================+======================|
| 0  GeForce GTX 1080    Off  | 00000000:01:00.0 Off |                  N/A |
| 28%   45C    P8    12W / 180W |   123MiB /  8192MiB |      0%      0%     |
+-------------------------------+----------------------+----------------------+

zramctl 命令(适用于使用zram的系统)

zramctl 命令用于管理压缩内存(zram),可以查看zram的使用情况。

基本用法:

zramctl

输出示例:

zram device: zram0 (/dev/zram0)
Disk size:        1.0 G
Used:            256 M (25%)
Free:            768 M (75%)

sysctl 命令

sysctl 命令用于查看和修改内核参数,可以用来查看与内存相关的内核参数。

基本用法:

sysctl -a | grep mem

输出示例:

mem = { ... }
vm.min_free_kbytes = 65536
vm.max_map_count = 262144
vm.swappiness = 60
vm.vfs_cache_pressure = 100

小编总结表格

命令 用途
free 查看内存使用情况 总内存、已用内存、空闲内存等
top 实时监控系统资源 CPU、内存、进程等
htop top的增强版 CPU、内存、进程等,支持交互操作
vmstat 查看系统虚拟内存统计信息 CPU、内存、交换区等
/proc/meminfo 查看内存详细信息 MemTotal、MemFree、Buffers等
dmidecode 查看硬件信息(包括内存) 内存型号、大小、速度等
lsblk 查看块设备信息 设备名称、大小、挂载点等
blkid 查看块设备UUID和文件系统类型 设备UUID、文件系统类型等
nvidia-smi 查看NVIDIA显卡内存使用情况 GPU型号、显存使用情况等
zramctl 查看zram使用情况 zram设备大小、已用空间、剩余空间等
sysctl 查看和修改内核参数 与内存相关的内核参数

相关问答FAQs

Q1: free命令中的buff/cache是什么意思?

A1: buff/cache表示的是系统中用于缓存和缓冲的内存,这部分内存可以被快速释放以供其他进程使用,但通常情况下,系统会尽量保留这些缓存以提高性能。buffers用于存储块设备的临时数据,而cache用于存储文件系统的缓存数据。

Q2: top命令中的KiB MemKiB Swap分别代表什么?

A2: KiB Mem表示系统的物理内存使用情况,包括总内存、已用内存、空闲内存和缓冲区/缓存的内存。KiB Swap表示系统的交换分区(swap)使用情况,包括总交换空间、已用交换空间和空闲交换空间。

以上内容就是解答有关linux下如何查看内存的详细内容了,我相信这篇文章可以为您解决一些疑惑,有任何问题欢迎留言反馈,谢谢阅读。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/10997.html

(0)
酷番叔酷番叔
上一篇 1小时前
下一篇 1小时前

相关推荐

  • Linux进程优先级如何调整优化?

    理解优先级指标Nice值用户可调整的范围:-20(最高优先级)到19(最低优先级)默认值:0(新进程继承父进程的nice值)PR值(Priority)内核维护的实际优先级(0-139),其中0-99用于实时进程Nice值影响PR值:PR = 20 + Nice(普通进程)示例:nice=-20 → PR=0(最……

    2025年7月18日
    3700
  • 禁用IPv6能解决服务器问题?

    为什么需要启用 IPv6?IPv6 是下一代互联网协议,解决了 IPv4 地址枯竭问题,提供更大的地址空间(如 2001:db8::1)、更高的安全性和效率,随着全球 IPv4 地址耗尽,启用 IPv6 已成为网络优化的关键步骤,本指南将详细介绍在 Linux 系统中启用 IPv6 的方法,检查当前 IPv6……

    2025年6月23日
    2200
  • 如何快速创建1MB空白映像文件

    创建1MB空白映像文件,通常使用dd命令或磁盘工具生成指定大小的空二进制文件,该文件常用于模拟小容量存储设备、进行磁盘操作测试或作为占位符文件。

    2025年7月25日
    1300
  • Linux强制覆盖文件不提示?

    覆盖文件不提示的核心方法cp命令(复制覆盖)问题原因:系统可能设置了别名 alias cp=’cp -i’,导致覆盖前提示,解决方案:使用 -f 参数强制覆盖: cp -f source_file target_file绕过别名(二选一): \cp source_file target_file # 使用反斜杠……

    2025年8月5日
    1000
  • Mac装Linux如何选最佳方案?

    准备工作(必做)备份数据 使用Time Machine或云存储备份所有重要文件(避免安装过程导致数据丢失),检查Mac型号Intel芯片Mac:支持所有Linux发行版(Ubuntu、Fedora等),Apple Silicon(M1/M2):仅支持ARM架构的Linux(如Asahi Linux),查看方法……

    2025年6月30日
    2400

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信