Linux では、ext3 の正式名は「第 3 拡張ファイルシステム」、中国語で「第 3 世代の拡張ファイル システム」を意味します。ログ ファイル システムです。サポートされる最大容量は 32TB、最大サポート容量は 32TB です。 1 つのファイルの制限は 16 TB で、32,000 のサブディレクトリをサポートします。 ext3 ファイル システムは、ファイル システムの整合性を大幅に向上させ、予期しないダウンタイムによるファイル システムの損傷を回避します。
#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。
linux ext3 ファイル
EXT3 は、第 3 世代拡張ファイル システム (英語: Third Extended Filesystem、略称 ext3) です。 log ファイル システム。Linux オペレーティング システムで一般的に使用されます。 1 つのファイルの最大制限は 16 TB で、ファイル システムは最大 32 TB の容量をサポートします。
これは、多くの Linux ディストリビューションのデフォルトのファイル システムです。 Stephen Tweedie は、1999 年 2 月にカーネル メーリング リストで拡張 ext2 の使用法を初めて示しました。ファイル システムは、2.4.15 カーネルからメインライン カーネルにマージされました。
EXT3 ログ ファイル システムの特徴
1. 高可用性
システムは ext3 を使用しますファイル システムがインストールされると、システムは異常シャットダウン後でもファイル システムをチェックする必要がありません。クラッシュが発生した後、ext3 ファイル システムを復元するのにかかる時間はわずか数十秒です。
2. データの整合性
ext3 ファイル システムは、ファイル システムの整合性を大幅に向上させ、予期しないダウンタイムによるファイル システムの損傷を回避します。データの整合性を確保するという観点から、ext3 ファイル システムには 2 つのモードから選択できます。その 1 つは、「ファイル システムとデータの一貫性を同時に維持する」モードです。こうすることで、異常なシャットダウンによってジャンク ファイルがディスクに保存されることはなくなります。
3. ファイル システムの速度
ext3 ファイル システムを使用する場合、データを保存するときにデータを複数回書き込む必要がある場合がありますが、全体として、ext3 はext2 よりも優れたパフォーマンス。これは、ext3 のロギング機能がディスク ドライブの読み取りおよび書き込みヘッドを最適化するためです。したがって、ファイル システムの読み取りおよび書き込みパフォーマンスは Ext2 ファイル システムと比較して低下していません。
4. データ変換
ext2 ファイル システムを ext3 ファイル システムに変換するのは非常に簡単で、2 つのコマンドを入力するだけで変換プロセス全体を完了できます。 . ユーザーは、パーティションのバックアップ、復元、フォーマットなどに時間をかける必要はありません。 ext3 ファイル システムによって提供される小さなツールであるtune2fs を使用すると、ext2 ファイル システムを ext3 ログ ファイル システムに簡単に変換できます。さらに、ext3 ファイル システムは、何も変更せずに ext2 ファイル システムに直接ロードできます。
5. 複数のログ モード
Ext3 には複数のログ モードがあり、その動作モードの 1 つは、すべてのファイル データとメタデータをログに記録することです (ファイル システム内のデータを定義します)。 ).data、つまりデータのデータ) ログ記録用 (data=journal モード)、もう 1 つの動作モードは、データをログに記録せずにメタデータのみをログに記録するもので、いわゆる data=ordered または data=writeback モードです。 。システム管理者は、システムの実際の動作要件に基づいて、システムの動作速度とファイル データの一貫性のどちらかを選択できます。
ext2 から ext3 に移行する必要がある理由 (EXT3 の利点)
主な理由は 4 つあります: 可用性、データ整合性の柔軟性、速度、移行の容易さ。
1. 可用性
異常なクラッシュ (停電、システム クラッシュ) の後、ext2 ファイル システムは、e2fsck による整合性検証後にのみ検証できます。 。 e2fsck の実行時間は主に ext2 ファイル システムのサイズによって異なります。わずかに大きいファイル システム (数十ギガバイト) の検証には時間がかかります。ファイル システム上に多数のファイルがある場合、検証に時間がかかります。数百ギガバイトのファイル システムの検証には 1 時間以上かかる場合があります。これにより、使いやすさが大幅に制限されます。一方、ext3 は、ハードウェア障害が発生しない限り、異常終了した場合でもファイル システムの検証を必要としません。これは、データがファイル システム全体で一貫した方法でディスクに書き込まれるためです。異常なシャットダウン後、ext3 ファイル システムを復元する時間は、ファイル システムのサイズやファイルの数ではなく、一貫性を維持するために必要な「ログ」のサイズによって決まります。デフォルトのログ設定では、回復時間はわずか 1 秒です (ハードウェアの速度によって異なります)。
2. データの整合性
ext3 ファイル システムを使用すると、異常シャットダウン時のデータ整合性のパフォーマンスが確実に保証されます。データ保護の種類とレベルを選択できます。ファイル システムの一貫性を維持しながら、異常なシャットダウン中にファイル システム上のデータが破損することを許容することを選択できます。これにより、状況によっては速度がある程度向上します (すべての状況ではありません)。データの信頼性をファイル システムと一致させるように選択することもできます。これは、クラッシュ後に新しく書き込まれたファイルにデータのガベージが表示されないことを意味します。ファイル システムと一貫したデータの整合性を維持するこの安全なオプションは、デフォルト設定です。
3. 速度
ext3 は ext2 よりも多くの回数データを書き込みますが、多くの場合、ext3 は ext2 よりも高速です (高いデータ フロー)。これは、ext3 のロギング機能により、ハードディスクのヘッドの回転が最適化されるためです。 3 つのロギング モードから 1 つを選択して速度を最適化し、一部のデータ整合性を選択的に犠牲にすることができます。
4. 簡単な移行
ハードディスクを再フォーマットせずに ext2 から ext3 に簡単に移行でき、信頼性の高いログ ファイル システムのメリットを享受できます。はい、長くて退屈でエラーが発生しやすい「バックアップ、再フォーマット、復元」操作を行わなくても、ext3 の利点を体験できます。
移行には 2 つの方法があります。システムをアップグレードする場合、Red Hat Linux インストーラーが移行を支援します。各ファイル システムの [選択] ボタンをクリックするだけです。
tune2fs プログラムを使用して、既存の ext2 ファイル システムにログ機能を追加します。変換プロセス中にファイル システムがマウントされている場合、ファイル「.journal」はルート ディレクトリに表示されますが、ファイル システムがマウントされていない場合、ファイルはファイル システムに表示されません。
ファイル システムを変換するには、tune2fs –j /dev/hda1 (または変換するファイル システムが存在するデバイス名) を実行し、ファイル /etc/fstab の ext2 を ext3 に変更します。 。
独自のルート ファイル システムを変換する場合は、initrd を使用して起動する必要があります。 mkinitrd のマニュアルの説明に従ってプログラムを実行し、LILO または GRUB 構成に initrd がロードされていることを確認します (成功しない場合でもシステムは起動できますが、ルート ファイル システムは ext3 ではなく ext2 としてロードされます)。これを確認するには、コマンド cat / proc/mounts を使用できます。)
拡張知識: EXT3 と EXT4 の主な違い
Linuxカーネルは 2.6.28 から正式になり、新しいファイル システム Ext4 をサポートします。 Ext4 は Ext3 の改良版であり、Ext3 が Ext2 に対して行うのと同様に、Ext3 のいくつかの重要なデータ構造を変更するだけでなく、ログ関数を追加するだけです。 Ext4 は、より優れたパフォーマンスと信頼性、さらに豊富な機能を提供します:
1. Ext3
との互換性 いくつかのコマンドを実行して、再フォーマットせずに Ext3 から Ext4 へのオンライン移行を実行します。ディスクを削除するか、システムを再インストールします。元の Ext3 データ構造は引き続き保持され、Ext4 は新しいデータに基づいて動作するため、ファイル システム全体は Ext4 がサポートするより大きな容量を獲得します。
2. より大きなファイル システムとより大きなファイル
現在 Ext3 でサポートされている最大 16TB ファイル システムと最大 2TB ファイルと比較して、Ext4 はそれぞれ 1EB をサポートします (1,048,576TB)。 、1EB=1024PB、1PB=1024TB)ファイルシステム、および16TBのファイル。
3. 無制限のサブディレクトリ数
Ext3 は現在 32,000 のサブディレクトリのみをサポートしますが、Ext4 は無制限の数のサブディレクトリをサポートします。
4.Extents
Ext3 は間接ブロック マッピングを使用しますが、これは大きなファイルを操作する場合には非常に非効率的です。たとえば、100MB のファイルの場合、25,600 データ ブロック (各データ ブロックのサイズは 4KB) のマッピング テーブルを Ext3 で確立する必要があります。 Ext4 は、最新のファイル システムで一般的なエクステントの概念を導入しています。各エクステントは連続したデータ ブロックのセットです。上記のファイルは、「ファイル データは次の 25,600 データ ブロックに格納されている」と表現され、効率が大幅に向上します。
5. マルチブロック割り当て
Ext3 ファイル システムにデータを書き込む場合、Ext3 データ ブロック アロケーターは一度に 1 つの 4KB ブロックのみを割り当てることができます。 100MBのファイルではデータブロックアロケータを25,600回呼び出す必要があり、Ext4のマルチブロックアロケータ「マルチブロックアロケータ」(mballoc)は1回の呼び出しで複数のデータブロックを割り当てることをサポートしています。
6. 遅延割り当て
Ext3 のデータ ブロック割り当て戦略は、できるだけ早く割り当てることですが、Ext4 およびその他の最新のファイル オペレーティング システムの戦略は、ファイルがキャッシュに書き込まれた後でのみ、データ ブロックが割り当てられてディスクに書き込まれるまで、割り当てをできるだけ遅らせます。これにより、ファイル全体のデータ ブロック割り当てが最適化され、最初の 2 つと組み合わせると、パフォーマンスが大幅に向上します。特徴。
7. 高速な fsck
以前は、すべての i ノードをチェックする必要があるため、fsck を実行する最初のステップは非常に時間がかかりましたが、Ext4 は i ノード テーブルを提供します。各グループの未使用の i ノードのリストが fsck Ext4 ファイル システムに追加されました。将来的には、fsck Ext4 ファイル システムはそれらをスキップし、使用中の i ノードのみをチェックできるようになります。
8. ログの検証
ログは最も一般的に使用される部分であり、ディスク ハードウェアの障害に簡単につながる可能性があります。破損したログからデータを復元すると、さらに多くのデータが発生します。破損しています。 Ext4 のログ検証機能は、ログ データが破損しているかどうかを簡単に判断でき、Ext3 の 2 段階のログ記録メカニズムを 1 段階に統合することで、セキュリティを強化しながらパフォーマンスを向上させます。
9. "ジャーナリングなし" モード
ログには常にある程度のオーバーヘッドが伴います。Ext4 では、特別なニーズを持つ一部のユーザーがログを借用できるようにログをオフにすることができます。これによりパフォーマンスが向上します。 。
10. オンライン デフラグメンテーション
遅延割り当て、マルチブロック割り当て、およびエクステントはファイル システムの断片化を効果的に削減できますが、断片化は避けられません。 Ext4 はオンライン デフラグをサポートしており、個々のファイルまたはファイル システム全体をデフラグするための e4defrag ツールを提供します。
11.inode 関連機能
Ext4 は、より大きな i ノードをサポートします。Ext3 のデフォルトの i ノード サイズ 128 バイトと比較して、Ext4 はより多くの i ノードに対応できます。拡張属性 (ナノ秒など)タイムスタンプまたは i ノードのバージョン)、デフォルトの i ノード サイズは 256 バイトです。 Ext4 は、高速拡張属性と i ノード予約もサポートしています。
12. 永続的な事前割り当て
ダウンロードされたファイルに保存するのに十分なスペースを確保するために、P2P ソフトウェアは多くの場合、ファイルと同じサイズのファイルを事前に作成します。ダウンロードされたファイル。今後数時間または数日間のディスク容量不足によるダウンロードの失敗を避けるため、空のファイルを作成します。 Ext4 はファイル システム レベルで永続的な事前割り当てを実装し、アプリケーション ソフトウェア自体よりも効率的な対応する API (libc の posix_fallocate()) を提供します。
13. バリアはデフォルトで有効になっています
ディスクには、バッチ データ書き込み操作の順序を再調整し、書き込みパフォーマンスを最適化するための内部キャッシュが装備されているため、ファイル システムは次の場所にある必要があります。コミット レコードは、ログ データがディスクに書き込まれた後にのみ書き込めます。コミット レコードが先に書き込まれ、ログが破損する可能性がある場合、データの整合性が影響を受けます。 Ext4 はデフォルトでバリアを有効にしており、バリア前のすべてのデータがディスクに書き込まれた場合にのみ、バリアの後のデータを書き込むことができます。 (この機能は、「mount -o Barrier=0」コマンドで無効にできます。)
関連する推奨事項: 「Linux ビデオ チュートリアル 」
以上がLinux ext3とは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。