在 Linux 上,有多种方法可以查看系统的内存大小,包括查看总内存、已用内存、可用内存等。以下是一些常见的查看内存大小的命令:
1. 使用 free
命令
free
命令是最常用的查看内存使用情况的命令。它显示了系统内存的总量、已用内存、空闲内存以及交换空间等信息。
基本命令
free
输出示例
total used free shared buff/cache available
Mem: 7992 2852 2466 197 2673 4511
Swap: 2047 0 2047
- total:总内存大小(以 KB 为单位)。
- used:已使用的内存大小。
- free:空闲的内存大小。
- shared:多个进程共享的内存大小。
- buff/cache:内核用作缓存的内存。
- available:可用的内存大小(包括缓存区中可以回收的内存)。
显示更友好的单位(MB 或 GB)
你可以使用 -h
参数使输出结果更加易于理解(自动转换为 MB 或 GB):
free -h
输出示例
total used free shared buff/cache available
Mem: 7.8Gi 2.8Gi 2.4Gi 197Mi 2.6Gi 4.4Gi
Swap: 2.0Gi 0.0Gi 2.0Gi
2. 使用 top
命令
top
命令是一个动态显示系统资源使用情况的工具,其中也包括内存的使用情况。
基本命令
top
输出示例
top - 15:05:55 up 1 day, 2:10, 2 users, load average: 0.35, 0.58, 0.71
Tasks: 188 total, 1 running, 187 sleeping, 0 stopped, 0 zombie
%Cpu(s): 6.9 us, 1.2 sy, 0.0 ni, 91.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
MiB Mem : 7992.5 total, 2852.2 used, 2466.3 free, 197.9 shared, 2673.6 buff/cache
MiB Swap: 2047.9 total, 0.0 used, 2047.9 free. 4511.6 available
- Mem 行表示物理内存的使用情况。
- Swap 行表示交换空间的使用情况。
3. 使用 cat /proc/meminfo
/proc/meminfo
文件包含有关系统内存的详细信息。你可以通过查看该文件来获取关于内存的详细信息。
基本命令
cat /proc/meminfo
输出示例
MemTotal: 7992572 kB
MemFree: 2466564 kB
MemAvailable: 4511784 kB
Buffers: 168236 kB
Cached: 2673544 kB
SwapCached: 0 kB
Active: 1852088 kB
Inactive: 2128496 kB
...
- MemTotal:总内存大小(以 KB 为单位)。
- MemFree:空闲内存(以 KB 为单位)。
- MemAvailable:可用内存。
- Buffers:内核缓冲区使用的内存。
- Cached:文件系统缓存的内存。
4. 使用 vmstat
命令
vmstat
命令显示系统的虚拟内存统计信息,帮助你了解内存和交换空间的使用情况。
基本命令
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 2466564 168236 2673544 0 0 0 1 123 220 6 1 91 2 0
- free:空闲内存的数量。
- buff:内存缓存。
- cache:文件缓存。
- si 和 so:分别表示从交换空间读取数据和写入数据的交换输入和输出。
5. 使用 htop
命令
htop
是 top
的增强版,提供了一个更为直观的交互式界面,可以实时查看系统资源使用情况。
安装 htop
在 Debian/Ubuntu 系统上:
sudo apt install htop
在 CentOS/RHEL 系统上:
sudo yum install htop
运行 htop
htop
它会显示类似 top
的信息,但以表格形式呈现,且可以使用键盘进行交互,选择不同的列来查看系统资源的使用情况。
总结
free
:简单查看总内存、已用内存、空闲内存、缓存内存等。top
:动态查看内存和 CPU 使用情况,交互式界面。cat /proc/meminfo
:查看系统内存的详细信息。vmstat
:查看虚拟内存和交换空间的统计信息。htop
:更为直观的系统资源监控工具。
选择合适的命令来查看内存情况,根据需求来获取所需的详细信息。如果你有其他问题,随时向我提问!
发表回复