検索
ホームページシステムチュートリアルLinuxLinux の標準ファイル システム (Ext2/Ext3/Ext4) についての深い理解

内線

正式名称は、Linux 拡張ファイル システム extfs で、Linux 拡張ファイル システムです。Ext2 は、第 2 世代のファイル拡張システム、Ext3/Ext4 などを表します。これらはすべて Ext2 のアップグレード バージョンですが、次の機能が追加されています。相互に下位互換性があるため、Ext2 はインデックス ファイル システム、Ext3/Ext4 はジャーナル ファイル システムと呼ばれます。

注: Linux は、ネットワーク ファイル システム (NFS) や Windows のファット ファイル システムなど、多くのファイル システムをサポートしています。

Linux でサポートされているファイル システムを確認します: ls -l /lib/modules/$(uname -r)/kernel/fs

Linux の標準ファイル システム (Ext2/Ext3/Ext4) についての深い理解

Linux でサポートされているファイル システム (メモリにロードされている) を表示します: cat /proc/filesystems

Linux の標準ファイル システム (Ext2/Ext3/Ext4) についての深い理解

コア設計

データ領域

これらの要素は比較的安定しており、ディスクがフォーマットされた後に修正されます。

1. i ノード (インデックス ノード)
ファイルのアクセス権、属性、およびデータが配置されているブロックの番号を記録します。各ファイルには 1 つの i ノードがあります。各 i ノードには独自の番号があります。inode は、単純にドキュメントのインデックスとして理解できます。

2.ブロック(データブロック)
保存されるファイルの内容はデータブロックとも呼ばれ、各ブロックには独自の番号が付けられ、Ext2 がサポートする単位ブロック容量は 1k、2k、4k のみです。

注: i ノードの記録を容易にするために、ディスクのフォーマット後にブロック サイズが固定されています。各ブロックには 1 つのファイルのデータしか保存できません。ファイルが大きすぎると複数のブロックを占有し、ファイルが小さすぎるとブロックの残りの領域を使用できず、ディスク領域の無駄が発生します。したがって、ディスクがパーティション分割された後、ファイル システムをフォーマットする前に、ファイル システムの予想される使用方法について慎重に検討してください。

メタデータ

これらの要素は、ファイル システムの状態を維持するために設計されており、主にファイル システムの動的構成情報を表し、説明的な情報です。

1.スーパーブロック(スーパーブロック)

ファイルシステム (ファイルシステム) の総量、使用量、残量、inode/ブロックのサイズ、およびファイルシステムのフォーマットと関連情報を含む全体的な情報を記録します。

注意: ファイルシステム全体の基本情報はすべてスーパーブロックに記録されており、そのサイズは通常 1024 バイトであり、これが壊れると修復に非常に時間がかかります。 ! !

2.ブロックグループ

想像してみてください。ディスク容量が数百 G にも達すると、フォーマットすると i ノードとブロックが非常に大きくなります。管理を容易にするために、Ext ファイル システムではフォーマット時にブロック グループが導入されます。概念各ブロック グループは独立した inode/ブロック/スーパーブロックを維持し、固定数のブロックを持ち、基本的なサブファイル システムのグループに分割されます。

注: スーパーブロックはファイル システムにとって非常に重要ですが、ファイル システムにはスーパーブロックが 1 つしかないため、スーパーブロックを含む最初のブロック グループに加えて、後続のブロック グループにはバックアップ スーパーブロックが含まれる可能性があります。単一のスーパーブロック。ポイントは救出できません。

3. ブロック ビットマップ (ブロック比較テーブル)

ブロックは 1 つのファイルでのみ使用できます。新しいファイルを追加するときは、新しいブロックを使用してファイル データを記録する必要があります。では、どのブロックが新しいかをすぐに知るにはどうすればよいでしょうか?どのブロックがすでに使用されていますか?ブロック ビットマップは、使用済みおよび未使用のブロック番号をすべて記録するように設計されています。同様に、ファイルを削除するときは、まずブロック ビットマップから対応するブロック番号を見つけ、次にフラグを未使用に更新し、最後にブロックを解放します。

inode ビットマップ(inode 比較テーブル)

ブロック ビットマップと同じ設計コンセプトですが、使用済みおよび未使用の i ノード番号を記録する点が異なりますが、ここでは説明しません。

グループ記述子

各セクション (ブロック グループ) の最初と最後のブロック番号を記述し、各セクション (inodemap、ブロックマップ、inode テーブル) がどのブロック番号の間にあるかを説明します。

現在のシステム内のフォーマットされたデバイスをすべてリストします: blkid

Linux の標準ファイル システム (Ext2/Ext3/Ext4) についての深い理解

フォーマットされたデバイスを選択し、ファイル システムの詳細情報を表示します: dumpe2fs /dev/vda1

Linux の標準ファイル システム (Ext2/Ext3/Ext4) についての深い理解

