Linux

沒有分區的文件系統

  • March 25, 2020

為了創建文件系統而創建分區是很常見的。

現代 Linuxfdisk會自動進行塊對齊,從扇區開始分區2048

在這種情況下,文件系統也將從扇區開始2048。下面只是一個例子。

fdisk -l /dev/nvme1n1
Disk /dev/nvme1n1: 5 GiB, 5368709120 bytes, 10485760 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xc14701c1

Device         Boot Start      End  Sectors Size Id Type
/dev/nvme1n1p1       2048 10485759 10483712   5G 83 Linux

但也可以直接在設備上創建文件系統,無需任何分區。

在這種情況下,文件系統將在哪個塊中啟動?

它會從扇區開始0嗎?如果是這樣,是否意味著它預設對齊?

是的,它將與塊 0 對齊,因為它總是在 /dev/nvme1n1p1 上創建文件系統時發生,並且它從 nvme1n1p1 設備的塊 0 開始。這裡的分區只是創建指向設備 nvme1n1 上有限空間的 nvme1n1p1 設備的方法。

在您的範例中,您有兩個設備 - nvme1n1(10485760 扇區)和 nvme1n1p1(10483712 扇區),沒有實用程序甚至會將 nvme1n1p1 視為 nvme1n1 的一部分。

無論如何 - 這是在整個驅動器上創建分區的非常糟糕的做法。分區表不僅適用於分割驅動器,也適用於標記它們。在最壞的情況下,可能需要恢復文件系統,而您甚至不知道那裡有什麼。那個分區表被刪除了嗎?或者也許那是包含文件系統的整個驅動器?是 Linux 還是 BSD 還是 Windows?分區表可以提供一點線索。

正如 Stefan 所說,直接在磁碟陣列切片或 iSCSI 節點上創建文件系統很常見。這樣做通常是因為它們有自己的標識,而且可能有太多的標識,因此創建分區變得毫無意義。

引用自:https://serverfault.com/questions/1008371