ext4
ext4 (fourth extended file system) はオープンソースのディスクファイルシステムで、extended filesystem シリーズの最新バージョンです。これは多くの Linux システムで主要なファイルシステムとして使用されていることから、Linux でサポートされている中でほぼ間違いなく最も安定し、かつ十分にテストされたファイルシステムとなっています。
ext4 は当初 ext3 のフォークとして作成され、パフォーマンスの改善と、ディスク上のフォーマットへのわずかな変更を伴うサイズ制限の撤廃という、新しい機能を取り入れました。ボリュームの上限は 1 EB に、ファイルサイズの上限は 16TB に拡大されました。古典的な ext2/3 ビットマップブロック割り当てに代わって、ext4 はエクステントを使用し、大きいファイルのパフォーマンスを向上させつつ断片化を抑制します。ext4 はより洗練されたブロック割り当てアルゴリズム (遅延割り当てとマルチブロック割り当て) も提供し、ファイルシステムドライバがディスク上のデータのレイアウトをより最適化できるようにしています。
インストール
カーネル
ext4 をサポートするには、以下のカーネルオプションを有効にしてください:
File systems --->
<*> The Extended 4 (ext4) filesystem
ext4 のオプション機能をサポートするには:
File systems --->
[*] Ext4 POSIX Access Control Lists
[*] Ext4 Security Labels
[ ] EXT4 debugging support
オプション | 説明 |
---|---|
Ext4 POSIX Access Control Lists | ACL パーミッションを有効にします。 |
Ext4 Security Labels | POSIX ケイパビリティーのサポートを有効にします。 |
EXT4 debugging support | (非推奨) ext4 のデバッグの際に使用します (上級ユーザー用)。 |
大容量ドライブのサポート
システムに大容量のディスク(2TB 以上)があり、かつ 32bit(x86)のカーネルが使われている場合、以下のオプションを有功にする必要があります:
-*- Enable the block layer --->
[*] Support for large (2TB+) block devices and files
USE フラグ
sys-fs/e2fsprogs パッケージがこのファイルシステムについて作業をするためのユーティリティーを含んでいます。Gentoo Linux では sys-fs/e2fsprogs は system セットの一部になっているので、既にシステムにインストールされているはずです。
USE flags for sys-fs/e2fsprogs Standard EXT2/EXT3/EXT4 filesystem utilities
cron
|
Install e2scrub_all cron script |
fuse
|
Build fuse2fs, a FUSE file system client for ext2/ext3/ext4 file systems |
nls
|
Add Native Language Support (using gettext - GNU locale utilities) |
split-usr
|
Enable behavior to support maintaining /bin, /lib*, /sbin and /usr/sbin separately from /usr/bin and /usr/lib* |
static-libs
|
Build static versions of dynamic libraries as well |
test
|
Enable dependencies and/or preparations necessary to run tests (usually controlled by FEATURES=test but can be toggled independently) |
tools
|
Build extfs tools (mke2fs, e2fsck, tune2fs, etc.) |
emerge
USE フラグをセットしたら、システムを更新して変更を適用します:
root #
emerge --ask --changed-use --deep @world
使い方
作成
mkfs.ext4 コマンドはフォーマットするよう指示されたパーティションの全ての内容を不可逆的に破壊します。正しいパーティションを選択しているか必ず確認してください!
ext4 ファイルシステムを /dev/sda1 パーティションに作成するには:
root #
mkfs.ext4 /dev/sda1
/dev/sda1 は実際にフォーマットするパーティションに置き換えてください。
デフォルトでは、利用可能なディスク容量のうち5%は root ユーザーのために予約されます。これは / ディレクトリーがマウントされるパーティションにおいてはたいてい良いことですが、その他のパーティションでは望ましくないかもしれません。root ユーザーに予約されるディスク容量を無くすには mkfs.ext4 の -m 0
オプションを使用します:
root #
mkfs.ext4 -m 0 /dev/sda1
関連項目
- Ext4 encryption — provides instructions on encrypting files in a home partition using the ext4 filesystem's built-in file based encryption.
- JFS — IBM によって作成された、64 ビットのジャーナリングファイルシステムです。
- Btrfs — 耐障害性、自己修復特性、管理のしやすさに焦点を当てつつ、先進的な機能を実装することも主眼としている、Linux 向けのコピーオンライト (CoW) ファイルシステムです。
- XFS — 高性能なジャーナリングファイルシステム
- F2FS — NAND フラッシュメモリデバイス向けに設計されたファイルシステムです。