[ubuntu命令技巧]常用查看進程相關信息

 [ubuntu命令技巧]常用查看進程相關信息

背景:使用Linux系統一個最大的方便就是它有強大的命令行管理,這個Windows是沒法相比,加上平時工作中也使用命令行比較多,自然接受這種管理方式就會輕鬆很多,使用中也享受這種方式(以前看科幻電影留下的陰影不小,滿足下自我的神祕感吧),於是就有了 整理和收集網絡上分享以及自己在平時使用過程中命令行操作,供大家參考。


查看當前有哪些進程
ps -AFL

查看進程的啓動時間
ps -A -opid,stime,etime,args

查看當前用戶程序實際內存佔用,並排序
ps -u $USER -o pid,rss,cmd --sort -rss

統計程序的內存耗用
ps -eo fname,rss|awk '{arr[$1]+=$2} END {for (i in arr) {print i,arr[i]}}'|sort -k2 -nr

按內存從大到小排列進程
ps -eo "%C  : %p : %z : %a"|sort -k5 -nr

按cpu利用率從大到小排列進程
ps -eo "%C  : %p : %z : %a"|sort  -nr

查看當前進程樹
pstree

中止一個進程
kill 進程號(就是ps -A中的第一列的數字)
或者 killall 進程名
強制中止一個進程(在上面進程中止不成功的時候使用)
kill -9 進程號
或者 killall -9 進程名
圖形方式中止一個程序
xkill 出現骷髏標誌的鼠標,點擊需要中止的程序即可

查看進程打開的文件
lsof -p 進程的pid

顯示開啓文件abc.txt的進程
lsof abc.txt 

顯示22端口現在運行什麼程序
lsof -i :22 

顯示nsd進程現在打開的文件
lsof -c nsd

在後臺運行程序,退出登錄後,並不結束程序
nohup 程序 &
#查看中間運行情況 tail nohup

詳細顯示程序的運行信息
strace -f -F -o outfile <cmd>

增加系統最大打開文件個數
#ulimit -SHn
sudo vim /etc/security/limits.conf
文件尾追加
* hard nofile 4096
* soft nofile 4096
sudo vim /etc/pam.d/su
將 pam_limits.so 這一行註釋去掉
重起系統

清除殭屍進程
ps -eal | awk '{ if ($2 == "Z") {print $4}}' | xargs sudo kill -9

將大於120M內存的php-cgi都殺掉
ps -eo pid,fname,rss|grep php-cgi|grep -v grep|awk '{if($3>=120000) print $1}' | xargs sudo kill -9

Linux系統中如何限制用戶進程CPU佔用率
renice +10 `ps aux | awk '{ if ($3 > 0.8 && id -u $1 > 500) print $2}'`
#或直接編輯/etc/security/limits.conf文件。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章