天天學一個 Linux 命令(117):atop

命令簡介

atop 命令是一款監控 Linux 系統資源與進程的工具,非內部命令,須要安裝。python

[root@centos7 ~]# atop
-bash: atop: command not found
[root@centos7 ~]# yum install atop -y

#Debian && Ubuntu
apt-get install atop

#Fedora
dnf install atop

atop 是以必定的頻率記錄系統的運行狀態,所採集的數據包含系統資源(CPU、內存、磁盤和網絡)使用狀況和進程運行狀況,並能以日誌文件的方式保存在磁盤中,服務器出現問題後,咱們可獲取相應的atop日誌文件進行分析,atop是一款開源軟件。centos

語法格式

atop -w  file  [-S] [-a] [interval [samples]]
atop -r [file] [-b [YYYYMMDD]hhmm] [-e [YYYYMMDD]hhmm] [-flags]

選項說明

進程圖的快捷鍵緩存

g  #默認輸出
m  #內存相關輸出
d  #磁盤相關輸出
n  #網絡相關輸出
c  #命令行輸出
u  #查看對應的用戶資源使用狀況
p  #顯示全部每一個進程的全部信息佔用狀況(disk、mem、io)
P(大寫) #正則匹配,顯示全部匹配到的進程
q  #退出

應用舉例

[root@centos7 ~]# atop
ATOP - centos7              2021/03/29  08:33:28              ----------------              10s elapsed
PRC |  sys    0.18s |  user   0.35s  | #proc     95  |  #tslpu     0 |  #zombie    0  | #exit       0  |
CPU |  sys     1% |  user     3%  | irq     0%  |  idle     96% |  wait      0%  | ipc notavail  |
CPL |  avg1    0.27 |  avg5    0.13  | avg15   0.13  |  csw     1088 |  intr     954  | numcpu     1  |
MEM |  tot   972.3M |  free  203.3M  | cache 563.1M  |  buff    2.1M |  slab   83.8M  | hptot   0.0M  |
SWP |  tot     2.0G |  free    2.0G  | swcac   0.0M  |               |  vmcom 266.0M  | vmlim   2.5G  |
NET |  transport    |  tcpi      1  | tcpo       1  |  udpi       1 |  udpo       1  | tcpao      0  |
NET |  network      |  ipi      17  | ipo       3  |  ipfrw       0 |  deliv     17  | icmpo      1  |
NET |  ens33   ---- |  pcki     20  | pcko       5  |  sp    0 Mbps |  si    6 Kbps  | so    1 Kbps  |

   PID SYSCPU  USRCPU RDELAY   VGROW  RGROW   RDDSK  WRDSK  ST  EXC  THR  S CPUNR   CPU CMD         1/1
 18378  0.08s   0.33s  0.11s      0K     0K      0K     0K  --    -    3  S     0    4% python3
 27620  0.04s   0.02s  0.00s      0K     0K     0K     0K  --    -    1  R     0    1% atop
 27664  0.04s   0.00s  0.02s      0K     0K     0K     0K  --    -    1  S     0    0% kworker/0:1
   404  0.02s   0.00s  0.05s      0K     0K      0K     0K  --    -    1  R     0    0% xfsaild/dm-0
   872  0.00s   0.00s  0.00s      0K     0K      0K     0K  --    -    5  S     0    0% tuned
 19670  0.00s   0.00s  0.00s      0K     0K      0K     0K  --    -    1  S     0    0% sshd
   870  0.00s   0.00s  0.00s      0K     0K      0K     0K  --    -    3  S     0    0% rsyslogd
     1  0.00s   0.00s  0.00s      0K     0K     0K     0K  --    -    1  S     0    0% systemd
     6  0.00s   0.00s  0.09s      0K     0K     0K     0K  --    -    1  S     0    0% ksoftirqd/0
     9  0.00s   0.00s  0.29s      0K     0K     0K     0K  --    -    1  R     0    0% rcu_sched
 26820  0.00s   0.00s  0.00s      0K     0K     0K     0K  --    -    1  S     0    0% kworker/0:2
輸出信息的詳細說明以下
ATOP列:該列顯示了主機名、信息採樣日期和時間點

PRC列:該列顯示進程總體運行狀況
sys、usr字段  #進程在內核態和用戶態的運行時間
proc字段      #進程總數
zombie字段    #僵死進程的數量
exit字段      #atop採樣週期期間退出的進程數量

CPU列:該列顯示CPU總體(即多核CPU做爲一個總體CPU資源)的使用狀況

sys、usr字段   #CPU被用於處理進程時,進程在內核態、用戶態所佔CPU的時間比例
irq字段   #CPU被用於處理中斷的時間比例
idle字段  #CPU處在徹底空閒狀態的時間比例
wait字段  #CPU處在「進程等待磁盤IO致使CPU空閒」狀態的時間比例

cpu列:該列顯示某一核cpu的使用狀況

CPL列:該列顯示CPU負載狀況
avg一、avg5和avg15字段  #過去1分鐘、5分鐘和15分鐘內運行隊列中的平均進程數量
csw字段   #上下文交換次數
intr字段  #中斷髮生次數

MEM列:該列顯示內存的使用狀況
tot字段    #物理內存總量
free字段   #空閒內存的大小
cache字段  #用於頁緩存的內存大小
buff字段   #用於文件緩存的內存大小
slab字段   #系統內核佔用的內存大小

SWP列:該列顯示交換空間的使用狀況
tot字段   #交換區總量
free字段  #空閒交換空間大小

PAG列:該列顯示虛擬內存分頁狀況
swin、swout字段  #換入和換出內存頁數

DSK列:該列顯示磁盤使用狀況
sda字段   #磁盤設備標識
busy字段  #磁盤忙時比例
read、write字段  #讀、寫請求數量


NET列:顯示網絡情況,包括傳輸層(TCP和UDP)、IP層以及各活動的網口信息

XXXi 字段  #各層或活動網口收包數目
XXXo 字段  #各層或活動網口發包數目

相關文章
相關標籤/搜索