首页 > 编程知识 正文

linux格式化mkfs,linuxmkfs格式化后能恢复吗

时间:2023-05-03 15:45:38 阅读:264284 作者:129

mkfs

[[email protected] ~]# mkfs [-t 檔案系統格式] 裝置檔名

選項與參數:

-t :可以接檔案系統格式,例如 ext3, ext2, vfat 等(系統有支援才會生效)

範例一:請將上個小節當中所製作出來的 /dev/hdc6 格式化為 ext3 檔案系統

[[email protected] ~]# mkfs -t ext3 /dev/hdc6

mke2fs 1.39 (29-May-2006)

Filesystem label= <==這裡指的是分割槽的名稱(label)

OS type: Linux

Block size=4096 (log=2) <==block 的大小設定為 4K

Fragment size=4096 (log=2)

251392 inodes, 502023 blocks <==由此設定決定的inode/block數量

25101 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=515899392

16 block groups

32768 blocks per group, 32768 fragments per group

15712 inodes per group

Superblock backups stored on blocks:

32768, 98304, 163840, 229376, 294912

Writing inode tables: done

Creating journal (8192 blocks): done <==有日誌記錄

Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 34 mounts or

180 days, whichever comes first. Use tune2fs -c or -i to override.

# 這樣就建立起來我們所需要的 Ext3 檔案系統了!簡單明瞭!

[[email protected] ~]# mkfs[tab][tab]

mkfs mkfs.cramfs mkfs.ext2 mkfs.ext3 mkfs.msdos mkfs.vfat

# 按下兩個[tab],會發現 mkfs 支援的檔案格式如上所示!可以格式化 vfat 喔!

mkfs 其實是個綜合指令而已,事實上如同上表所示,當我們使用『 mkfs -t ext3 ...』時, 系統會去呼叫 mkfs.ext3 這個指令來進行格式化的動作啦!若如同上表所展現的結果, 那麼鳥哥這個系統支援的檔案系統格式化工具有『cramfs, ext2, ext3, msdoc, vfat』等, 而最常用的應該是 ext3, vfat 兩種啦! vfat 可以用在 Windows/Linux 共用的 USB 隨身碟囉。

例題:

將剛剛的 /dev/hdc6 格式化為 Windows 可讀的 vfat 格式吧!

答:

mkfs -t vfat /dev/hdc6

在格式化為 Ext3 的範例中,我們可以發現結果裡面含有非常多的資訊,由於我們沒有詳細指定檔案系統的細部項目, 因此系統會使用預設值來進行格式化。其中比較重要的部分為:檔案系統的標頭(Label)、Block的大小以及 inode 的數量。 如果你要指定這些東西,就得要瞭解一下 Ext2/Ext3 的公用程式,亦即 mke2fs 這個指令囉!

mke2fs

[[email protected] ~]# mke2fs [-b block大小] [-i block大小] [-L 標頭] [-cj] 裝置

選項與參數:

-b :可以設定每個 block 的大小,目前支援 1024, 2048, 4096 bytes 三種;

-i :多少容量給予一個 inode 呢?

-c :檢查磁碟錯誤,僅下達一次 -c 時,會進行快速讀取測試;

如果下達兩次 -c -c 的話,會測試讀寫(read-write),會很慢~

-L :後面可以接標頭名稱 (Label),這個 label 是有用的喔!e2label指令介紹會談到~

-j :本來 mke2fs 是 EXT2 ,加上 -j 後,會主動加入 journal 而成為 EXT3。

mke2fs 是一個很詳細但是很麻煩的指令!因為裡面的細部設定太多了!現在我們進行如下的假設:

這個檔案系統的標頭設定為:vbird_logical

我的 block 指定為 2048 大小;

每 8192 bytes 分配一個 inode ;

建置為 journal 的 Ext3 檔案系統。

開始格式化 /dev/hdc6 結果會變成如下所示:

[[email protected] ~]# mke2fs -j -L "vbird_logical" -b 2048 -i 8192 /dev/hdc6

mke2fs 1.39 (29-May-2006)

Filesystem label=vbird_logical

OS type: Linux

Block size=2048 (log=1)

Fragment size=2048 (log=1)

251968 inodes, 1004046 blocks

50202 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=537919488

62 block groups

16384 blocks per group, 16384 fragments per group

4064 inodes per group

Superblock backups stored on blocks:

16384, 49152, 81920, 114688, 147456, 409600, 442368, 802816

Writing inode tables: done

Creating journal (16384 blocks): done

Writing superblocks and filesystem accounting information: done

# 比較看看,跟上面的範例用預設值的結果,有什麼不一樣的啊?

其實 mke2fs 所使用的各項選項/參數也可以用在『 mkfs -t ext3 ... 』後面,因為最終使用的公用程式是相同的啦! 特別要注意的是 -b, -i 及 -j 這幾個選項,尤其是 -j 這個選項,當沒有指定 -j 的時候, mke2fs 使用 ext2 為格式化檔案格式,若加入 -j 時,則格式化為 ext3 這個 Journaling 的 filesystem 呦!

老實說,如果沒有特殊需求的話,使用『 mkfs -t ext3....』不但容易記憶,而且就非常好用囉!

时间: 03-19

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。