Linux支援檔案系統與VFS

2021-07-31 16:49:34 字數 1098 閱讀 8336

雖然linux的標準檔案系統是ext2,且還增加了日誌功能的ext3,事實上,linux還支援很多檔案系統格式的,尤其是最近幾年退出的好幾種速度很快的日誌式檔案系統,包括sgi的xfs檔案系統,可以使用更小型檔案的reiserfs檔案系統,以及windows的fat檔案系統等等,都能夠被linux所支援。常見的檔案系統有:

傳統檔案系統:ext2/mini/ms-doc/fat/iso9660(光碟)等等;

日誌式檔案系統:ext3、reiserfs/winodows』ntfs/ibm』s jfs/sgi』s xfs;

網路檔案系統:nfs/smbfs;

要想知道你的linux支援的檔案系統有哪些,可以檢視底下這個目錄:

系統目前載入到記憶體中支援的檔案系統則有:

linux vfs(virtual filesystem switch)

了解我們使用的檔案系統後,再來則是要提到,那麼linux的核心有何如何管理這些檔案系統的呢?其實,整個linux的系統都是透過乙個名為virtual filesystem switch的核心功能去讀取filesystem的。也就是說,整個linux的認識檔案系統的filesystem其實都是vfs在進行管理,我們使用者並不需要知道每個partatition上面的filesystem是什麼,vfs會主動的幫助我們做好讀取的動作。

假設你的/使用的是/dev/had1,用ext3,而/home使用/dev/had2,用reiserfs,那麼你取用/home/datsai/.hashrc時,有特別要指定要使用的檔案系統是什麼嗎?應該沒有吧!這個就是vfs的功能了。通過這個vfs的功能來管理filesystem,省去我們需要自行設定讀取檔案系統的定義啊,方便很多,整個vfs可以簡單的用下圖來說:

磁碟與目錄的容量:

現在我們知道磁碟的整體資料是在superblock區塊中,但是每個個別檔案的容量則是記錄在inode當中記載的。那麼文字介面底下是如何讀取這些資料的呢?

df : 列出檔案系統的整體磁碟使用量;

du : 評估檔案系統的磁碟使用量

linux虛擬檔案系統vfs

linux可以掛載不同的檔案系統 ext2,fat,ntfs 用同一的樣式呈現給使用者,讀寫操作用起來都一樣,這是怎樣做到的呢?linux核心在各種不同的檔案系統格式上做了乙個抽象層,使得檔案 目錄 讀寫訪問等概念成為抽象層的概念,因此各種檔案系統看起來用起來都一樣,這個抽象層稱為虛擬檔案系統 vf...

linux檔案系統(三) 程序與VFS的關係

宣告 本 linux檔案系統 部落格,共分四節,系統中的每乙個程序都有自己的一組開啟的檔案 像根檔案系統,當前目工作目錄,安裝點等。有四個資料結構將vfs 層和系統的程序緊密聯絡在一起,它們分別是 files struct,fs struct file system type 和 namespace...

Linux檔案系統(三) 程序與VFS的關係

系統中的每乙個程序都有自己的一組開啟的檔案 像根檔案系統,當前目工作目錄,安裝點等。有四個資料結構將vfs 層和系統的程序緊密聯絡在一起,它們分別是 files struct,fs struct file system type 和 namespace 結構體。我們先看兩個圖 檔案描述符是用來描述開...