Linux下利用命令查看机器内存

1. 查看系统内存使用情况

1.1 查看总内存容量

要查看机器的总内存容量,可以使用free命令。该命令会显示系统当前的内存使用情况,包括总内存容量、已使用内存、空闲内存等信息。示例如下:

$ free -h

total used free shared buff/cache available

Mem: 15Gi 1.1Gi 2.3Gi 275Mi 12Gi 13Gi

Swap: 31Gi 0B 31Gi

在输出结果中,"Mem"行表示物理内存使用情况,"Swap"行表示交换分区使用情况。通过查看"Mem"行的"total"列即可得知系统的总内存容量。在上述示例中,总内存容量为15Gi。

注意:这里的内存容量单位是以二进制计算的,可读性较差。如果想要以更常用的十进制计算方式显示,可以将-h参数改为--si。例如:free --si

1.2 查看内存使用情况

除了总内存容量外,我们还可以查看系统当前的内存使用情况,包括已使用的内存和空闲的内存。

要查看具体的内存使用情况,可以使用top命令。该命令会实时显示系统的进程信息,其中包括内存使用情况。示例如下:

$ top

top - 08:30:47 up 1 day, 1:22, 2 users, load average: 0.00, 0.02, 0.05

Tasks: 204 total, 1 running, 203 sleeping, 0 stopped, 0 zombie

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

MiB Mem : 15969.9 total, 2541.6 free, 1135.6 used, 12292.7 buff/cache

MiB Swap: 32767.9 total, 32767.9 free, 0.0 used. 13816.2 avail Mem

在输出结果中,"MiB Mem"行表示内存使用情况,其中"total"列表示总内存容量,"free"列表示空闲内存,"used"列表示已使用的内存,"buff/cache"列表示被缓存的内存。

注意:在上述示例中,"buffer/cache"中的内存也被视为已使用的内存。这是因为Linux会将一部分内存用于缓存文件系统的数据。实际上,这部分内存是可以被动态释放的。在计算可用内存时,应将"free"列和"buff/cache"列的值相加。

2. 查看内存的温度

2.1 安装lm-sensors

要查看内存的温度,首先需要安装lm-sensors工具。它是一个用于监测硬件传感器的命令行工具。在大多数Linux发行版中,可以通过包管理器安装它。

以Debian/Ubuntu为例,执行以下命令来安装lm-sensors

$ sudo apt-get install lm-sensors

安装完成后,执行以下命令来配置lm-sensors

$ sudo sensors-detect

该命令会扫描系统硬件,找到可用的传感器并加载对应的内核模块。在扫描过程中,会出现一系列的问题,可以按照提示选择“yes”或者“no”。通常,选择默认的选项是安全的。

2.2 查看内存温度

安装lm-sensors并正确配置后,就可以使用sensors命令来查看内存的温度了。

执行以下命令来查看内存温度:

$ sensors

输出结果中,会显示所有可用传感器的当前状态,包括温度、风扇转速等。

在后面的输出中,可以找到与内存相关的温度信息,一般以“Memory”或“DIMM”开头。例如:

k10temp-pci-00c3

Adapter: PCI adapter

temp1: +56.0°C (high = +70.0°C, crit = +73.5°C)

amdgpu-pci-0700

Adapter: PCI adapter

vddgfx: +0.79 V

fan1: 2856 RPM

temp1: +59.0°C (crit = +94.0°C, hyst = -273.1°C)

从上述输出中可以看到,内存温度为+56.0°C。在实际使用中,根据输出结果的不同,内存温度可能位于不同的位置。

通过以上步骤,我们可以方便地查看Linux系统中机器的内存使用情况以及内存温度。

操作系统标签