記一起inode爆滿事件及分析指令碼

2021-10-04 22:16:07 字數 1439 閱讀 7686

最近很忙,公司基礎架構重新設計,公司為了資源再利用。把所有的廢舊機器包括台式電腦都需要重新整合利用,這就涉及到了諸多改造,主要設計ceph,vware,openstack幾個大塊的設計和組合。所以最近將更多的心血傾注在了這些內容的設計和實施上。

不過今天客戶遇到了點小麻煩,讓波哥幫助處理的。在這裡跟大家分享一下。

乙個跑五六年的生產伺服器出現了inode爆滿的情況。

當時忙波哥沒有截圖,在網上盜了個圖給大家

看到沒/data/web這個目錄就是inode爆滿,那麼這個inode是什麼?

理解inode,要從檔案儲存說起。

檔案儲存在硬碟上,硬碟的最小儲存單位叫做"扇區"(sector)。每個扇區儲存512位元組(相當於0.5kb)。

作業系統讀取硬碟的時候,不會乙個個扇區地讀取,這樣效率太低,而是一次性連續讀取多個扇區,即一次性讀取乙個"塊"(block)。這種由多個扇區組成的"塊",是檔案訪問的最小單位。"塊"的大小,最常見的是4kb,即連續八個 sector組成乙個 block。

檔案資料都儲存在"塊"中,那麼很顯然,我們還必須找到乙個地方儲存檔案的元資訊,比如檔案的建立者、檔案的建立日期、檔案的大小等等。這種儲存檔案元資訊的區域就叫做inode,中文譯名為"索引節點"。每乙個檔案都有對應的inode,裡面包含了與該檔案有關的一些資訊。

這個655360引數值可以調整,但是需要格式化盤。所以這事就別提了。既然已經無法再見檔案的元資料了。咱們就開始刪,那麼刪什麼?在哪刪?這對於乙個已經五六年的老專案已經沒有人能說清楚了。所以需要先統計各個資料夾下面的檔案個數,好給我們乙個問題處理的方向。

當時客戶的伺服器上跑了14個tomcat,他們都是乙個/data的目錄下,波哥不能乙個乙個去找。所以隨手寫了個小指令碼幫助分析哪個目錄底下檔案個數最多。

**比較少就貼在這了。

#! /bin/bash

base_pach="/data"

function file_num()

file_num

實行之後會將分析結果寫在/data/info.txt中,裡面的base_pach="/data"這個你們要替換成自己的目錄哦。去最多的那個資料夾,再結合業務重點分析一下檔案,或者遷到別的目錄或者直接刪掉。

find /data/aa/tomcat-7.0.33-mdm/logs/ -mtime +7 -type f -exec rm {} \;
類似上面的刪除命令。

江湖規矩:內容對你有幫助,點讚、**選乙個!

江湖規矩哦!~幫波哥就等於幫你們!!

拜!~

足記 大家一起來吐槽!(一)

下面我就用網際網路思維為大家來分析一下這款軟體為何會如此火爆。下面我將從五個方面展開論述 一 產品概述 足記是一款有趣的可以 拍攝新舊場景合成或對比 的創意攝影社交手機應用。它會告訴你腳下的每一步,曾經拍過什麼電影,曾經有過什麼故事,誰曾在這裡駐足,以電影化的形式一幀一幀的呈現生活的點點滴滴。二 社...

跟我一起學 Hadoop 之 經典場景分析

hive分割槽表陷阱 不load資料到hive,而是put資料到hdfs分割槽目錄下,hive查不到資料 解決方法 msck repair table table name 答案 分割槽表是hdfs上以資料夾的形式存在,為了提高查詢效率。答案 crontab e或者hue提交 sqoop增量匯入並按...

德天老師和你一起分析如何建立部落格系統

軟體 pycharm django框架 1.11.6 建立專案mysite 建立應用blog 總配置settings.py調整語言環境為中文 為部落格搭建乙個視覺化模板 建立管理後台資料 進行檔案遷移 應用myblog下新建路由檔案urls.py 建立乙個archiev.html模板 建立超級管理員...