iostat 直接查看 iostat 1
iostat -x 磁盤使用html
%util:表示I/O等待,佔用CPU的等待時間,這個數字大,可能硬盤有故障
iotop 磁盤使用
yum - y install iotoplinux
動態顯示 由高到低ios
Total DISK READ : 0.00 B/s | Total DISK WRITE : 0.00 B/s Actual DISK READ: 0.00 B/s | Actual DISK WRITE: 0.00 B/s
free 查看內存使用狀況緩存
free -h 人性化顯示
內存會預分配一部分給buffer / cache 緩衝/緩存網絡
buffer 緩衝:加速了數據的 寫入 從CPU到內存buffer再到磁盤 cache 緩存:加速了數據的 讀取 從磁盤到內存cache再到CPU total = used+free+buff/cache 真· 剩餘物理內存
avaliable 包含free 和 buffer/cache 剩餘部分多線程
ps 查看系統進程 靜態的一次顯示出來
ps aux 和 ps -elf 同樣
可kill +PID 殺進程
porc 目錄下的目錄是進程PID的運維
STAT 部分說明 s 主進程 R run 運行狀態的進程 時間段使用CPU S sleep狀態的進程 T 暫停的進程 Z 僵死的進程 D 不能中斷的進程 < 高優先級的進程 N 低優先級進程 L 內存中被鎖了內存分頁 `+` 前臺進程 l 多線程進程
netstat 查看網絡狀態socket
netstat -lnp 查看監聽端口 LISTEN 監聽 netstat -an 查看系統的網絡鏈接情況TCPID netstat -lntp 只看tcp協議。不包含socket netstat -lnutp 只看tcp udp協議 TIME-WAIL 等待下次鏈接狀態
小技巧tcp
netstat -an | awk '/^tcp/{++sta[$NF]} END {for(key in sta) print key,"\t",sta[key]}' [root@huidou01 ~]$ netstat -an | awk '/^tcp/{++sta[$NF]} END {for(key in sta) print key,"\t",sta[key]}' LISTEN 4 ESTABLISHED 1 #抓監聽數 #ss -an 和nestat 同樣,可是不會顯示進程名字
應用層、傳輸層、網際互聯層、網路接口層
傳輸層ide
傳輸層對應於OSI參考模型的傳輸層,爲應用層實體提供端到端的通訊功能,保證了數據包的順序傳送以及數據完整性
該層定義了兩個主要的協議:傳輸控制協議(TCP)和用戶數據報文協議(UDP)
TCP :可靠的,面向鏈接協議(網絡、郵件) UDP:不可靠的,面向無鏈接的協議
TCP/IP 三次握手
主機A 主機B 1 . 發送SYN信息 (序號=X) 1->2 (1次) 2 .接受SYN信息(序列號=X)發送SYN、ACK信息 2<-3 (2次) 3 . 接受SYN、ACK信息 發送ACK信息(確認號=y+1) 3->3 (3次) 4 . 接受ACK信息(確認號=y+1) TCP/IP 四次握手結束
tcpdump 系統抓包工具
tcpdump -nn 第一個n 用IP顯示,第二個n 端口號 tcpdump -i 指定網卡名字 tcpdump port 22 指定端口 not port tcpdump -c 100 指定抓包100個 -w 指定放入文件目錄 抓出來的包不能直接cat 要用 -r 讀 tcpdump -r 讀抓包的文件信息 #擴展tcp三次握手四次揮手 http://www.doc88.com/p-9913773324388.html
tshark 相似tcpdump
yum install -y wireshark
tshark -n -t a-R http.request -T fields -e "frame.time" -e "ip.src" -e "http.host" -e "http.request.method" -e "http.request.uri" #相似與WEB訪問日誌 #tshark幾個用法: http://www.aminglinux.com/bbs/thread-995-1-1.html
擴展:
tcp三次握手四次揮手 http://www.doc88.com/p-9913773324388.html
tshark幾個用法:http://www.aminglinux.com/bbs/thread-995-1-1.html