linux mkfs
指令:mkfs
使用權限 : 超級使用者
使用方式 : mkfs [-V] [-t fstype] [fs-options] filesys [blocks] [-L Lable]
說明 : 建立 linux 檔案系統在特定的 partition 上
參數 :
device : 預備檢查的硬碟 partition,例如:/dev/sda1
-V : 詳細顯示模式
-t : 給定檔案系統的型式,Linux 的預設值為 ext2
-c : 在制做檔案系統前,檢查該partition 是否有壞軌
-l bad_blocks_file : 將有壞軌的block資料加到 bad_blocks_file 裡面
block : 給定 block 的大小
-L:建立lable
補充說明:
mkfs本身並不執行建立檔案系統的工作,而是去調用相關的程式來執行。例如,若在"-t" 參數中指定ext2,則
mkfs會調用mke2fs來建立檔案系統.使用時如省略指定【塊數】參數,mkfs會自動設置 適當的塊數.
例子 :
在 /dev/hda5 上建一個 msdos 的檔案系統,同時檢查是否有壞軌存在,並且將過程詳細列出來 :
mkfs -V -t msdos -c /dev/hda5
mfks -t ext3 /dev/sda6 //將sda6分區格式化為ext3格式
mkfs -t ext2 /dev/sda7 //將sda7分區格式化為ext2格式
擴展知識:mkfs的使用示例
[root@localhost beinan]# mkfs -t 檔案系統 存放裝置
注:
這裡的檔案系統是要指定的,比如 ext3 ;reiserfs ;ext2 ;fat32 ;msdos 等... ...
設備比如是一個硬碟的分區,軟碟,光碟機等.. ... 在格式化分區之前,您得懂得如何查看硬碟分區情況,並有針對性的格式化;比如用 fdisk -l 來查看; 請參考:《Linux 查看磁碟分割、檔案系統、使用情況的命令和相關工具介紹》 比如我想格式化一個移動U盤中的一個分區;全景應該是:
[root@localhost beinan]# fdisk -l
Disk /dev/hda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 765 6144831 7 HPFS/NTFS
/dev/hda2 766 2805 16386300 c W95 FAT32 (LBA)
/dev/hda3 2806 9729 55617030 5 Extended
/dev/hda5 2806 3825 8193118+ 83 Linux
/dev/hda6 3826 5100 10241406 83 Linux
/dev/hda7 5101 5198 787153+ 82 Linux swap / Solaris
/dev/hda8 5199 6657 11719386 83 Linux
/dev/hda9 6658 7751 8787523+ 83 Linux
/dev/hda10 7752 9729 15888253+ 83 Linux
Disk /dev/sda: 1035 MB, 1035730944 bytes
256 heads, 63 sectors/track, 125 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 25 201568+ 83 Linux
/dev/sda2 26 125 806400 5 Extended
/dev/sda5 26 50 201568+ 83 Linux
/dev/sda6 51 76 200781 83 Linux
我們可以看到有sda這個設備,所以可以用 fdisk -l /dev/sda專門來顯示他的分區情況;比如我想格式化 /dev/sda6 分區為 ext3檔案系統,則為:
[root@localhost beinan]# mkfs -t ext3 /dev/sda6
mke2fs 1.37 (21-Mar-2005)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
50200 inodes, 200780 blocks
10039 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67371008
25 block groups
8192 blocks per group, 8192 fragments per group
2008 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729
Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: 注:在這裡直接回車;
done
This filesystem will be automatically checked every 26 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
這樣就格式化好了,sda6現在就是ext3檔案系統了;我們就可以用mount 載入這個分區,然後使用這個檔案系統;
[root@localhost beinan]# mkdir /mnt/sda6
[root@localhost beinan]# chmod 777 /mnt/sda6
[root@localhost beinan]# mount /dev/sda6 /mnt/sda6
當然您也可以把分區格式化成其它的檔案系統;比如我們把 /dev/sda6格式化為ext3 、ext2、reiserfs、fat32、msdos 檔案系統,命令格式如下;
[root@localhost beinan]# mkfs -t ext3 /dev/sda6
[root@localhost beinan]# mkfs -t ext2 /dev/sda6
[root@localhost beinan]# mkfs -t reiserfs /dev/sda6
[root@localhost beinan]# mkfs -t fat32 /dev/sda6
[root@localhost beinan]# mkfs -t msdos /dev/sda6
... ...
2)mkfs.ext3 mkfs.reiserfs mkfs.ext2 mkfs.msdos mkfs.vfat mke2fs 的介紹;
我們先說了一個mkfs 工具後,我們再來介紹 mkfs.ext3 mkfs.reiserfs mkfs.ext2 mkdosfs mkfs.msdos mkfs.vfat ,其實mkfs 在執行的命令的時候,也是調用的這個工具,這也是我先把mkfs介紹的主要原因; 通過檔案名,我們就知道這些工具是支援什麼檔案系統;這些命令為我們提供了更多的方便;
[root@localhost beinan]# mkfs.ext3 /dev/sda6 注:把該設備格式化成ext3檔案系統
[root@localhost beinan]# mke2fs -j /dev/sda6 注:把該設備格式化成ext3檔案系統
[root@localhost beinan]# mkfs.ext2 /dev/sda6 注:把該設備格式化成ext2檔案系統
root@localhost beinan]# mke2fs /dev/sda6 注:把該設備格式化成ext2檔案系統
[root@localhost beinan]# mkfs.reiserfs /dev/sda6 注:把該設備格式化成reiserfs檔案系統
[root@localhost beinan]# mkfs.vfat /dev/sda6 注:把該設備格式化成fat32檔案系統
[root@localhost beinan]# mkfs.msdos /dev/sda6 注:把該設備格式化成fat16檔案系統,msdos檔案系統就是fat16;
[root@localhost beinan]# mkdosfs /dev/sda6 注:把該設備格式化成fat16檔案系統,同mkfs.msdos
... ...
2)mkswap 把一個分區格式化成為swap交換區;
[root@localhost beinan]# mkswap /dev/sda6 注:創建此分區為swap 交換分區
[root@localhost beinan]# swapon /dev/sda6 注:載入交換分區;
[root@localhost beinan]# swapoff /dev/sda6 注:關閉交換分區;
我們查看系統已經載入的swap交換分區;
[root@localhost beinan]# swapon /dev/sda6 注:載入交換分區;
[root@localhost beinan]# swapon -s
Filename Type Size Used Priority
/dev/hda7 partition 787144 0 -1
/dev/sda6 partition 225144 0 -3
為什麼我的系統有兩個交換分區?因為我用移動U盤做的實驗,主要是為寫教程之用;sda6是我在U盤上建的swap分區;
如果讓swap開機就載入,應該改 /etc/fstab檔,加類似如下一行;
/dev/sda6 swap swap defaults 0 0 注:把此行中的/dev/hda7 改為您的交換分區就行;
或者把命令列直接寫入 /etc/rc.d/rc.local中也行;
swapon /dev/sda6
如果您的硬碟不能再分區,您可以創建一個swap檔
[root@localhost beinan]# dd if=/dev/zero of=/tmp/swap bs=1024 count=524288 注:創建一個大小為512M 的swap 檔,在/tmp目錄中;您可以根據自己的需要的大小來創建swap 檔;
讀入了 524288+0 個塊
輸出了 524288+0 個塊
[root@localhost beinan]# mkswap /tmp/swap 注:把/tmp/swap 檔,創建成swap 交換區
Setting up swapspace version 1, size = 536866 kB
no label, UUID=d9d8645d-92cb-4d33-b36e-075bb0a2e278
[root@localhost beinan]# swapon /tmp/swap 注:掛載swap
[root@localhost beinan]# swapon -s
Filename Type Size Used Priority
/dev/hda7 partition 787144 888 -1
/tmp/swap file 524280 0 -2
注意:其實我們在安裝系統的時候,就已經劃分了交換分區;查看/etc/fstab,應該swap的行;如果您在安裝系統時沒有添加swap,可以通過這種辦法來添加;
本文自http://www.linuxso.com/command/mkfs_2.html轉貼
留言列表