2021-09-03 Inodes

參考:
(最清楚) Linux磁盤與文件管理系統(tǒng)
理解 Linux 中的 inodes
新建一個(gè)空文件占用多少磁盤空間
深度理解 Linux 讀取文件過程准潭!
文件過多時(shí)ls命令為什么會(huì)卡住轿衔?

我的理解

  • 一個(gè)文件一般是需要一個(gè)inode+N個(gè)block來存儲(chǔ)颁褂,其文件名存于目錄中河哑。(如果是hard link 可能就是對(duì)應(yīng)多個(gè)inode)
  • 讀取一個(gè)文件時(shí),先找到他的inode, 拿到到存block的指針數(shù)組,進(jìn)行讀取随闪。

核心圖

  • 常見磁盤存儲(chǔ)結(jié)構(gòu)


    image.png
  • 訪問一個(gè)文件的常見流程


    image.png

新建一個(gè)文件夾

  • 一個(gè)inode結(jié)構(gòu) fs/ext2/ext2.h
ext2_inode {
        __le16  i_mode;         # 文件權(quán)限
        __le16  i_uid;          # 文件所有者ID
        __le32  i_size;         # 文件字節(jié)數(shù)大小
        __le32  i_atime;        # 文件上次被訪問的時(shí)間
        __le32  i_ctime;        # 文件創(chuàng)建時(shí)間
        __le32  i_mtime;        # 文件被修改的時(shí)間
        __le32  i_dtime;        # 文件被刪除的時(shí)間
        __le16  i_gid;          # 文件所屬組ID
        __le16  i_links_count;  # 此文件的inode被連接的次數(shù)
        __le32  i_blocks;       # 文件的block數(shù)量
        ......
        __le32  i_block[EXT2_N_BLOCKS]; # 指向存儲(chǔ)文件數(shù)據(jù)的塊的數(shù)組
        ......
  • 文件夾結(jié)構(gòu)體 fs/ext2/ext2.h
struct ext2_dir_entry {
         __le32  inode;                  /* Inode number */
         __le16  rec_len;                /* Directory entry length */
         __le16  name_len;               /* Name length */
         char    name[];                 /* File name, up to EXT2_NAME_LEN */
};
  1. 新建一個(gè)空文件需要消耗掉一個(gè)inode滑绒,用來保存用戶闷堡、創(chuàng)建時(shí)間等元數(shù)據(jù)。
  2. 新建一個(gè)空文件還需要消耗掉其所在目錄的block中一定的空間疑故,這些空間用來保存文件名杠览,inode號(hào)等信息。

命令

stat a.txt
ln a.txt ahardlink
ln -s a.txt asoftlink
dumpe2fs -h /dev/sda1 | grep Block
dumpe2fs -h /dev/sda1 | grep Inode

關(guān)于磁盤格式化時(shí)候的大小設(shè)置

  • s(sector) 一個(gè)扇區(qū):0.5kb=512b
  • b (block) 一個(gè)邏輯快:2的n次方*0.5kb
  • i (inode) 一個(gè)inode
mkfs.ext4 /dev/sdb2
-b 分區(qū)時(shí)設(shè)定每個(gè)數(shù)據(jù)區(qū)塊占用空間大小纵势,目前支持1024踱阿、2048以及4096bytes每個(gè)塊
-i 設(shè)定inode大小
-N 設(shè)定inode數(shù)量
-c 在格式化之前檢測(cè)磁盤是否有問題,選項(xiàng)會(huì)導(dǎo)致進(jìn)程很慢 
-L 預(yù)設(shè)該分區(qū)的標(biāo)簽label,類似WINDOWS下的C盤系統(tǒng)盤钦铁,D盤娛樂软舌,E盤影音
-j 建立ext3格式的分區(qū),如使用mkfs.ext3 則不需要這個(gè)選項(xiàng)
-t 指定文件系統(tǒng)的類型牛曹,ext2,ext3,ext4
-m 格式化時(shí)候佛点,留個(gè)管理員的磁盤比例,一個(gè)百分比黎比,只針對(duì) mke2fs命令
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末超营,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子阅虫,更是在濱河造成了極大的恐慌演闭,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,723評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件书妻,死亡現(xiàn)場(chǎng)離奇詭異船响,居然都是意外死亡躬拢,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門见间,熙熙樓的掌柜王于貴愁眉苦臉地迎上來聊闯,“玉大人,你說我怎么就攤上這事米诉×馐撸” “怎么了?”我有些...
    開封第一講書人閱讀 152,998評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵史侣,是天一觀的道長拴泌。 經(jīng)常有香客問我,道長惊橱,這世上最難降的妖魔是什么蚪腐? 我笑而不...
    開封第一講書人閱讀 55,323評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮税朴,結(jié)果婚禮上回季,老公的妹妹穿的比我還像新娘。我一直安慰自己正林,他們只是感情好泡一,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,355評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著觅廓,像睡著了一般鼻忠。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上杈绸,一...
    開封第一講書人閱讀 49,079評(píng)論 1 285
  • 那天帖蔓,我揣著相機(jī)與錄音,去河邊找鬼蝇棉。 笑死讨阻,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的篡殷。 我是一名探鬼主播钝吮,決...
    沈念sama閱讀 38,389評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼板辽!你這毒婦竟也來了奇瘦?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,019評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤劲弦,失蹤者是張志新(化名)和其女友劉穎耳标,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體邑跪,經(jīng)...
    沈念sama閱讀 43,519評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡次坡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,971評(píng)論 2 325
  • 正文 我和宋清朗相戀三年呼猪,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片砸琅。...
    茶點(diǎn)故事閱讀 38,100評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡宋距,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出症脂,到底是詐尸還是另有隱情谚赎,我是刑警寧澤,帶...
    沈念sama閱讀 33,738評(píng)論 4 324
  • 正文 年R本政府宣布诱篷,位于F島的核電站壶唤,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏棕所。R本人自食惡果不足惜闸盔,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,293評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望橙凳。 院中可真熱鬧蕾殴,春花似錦、人聲如沸岛啸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽坚踩。三九已至,卻和暖如春瓤狐,著一層夾襖步出監(jiān)牢的瞬間瞬铸,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評(píng)論 1 262
  • 我被黑心中介騙來泰國打工础锐, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留嗓节,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,547評(píng)論 2 354
  • 正文 我出身青樓皆警,卻偏偏與公主長得像拦宣,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子信姓,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,834評(píng)論 2 345