文件系統
-
文件系統:數據+元數據
-
文件系統劃分爲多個塊組
塊組中劃分爲:
1、數據區:
數據塊:
超級塊:存儲了所有結構
2、元數據區:inode 其中存儲了正在使用的數據塊地址。
數據塊是否使用:
全盤掃描:將使用的標記爲1,未使用的標識爲0.
數據塊使用與否的索引:數據塊是否使用的標識位索引目錄
目錄是文件,會佔據磁盤塊。其中存儲的是文件名+inode號, 實現“路徑映射”。
根自引用--> inode --> 磁盤塊(/): 其中是/目錄下的一級子目錄名+inode。 例如: /var/log/messages --> inode --> 磁盤塊(/): 其中是/目錄下的一級子目錄名+inode。 --> inode --> 磁盤塊(var): 其中是/var目錄下的一級子目錄名+inode。 --> inode --> 磁盤塊(log): 其中是/var/log目錄下的一級子目錄名+inode。 --> inode --> 磁盤塊 .... 將幾個磁盤塊的數據結合起來顯示
inode
inode
- 默認:其中存儲了正在使用的數據塊地址。
- 軟鏈接:其中存儲了被鏈接文件的“絕對路徑”。
硬鏈接
硬鏈接文件關聯的inode和被鏈接文件相同的。
1)不能鏈接目錄
2)不能跨文件系統
3)創建硬鏈接時,對inode增加引用計數;刪除時,對inode減少引用計數。
軟鏈接
軟鏈接文件關聯的inode中存儲的“不是磁盤塊地址”,而是被鏈接文件的絕對路徑。
1)對軟鏈接的權限,取決於真正指向文件的權限。
2)可以對目錄
3)可以跨文件系統
文件刪除
減去對文件關聯的inode的引用計數。
文件複製
找到新inode,將數據流複製到新的磁盤塊中。
文件移動
同分區:創建硬鏈接,刪除原文件。
跨分區:複製。