mke2fs 在磁碟分區上創建ext2、ext3、ext4文件系統,預設情況下會創建ext2。此命令的適用範圍:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。 1、語法 mke2fs [選項] [設備] mke2fs [ -c | -l filenam ...
mke2fs
在磁碟分區上創建ext2、ext3、ext4文件系統,預設情況下會創建ext2。此命令的適用範圍:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。
1、語法
mke2fs [選項] [設備]
mke2fs [ -c | -l filename ] [ -b block-size ] [ -f fragment-size ] [ -g blocks-per-group ] [ -G number-of-groups ] [ -i bytes-per-inode ] [ -I inode-size ] [ -j ] [-J journal-options] [ -K ] [ -N number-of-inodes ] [ -n ] [ -m reserved-blocks- percentage ] [ -o creator-os ] [ -O feature[,...]] [ -q ] [ -r fs-revision-level] [ -E extended-options] [ -v ] [ -F ] [ -L volume-label ] [ -M last-mounted-directory ] [ -S ] [ -t fs-type ] [ -T usage-type ] [ -U UUID ] [ -V ] device [ blocks-count ]
mke2fs -O journal_dev [ -b block-size ] [ -L volume-label ] [ -n ] [ -q ] [ -v ] external-journal [ blocks-count ]
device是與設備相對應的特殊文件(例如:g/dev/hdXX)。blocks-count是設備上的塊數。如果省略,mke2fs會自動配置文件系統的大小。如果調用為mkfs.ext3,則創建日記,好像指定了“-j”選項。新創建的文件系統參數的預設值(如果沒有被下麵列出的選項覆蓋)由“/etc/mke2fs.conf”配置文件控制。
2、選項列表
選項 |
說明 |
-V |
顯示命令版本信息 |
-b block-size |
指定文件系統上塊的大小(kb),有效值1024、2048、4096。如果省略,塊大小將由文件系統大小和文件系統的預期使用量(請參閱-T選項)來決定。如果塊大小為負值,則mke2fs將使用啟髮式方法來確定適當的塊大小,同時限制塊大小至少為block-size位元組。這對於某些硬體設備非常有用(這些硬體設備要求塊大小為2k的倍數)。 |
-c |
壞道檢測。如果該選項被指定兩次,則使用較慢的讀寫測試,而不是快速只讀測試。 |
-E extended-options |
為文件系統設置擴展選項。擴展選項是逗號分隔的,可以使用等號複製。在mke2fs的早期版本中,“-E”選項以前是“-R”。為了向後相容,仍然接受“-R”選項。支持下麵的擴展選項: 1)stride=stride-size。使用stride-size個塊來配置RAID數組,這是在移動到下一個磁碟之前讀取或寫入磁碟的塊數,有時被稱為塊大小。這主要影響文件系統元數據在mke2fs時的存放位置,以避免將它們放置在單個磁碟上,這可能會影響性能。塊分配程式也可能使用它。 2)stripe-width=stripe-width。使用stripe-width個塊來配置RAID數組,這通常是stride-size *n,其中N是RAID中包含數據磁碟的數目(例如,對於RAID 5,有一個奇偶校驗磁碟,所以N將是數組中磁碟數量減去1),這允許塊分配器在寫入數據時防止修改RAID中的奇偶。 3)resize=max-online-resize。預留足夠的空間,以便塊組描述符能夠增長以支持具有線上調整塊大小的文件系統。 4)lazy_itable_init[= <0 to disable, 1 to enable>]。如果使能了,並且也啟用了uninit_bg功能,那麼inode表將不會被mke2fs完全初始化。這明顯加快了文件系統的初始化速度,但它要求內核在文件系統首次掛載時在後臺完成對文件系統的初始化。如果省略了選項值,則預設為1以啟用延遲inode表初始化。 5)test_fs。在文件系統超級塊中設置一個標誌,指示可以使用試驗性內核代碼(如ext4dev文件系統)掛載它。 6)discard。嘗試在mkfs時丟棄塊(在固態設備和稀疏/稀疏的Provi-Sied存儲中丟棄塊是有用的)。當設備宣傳丟棄數據時,將所有尚未歸零的inode表標記為零。這大大加快了文件系統初始化的速度。此設置為預設設置。 7)nodiscard。在mkfs時不會丟棄塊。 |
-f fragment-size |
設置文件系統碎片的大小。mke2fs接受“-f”選項,但目前忽略它,因為第二個擴展文件系統還不支持片段 |
-F |
強制mke2fs創建文件系統,即使指定的設備不是塊特殊設備上的分區,或者其他參數沒有意義。。由於這個指令很危險,因此必須確認兩次 |
-g blocks-per-group |
指定塊組中的塊數。用戶通常沒有任何理由設置此參數,因為預設設置對文件系統是最佳的。開發測試用例的開發人員通常使用此選項。 |
-G number-of-groups |
指定組的數量,這些組將被打包在一起用來創建更大的虛擬塊組。組數必須是2的冪,並且只能在啟用Flex_BG文件系統功能時指定。 |
-i bytes-per-inode |
mke2fs為磁碟上每一個inode位元組創建一個inode。bytes/inode比越大,創建的inode就越少。這個值一般不應該小於文件系統的塊大小,因為在這種情況下,將產生比以往任何時候都多的inode。在文件系統創建後不可能擴展該文件系統上的inode數,因此要小心確定此參數的正確值。 |
-I inode-size |
指定每個inode的大小(以位元組為單位)。mke2fs預設創建256位元組的inode。在2.6.10之後的內核和一些早期的供應商內核中,可以使用大於128個位元組的inode存儲擴展屬性以提高性能。inode表將消耗,這將減少文件系統中的可用空間,也會對性能產生負面影響。大型inode中存儲的擴展屬性在舊內核中是不可見的,這樣的文件系統將根本無法用2.4內核掛載。在創建文件系統之後,不可能更改此值。 |
-j |
創建ext3文件系統。如果沒有指定“-j”選項,則預設日誌參數將用於創建存儲在文件系統中的適當大小的日誌 |
-J journal-options |
使用命令行中指定的選項創建ext 3日誌。選項是逗號分隔的,可以使用相等號對參數賦值。支持以下兩個參數,而且這兩個參數只能指定一個。 size=journal-size。指定內部日誌的大小,單位是MB。日誌的大小必須至少為1024個文件系統塊(如果使用1k塊,則為1MB,如果使用4k塊,則為4MB),並且可能不超過102,400個文件系統塊。 device=external-journal。將文件系統附加到位於指定“external-journal“的日誌塊設備上,“external-journal“必須已使用以下命令創建:mke2fs -O journal_dev external-journal。請註意,“external-journal“必須具有與新文件系統相同的塊大小。此外,雖然支持將多個文件系統附加到單個“external-journal“,但linux內核和e2fsck(8)目前還不支持共用“external-journal“。 |
-K |
保留,不要試圖在mkfs時丟棄塊 |
-l filename |
從文件中讀取磁碟壞塊信息。註意,必須使用mke2fs使用的塊大小來生成壞塊列表中的塊號。因此,mke2fs的-c選項是一種簡單得多且不容易出錯的方法,用於在格式化磁碟之前檢查是否存在錯誤塊,因為mke2fs將自動將正確的參數傳遞給壞塊程式。 |
-L new-volume-label |
設置文件系統捲標,捲標最大16個位元組 |
-m reserved-blocks-percentage |
指定為超級用戶保留的文件系統塊的百分比。這樣可以避免碎片,並允許root有用的守護進程(如syzabd(8)在非特權進程被阻止寫入文件系統後繼續正確運行。預設百分比為5%。 |
-M last-mounted-directory |
設置文件系統最後的掛載目錄。一些實用程式可以從上一次掛載目錄中選擇鍵,以確定文件系統應該安裝在何處。 |
-n |
不創建文件系統,而是演示創建文件系統時該怎麼做 |
-N number-of-inodes |
重寫應為文件系統保留的inode數量的預設值。 |
-o creator-os |
重寫文件系統的“creator operating system”欄位的預設值。預設情況下,creator欄位設置為mke2fs編譯出的操作系統的名稱。 |
-O feature[,...] |
創建具有給定功能的文件系統(文件系統選項),覆蓋預設的文件系統選項。預設情況下啟用的特性由base_features關係指定,或者在/etc/mke2fs.conf配置文件中的[defaults]部分中指定,或者在-T選項指定的用法類型的[fs_type]子節中指定,並由文件系統的[fs_types]子節中的特性關係進一步修改使用類型。 文件系統特性集將使用此選項指定的特性集進行進一步編輯,或者如果未給出此選項,則由正在創建的文件系統類型的default_features關係進行編輯,或者在配置文件的[defaults]部分中進行編輯。 文件系統功能集由一系列要啟用的以逗號分隔的特性組成。要禁用一個功能,只需在特征名前加上插入符號(‘^’)。偽文件系統功能“none”將清除所有文件系統功能。feature可以是以下內容: 1)dir_index。使用hashed b-trees來加快大目錄中的查找速度 2)extent。使用間extent塊來存儲inode中數據塊的位置。這是一種更有效的編碼,它加快了文件系統的訪問速度,特別是對於大型文件。 3)filetype。將文件類型信息存儲在目錄條目中。 4)flex_bg。允許將每個塊組元數據(分配點陣圖和inode表)放置在存儲介質上的任何位置。此外,mke2fs將每個塊組元數據放在每個“flx_bg group”的第一個塊組中。可以使用-G選項指定flx_bg組的大小。 5)has_journal。創建ext 3日誌,和“-j”選項一樣。 6)journal_dev。在給定設備上創建外部ext 3日誌,而不是常規ext 2文件系統。 7)large_file。文件系統可以包含大於2GB的文件。(創建文件>2GB時,現代內核會自動設置此特性。) 8)resize_inode。保留空間,這樣塊組描述符表在將來可能會增長。對於使用regze2fs線上調整大小很有用。預設情況下,mke2fs將嘗試預留足夠的空間,以便文件系統可以增長到其初始大小的1024倍。 9)sparse_super。創建一個較少SuperBlock備份的文件系統(在大型文件系統上節省空間)。 10)uninit_bg。在不初始化所有塊組的情況下創建一個文件系統。這個特性還允許校驗和功能,以及每個塊組中highest-inode-used統計信息。這個特性可以顯著加快文件系統的創建時間(如果啟用了lazable_init),還可以大大減少e2fsck的時間。它只受最近Linux內核中的ext 4文件系統的支持。 |
-q |
靜默執行,通常用在腳本文件中。 |
-r revision |
為新的文件系統設置文件系統修訂號。 |
-S |
只寫超級塊和組描述符。如果所有的超級塊和備份超級塊都損壞了,並且需要一種最後的恢復方法,這是很有用的。它導致mke2fs重新初始化超級塊和組描述符,同時不觸及inode表、塊和inode點陣圖。e2fsck程式應該在使用此選項後立即運行,並且無法保證任何數據都是可輓救的。使用此選項時指定正確的文件系統塊大小至關重要,否則不可能恢復。 |
-t fs-type |
指定文件系統類型,預設ext2。此選項根據“/etc/mke2fs.conf(5)”中的fstypes配置節控制預設使用哪些文件系統選項 如果使用“-O”選項顯式地添加或刪除應該在新創建的文件系統中設置的文件系統選項,則所請求的fs-type可能不支持所產生的文件系統。(例如,“mke2fs -t ext3 -O extents /dev/sdXX”將創建一個不受ext3實現支持的文件系統。 “"mke2fs -t ext3 -O^has_journal /dev/hdXX”將創建一個沒有日誌的文件系統,因此Linux內核中的ext 3文件系統代碼將不支持該文件系統。) |
-T usage-type[,...] |
指定文件系統的使用方式,以便mke2fs可以選擇最佳的文件系統參數。所支持的usage-type在配置文件“/etc/mke2fs.conf(5)”中定義。用戶可以使用逗號分隔列表指定一個或多個usage-type。 |
-U |
用指定UUID創建系統 |
-v |
顯示詳細執行過程 |
3、實例
創建ext2文件系統
|