Ubuntu磁盤空間占用清理的方法詳解(寶塔)
本身自搭建了一個(gè)寶塔,突然一下子多了好些空間,對(duì)此需要進(jìn)行額外小心的清理

1. 基本知識(shí)
先補(bǔ)充一些基本知識(shí)命令
確認(rèn)哪個(gè)大目錄占用空間:
- 在 / 下跑 du 命令,比如:
sudo du -h --max-depth=1 /-h:人類可讀(G/M單位)--max-depth=1:只看一層,不要遞歸太深/:從根目錄開始
找不到明顯異常,也可以直接搜索大文件:sudo find / -type f -size +500M -exec ls -lh {} \; | sort -k5 -rh | head -n 20
截圖如下:

上述這幾個(gè)命令著重講解下,別亂刪除(最好刪除一些log日志文件之類,不清楚的文件不要亂刪除)
| 文件 大小 | 是否可以清理 | 說(shuō)明 |
|---|---|---|
| /proc/kcore 128T(假的) | 不能動(dòng) | 這是虛擬內(nèi)存文件,內(nèi)核自己用的,看著大不用管,不能刪 |
| /www/wwwlogs/java/springboot/eng-1.log | 3.9G | 可以清理 springboot 應(yīng)用日志,太大了,可以清空或者按需保留 |
| /www/server/data/ruoyi@002dvue@002dpro/infra_api_access_log.ibd | 592M | 謹(jǐn)慎處理 MySQL數(shù)據(jù)庫(kù)表文件,最好別直接刪,除非確定是無(wú)用表 |
對(duì)應(yīng)清空日志文件可以使用:> /www/wwwlogs/java/springboot/eng-1.log
再者也可查詢各個(gè)相關(guān)的日志記錄:
du -sh /www/wwwlogs/* du -sh /var/log/* # 如果服務(wù)器裝了 mysql,也要看看: sudo du -sh /var/lib/mysql/* # 查詢網(wǎng)址備份文件 du -sh /www/backup/*
2. 實(shí)戰(zhàn)
上述內(nèi)容根據(jù)實(shí)戰(zhàn)總結(jié),有時(shí)候一些空間可以不必清理,可能為 緩存、假死文件需要重啟才可
比如如下情況:sudo du -h --max-depth=1 / 總共加起來(lái)只有 53G 左右

但是 df -h 看到 / 分區(qū)已經(jīng)用了 269G

重啟各個(gè)應(yīng)用或者 重啟服務(wù)是最好的
這種情況,建議重啟下Java的各個(gè)應(yīng)用或者網(wǎng)站應(yīng)用:ps -ef | grep java

發(fā)現(xiàn)有兩個(gè)Java進(jìn)程,但是查詢端口號(hào)的時(shí)候發(fā)現(xiàn)掛載的進(jìn)程號(hào)是最新的日期,既可以把舊的進(jìn)程號(hào)kill即可:ss -tnlp | grep 48080

也可能是刪除但忍讓占用的文件,被程序正在占用文件描述符(FD)
# 直接執(zhí)行
lsof | grep deleted
#也可通過(guò)上述執(zhí)行的 sudo find / -type f -size +500M -exec ls -lh {} \; | sort -k5 -rh | head -n 20
# 特意找到對(duì)應(yīng)文件大的名字:
lsof | grep '/.Recycle_bin/' | grep deleted
截圖如下:

可以對(duì)應(yīng)進(jìn)行kill -9 進(jìn)程號(hào),但保守一些還是重啟
這也更好的說(shuō)明為啥df 和 dh都不大一樣
比如查看:lsof | grep deleted | awk '{print $7/1024/1024 " MB", $9}' | sort -rn | head -n 20
發(fā)現(xiàn)最大的文件占用200G

但是到對(duì)應(yīng)的文件缺沒(méi)有顯示,顯示為空!這種情況一般重啟是最好用,直接釋放!

Linux有個(gè)機(jī)制:
- 文件在被刪除以后,只要還有進(jìn)程持有,物理空間不會(huì)真正釋放。
- 必須要等進(jìn)程徹底關(guān)閉文件描述符,操作系統(tǒng)才回收
以上就是Ubuntu磁盤空間占用清理的方法詳解(寶塔)的詳細(xì)內(nèi)容,更多關(guān)于Ubuntu磁盤空間清理的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
使用Apache搭建http服務(wù)器實(shí)現(xiàn)CGI功能
專門處理 HTTP 請(qǐng)求的服務(wù)器,也被稱為 Web 服務(wù)器, 常用的 Web 服務(wù)器有 Apache和 Nginx ,當(dāng)然幾大巨頭五聯(lián)網(wǎng)公司也都有其獨(dú)自研發(fā)的 Web 服務(wù)器,比如阿里巴巴的Tengine, 這篇文章主要介紹了使用Apache搭建http服務(wù)器,實(shí)現(xiàn)CGI,需要的朋友可以參考下2024-07-07
關(guān)于crontab定時(shí)任務(wù)命令解讀
這篇文章主要介紹了關(guān)于crontab定時(shí)任務(wù)命令的用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07
ubuntu無(wú)法ssh遠(yuǎn)程,提示'Permission denied (publickey
SSH(Secure Shell)是一種加密的網(wǎng)絡(luò)協(xié)議,用于在網(wǎng)絡(luò)上安全地傳輸數(shù)據(jù),它被廣泛用于遠(yuǎn)程登錄和執(zhí)行命令,有時(shí)候使用SSH登錄時(shí),可能會(huì)遇到錯(cuò)誤消息Permission denied (publickey)導(dǎo)致登錄失敗,這種情況可能由多種原因引起,將探討導(dǎo)致SSH登錄失敗的可能性,并提供解決方案2025-04-04
如何使用Apache Kafka 構(gòu)建實(shí)時(shí)數(shù)據(jù)處理應(yīng)用
?Apache Kafka 在實(shí)時(shí)數(shù)據(jù)處理中的重要性源于其高性能、可靠性、可擴(kuò)展性和靈活性,這篇文章主要介紹了使用Apache Kafka 構(gòu)建實(shí)時(shí)數(shù)據(jù)處理應(yīng)用,需要的朋友可以參考下2024-07-07

