dstat,htop,top,ps命令 (Blog 8)

 

Linux哲學思想之一:一切皆文件:
內核將其參數全部映射為文件;這些文件保存在/proc, /sys目錄中;
/proc目錄:保存內核及進程狀態信息,是內核參數的映射;

內核參數:
可調參數:調整運行特性;/proc/sys
不可調參數:輸出內核統計信息及狀態信息;

進程狀態:/proc/# 與進程號同名的目錄,目錄下存放許多當前進程相關信息;

進程號:PID,標識當前系統上的某個進程;

抽象成文件,其內容不方便查看;就用一些命令,為了更直觀地查看,輸出這些內核狀態統計數據;

ps命令:
格式:
UNIX:有-
BSD: 無-
GNU: —

常用組合:
ps axu
a: affinity, 與終端相關;
x: 與終端無關;
u: user, 與用戶為中心;
ps -ef
-e: 與終端相關及與終端無關;
-f: full format,完整格式;
ps -eFH
-H: Hierarchy, 層級結構顯示;
-F:Full format,更完整的格式;

所有組合中相關字段解釋:
PID 進程PID
TTY 進程類型
STAT 進程狀態
TIME 占據CPU時間”累積”時長
COMMAND/CMD 運行為進程的程序文件;

USER 進程的身份
%CPU “累積”占用CPU百分比;
%MEM 占據整個內存空間的百分比;
VSZ 占據虛擬內存大?。槐环Q為”虛擬內存集” 虛擬內存:線性地址空間;可被交換到swap中的數據 …;
RSS 占據物理內存大?。罕环Q為”常駐內存集” 不可被交換到swap中的指令 …;
START/STIME 啟動進程的系統時間;

PPID 進程的父進程的ID號;
C 進程占用CPU百分比;

進程類型
與終端相關:/dev/tty#, /dev/ttyS#, /dev/pts/#
與終端無關:?

進程狀態
運行:Runing, R
停止:sTopping, T
僵死:Zombie, Z

前臺進程:+
多線程進程:l
高優先:<
低優先:N

不可中斷睡眠:D (uninterrupt sleeping)
可中斷睡眠:S (interrupt sleeping)

領導進程:s (session leader)

top命令:
top option
選項:
-b ;以批次顯示;默認不切換批次;
-n # ;與-b連用;顯示#批;
-d # ;delay,延遲;

內建命令:
l: 隱藏或顯示topk欄; uptime命令也可獲取;
t: 隱藏或顯示task或cpu信息;
1: cpu按個顯示或總體顯示;
m: 隱藏或顯示mem或swap信息;
k: 終止指定PID的進程;
d: 調整delay值;

顯示信息:
top – 17:25:02 up 3:03, 5 users, load average: 0.11, 0.13, 0.10
系統時間; date
系統運行時間,
當前登陸用戶; who | wc -l
平均負載: 過去1,5,15分鐘等待運行進程的隊列長度;其值應該小于CPU數量;

Tasks: 369 total, 2 running, 367 sleeping, 0 stopped, 0 zombie
進程狀態: 進程個數; 運行進程數; 睡眠進程數; 停止運行進程數; 僵尸進程數;

KiB Mem : 1003160 total, 390552 free, 168096 used, 444512 buff/cache
內存(KiB): 總內存; 空閑內存; 使用內存; buff/cache占用; (實際空閑: free + buff/cache)

KiB Swap: 2097148 total, 2097148 free, 0 used. 616460 avail Mem
swap(KiB): 總SWAP大小; 空閑swap; 使用swap; 可用內存;

%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
CPU: us: 用戶空間占據CPU百分比; sy: 內核空間占據CPU百分比; ni: 調整NICE值額外占據CPU百分比; id: 空閑百分比; hi: 硬件中斷占據CPU百分比; si: 軟中斷占據CPU百分比; st: 被虛擬化技術偷走占據CPU百分比; cs: 進程切換占據CPU百分比;

PR: PR+100=優先級范圍;
NI: NICE值
VIRT: 虛擬內存集: 虛擬內存占據大小;
RES: 常駐內存集: 不可被交換到swap中的指令;
SHR: 共享內存: 進程共用的共享庫;
%CPU: 進程占據CPU百分比
%MEM: 占據內存整個空間百分比;
TIME+: CPU的累積時長;

