Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

Linux 磁碟空間暴增排查實戰:du 指令快速定位佔用空間大戶

編輯:Linux 教學

案例背景

某門戶網站突發故障,控制台報日誌寫入錯誤。初步懷疑磁碟損壞觸發唯讀掛載,經機房確認硬體無告警,轉向軟體層面排查。

排查步驟

1. 確認磁碟使用率

df -h
# 發現 /dev/mapper/vg-root 使用率 100%

df -h 輸出

2. 定位大目錄 (du 核心技巧)

# 只統計第一層目錄大小,以人類可讀單位顯示
du -h --max-depth=1 / | sort -hr

# 輸出範例
7.8G    /weblogic
1.2G    /var
500M    /usr
...

根目錄結構 du 統計結果

關鍵參數:
-h:人類可讀單位 (K/M/G)
--max-depth=1:只顯示第一層,避免遞迴耗時
sort -hr:人類單位反向排序,大戶浮上來

3. 深入追蹤

cd /weblogic
du -h --max-depth=1 . | sort -hr
# 發現三個 .log 檔案各逼近 2.5GB,共佔 7.8GB

大型日誌檔案

根因與處置

  • 原因:應用廠商安全加固時移除了日誌自動清理排程,導致 WebLogic access/error/out 日誌無限增長。
  • 處置:truncate -s 0 access.log error.log out.log 清空日誌 (不重啟服務),並要求廠商恢復清理機制。
  • 預防:
    ① 所有應用日誌必須配置 logrotate (按大小/時間輪轉、壓縮、保留份數)。
    ② 監控系統加入磁碟使用率告警 (閾值 80%)。
    ③ 安全加固變更需經變更諮詢委員會 (CAB) 審核,評估對運維排程影響。

補充:其他尋找大檔案技巧

# 找出全系統 > 100MB 的檔案
find / -type f -size +100M -exec ls -lh {} \;

# 找出 /var/log 下 > 50MB 的檔案
find /var/log -type f -size +50M -ls

# ncdu (NCurses Disk Usage) 互動式視覺化工具,強烈推薦
yum install -y ncdu
ncdu /
Copyright © Windows教程網 All Rights Reserved