Linux進程僵死原因排查思路


常情況下腳本執行時間幾秒完成,如果超過很長時間執行完成,可能是進程等待某些資源引起阻塞(假死狀態)。

場景:xx.perl讀取文件並發送郵件

現象:執行腳本的進程僵死(卡住)

排查:ps -ef |grep “perl xx.perl”

 

跟蹤:strace -p 16634  (跟蹤進程執行時的系統調用和所接收的信號(即它跟蹤到一個進程產生的系統調用,包括參數、返回值、執行消耗的時間),卡在read(3,位置

 

查看進程文件描述符目錄:查看3進行的是socket操作,也就是卡在通信。

 

使用netstat -anoutp |grep 24432 查看通信的目標是什么:端口ip:25,可以確定是郵件服務器 

總結:程序卡在與郵件服務器通信環節導致進程卡住。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM