使用iostat命令查看磁盤負載狀況html
iostat -x
重點關注:%util佔比,若是這個值越大則表示你的硬盤越忙,這也會是你係統變慢的緣由;python
查看具體哪一個進程在讀寫,使用iotop,首次使用須要Yum安裝linux
yum install -y iotop
安裝完成以後通常就可使用,此處本人使用的是centos7.5版本運行iotop出現了一個錯誤,提示文件有問題:ios
通過查詢及羣裏小夥伴的分享,才找到緣由:centos
新版本linux系統的status信息不必定都是:\t來分割信息的了。iotop還沒更新過來,因此分割會出現有些信息分割出來只有一個key,沒有value.目前iotop還沒更新過來,因此臨時解決辦法就是跳過這些分割出來只有一列的信息。數組
解決辦法:安全
編輯圖示標紅文件,找到196行,添加以下代碼:bash
if not line.strip() : continue
python中格式空格比較重要,注意縮進問題,添加以下圖所示,而後:wq保存退出使用便可服務器
使用 iotop 命令繼續查看具體進程:網絡
iotop
查看當前系統的總內存大小以及使用內存的狀況。Centos7比Centos6更加簡潔了一些,但大致內容一致。
使用 free 命令
[root@yolks1 ~]# free total used free shared buff/cache available Mem: 1865276 151884 1492120 8924 221272 1535144 Swap: 2097148 0 2097148
展現的幾列表明的意思分別是:
** cache內存 : 磁盤(慢)--->> 內存(cache) --->> cpu(快) **
** buffer內存 :cpu(快)--->> 內存(buffer) --->> 磁盤(慢) **
** available = free + 欲分配buff/cache **
** total = used + available**
free還有-m的用法(表示以M爲單位)或者使用-h(以合適的大小顯示內存)
[root@yolks1 ~]# free -m total used free shared buff/cache available Mem: 1821 148 1457 8 216 1499 Swap: 2047 0 2047 [root@yolks1 ~]# free -h total used free shared buff/cache available Mem: 1.8G 148M 1.4G 8.7M 216M 1.5G Swap: 2.0G 0B 2.0G
重點關注點 : ** available **
查看系統進程
使用ps命令查看默認不帶參數
[root@yolks1 ~]# ps PID TTY TIME CMD 1389 pts/0 00:00:00 bash 2417 pts/0 00:00:00 ps
因爲默認顯示的內容有限,經常使用的選項有 -aux 或 -elf查看進程詳細信息
篩選指定的任務進程 -aux | grep * 過濾
[root@yolks1 ~]# ps aux |grep sshd root 959 0.0 0.2 110212 4096 ? Ss 20:31 0:00 /usr/sbin/sshd -D root 1387 0.0 0.2 154088 5232 ? Ss 20:31 0:00 sshd: root@pts/0 root 2477 0.0 0.0 112676 980 pts/0 R+ 21:53 0:00 grep --color=auto sshd
展現經常使用列含義:
netstat : 用於打印網絡鏈接情況、系統所開放端口、路由表等信息
選項:
使用an選項或lndp查看到有1列State狀態,具體值參考tcp/ip協議的通訊狀態文章,以下連接
分享拓展:統計目前系統各通訊的計數命令(客戶端和服務端在通訊數量,1000 之內都是正常的)
netstat -an |awk '/^tcp/ {++sta[$NF]} END {for(key in sta) print key,"\t",sta[key]}'
上面命令使用語法參考文章:
抓包(packet capture)就是將網絡傳輸發送與接收的數據包進行截獲、重發、編輯、轉存等操做,也用來檢查網絡安全。抓包也常常被用來進行數據截取等。
使用yum安裝
yum install -y tcpdump
tcpdump工具經常使用來查看某個網卡上的數據流向即網絡行爲,尤爲發現網絡流量異常時,使用抓包工具進行抓取ip分析行爲
經常使用參數 -nn (以ip地址顯示) 這裏因爲使用的虛擬機因此須要指定網卡加了 -i(指定網卡名稱) 參數,命令輸完回車,屏幕會不斷打印出字符,字符串不停刷新,這些內容就是傳輸數據的流向過程以及數據包,這裏重點關注 第三列和第四列 如上圖圈出所示,表示從哪一個 ip+端口 鏈接到哪一個 ip+端口,Ctrl+C 退出程序。
選項
cap文件讀取方式
tcpdump -r xxx.cap
經常使用結合:
tcpdump -nn -i ens33 port 22 //指定抓取22端口的包 tcpdump -nn -i ens33 not port 22 //指定抓取除了22端口之外的包 tcpdump -nn -i ens33 tcp and not port 22 //指定抓取tcp的包,但排除掉22端口的 tcpdump -nn -i ens33 port 22 and port 24 //指定抓取只有22和24端口的包
linux下更多抓包選項參考文章 :
yum安裝
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"
經常使用用法: