一、檔案系統
1、ext3檔案系統
ext3,第三代擴充套件的檔案系統,它是日誌檔案系統,用於linux作業系統。
2、ext4檔案系統
ext4是***擴充套件檔案系統(英語:fourth extended filesystem),linux下的日誌檔案系統,是ext3公升級版,它被引入到linux2.6核心中,缺點建立檔案系統慢,修復檔案系統也慢。它是規定好inode個數,當inode被佔滿時,就不能在建立檔案了。
3、xfs檔案系統
xfs,高階日誌檔案系統,它是centos預設的檔案系統,支援高容量和大儲存,擁有高效能,會動態產生inode個數,沒建立乙個檔案,產生乙個inode號。
4、nfs 檔案系統
nfs 檔案系統是指網路檔案系統,這種檔案系統也是 linux 的獨到之處。它可以很方便地在區域網內實現檔案共享,並且使多台主機共享同一主機上的檔案系統。而且 nfs 檔案系統訪問速度快、穩定性高,已經得到了廣泛的應用,尤其在嵌入式領域,使用 nfs 檔案系統可以很方便地實現檔案本地修改,而免去了一次次讀寫 flash 的憂慮。
5、vfat檔案系統
linux 中把 dos 中採用的 fat 檔案系統(包括 fat12,fat16 和 fat32)都稱為 vfat檔案系統。
二、理解inode&block
1、簡介
inode(index node 索引節點),儲存檔案元資訊的區域叫做inode。每乙個檔案都有對應的inode,裡面包含了與該檔案有關的資訊,同時記錄此檔案資料所在的block number。作業系統通過inode來識別不同的檔案。inode大小 為 128 bytes。
inode內容
(1)檔案的位元組數
(2)檔案的擁有者userid
(3)檔案的groupid
(4)檔案的讀、寫、執行許可權
(5)檔案的時間戳,共有3個
ctime:指inode上一次變動的時間;
mtime:指檔案內容上一次變動的時間;
atime:指檔案上一次開啟的時間。
(6)鏈結數,即有多少檔名指向這個inode
(7)檔案資料block的位置
2、名詞解釋
(1)block:儲存檔案的實際資料。塊是儲存檔案的最基本的單位。實際儲存檔案的內容,若檔案較大,會占用多個block。block大小 為預設為4k
(2)superblock超塊:block 與 inode 的總量; 未使用與已使用的 inode / block 數量;
(3)block group塊組:乙個分割槽可以有多個塊組。
3、索引檔案系統工作流程
建立檔案時只佔索引節點而不佔塊,當向檔案寫入時,inode會去關聯block,block預設固定空間為4g,inode可以關聯0~多個block,這取決於檔案的大小。
系統讀取檔案時,會先去找索引節點,索引節點包括元資料(matedata),然後根據索引節點去查詢關聯的block,從而得知檔案儲存的位置。
4、示例
示例1:inode(index node 索引節點)
創造乙個檔案,觀察inode資訊。
ll -i 檔名
[root@localhost ~]# touch 1.txt
[root@localhost ~]# ll -i 1.txt
33574988 -rw-r–r--. 1 root root 0 12月 6 17:43 1.txt
示例2:block(塊 檔案內容)
(1) 觀察某個分割槽中的inode節點數
df -i
[root@localhost sdk1]# df -i | grep sdk1
/dev/sdk1 128016 11 128005 1% /mnt/sdk1
(2) 建立乙個檔案
touch 檔名
[root@localhost sdk1]# touch 1.txt
(3) 再次觀察inode節點數
df -i
[root@localhost sdk1]# df -i | grep sdk1
/dev/sdk1 128016 12 128004 1% /mnt/sdk1
(4)創造大量檔案。觀察inode使用情況
[root@localhost sdk1]# touch file
[root@localhost sdk1]# df -i | grep sdk1
/dev/sdk1 128016 128016 0 100% /mnt/sdk1
建立檔案總數:
[root@localhost sdk1]# ll | wc -l
128007
嘗試再建立檔案:
[root@localhost sdk1]# touch a.txt
touch: 無法建立"a.txt": 裝置上沒有空間
此時分割槽可用空間為442m
[root@localhost sdk1]# df -ht | grep sdk1
/dev/sdk1 ext4 477m 5.9m 442m 2% /mnt/sdk1
結論1:inode決定了檔案系統中檔案的數量。
(5)向分割槽寫入大量資料,填滿
[root@localhost sdk1]# dd if=/dev/zero of=/mnt/sdk1/file1 bs=1m count=500
dd: 寫入"/mnt/sdk1/file1" 出錯: 裝置上沒有空間
記錄了467+0 的讀入
記錄了466+0 的寫出
488972288位元組(489 mb)已複製,47.4518 秒,10.3 mb/秒
(6)檢視目標分割槽容量,已滿
[root@localhost sdk1]# df -ht | grep sdk1
/dev/sdk1 ext4 477m 473m 0 100% /mnt/sdk1
結論2:block決定了檔案儲存的空間。
linux 檔案系統之 inode 和 block
inode 和 block 1 含義 index node 索引節點 用來存放檔案屬性的空間,通過inode 號碼來找到這個空間 inode號碼 家庭位址 inode空間 家房子 2 怎麼來的 格式化建立檔案系統時來的 3 特點 1。inode 是存放檔案屬性 2.我們每建立乙個檔案占用乙個inod...
Linux 的檔案系統 inode
linux 的檔案系統 inode 看完了上面的說明,您應該對於硬碟有一定程度的認識了!好了,那麼接下來就是要談一談 linux 的檔案系統 filesystem 囉!我們這裡以 linux 最標準的 ext2 這個檔案系統來作為說明。還記得我們在 linux 檔案屬性與目錄配置 那個章節提到的,在...
Linux檔案系統和inode
學到linux上的軟連線和硬鏈結,不得不了解inode,要想知道inode,不得不了解一些檔案系統,至少是linux檔案系統 檔案系統是什麼 我的理解,檔案系統類似現實中的檔案管理,條理化的儲存資料。它定義了磁碟上儲存檔案的方法和資料結構。不同的人管理檔案有不同的管理方法,那麼相對於不同的系統格式有...