find查詢mysql,根目錄已滿怎么解決?
根目錄磁盤寫滿,往往都是.log日志造成的,首先想到的是查找大的日志文件
1、find查找根下大于800M的文件
find / -size +800M -exec ls -lh {} \;
找到大的日志文件關閉掉,或者更改到其他磁盤。
2、如果查找后,發現沒有大文件,可能有占用文件的相關進程沒有關閉
可以通過下面命令(如果沒有lsof命令手動yum安裝即可yum install lsof)找到已經被清空或刪除,但是未釋放空間的文件和進程信息
lsof | grep deleted
kill殺死占用的進程(注意,如果此進程是正常在使用的服務,殺死后更改日志存儲位置在重新啟動,以免導致影響線上服務)
注意:gzip對某個文件xxx.log進行壓縮時,會產生一個新的xxx.log.gz文件,完成后,會把原來的xxx.log刪除。 這時,若仍有進程在使用xxx.log文件,那么,實際上,該文件還是只會標記為deleted,其空間也不會釋放。
3、如果以上兩種方法還是找不出問題所在,可以通過分析最近修改過的文件,mysql等等來判斷了。
查找7天內修改過的文件