Linux パーティションにmkfsでファイルシステムを作る
増設したハードディスクを使うには、パーティションを作り、作ったパーティションの上にファイルシステムを作る必要があります。ここでは、Linuxで使えるファイルシステムの種類と、ファイルシステムの作成手順を解説します。
Last Update : 2013年08月13日
Linux パーティションにmkfsでファイルシステムを作る 項目
1. ファイルシステムの種類
ファイルシステムとは、ハードディスク等の記憶装置にあるデータをファイル名・更新日付などの属性データや、ファイルデータ自体を管理するための仕組みで、OSよって利用されるファイルシステムが異なります。
Linuxの場合は、ディストリビューションによって採用されるファイルシステムが異なりますが、ext3, ext4が採用される事が多いようです。
Linuxで使われるファイルシステム
名前 | 最大ファイルサイズ | 備考 |
ext2 | 2TB | Linuxオペレーティングシステムで広く利用されていたファイルシステムである。初期のextファイルシステムを拡張したもの。 |
ext3 | 16GB~2TB | ext2にジャーナリングシステム機能が追加されたもの。Linuxで主流のファイルシステム。 認識できる日付範囲が1901年12月14日から2038年1月18日でそろそろやばそう。 |
ext4 | 16TB | 最大1EBまでのボリュームサイズと、最大16TBまでのファイルサイズをサポートする。 日付範囲が、1901年12月14日から2514年4月25日となり、生きている間は使える。 タイムスタンプがナノ秒をサポート。おそらく今後の主流ファイルシステム。ext3よりレスポンス良し。 |
ReiserFS | 16TB | 小さなファイルの扱いに向いたジャーナリングファイルシステム。使っているのかな?SUSEで採用されていたとの事。 |
他にもまだありますが、メジャーなところでいうと上表くらいかと思います。
2. ファイルシステムを作成する
ファイルシステムを作るには、「mkfs」コマンドを使います。
書式
mkfs [オプション] デバイス名(パーティション)
有用なオプション
オプション | 意味 |
-t | ファイルシステムのタイプを指定。指定しなかった場合は、ext2が用いられる。 |
-c | ファイルシステムを作成する前に、デバイスに対して不良ブロックの検査を行う。 |
実際にファイルシステムを作成してみます。
# mkfs -t ext4 /dev/sdb1
↑ ファイルシステムはext4。/dev/sdb1パーティションをフォーマット
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
66384 inodes, 265064 blocks
13253 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=272629760
9 block groups
32768 blocks per group, 32768 fragments per group
7376 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 21 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
memo
mkfsコマンドはただのフロントエンドのプログラムです。 実際には以下のコマンド(mkfs.ext2、mkfs.ext3、mkfs.ext4)が実行されています。 直接これらのコマンドを使ってもファイルシステムを作成することができます。
# ls -l /sbin/mkfs* -rwxr-xr-x. 1 root root 7416 4月 29 16:41 2013 /sbin/mkfs -rwxr-xr-x. 1 root root 22476 4月 29 16:41 2013 /sbin/mkfs.cramfs -rwxr-xr-x. 5 root root 61072 6月 25 17:49 2013 /sbin/mkfs.ext2 ← ext2用mkfs -rwxr-xr-x. 5 root root 61072 6月 25 17:49 2013 /sbin/mkfs.ext3 ← ext3用mkfs -rwxr-xr-x. 5 root root 61072 6月 25 17:49 2013 /sbin/mkfs.ext4 ← ext4用mkfs -rwxr-xr-x. 5 root root 61072 6月 25 17:49 2013 /sbin/mkfs.ext4dev lrwxrwxrwx. 1 root root 7 8月 3 16:02 2013 /sbin/mkfs.msdos -> mkdosfs lrwxrwxrwx. 1 root root 7 8月 3 16:02 2013 /sbin/mkfs.vfat -> mkdosfs
使い方も簡単で、コマンドの後ろへパーティションを指定するだけです。
# mkfs.ext4 /dev/sdb1 ← パーティションのデバイス名を指定するだけ
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
66384 inodes, 265064 blocks
13253 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=272629760
9 block groups
32768 blocks per group, 32768 fragments per group
7376 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 25 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.