在Linux系统中,查看服务器内存信息可以通过多种命令来实现。以下是一些常用的方法:
free
命令free
命令是最简单且最常用的查看内存使用情况的工具之一。
free -h
-h
参数表示以人类可读的格式(如GB、MB)显示结果。输出示例:
total used free shared buff/cache available
Mem: 7.7G 2.4G 1.2G 100M 4.1G 4.9G
Swap: 2.0G 0B 2.0G
top
命令top
命令提供了一个实时的系统监视界面,包括内存使用情况。
top
在 top
界面中,你可以看到类似以下的信息:
Mem: 8075648k total, 2496512k used, 1234568k free, 4194304k buffers
Swap: 2097152k total, 0k used, 2097152k free, 4194304k cached
vmstat
命令vmstat
提供了关于进程、内存、分页、块IO、陷阱和CPU活动的信息。
vmstat -s
输出示例:
8075648 K total memory
2496512 K used memory
1234568 K active memory
4194304 K inactive memory
5429760 K free memory
419430 K buffer memory
4194304 K swap cache
2097152 K total swap
0 K used swap
2097152 K free swap
cat /proc/meminfo
/proc/meminfo
文件包含了详细的内存使用信息。
cat /proc/meminfo
输出示例:
MemTotal: 8075648 kB
MemFree: 1234568 kB
MemAvailable: 4928704 kB
Buffers: 419430 kB
Cached: 4194304 kB
SwapCached: 0 kB
Active: 4194304 kB
Inactive: 1234568 kB
Active(anon): 2496512 kB
Inactive(anon): 100 kB
Active(file): 1697792 kB
Inactive(file): 1234468 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 2097152 kB
SwapFree: 2097152 kB
Dirty: 0 kB
Writeback: 0 kB
AnonPages: 2496512 kB
Mapped: 100 kB
Shmem: 100 kB
Slab: 419430 kB
SReclaimable: 419430 kB
SUnreclaim: 0 kB
KernelStack: 100 kB
PageTables: 100 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 6134952 kB
Committed_AS: 2496512 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 0 kB
VmallocChunk: 0 kB
Percpu: 100 kB
HardwareCorrupted: 0 kB
AnonHugePages: 0 kB
ShmemHugePages: 0 kB
ShmemPmdMapped: 0 kB
CmaTotal: 0 kB
CmaFree: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
Hugetlb: 0 kB
DirectMap4k: 8075648 kB
DirectMap2M: 0 kB
top
和 vmstat
提供实时数据,适合需要即时反馈的场景。free
和 /proc/meminfo
提供详细的静态报告,适合定期检查或脚本自动化。ps aux --sort=-%mem
查找占用内存最多的进程,并考虑优化或重启相关服务;调整 swappiness
参数以控制交换空间的使用。通过上述方法,你可以有效地监控和管理Linux服务器的内存使用情况。
领取专属 10元无门槛券
手把手带您无忧上云