磁盤又雙叒叕爆紅了?一條 Linux 命令秒級揪出「空間殺手」!
作者:didiplus
面對上百G的存儲空間,你是否也曾絕望發(fā)問:“到底是誰吃掉了我的磁盤?!”別慌!今天分享一條運(yùn)維老司機(jī)私藏的命令,30秒精準(zhǔn)定位罪魁禍?zhǔn)住?/div>
凌晨兩點(diǎn),刺耳的告警短信驚醒夢中人:「服務(wù)器磁盤使用率95%!」
睡眼朦朧打開終端,面對上百G的存儲空間,你是否也曾絕望發(fā)問:“到底是誰吃掉了我的磁盤?!”
別慌!今天分享一條運(yùn)維老司機(jī)私藏的命令,30秒精準(zhǔn)定位罪魁禍?zhǔn)祝?/p>
find / -size +500M -exec ls -lh {} \;
命令拆解:
這條命令如同磁盤空間的「雷達(dá)掃描儀」:
- find /:從根目錄開始地毯式搜索
- -size +500M:鎖定500MB以上的巨無霸文件
- -exec ls -lh {} \;:用人類可讀格式展示詳情(權(quán)限/大小/路徑)
六大實(shí)戰(zhàn)場景:從此告別存儲焦慮
場景1:緊急清理磁盤火山
find /var/log -size +100M -exec ls -lh {} \;作用:快速揪出膨脹的日志文件(如Nginx/Apache日志),及時截?cái)嗷驓w檔
場景2:拯救混亂的媒體庫
find /home -name "*.mp4" -size +1G -exec ls -lh {} \;作用:精準(zhǔn)捕獲用戶上傳的超大視頻,遷移至對象存儲釋放本地空間
場景3:扼殺失控的日志怪獸
find /app -mtime +30 -size +500M -exec du -sh {} \;作用:捕獲30天未處理且超500MB的應(yīng)用日志,防止單個日志撐爆磁盤
場景4:清理幽靈臨時文件
find /tmp -type f -size +300M -exec rm -fv {} \;作用:自動清除/tmp中殘留的大臨時文件(加-v參數(shù)顯示刪除記錄)
場景5:備份前的空間審計(jì)
find /backup -size +10G -printf "%kKB\t%p\n" | sort -nr作用:掃描備份目錄中的10G+文件,按大小排序輸出,避免備份無效數(shù)據(jù)
場景6:安全工程師的暗器
sudo find /etc -size +10M -exec file {} \;作用:檢測/etc下異常大文件(正常配置應(yīng)小于1MB),可能隱藏攻擊痕跡
高危操作防護(hù)指南
慎用rm命令! 建議分三步操作:
# 1. 先預(yù)覽文件
find /path -size +100M -exec ls -lh {} \;
# 2. 確認(rèn)后移動到臨時區(qū)
find /path -size +100M -exec mv {} /tmp/todelete/ \;
# 3. 觀察無異常再刪除
rm -rf /tmp/todelete高階技巧:效率提升50%
技巧1:并行處理加速
find /data -size +1G -print0 | xargs -0 -P 4 ls -lh用xargs -P啟動多進(jìn)程,掃描百萬級文件快如閃電
技巧2:生成可視化報(bào)告
find . -size +10M -printf "%s\t%p\n" |
awk '{printf "%.1fGB\t%s\n", $1/1024/1024/1024, $2}' |
sort -nr > large_files.txt輸出帶GB單位的排序清單,直接發(fā)給領(lǐng)導(dǎo)匯報(bào)!
經(jīng)驗(yàn)之談
「磁盤清理的最大風(fēng)險,是刪了不該刪的文件」
建議將核心命令封裝成安全腳本:
#!/bin/bash
THRESHOLD=${1:-100} # 默認(rèn)100MB
find / -xdev -size +${THRESHOLD}M -type f \
-exec ls -lh {} \; 2>/dev/null |
grep -Ev "/proc|/sys|/dev"(跳過虛擬文件系統(tǒng),避免誤報(bào))
責(zé)任編輯:趙寧寧
來源:
攻城獅成長日記

相關(guān)推薦
2017-03-13 16:58:05




























