目錄
- 1、核心命令
- 2、常用命令
- 3、核心命令詳解
- 3.1、ps aux
- 3.2、Top
- 1、上半部分顯示了整體系統(tǒng)負(fù)載情:
- 2、下半部分顯示了各個(gè)進(jìn)程的運(yùn)行情況:
1、核心命令
linux 監(jiān)控網(wǎng)絡(luò)IO、磁盤(pán)、CPU、內(nèi)存:
CPU:vmstat 、sar –u、top
磁盤(pán)IO:iostat –xd、sar –d、top
網(wǎng)絡(luò)IO:iftop -n、ifstat、dstat –nt、sar -n DEV 2 3
磁盤(pán)容量:df –h
內(nèi)存使用:free –m、top
2、常用命令
(1)內(nèi)存:條數(shù)、每條大小、內(nèi)存是DDR4還是DDR3、內(nèi)存頻率是2666MT/S還是1600MT/s
條數(shù): dmidecode|grep -A5 'Memory Device'|grep Size | grep -v Installed |wc -l
每條大?。?dmidecode|grep -A5 'Memory Device'|grep Size | grep -v Installed |uniq
內(nèi)存類(lèi)型: dmidecode | grep -A16 "Memory Device" | grep 'Type:' |grep -v Unknown |uniq
內(nèi)存頻率: dmidecode | grep -A16 "Memory Device" | grep 'Speed' |grep -v Unknown |uniq
(2)硬盤(pán):塊數(shù),大小
fdisk -l | grep "Disk /dev/sd"
(3)查看什么進(jìn)程占用端口
netstat -antp | fgrep <port>
(4)查看進(jìn)程資源
jps -l # 獲取進(jìn)程idjmap -heap 21046
(5)CPU個(gè)數(shù)
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
(6)CPU核數(shù)
cat /proc/cpuinfo| grep "cpu cores"| uniq
(7)CPU主頻
cat /proc/cpuinfo| grep "model name"| uniq
3、核心命令詳解
3.1、ps aux
ps命令用于查看系統(tǒng)中的進(jìn)程狀態(tài)
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
USER,進(jìn)程所有者的用戶(hù)名。
PID,進(jìn)程號(hào),可以唯一標(biāo)識(shí)該進(jìn)程。
%CPU,進(jìn)程自最近一次刷新以來(lái)所占用的CPU時(shí)間和總時(shí)間的百分比。
%MEM,進(jìn)程使用內(nèi)存的百分比。
VSZ,進(jìn)程使用的虛擬內(nèi)存大小,以K為單位。
RSS,進(jìn)程占用的物理內(nèi)存的總數(shù)量,以K為單位。
TTY,進(jìn)程相關(guān)的終端名。
STAT,進(jìn)程狀態(tài),用(R--運(yùn)行或準(zhǔn)備運(yùn)行;S--睡眠狀態(tài);I--空閑;Z--凍結(jié);D--不間斷睡眠;W-進(jìn)程沒(méi)有駐留頁(yè);T停止或跟蹤。)這些字母來(lái)表示。
START,進(jìn)程開(kāi)始運(yùn)行時(shí)間。
TIME,進(jìn)程使用的總CPU時(shí)間。
COMMAND,被執(zhí)行的命令行。
3.2、Top
top命令是Linux下常用的性能分析工具,能夠?qū)崟r(shí)顯示系統(tǒng)中各個(gè)進(jìn)程的資源占用狀況,類(lèi)似于Windows的任務(wù)管理器。
1、上半部分顯示了整體系統(tǒng)負(fù)載情:
- top一行:從左到右依次為當(dāng)前系統(tǒng)時(shí)間,系統(tǒng)運(yùn)行的時(shí)間,系統(tǒng)在之前1min、5min和15min內(nèi)cpu的平均負(fù)載值
- Tasks一行:該行給出進(jìn)程整體的統(tǒng)計(jì)信息,包括統(tǒng)計(jì)周期內(nèi)進(jìn)程總數(shù)、運(yùn)行狀態(tài)進(jìn)程數(shù)、休眠狀態(tài)進(jìn)程數(shù)、停止?fàn)顟B(tài)進(jìn)程數(shù)和僵死狀態(tài)進(jìn)程數(shù)
- Cpu(s)一行:cpu整體統(tǒng)計(jì)信息,包括用戶(hù)態(tài)下進(jìn)程、系統(tǒng)態(tài)下進(jìn)程占用cpu時(shí)間比,nice值大于0的進(jìn)程在用戶(hù)態(tài)下占用cpu時(shí)間比,cpu處于idle狀態(tài)、wait狀態(tài)的時(shí)間比,以及處理硬中斷、軟中斷的時(shí)間比
- Mem一行:該行提供了內(nèi)存統(tǒng)計(jì)信息,包括物理內(nèi)存總量、已用內(nèi)存、空閑內(nèi)存以及用作緩沖區(qū)的內(nèi)存量
- Swap一行:虛存統(tǒng)計(jì)信息,包括交換空間總量、已用交換區(qū)大小、空閑交換區(qū)大小以及用作緩存的交換空間大小
2、下半部分顯示了各個(gè)進(jìn)程的運(yùn)行情況:
PID: 進(jìn)程pid
USER: 拉起進(jìn)程的用戶(hù)
PR: 該列值加100為進(jìn)程優(yōu)先級(jí),若優(yōu)先級(jí)小于100,則該進(jìn)程為實(shí)時(shí)(real-time)進(jìn)程,否則為普通(normal)進(jìn)程,實(shí)時(shí)進(jìn)程的優(yōu)先級(jí)更高,更容易獲得cpu調(diào)度,以上輸出結(jié)果中,java進(jìn)程優(yōu)先級(jí)為120,是普通進(jìn)程,had進(jìn)程優(yōu)先級(jí)為2,為實(shí)時(shí)進(jìn)程,migration 進(jìn)程的優(yōu)先級(jí)RT對(duì)應(yīng)于0,為最高優(yōu)先級(jí)
NI: 進(jìn)程的nice優(yōu)先級(jí)值,該列中,實(shí)時(shí)進(jìn)程的nice值為0,普通進(jìn)程的nice值范圍為-20~19
VIRT: 進(jìn)程所占虛擬內(nèi)存大?。J(rèn)單位kB)
RES: 進(jìn)程所占物理內(nèi)存大小(默認(rèn)單位kB)
SHR: 進(jìn)程所占共享內(nèi)存大?。J(rèn)單位kB)
S: 進(jìn)程的運(yùn)行狀態(tài)
%CPU: 采樣周期內(nèi)進(jìn)程所占cpu百分比
%MEM: 采樣周期內(nèi)進(jìn)程所占內(nèi)存百分比
TIME+: 進(jìn)程使用的cpu時(shí)間總計(jì)
COMMAND: 拉起進(jìn)程的命令
根據(jù)以上命令,提前設(shè)置監(jiān)控預(yù)警。監(jiān)控預(yù)警能夠讓你及時(shí)發(fā)現(xiàn)系統(tǒng)的性能信息、比如磁盤(pán)快滿(mǎn)了,內(nèi)存超負(fù)荷了,我們可以提前作出調(diào)整。
最后,遇到問(wèn)題不要慌。根據(jù)經(jīng)驗(yàn),再通過(guò)命令排查內(nèi)存、磁盤(pán)、網(wǎng)絡(luò)、cpu,問(wèn)題無(wú)非就這幾類(lèi),切不可著急忙慌亂改一通,讓簡(jiǎn)單問(wèn)題復(fù)雜化,希望大家以后多多支持腳本之家!