**Ncdu – 基於ncurses庫的磁碟使用分析器的安裝介紹及使用**
前言:離職這段時間,更瞭解了自己的不足,重新開始寫部落格激勵自己學習!
摘要:Ncdu(NCursesDiskUsage)是一個基於Ncurses庫的du命令的介面。它通過大家熟知的du命令,為使用者提供一個快速且容易被使用的介面。它可以顯示磁碟使用的百分比,且允許你使用ncurses庫的方式在目錄之間導航。
介紹:在運維工作中,經常會遇到磁碟空間被寫滿的情況,大部分情況是根分割槽。這種情況需要儘快處理以免影響系統上其它服務。這時候就需要去定位是哪些檔案、目錄佔用了較大空間,以此判斷是哪個服務異常,進而解決問題。在檔案系統中找出大檔案是一件非常耗時的事情,當 inodes 數很大時尤甚。好在 ncdu 高效地完成了掃描檔案系統各檔案、目錄佔用的工作。
[
應用Ncdu 當前最新的Ncdu版本支援匯出文字的模式,可以結合指令碼語言來自動化定位較大資料夾和檔案。省去人工定位的時間,能夠最大程度減輕維護人員的在這件事情上的時間消耗。Ncdu輸出的檔案內容格式是一個list(如下所示),包含了name,asize,ino欄位等。分別表示檔名檔案實際所佔用大小(The apparent file size)和節點號( Inode number)。 如下例: ncdu / -o test.txt ##將根目錄下所有資料夾和檔案的使用情況輸出到test.txt檔案當中 more test.txt |grep “asize”|sed ‘s/"/,/g’|awk -F , ‘{print $4,$8}’|sort -t “:” -k2 -rn|head -n 10 ##根據輸出的檔案中的內容輸出檔案和資料夾的名稱及實際大小前十名的