在Linux系统中,查询机器的内存大小可以通过多种命令来实现。以下是一些常用的方法:
free
命令free
命令可以显示系统的内存使用情况,包括总内存、已用内存、空闲内存等。
free -h
-h
参数表示以人类可读的格式(如GB、MB)显示结果。示例输出:
total used free shared buff/cache available
Mem: 7.7G 2.1G 1.2G 128M 4.3G 5.2G
Swap: 2.0G 0B 2.0G
dmidecode
命令dmidecode
命令可以读取DMI/SMBIOS的信息,包括硬件配置,如内存大小。
sudo dmidecode -t memory
示例输出:
# dmidecode 3.2
Getting SMBIOS data from sysfs.
SMBIOS 2.8 present.
Handle 0x000A, DMI type 16, 15 bytes
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: None
Maximum Capacity: 8 GB
Error Information Handle: No Error
Number Of Devices: 4
Handle 0x000B, DMI type 17, 27 bytes
Memory Device
Array Handle: 0x000A
Error Information Handle: No Error
Total Width: 64 bits
Data Width: 64 bits
Size: 2048 MB
Form Factor: SODIMM
Set: None
Locator: DIMM_A1
Bank Locator: BANK 0
Type: DDR3
Type Detail: Synchronous
Speed: 1333 MHz
Manufacturer: 0x80CE
Serial Number: 0x00000000
Asset Tag: Unknown
Part Number: M471A5244CB1-CRC
cat
命令查看 /proc/meminfo
/proc/meminfo
文件包含了系统内存的详细信息。
cat /proc/meminfo
示例输出:
MemTotal: 8094468 kB
MemFree: 1258484 kB
MemAvailable: 5368704 kB
Buffers: 102448 kB
Cached: 4402432 kB
SwapCached: 0 kB
Active: 3276800 kB
Inactive: 2105664 kB
Active(anon): 1179648 kB
Inactive(anon): 102400 kB
Active(file): 2097152 kB
Inactive(file): 2003264 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 2097148 kB
SwapFree: 2097148 kB
Dirty: 16 kB
Writeback: 0 kB
AnonPages: 1279232 kB
Mapped: 163840 kB
Shmem: 106496 kB
Slab: 131072 kB
SReclaimable: 102400 kB
SUnreclaim: 28672 kB
KernelStack: 2352 kB
PageTables: 24576 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 6144380 kB
Committed_AS: 3276800 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 0 kB
VmallocChunk: 0 kB
Percpu: 2352 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: 131072 kB
DirectMap2M: 8126464 kB
lshw
命令lshw
命令可以列出系统的硬件信息,包括内存。
sudo lshw -short -C memory
示例输出:
H/W path Device Class Description
======================================================
/0/0 memory 8GB System Memory
/0/0/0 memory 2048MB DIMM SDRAM Synchronous 1333 MHz (0.7 ns)
/0/0/1 memory 2048MB DIMM SDRAM Synchronous 1333 MHz (0.7 ns)
/0/0/2 memory 2048MB DIMM SDRAM Synchronous 1333 MHz (0.7 ns)
/0/0/3 memory 2048MB DIMM SDRAM Synchronous 1333 MHz (0.7 ns)
free
命令简单直观,适合快速查看内存使用情况。dmidecode
提供详细的硬件信息,适合深入了解系统配置。/proc/meminfo
文件提供了最全面的内存信息,适合进行更复杂的分析和脚本编写。lshw
结合了硬件和内存信息,适合全面的系统诊断。sudo
提升权限,例如 sudo dmidecode
。sudo apt-get install dmidecode
或 sudo yum install dmidecode
。grep
过滤关键信息,例如 dmidecode -t memory | grep Size
。通过以上方法,你可以有效地查询Linux系统的内存大小及其详细信息。
领取专属 10元无门槛券
手把手带您无忧上云