Ubuntu的ls命令卡住

文章轉載自:Ubuntu的ls命令卡住linux

昨天讓某人自行探索設置PATH環境變量,今天告訴我帳號異常,具體表現是bitwise登陸後sftp欄沒法顯示文件。作一些不懂原理的操做,接着出現本身沒法解決的奇怪問題,這是linux新手常見的問題。我打心底裏認爲應該是環境變量致使,問題應該手到擒來。ubuntu

因而用其帳號密碼登陸系統,習慣性的敲了ll命令,沒想到居然卡住了!按ctrl+c kill掉命令,接着嘗試ls,發現一樣卡住。這個現象讓我很吃驚,不單單是由於以前沒碰到過,更由於其home目錄下文件不多,不該該出現卡住的問題。code

好消息是問題緣由找到了:ls命令有問題,因此sftp不能列出文件。但ls爲何會卡住呢?進程

type ls查看ls的具體定義,輸出:ls is aliased tols -hF --color=tty'。接着看ls的具體路徑:which ls,結果爲/bin/ls`。二者都沒毛病,怎麼忽然之間就不幹活了?get

嘗試執行原生ls/bin/ls,正常顯示結果;加上-l選項:/bin/ls -l,一樣卡死了。根據別名lsll的具體形式,得出結論爲:-F選項致使命令卡死。-F用來顯示文件的真實身份,因此ls卡死的緣由應該是某個文件或文件夾損壞了。it

因其一直用gnome桌面環境,以前也出現gnome下顯示問題,經過重裝軟件包並重啓解決。此次的現象應該也是某個進程出了問題,用root用戶將其進程kill掉估計就能夠了:ps aux | grep username | grep -v | awk '{print $2}' | xargs -n1 kill -9awk

再次用其帳號密碼登陸,問題解決。登錄

本次解決問題簡單粗暴,想要找到出問題的文件建議用strace命令。strace跟蹤系統調用,能很快定位到具體出問題的文件。變量

相關文章
相關標籤/搜索