如何查看 Linux 系统的内存大小? (linux 内存大小查看)

在 Linux 操作系统中,内存是非常重要的资源之一。了解系统中的内存大小、使用情况等信息,能够帮助管理员更好地管理系统,优化系统性能,提高系统的稳定性和安全性。本文将介绍如何查看 Linux 系统的内存大小。

1. 使用 free 命令

free 命令是一个能够显示系统内存使用情况的实用程序,它可以显示系统及各个进程所占用的内存大小。在终端中输入以下命令即可查看系统内存使用情况:

“`

free -m

“`

这条命令将以 MB 为单位显示系统内存大小,例如:

“`

total used free shared buffers cached

Mem: 7879 7446 433 0 371 4441

-/+ buffers/cache: 2633 5245

Swap: 4095 0 4095

“`

可以看到,系统总共有 7879MB 的内存,其中已经被占用的有 7446MB,剩余的有 433MB。而缓存和缓冲区占用的内存分别是 4441MB 和 371MB。注意,这两个值并不是实际占用的内存,而是被系统预留给文件系统和 I/O 操作的缓存的内存。如果需要查看实际被占用的内存大小,则需要查看 “-/+ buffers/cache” 行。

2. 使用 top 命令

top 命令是一个实时性能监控工具,可以显示系统中运行的进程和资源占用情况,其中包括内存大小。在终端中输入 top 命令,然后按下键盘上的“Shift+m”键,即可按照内存占用大小排序:

“`

top – 10:30:39 up 5 days, 22:12, 2 users, load average: 0.00, 0.00, 0.00

Tasks: 126 total, 1 running, 125 sleeping, 0 stopped, 0 zombie

%Cpu(s): 0.0 us, 0.2 sy, 0.0 ni, 99.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st

KiB Mem : 8062532 total, 443356 free, 6572616 used, 1043560 buff/cache

KiB Swap: 4194300 total, 4194300 free, 0 used. 1186404 avl Mem

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

901 mysql 20 0 1238056 44364 0 S 0.0 0.5 84:14.78 mysqld

672 root 20 0 166260 30668 24616 S 0.0 0.4 0:57.47 systemd-journal

848 elasticsearch 20 0 19.45g 22244 1312 S 0.0 0.3 927:42.68 java

2893 zabbix 20 0 4029820 20232 1756 S 0.0 0.3 11:13.28 zabbix_server

685 root 20 0 475964 17732 9780 S 0.0 0.2 0:10.13 systemd-network

858 root 20 0 1684604 16324 5604 S 0.0 0.2 0:50.69 dockerd

844 root 20 0 3565324 12568 4660 S 0.0 0.2 0:06.19 contnerd

686 root 20 0 107028 12252 8980 S 0.0 0.2 0:00.23 systemd-resolve

703 root 20 0 109420 12023 9328 S 0.0 0.1 0:01.02 systemd-timesyn

722 root 20 0 110332 11728 8532 S 0.0 0.1 0:00.02 systemd-udevd

842 root 20 0 214276 10548 4164 S 0.0 0.1 0:00.47 docker-contnerd

650 root 20 0 14192 9828 7924 S 0.0 0.1 0:00.17 polkitd

587 root 20 0 25952 7788 3996 S 0.0 0.1 0:00.93 systemd-logind

658 root 20 0 82023 7296 5316 S 0.0 0.1 0:00.02 NetworkManager

857 root 20 0 238848 6780 1868 S 0.0 0.1 0:03.70 docker

1861 root 20 0 334832 6208 3532 S 0.0 0.1 8:54.46 contnerd-shim

258 root 19 -1 119560 5996 5520 S 0.0 0.1 0:00.00 systemd-oomd

“`

可以看到, top 命令也可以显示系统内存的大小和使用情况,其中 KiB Mem 行显示了系统总内存大小,以及已用、可用和缓存的内存大小。同时也能够看到各个进程的内存占用情况。

3. 使用 cat 命令查看 /proc/meminfo 文件

