參考鏈接:
本文為個(gè)人對于相關(guān)資料查詢后的總結(jié)和讀后感,有錯(cuò)誤的地方請嚴(yán)厲指出;
1、個(gè)人理解的inode定義
inode是系統(tǒng)識別一個(gè)文件或目錄的索引節(jié)點(diǎn);
inode主要包含文件或目錄的元信息:
1、文件大?。鹤止?jié)數(shù)
2、文件所占的區(qū)塊的位置
3、文件當(dāng)前的鏈接數(shù)
4、文件的三個(gè)時(shí)間(change:ctime/inode上一次變更時(shí)間;modify:mtime/文檔具體內(nèi)容的變更時(shí)間;access:atime/文檔上一次打開的時(shí)間)
5、文件user和group的信息、讀寫權(quán)限
查詢命令:stat
stat filename
查詢inode占用情況:
df -i
查詢目錄文件的inode:
ls -i filename/dir
注:系統(tǒng)沒有存儲空間或沒有inode空間,均會導(dǎo)致文件創(chuàng)建失敗;
2、硬鏈接和軟鏈接
硬鏈接和軟鏈接最大的區(qū)別為,兩者是否共用一個(gè)inode;
硬鏈接指向文件的inode,而軟鏈接指向文件的路徑和文件名;
刪除一個(gè)文件名,其他硬鏈接的文件名可繼續(xù)訪問;而指向該文件的軟鏈接會報(bào)錯(cuò);
系統(tǒng)在inode硬鏈接數(shù)為0時(shí),會自動回收inode;
目錄的硬鏈接數(shù)=2+子目錄個(gè)數(shù);(父目錄中的自身+自身的“.”目錄+子目錄中的“..”的個(gè)數(shù))
硬鏈接創(chuàng)建指令:
ln 源文件 目標(biāo)文件
軟鏈接創(chuàng)建指令:
ln -s 源文件/目錄 目標(biāo)文件/目錄