ubuntu16系統磁盤空間/dev/vda1占用滿的問題


參考文檔:

https://www.cnblogs.com/moonandstar08/p/6091507.html (系統磁盤空間/dev/xvda1占滿原因分析)

https://blog.csdn.net/echo_ae/article/details/79387767  (/dev/xvda1 滿了處理方法)

引言

  我是在使用zookeeper的時候,zookeeper服務端沒有關閉的情況下,人為的使用命令刪除了bin目錄下的zookeeper.out日志文件,所以導致/dev/vda1磁盤空間被占滿的問題。

現狀描述:當我使用cd命令切換目錄並且用了tab補充命令時報了“cd ../c-bash: cannot create temp file for here-document: No space left on device”這個問題。(vda1這里為123的1)

分析(直接從上面的參考 文檔中copy的):

(1)產生問題的原因:

  在apache/tomcat在運行狀態下,清空了運行服務的日志,從而導致了/dev/xvda1 滿了的問題。一般情況下,大多數服務(包括腳本)在運行時,是不能刪除當前正在寫入的日志文件的。

原理分析:

 a.  當前access.log日志正在被apache進程占用。
 b.  通過rm命令刪除access.log,實際只刪除了文件名(該日志文件應用記數不為0,因此空間不會被釋放)。
 c.  通過rm命令刪除了access.log后,apache依然寫日志到access.log中,當開啟apache進程時,已經通過access.log定位到該文件的inode了,就是說再寫日志是不通access.log,
    因此即使刪除了access.log,apache依然寫日志到access.log所在的inode節點,所以導致硬盤空間增加。
 d.  因為刪除了access.log,所以我們就找不到該文件了,du也查不到,就會出現硬盤滿了但看不到究竟是哪些文件占用的。

 

解決辦法:

(1) 使用 df -h 發現 /dev/vda1滿了 多數為日志太多了 需要清理日志 ,如圖:

(2) 進入到/usr/local/zookeeper01/bin目錄,然后通過命令du -sh * ,如圖:

原本才十幾k的文件,居然變成了2.3g.

然后輸入命令 ./zkServer.sh stop 停止服務,再去清除zookeeper.out日志文件,

 >zookeeper.out :該命令為清除日志的命令,清除以后在查看,如圖,

如此,問題得到解決!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM