Linux中磁盤空間爆滿的3步快速定位+清理方案
前言
生產(chǎn)環(huán)境磁盤空間爆滿是運(yùn)維工作中的常見緊急故障。本文分享快速定位大文件、安全清理空間的實(shí)戰(zhàn)方案。
問(wèn)題影響
磁盤空間100%會(huì)導(dǎo)致:
- 應(yīng)用無(wú)法寫入日志,服務(wù)異常
- 數(shù)據(jù)庫(kù)無(wú)法寫入,事務(wù)失敗
- 系統(tǒng)無(wú)法創(chuàng)建臨時(shí)文件,進(jìn)程崩潰
應(yīng)急處理流程
1. 快速定位大文件
查看根目錄各分區(qū)占用:
df -h
定位占用最大的目錄:
du -h --max-depth=1 / | sort -hr | head -10
查找大于1GB的文件:
find / -type f -size +1G -exec ls -lh {} \;
2. 日志文件清理
方案A:清空日志內(nèi)容(保留文件)
# 清空單個(gè)日志 > /var/log/syslog # 批量清空 for log in /var/log/*.log; do > $log; done
方案B:刪除舊日志
# 刪除7天前的日志 find /var/log -name "*.log" -mtime +7 -delete # 刪除壓縮日志 find /var/log -name "*.gz" -mtime +7 -delete
方案C:配置日志輪轉(zhuǎn)
# /etc/logrotate.d/custom
/var/log/myapp/*.log {
daily
rotate 7
compress
missingok
notifempty
}
3. Docker垃圾清理
查看Docker占用:
docker system df
清理未使用的資源:
# 清理所有未使用的鏡像、容器、網(wǎng)絡(luò)、卷 docker system prune -a --volumes # 僅清理懸空鏡像 docker image prune # 清理停止的容器 docker container prune
4. 其他清理方案
清理包管理器緩存:
# Ubuntu/Debian apt-get clean apt-get autoclean # CentOS/RHEL yum clean all
清理臨時(shí)文件:
rm -rf /tmp/* rm -rf /var/tmp/*
實(shí)戰(zhàn)案例
某次生產(chǎn)環(huán)境磁盤爆滿,通過(guò)以下步驟快速恢復(fù):
# 1. 定位問(wèn)題 df -h # 發(fā)現(xiàn) /var 分區(qū) 100% du -h --max-depth=1 /var | sort -hr # 2. 發(fā)現(xiàn) /var/log 占用 80GB cd /var/log ls -lh | sort -k5 -hr | head -10 # 3. 發(fā)現(xiàn) nginx/access.log 50GB > nginx/access.log # 清空日志 # 4. 配置日志輪轉(zhuǎn),防止再次爆滿
預(yù)防措施
1. 監(jiān)控告警
# 磁盤使用率超過(guò)80%告警
df -h | awk '$5+0 > 80 {print $0}'
2. 定時(shí)清理
# crontab 每天凌晨2點(diǎn)清理7天前日志 0 2 * * * find /var/log -name "*.log" -mtime +7 -delete
3. 日志輪轉(zhuǎn) 確保所有應(yīng)用日志都配置了logrotate。
總結(jié)
- 緊急情況:先清日志,能快速騰出空間
- Docker環(huán)境:定期執(zhí)行
docker system prune - 長(zhǎng)期方案:配置日志輪轉(zhuǎn)+監(jiān)控告警
掌握這套流程,磁盤爆滿問(wèn)題5分鐘搞定。
以上就是Linux中磁盤空間爆滿的3步快速定位+清理方案的詳細(xì)內(nèi)容,更多關(guān)于Linux磁盤空間爆滿定位與清理的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
CentOS 6.4系統(tǒng)下編譯安裝LNMP和配置PHP環(huán)境具體步驟
下面介紹的是CentOS 6.4系統(tǒng)下編譯安裝LNMP和配置PHP環(huán)境具體步驟,感興趣的朋友可以參考下,希望對(duì)你配置php環(huán)境有所幫助2013-05-05
Windows 10 太難用如何定制你的 Ubuntu方法詳解
這篇文章主要介紹了Windows 10 太難用,如何定制你的 Ubuntu,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08
centOS6中使用crontab定時(shí)運(yùn)行執(zhí)行jar程序的腳本
這篇文章主要介紹了centOS6中使用crontab定時(shí)運(yùn)行執(zhí)行jar程序的腳本,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-11-11
在Linux系統(tǒng)下上傳項(xiàng)目到碼云的方法
今天小編就為大家分享一篇關(guān)于在Linux系統(tǒng)下上傳項(xiàng)目到碼云的方法,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2018-10-10
Linux內(nèi)核設(shè)備驅(qū)動(dòng)之Linux內(nèi)核基礎(chǔ)筆記整理
今天小編就為大家分享一篇關(guān)于Linux內(nèi)核設(shè)備驅(qū)動(dòng)之Linux內(nèi)核基礎(chǔ)筆記整理,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2018-12-12

