救火必備linux命令小結(一)------查問題

線上查問題的時候有些命令是必備,有必要把一些常用命令總結一下(這類命令和相關參數相當多,只總結自己常用得到的),查找問題一般可以分爲系統參數、性能參數、進程、內存、網絡、存儲、內存和jvm這麼幾類:

系統參數 
cat /proc/cpuinfo  cpu相關參數

cat /proc/meminfo 內存相關參數

cat /proc/loadavg 負載情況 
性能參數 
1)top

M:按內存使用排序

P:按CPU佔用排序

1:顯示各CPU的使用情況

k:kill進程

o:更多排序規則

回車:刷新數據
2)ulimit
ulimit -a:顯示本用戶的系統限制參數

ulimit -Hn <num>:更改最大Hard open file數

ulimit -Sn <num>:更改最大Soft open file數
3)vmstat
vmstat  5 -S m:以5秒的數據刷新vmstat數據(單位爲m)
進程 
1)ps 
ps aux:顯示所有用戶進程詳情

ps -ef:顯示所有用戶進程詳情另一種風格

如果顯示不全可以通過-w加寬,如ps aux -www
網絡 
1)netstat 
netstat  -na:顯示所有網絡連接

netstat  -nap:顯示所有網絡連接,並帶上進程相關信息

netstat  -nat:顯示所有tcp類型的網絡連接

netstat  -ln:顯示所有監聽狀態的網絡連接
存儲 
1)df -h:硬盤存儲總體情況
2)du --max-depth=1 -h <路徑>:指定路徑下所有文件夾的大小(遞歸一層)
3)du -sh <路徑>:指定目錄的大小
內存 
free -m
值得注意的是:空閒內存=free+buffers+cached=total-used
JVM

1)jstat
jstat -gccapacity  <jpid>:JVM各區的剩餘狀態
jstat -gcutil <jpid>:JVM各區的佔用情況
jstat -gccause <jpid>:jstat -gcutil基礎加上gc的原因
另外可以指定更新頻率,如-h5 1s:每一秒更新一次,並每隔5條加上header顯示
2)jps

目前正在運行中的java進程
3)jmap

jmap -dump:format=b,file=jmap.log <jpid>:生成heap dump文件
jmap -heap <jpid>:顯示jvm heap總體情況
jmap -histo:live <jpid> :顯示類實例佔用內存情況

4)jstack 
jstack -l <jpid>:顯示線程阻塞/死鎖情況

 

沒有對各命令及參數做詳細的說明,需要深入的就參看相關文檔,暫時就這麼多,有待工作中繼續補充


原文地址http://blog.csdn.net/cutesource/article/details/6055256

發佈了58 篇原創文章 · 獲贊 23 · 訪問量 19萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章