Linux の標準ファイル システム (Ext2/Ext3/Ext4) についての深い理解

注: 上記の Magic 署名は 0xEF53 で、ディスク パーティションが ext2 および ext3 ファイル システムであることを示しています。ファイルの先頭のマジックと同様に、ファイルの種類を決定できます。

要約

Ext ファミリは、Linux で最も広くサポートされている完全なファイル システムです。ディスクをフォーマットした後、すべての inode/block/metadate およびその他のデータが計画されているため、システムは動的ファイル システムなしで直接使用できます。 Centos7.x では、デフォルトのファイル システムとして xfs が選択されています。

以上がLinux の標準ファイル システム (Ext2/Ext3/Ext4) についての深い理解の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事は脚本之家で複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
Linux管理者の給与はいくらですか?Linux管理者の給与はいくらですか?Apr 17, 2025 am 12:24 AM

Linux管理者の平均年salは、米国で75,000〜95,000ドル、ヨーロッパでは40,000〜60,000ユーロです。給与を増やすには、次のことができます。1。クラウドコンピューティングやコンテナテクノロジーなどの新しいテクノロジーを継続的に学習します。 2。プロジェクトの経験を蓄積し、ポートフォリオを確立します。 3.プロフェッショナルネットワークを確立し、ネットワークを拡大します。

Linuxの主な目的は何ですか?Linuxの主な目的は何ですか?Apr 16, 2025 am 12:19 AM

Linuxの主な用途には、1。Serverオペレーティングシステム、2。EmbeddedSystem、3。Desktopオペレーティングシステム、4。開発およびテスト環境。 Linuxはこれらの分野で優れており、安定性、セキュリティ、効率的な開発ツールを提供します。

インターネットはLinuxで実行されますか?インターネットはLinuxで実行されますか?Apr 14, 2025 am 12:03 AM

インターネットは単一のオペレーティングシステムに依存していませんが、Linuxはその上で重要な役割を果たしています。 Linuxは、サーバーやネットワークデバイスで広く使用されており、安定性、セキュリティ、スケーラビリティに人気があります。

Linux操作とは何ですか?Linux操作とは何ですか?Apr 13, 2025 am 12:20 AM

Linuxオペレーティングシステムのコアは、コマンドラインインターフェイスで、コマンドラインを介してさまざまな操作を実行できます。 1.ファイルおよびディレクトリ操作は、ファイルとディレクトリを管理するために、LS、CD、MKDIR、RM、その他のコマンドを使用します。 2。ユーザーおよび許可管理は、useradd、passwd、chmod、その他のコマンドを介してシステムのセキュリティとリソースの割り当てを保証します。 3。プロセス管理は、PS、Kill、およびその他のコマンドを使用して、システムプロセスを監視および制御します。 4。ネットワーク操作には、Ping、Ifconfig、SSH、およびネットワーク接続を構成および管理するためのその他のコマンドが含まれます。 5.システムの監視とメンテナンスは、TOP、DF、DUなどのコマンドを使用して、システムの動作ステータスとリソースの使用を理解します。

Linuxエイリアスを使用したカスタムコマンドショートカットで生産性を高めますLinuxエイリアスを使用したカスタムコマンドショートカットで生産性を高めますApr 12, 2025 am 11:43 AM

導入 Linuxは、柔軟性と効率性により、開発者、システム管理者、およびパワーユーザーが好む強力なオペレーティングシステムです。しかし、頻繁に長く複雑なコマンドを使用することは退屈でERです

Linuxは実際に何に適していますか?Linuxは実際に何に適していますか?Apr 12, 2025 am 12:20 AM

Linuxは、サーバー、開発環境、埋め込みシステムに適しています。 1.サーバーオペレーティングシステムとして、Linuxは安定して効率的であり、多くの場合、高電流アプリケーションの展開に使用されます。 2。開発環境として、Linuxは効率的なコマンドラインツールとパッケージ管理システムを提供して、開発効率を向上させます。 3.埋め込まれたシステムでは、Linuxは軽量でカスタマイズ可能で、リソースが限られている環境に適しています。

Linuxで倫理的ハッキングを習得するための必須ツールとフレームワークLinuxで倫理的ハッキングを習得するための必須ツールとフレームワークApr 11, 2025 am 09:11 AM

はじめに:Linuxベースの倫理的ハッキングでデジタルフロンティアを保護します ますます相互に接続されている世界では、サイバーセキュリティが最重要です。 倫理的なハッキングと浸透テストは、脆弱性を積極的に特定し、緩和するために不可欠です

Linuxの基本を学ぶ方法は?Linuxの基本を学ぶ方法は?Apr 10, 2025 am 09:32 AM

基本的なLinux学習の方法は次のとおりです。1。ファイルシステムとコマンドラインインターフェイス、2。LS、CD、MKDIR、3。ファイルの作成と編集などのファイル操作を学習するマスター基本コマンド、4。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)