ファイルシステムを作成するmkfs
ファイルシステムを作成するmkfs
0.改訂履歴
1.はじめに
このドキュメントでは,RedHat Linux Advanced Server 2.1を使って,ファイルシステムを作成する手順を説明する.
2.ファイルシステムについて
- Linuxでは,いくつかのファイルシステムを選択する事が出来る.
- そのうちの代表的な物を次にあげる.
ファイルシステム |
説明 |
minix
|
MinixというOS用のファイルシステム. Linuxが最初に使った. パーティションサイズが最大64MBだったりファイル名が短い等の制限があるが,フロッピーディスクやRAMディスクでいまだ使われている. |
ext
|
Minixの拡張版. EXTend file system. LinixのKernel 2.1.21以降では使えない. |
ext2
|
extの第2世代ということで,Second extend file systemとして作成されている. RedHat6.xではデフォルトでこのファイルシステムが使われている. |
ext3
|
ext2ファイルシステムに,ジャーナル機能を付けた物. RedHat 7.xから標準となっている.ext2とext3は,相互に変換可能. |
3.mkfsでext2のファイルシステムを作成する
- Linuxでファイルシステムを作成する際には,mkfsコマンドを使用する.
- mkfsの文法は次の通りである.
[root@testdb root]# mkfs
Usage: mkfs [-V] [-t fstype] [fs-options] device [size]
[root@testdb root]#
|
- /dev/sdbに,ext2形式でファイルシステムを作成してみる.
- /dev/sdbは,SCSIハードディスクの2番目のドライブ.
- 詳細は,ドキュメント「Linuxのデバイス」を参照.
[root@testdb root]# mkfs -V -t ext2 /dev/sdb
mkfs version 2.11f (Feb 26 2002)
mkfs.ext2 /dev/sdb
mke2fs 1.26 (3-Feb-2002)
/dev/sdb is entire device, not just one partition!
Proceed anyway? (y,n) y
|
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
8880128 inodes, 17755136 blocks
887756 blocks (5.00%) reserved for the super user
First data block=0
542 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424
Writing inode tables: done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 39 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@testdb root]#
|
- この情報をみると次のようになる.
- 容量は次の通り.
- 1ブロック4,096バイト.
- 17,755,136ブロック.
- つまり, 72,725,037,056byte≒68GB
- ファイルシステムが一杯にならないように,バッファ領域を確保してある.
- Super User用に5%の領域.887,756ブロック.
- つまり約3.4GB.
- ファイルシステムのチェックは
- 39回マウントされるか,または180日毎にチェックされる.
- 作成したファイルシステムを,/aaにマウントしてみる.
[root@testdb root]# mkdir /aa
[root@testdb root]# mount /dev/sdb /aa
[root@testdb root]#
|
[root@testdb root]# df -m
Filesystem 1M-blocks Used Available Use% Mounted on
/dev/sda3 28970 4199 23299 16% /
/dev/sda2 38 14 22 37% /boot
none 1760 0 1760 0% /dev/shm
/dev/sda5 3027 1384 1489 49% /usr
/dev/sdb 68267 1 64799 1% /aa
[root@testdb root]#
|
- 67GBの領域がある.
- ext2のファイルシステムだけ表示させてみる.
[root@testdb root]# df -t ext2
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/sdb 69905880 20 66354836 1% /aa
[root@testdb root]#
|
[root@testdb root]# umount /aa
[root@testdb root]#
|
4.ext3のファイルシステムにする
- RedHat7.3以降では,mkfsでext3ファイルシステムの作成が出来るが,今回用いたRedHat Linux Advanced Server2.1は,RedHat Linux 7.2ベースなのでmkfsコマンドがext3に対応していない.
- この場合,mkfsでext2ファイルシステムを作成した後,tune2fsコマンドを用いて,ジャーナル機能を追加する.
[root@testdb root]# tune2fs -j /dev/sdb
tune2fs 1.26 (3-Feb-2002)
Creating journal inode: done
This filesystem will be automatically checked every 29 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@testdb root]#
|
[root@testdb root]# mount /dev/sdb /aa
[root@testdb root]#
|
[root@testdb root]# df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/sda3 29664928 4299200 23858832 16% /
/dev/sda2 38890 13642 23240 37% /boot
none 1802756 0 1802756 0% /dev/shm
/dev/sda5 3099260 1416688 1525140 49% /usr
/dev/sdb 69905880 32828 66322028 1% /aa
[root@testdb root]#
|
- dfコマンドで,ファイルシステムがext2の物だけ表示させる.
[root@testdb root]# df -t ext2
Filesystem 1k-blocks Used Available Use% Mounted on
[root@testdb root]#
|
参考