zoukankan      html  css  js  c++  java
  • 【转】linux之mkfs/mke2fs格式化

    转自:http://blog.csdn.net/andyhooo/article/details/5321584

    • mkfs
    [root@www ~]# mkfs [-t 檔案系統格式] 裝置檔名
    選項與參數:
    -t  :可以接檔案系統格式,例如 ext3, ext2, vfat 等(系統有支援才會生效)
    
    範例一:請將上個小節當中所製作出來的 /dev/hdc6 格式化為 ext3 檔案系統
    [root@www ~]# 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 檔案系統了!簡單明瞭!
    
    [root@www ~]# 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
    [root@www ~]# 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 結果會變成如下所示:

    [root@www ~]# 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....』不但容易記憶,而且就非常好用囉!

  • 相关阅读:
    微信读书分享组队群
    骚操作!利用百度首页换肤的图片上传 API 做图床
    application/json和application/x-www-form-urlencoded使用选择
    通过类名或者jar名查询所在jar包
    sql中with as测试实例
    BeanUtils.copyProperties的简单示例
    jquery.validate.js的简单示例
    springboot restful接口服务异常处理
    怎样判断某个窗口是否打开
    怎样理解window.name
  • 原文地址:https://www.cnblogs.com/Andy-Lv/p/5298905.html
Copyright © 2011-2022 走看看