Filesystems

在 Linux 中可以在未格式化的儲存設備上執行 VFS 讀/寫操作嗎?

  • July 13, 2020

據我了解,READ/WRITE 等是 linux 中的文件系統操作。文件系統向核心 (VFS) 註冊回調,並在讀/寫操作期間檢測到特定 FS 時由它依次呼叫。

例如:

EXT4_write:

VFS write request -> ext4_writepages()

F2FS_write:

VFS write request -> f2fs_write_data_page()

但是如果儲存介質沒有格式化怎麼辦。它沒有任何文件系統。當對其執行 READ/WRITE 操作時,預設選擇哪個文件系統操作?

為了使 VFS 層能夠對文件執行讀/寫操作,必須以一種或另一種方式打開該文件。如果您的介質沒有文件系統,則無法掛載它。如果您無法掛載它,那麼您將無法獲得它的路徑供open(). 如果您無法在其上打開文件,則無法對其執行讀/寫操作。因此,您不能在沒有文件系統的介質上進行讀/寫操作。

您將擁有塊設備(假設所有必要的驅動程序都可用),這將使您能夠在設備本身上執行 I/O 以對其進行格式化。

引用自:https://unix.stackexchange.com/questions/598093