Linux 系统内核会将系统内存的相关信息存储在 /proc/meminfo 文件中,通过查看该文件的内容,可以了解系统内存的大小、使用情况、交换区的大小等信息。在终端中输入以下命令即可查看系统内存信息:

“`

cat /proc/meminfo

“`

可以看到,该文件中包含了大量的内存信息,其中 MemTotal 行显示了系统总共的内存大小,以 kB 为单位:

“`

MemTotal: 8062532 kB

MemFree: 181172 kB

MemAvlable: 6636592 kB

Buffers: 118580 kB

Cached: 4202376 kB

SwapCached: 0 kB

Active: 4218468 kB

Inactive: 3041692 kB

Active(anon): 3916600 kB

Inactive(anon): 1013612 kB

Active(file): 301868 kB

Inactive(file): 2023076 kB

Unevictable: 22023 kB

Mlocked: 22023 kB

SwapTotal: 4194300 kB

SwapFree: 4194300 kB

Dirty: 496 kB

Writeback: 0 kB

AnonPages: 4928804 kB

Mapped: 977324 kB

Shmem: 10756 kB

Slab: 299140 kB

SReclmable: 233860 kB

SUnreclm: 65280 kB

KernelStack: 10064 kB

PageTables: 44336 kB

NFS_Unstable: 0 kB

Bounce: 0 kB

WritebackTmp: 0 kB

CommitLimit: 8220234 kB

Committed_AS: 12693368 kB

VmallocTotal: 34359738367 kB

VmallocUsed: 126216 kB

VmallocChunk: 0 kB

Percpu: 12023 kB

HardwareCorrupted: 0 kB

AnonHugePages: 802304 kB

CmaTotal: 0 kB

CmaFree: 0 kB

HugePages_Total: 0

HugePages_Free: 0

HugePages_Rsvd: 0

HugePages_Surp: 0

Hugepagesize: 2023 kB

DirectMap4k: 97280 kB

DirectMap2M: 5134336 kB

DirectMap1G: 3145728 kB

“`

以上是如何查看 Linux 系统的内存大小的三种方法,通过这三种方法可以很方便地了解系统内存的情况,有助于优化系统的性能和提高系统的稳定性。

相关问题拓展阅读:

  • linux 下怎么查看一个进程占用内存大小

linux 下怎么查看一个进程占用内存大小

你好,方法如下:

可以直接使用top命令后,查看%MEM的内搜早容。可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令:

 (1)top

  top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器

  可以直接使用top命令后,查看%MEM的内容。可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令:

  $ top -u oracle

内容樱返解释:

  PID:进程的ID

  USER:进程所有者

  PR:进程的优先级别,越小越优先被执行

  NInice:值

  VIRT:进程占用的虚拟内存

  RES:进程占用的物理内存

  SHR:进程使用的共享内存

  世颂雀S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数

  %CPU:进程占用CPU的使用率

  %MEM:进程使用的物理内存和总内存的百分比

  TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。

  COMMAND:进程启动命令名称

  常用的命令:

  P:按%CPU使用率排行

  T:按MITE+排行

  M:按%MEM排行

(2)pmap

  可以根据进程查看进程相关信息占用的内存情况,(进程号可以通过ps查看)如下所示:

  $ pmap -d 14596

 (3)ps

  如下例所示:

  $ ps -e -o ‘pid,comm,args,pcpu,rsz,vsz,stime,user,uid’ 其中rsz是是实际内存

  $ ps -e -o ‘pid,comm,args,pcpu,rsz,vsz,stime,user,uid’ | grep oracle | sort -nrk5

  其中rsz为实际内存,上例实现按内存排序,由大到小

这里介绍下查看一个进程占用内存大小的方法。

1、首先单击桌面左上角亮碧的

应用程序

,选择系统工具选项,如槐键岩下图所示。

2、接着在下拉菜单中,单击系统终端选项,如下图所示。

3、这时会来到系统终端

命令行

,如下铅御图所示。