htop命令:
配置EPEL源:
~]# cat /etc/yum.repos.d/CentOS-EPEL.repo
# fedora epel
[epel]
name=Fedora EPEL for CentOS-$releasever
baseurl=https://mirrors.aliyun.com/epel/$releasever/$basearch/
gpgcheck=0
gpgkey=https://mirrors.aliyun.com/epel/RPM-GPG-KEY-EPEL-7
enabled=1
~]# yum -y install htop

htop option
選項
-d # ;delay,延遲;
-u UserName:僅顯示指定用戶的進程
-s COLUME: 以指定字段進行排序;

內建命令
u: 顯示指定用戶的進程
H:線程
K:內核線程
F: 高亮光標跟蹤進程;
P M T: CPU, MEM, TIME
F6 > : 選擇字段排序
a : affinity 進程綁定在某CPU核心上運行;默認在所有CPU均可運行;
l : 查看選定進程所打開的文件;F5刷新
s : 查看選定進程發起的系統調用;F8自動滾屏 F9停止滾屏
t : ps -eFH 以層級結構顯示父子關系;

dstat命令:
非常精巧生成系統資源統計數據;
~]# yum -y install dstat
dstat options [delay [count]]

-c, –cpu: 顯示cpu相關信息:
-C #,#,total
-d,–disk: 顯示磁盤相關信息:
-D #,#,total
-g 內存頁換進換出; 以內存為中心顯示數據統計;磁盤至內存;
-m memory
-n interface
-p process 可中斷睡眠,不可中斷睡眠,3.4
-r io 顯示IO請求的相關統計數據;
-s swap的相關統計數據;
-t time

–aio enable aio stats (asynchronous I/O)
–ipc enable ipc stats (message queue, semaphores, shared memory)
–raw enable raw stats (raw sockets)
–socket enable socket stats (total, tcp, udp, raw, ip-fragments)
–tcp enable tcp stats (listen, established, syn, time_wait, close)
–udp enable udp stats (listen, active)
–unix enable unix stats (datagram, stream, listen, active)

expensive 消耗:
–top-bio show most expensive block I/O process
–top-cpu show most expensive CPU process
–top-int show most frequent interrupt
–top-io 最占用IO的進程;
–top-latency: 延遲最大的進程;

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/89050

(0)
逆神陽逆神陽
上一篇 2017-11-27 23:13
下一篇 2017-11-27 23:19

相關推薦

  • Linux基礎知識之壓縮、解壓、歸檔工具

    壓縮、解壓、歸檔工具     壓縮格式:gz,bz2,xz,zip,Z 壓縮算法不同,壓縮比也會不同     1.compress/uncompress (.Z) compress [-dfvcVr] [-b maxbits] [file …] -d: 解壓縮,相當于 -c: 結果輸出至標準輸出, 不刪除原…

    Linux干貨 2016-08-19
  • linux內核及centos系統啟動流程

    Linux組成 Linux: kernel+rootfs(根文件系統) kernel功能: 進程管理、內存管理、網絡管理、驅動程序、文件系統、安全功能 rootfs:程序和glibc  庫:函數集合, function, 調用接口(頭文件負責描述)      過程調用:proce…

    Linux干貨 2016-09-10
  • 用戶組和權限管理

    一、3A認證     Authentication:認證     Autherization:授權     Accoutiong|Audition:審計 二、用戶user      linu…

    Linux干貨 2016-08-04
  • ansible部署KeepAlived動態站點

    一、設計原因 利用ansible可以自動化部署KeepAlived 的雙方模型(其中包括兩個動態的站點),多組服務器需要一樣的部署時 可以利用ansible寫的程序來代替重復性的操作。 二、設計拓撲結構及服務器詳情   三、詳細步驟 1、環境的搭建 (1)安裝ansible,同時配置私鑰免密碼進行通信 [root@localhost ~]# ssh…

    2015-05-13
  • grep常見應用實例

      在我們實際應用中,正則表達式的應用是非常廣泛的,今天我就大家分享幾個比較常見的正則表達式的應用實例,不周之處,還望高人多多指點!   一:使用正則表達式搜索郵箱地址 二:使用正則表達式搜索手機號 三:使用正則表達式搜索身份證號 四:使用正則表達式取網絡配置文件中的IP地址的過程解析   一:使用正則表達式搜索郵箱地址: [r…

    系統運維 2016-08-08
  • DNS服務器—-主從服務器搭建

    一、環境準備   1、準備三臺測試       主DNS服務器地址:192.168.10.203       從DNS服務器地址:192.168.10.103       測試主機地址:  192.168.10.120 …

    Linux干貨 2015-05-18
欧美性久久久久