系統磁碟空間 dev xvda1佔滿原因分析

2022-09-05 01:30:16 字數 946 閱讀 8050

由於專案原因需要定期檢查磁碟空間占用情況,常用檢查命令如下:

1、檢視磁碟空間大小

df -lh

2、檢視對應檔案大小

du --max-depth=1 -h /

於一日發現在使用flume + kafka進行資料同步時,某一局點資料無法進行消費,通過df -lh檢視發現系統空間滿了,如下:

/dev/xvda1       20g  20g  0g  100% /

然後,通過du --max-depth=1 -h / 查詢對應的大檔案,發現此目錄下檔案占用了2.3g的空間。通過各種方法找,都找不到大檔案,唯一的線索是掛載的/data01目錄下zookeeper的日誌非常大,難道是此問題導致?

在apache/tomcat在執行狀態下,清空了執行服務的日誌,從而導致了/dev/xvda1 滿了的問題。一般情況下,大多數服務(包括指令碼)在執行時,是不能刪除當前正在寫入的日誌檔案的。

原理分析:

1、當前access.log日誌正在被apache程序占用。

2、 通過rm命令刪除access.log,實際只刪除了檔名(該日誌檔案應用記數不為0,因此空間不會被釋放)。

3、 通過rm命令刪除了access.log後,apache依然寫日誌到access.log中,當開啟apache程序時,已經通過access.log定位到該檔案的inode了,就是說再寫日誌是不通access.log,因此即使刪除了access.log,apache依然寫日誌到access.log所在的inode節點,所以導致硬碟空間增加。

4、因為刪除了access.log,所以我們就找不到該檔案了,du也查不到,就會出現硬碟滿了但看不到究竟是哪些檔案占用的。

解決方法:

仿照該方法,先停止zookeeper的執行,然後刪除zookeeper日誌,重啟zookeeper後發現服務消費正常

系統盤空間 dev xvda1佔滿的原因

配置nginx之後,檢視磁碟空間,通過df lh檢視發現系統空間滿了。dev xvda1 20g 20g 0g 100 然後,通過du max depth 1 h 查詢對應的大檔案,發現只占用了2.3g的空間 各種方法找,都找不到大檔案,後來在一篇文章中看到,可能是在apache或者tomcat執行...

ubuntu系統 增加磁碟空間

1 df檢視磁碟使用情況 2 將windows下的磁碟空間分出與部分給ubuntu 3 格式化磁碟 在終端輸入 mkfs t ext3 dev sdb1 用ext3格式對 dev sdb1 進行格式化 4 掛載該分割槽 手動掛載 在終端輸入 mkdir media sdb1 建立新的硬碟的掛載點 在...

Ubuntu 擴大虛擬機器系統磁碟空間 1

vmware 11 版本給虛擬機器預設分配20g磁碟,擴充套件至30g。下面是擴充套件方法 虛擬機器保持關閉狀態,設定 磁碟 拓展 最大磁碟大小 設成 30g 磁碟擴容後系統並不能自動使用,需要將拓展的空間掛載到系統中。啟動ubantu,執行命令 sudo df h 檢視磁碟空間占用情況 可選操作 ...