df /du命令卡死,用什么手段消除問題

現(xiàn)象描述

前幾天在部署應(yīng)用的時(shí)候,發(fā)現(xiàn)linux機(jī)器上執(zhí)行命令反應(yīng)很慢,甚至出現(xiàn)卡死或者直接session丟失的現(xiàn)象。
進(jìn)一步研究,懷疑是不是磁盤空間不夠,ls命令顯示都很慢。但是top命令執(zhí)行的時(shí)候,顯示系統(tǒng)的資源還是正常的,負(fù)載壓力也不大,CPU大部分在idle。

于是嘗試執(zhí)行du命令。

結(jié)果發(fā)現(xiàn),命令直接卡死,沒有任何輸出,撤銷命令也撤銷不了,除非把session退出,否則無法操作。

嘗試再次連接vm,然后執(zhí)行ps命令,想查看是不是有什么異常的進(jìn)程。

結(jié)果發(fā)現(xiàn),ps命令也卡死,沒有輸出,同樣撤銷不了命令。

到這個(gè)地方感覺玩完了,我連查看手段都不行,怎么定位問題??反正能保證的是機(jī)器是沒有性能問題的。最不濟(jì)的解決方案是revert機(jī)器,或者重啟機(jī)器。但是也有種擔(dān)心機(jī)器起不來。
后來想著上述命令卡死的地方在哪里,于是祭上debug 命令,用strace du來看,du命令在執(zhí)行過程中哪里報(bào)錯(cuò)了。
果不其然,發(fā)現(xiàn)有些docker 卷的關(guān)聯(lián)點(diǎn)丟失了。導(dǎo)致du檢索有問題,不能夠處理這種異常情況。手動(dòng)把這些個(gè)卷清理下,然后就發(fā)現(xiàn)du命令正常。ps命令也恢復(fù)了。

綜上,strace命令還是不錯(cuò)的,在我們檢測(cè)系統(tǒng)命令無顯示或者卡死的時(shí)候,來追蹤執(zhí)行不乏是一種很好的解決手段。

image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容