4、最后输入free -h命令,在结果中找到total即可查看到系统总的内存情况,如下图所示就完成了。

Linux系统下面有关内存的专用名词圆森和专业术语概念:

物理内存和虚拟内存

物理内存:就是系统硬件提供的内存大小,是真正的内存,一般叫做内存条。也叫随机存取存储器(random access memory,RAM)又称作“随机存储器”,是与CPU直接交换数据的内部存储器,也叫主存(内存)。

虚拟内存:相对于物理内存,在Linux下还有一个虚拟内存的概念,虚拟内存就是为了满足物理内存的不足而提出的策略,它是利用磁盘空间虚拟出的一块逻辑内存,用作虚拟内存的磁盘空间被称为交换空间(Swap Space)。Linux会在物理内存不足时,使用虚拟内存,内核会把暂时不用的内存块信息写到虚拟内存,这样物理内存就得到了释放,这块儿内存就可以用于其他目的,而需要用到这些内容的时候,这些信息就会被重新从虚拟内存读入物理内存。

Linux的buffers与cached

在Linux中经常发现空闲的内存很少,似乎所有的内存都被消耗殆尽了,表面上看是内存不够用了,很多新手看到内存被“消耗殆尽”纳腔衡非常紧张,其实这个是因为Linux系统将空闲的内存用来做磁盘文件数据的缓存。这个导致你的系统看起来处于内存非常紧急的状况。但是实际上不是这样。这个区别于Windows的内存管理。Linux会利用空闲的内存来做cached & buffers。

buffers是指用来给块设备做的缓冲大小(块设备的读写缓冲区),它只记录文件系统的metadata以及 tracking in-flight pages.

Buffers are associated with a specific block device, and cover caching of filesystem metadata as well as tracking in-flight pages. The cache only contains parked file data. That is, the buffers remember what’s in directories, what file permissions are, and keep track of what memory is being written from or read to for a particular block device. The cache only contains the contents of the files themselves.

cached是作为page cache的内存, 文件系统的cache。你读写文件的时洞做候,Linux内核为了提高读写性能与速度,会将文件在内存中进行缓存,这部分内存就是Cache Memory(缓存内存)。即使你的程序运行结束后,Cache Memory也不会自动释放。这就会导致你在Linux系统中程序频繁读写文件后,你会发现可用物理内存会很少。其实这缓存内存(Cache Memory)在你需要使用内存的时候会自动释放,所以你不必担心没有内存可用

1、top

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器

可以直接使用top命令后,查看%MEM的内容。可以选择按进程查看或者按用户查看,如想查看oracle用户的进程内存使用情况的话可以使用如下的命令:

$ top -u oracle

内容解释:

PID:进程的ID

USER:进程所有者

PR:进程的优先级别,越嫌瞎小越优先被执行

NInice:值

VIRT:进程占用的虚拟内存

RES:进程占用的物理内存

SHR:进程使用的共享内存

S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数

%CPU:进程占用CPU的使用率

%MEM:进程使用的物理内存和总内存的百分比

TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。

COMMAND:进程启动命令名称

常用的命令:

P:按%CPU使用率排行

T:按MITE+排行

M:按%MEM排行

2、pmap

可以根据进程查看进程相关信息占用的内存情况,(进程号可以通过ps查看)如下所示:

$ pmap -d 14596

3、ps

如下例所示:

$ ps -e -o ‘pid,comm,args,pcpu,rsz,vsz,stime,user,uid’ 其中rsz是是实际闷州内芹罩空存

$ ps -e -o ‘pid,comm,args,pcpu,rsz,vsz,stime,user,uid’ | grep oracle | sort -nrk5

其中rsz为实际内存,上例实现按内存排序,由大到小

top vmstat prstat看哪个更符合你的要求

关于linux 内存大小查看的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

香港服务器首选树叶云,2H2G首月10元开通。
树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/166914.html<

(0)
运维的头像运维
上一篇2025-03-20 18:31
下一篇 2025-03-20 18:33

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

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