在Linux系統中,查看內存大小是一個常見的操作。無論是系統管理員還是普通用戶,了解系統的內存使用情況對于優化系統性能、排查問題以及進行資源管理都非常重要。本文將詳細介紹在Linux系統中查看內存大小的各種命令及其使用方法。
free
命令free
命令是最常用的查看內存使用情況的命令之一。它可以顯示系統的物理內存、交換空間(swap)以及內核使用的緩沖區(buffers)和緩存(cache)等信息。
free
執行上述命令后,系統會輸出類似如下的信息:
total used free shared buff/cache available
Mem: 8169348 1234567 2345678 123456 4567890 5678901
Swap: 2097148 123456 1973692
total
:系統總內存大小。used
:已使用的內存大小。free
:空閑的內存大小。shared
:多個進程共享的內存大小。buff/cache
:用于緩存和緩沖的內存大小。available
:可用的內存大小,即系統當前可以分配給進程的內存。-h
:以人類可讀的格式顯示內存大?。ㄈ鏚B、MB、GB)。 free -h
輸出示例:
total used free shared buff/cache available
Mem: 7.8G 1.2G 2.2G 123M 4.5G 5.4G
Swap: 2.0G 123M 1.9G
-s <秒數>
:每隔指定的秒數刷新一次內存信息。 free -s 5
上述命令將每隔5秒刷新一次內存信息。
top
命令top
命令是一個實時監控系統資源使用情況的工具,它可以顯示系統的內存、CPU、進程等信息。
top
執行上述命令后,系統會進入一個實時監控界面,顯示類似如下的信息:
top - 14:32:01 up 1:23, 2 users, load average: 0.00, 0.01, 0.05
Tasks: 123 total, 1 running, 122 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.3 us, 0.2 sy, 0.0 ni, 99.5 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
MiB Mem : 8169.3 total, 2345.6 free, 1234.5 used, 4567.8 buff/cache
MiB Swap: 2097.1 total, 1973.6 free, 123.5 used. 5678.9 avail Mem
在 top
命令的輸出中,內存信息位于 MiB Mem
和 MiB Swap
行:
MiB Mem
:物理內存的使用情況。MiB Swap
:交換空間的使用情況。q
鍵退出 top
命令。M
鍵按內存使用率排序進程。P
鍵按CPU使用率排序進程。vmstat
命令vmstat
命令用于顯示系統的虛擬內存統計信息,包括內存、交換空間、CPU、I/O 等。
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 123456 2345678 456789 5678901 0 0 12 34 567 890 1 2 97 0 0
在 vmstat
命令的輸出中,內存信息位于 memory
列:
swpd
:使用的交換空間大小。free
:空閑的內存大小。buff
:用于緩沖的內存大小。cache
:用于緩存的內存大小。-s
:顯示內存統計信息的摘要。 vmstat -s
輸出示例:
8169348 K total memory
1234567 K used memory
2345678 K active memory
4567890 K inactive memory
5678901 K free memory
123456 K buffer memory
4567890 K swap cache
2097148 K total swap
123456 K used swap
1973692 K free swap
cat /proc/meminfo
命令/proc/meminfo
文件包含了系統內存的詳細信息,通過 cat
命令可以查看該文件的內容。
cat /proc/meminfo
執行上述命令后,系統會輸出類似如下的信息:
MemTotal: 8169348 kB
MemFree: 2345678 kB
MemAvailable: 5678901 kB
Buffers: 123456 kB
Cached: 4567890 kB
SwapCached: 123456 kB
Active: 2345678 kB
Inactive: 4567890 kB
Active(anon): 123456 kB
Inactive(anon): 123456 kB
Active(file): 2222222 kB
Inactive(file): 4444444 kB
Unevictable: 12345 kB
Mlocked: 12345 kB
SwapTotal: 2097148 kB
SwapFree: 1973692 kB
Dirty: 1234 kB
Writeback: 12 kB
AnonPages: 123456 kB
Mapped: 123456 kB
Shmem: 123456 kB
KReclaimable: 123456 kB
Slab: 123456 kB
SReclaimable: 123456 kB
SUnreclaim: 123456 kB
KernelStack: 12345 kB
PageTables: 12345 kB
NFS_Unstable: 123 kB
Bounce: 123 kB
WritebackTmp: 123 kB
CommitLimit: 6181822 kB
Committed_AS: 1234567 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 123456 kB
VmallocChunk: 34359615011 kB
Percpu: 12345 kB
HardwareCorrupted: 0 kB
AnonHugePages: 123456 kB
ShmemHugePages: 0 kB
ShmemPmdMapped: 0 kB
FileHugePages: 0 kB
FilePmdMapped: 0 kB
CmaTotal: 123456 kB
CmaFree: 123456 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
Hugetlb: 0 kB
DirectMap4k: 123456 kB
DirectMap2M: 4567890 kB
DirectMap1G: 1234567 kB
MemTotal
:系統總內存大小。MemFree
:空閑的內存大小。MemAvailable
:可用的內存大小。Buffers
:用于緩沖的內存大小。Cached
:用于緩存的內存大小。SwapTotal
:交換空間的總大小。SwapFree
:空閑的交換空間大小。htop
命令htop
是 top
命令的增強版,提供了更加友好的界面和更多的功能。
htop
執行上述命令后,系統會進入一個實時監控界面,顯示類似如下的信息:
PID USER PRI NI VIRT RES SHR S CPU% MEM% TIME+ Command
1234 root 20 0 123M 45M 12M S 0.0 0.6 0:00.01 sshd
5678 user 20 0 456M 123M 45M S 0.0 1.5 0:01.23 bash
在 htop
命令的輸出中,內存信息位于 MEM%
列,表示每個進程占用的內存百分比。
F6
鍵選擇排序方式,可以選擇按內存使用率排序。q
鍵退出 htop
命令。dmidecode
命令dmidecode
命令用于從系統的DMI(Desktop Management Interface)表中獲取硬件信息,包括內存大小。
sudo dmidecode -t memory
執行上述命令后,系統會輸出類似如下的信息:
# dmidecode 3.2
Getting SMBIOS data from sysfs.
SMBIOS 2.7 present.
Handle 0x0008, DMI type 16, 23 bytes
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: None
Maximum Capacity: 32 GB
Error Information Handle: Not Provided
Number Of Devices: 4
Handle 0x0009, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x0008
Error Information Handle: Not Provided
Total Width: 64 bits
Data Width: 64 bits
Size: 8192 MB
Form Factor: DIMM
Set: None
Locator: DIMM 0
Bank Locator: BANK 0
Type: DDR4
Type Detail: Synchronous
Speed: 2400 MT/s
Manufacturer: Unknown
Serial Number: 00000000
Asset Tag: Not Specified
Part Number: Unknown
Rank: 1
Configured Clock Speed: 2400 MT/s
Maximum Capacity
:系統支持的最大內存容量。Size
:每個內存條的大小。在Linux系統中,查看內存大小的命令有很多種,每種命令都有其特定的用途和優勢。free
命令適合快速查看內存使用情況,top
和 htop
命令適合實時監控系統資源使用情況,vmstat
命令適合查看虛擬內存統計信息,cat /proc/meminfo
命令適合查看詳細的內存信息,而 dmidecode
命令則適合查看硬件層面的內存信息。
根據不同的需求,選擇合適的命令可以幫助我們更好地了解系統的內存使用情況,從而進行有效的系統管理和優化。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。