Linux
 Computer >> コンピューター >  >> システム >> Linux

Linux iノードはどのように機能しますか?

Linux iノードはどのように機能しますか?

Linuxを十分に長く使用している場合は、「iノード」という用語が表示されます。たまに表示されるものですが、実行していることに影響はありません。ここでは、iノードとは何か、およびそれがどのように機能するかを説明します。

iノードとは何ですか?

図書館では、すべての本がジャンル、著者名、または聴衆の年齢層別に整理されています。 「BobbyDaniels」でスリラーを見つけたい場合は、スリラーセクションに直接歩いて行き、「B」で始まる著者名を見つけ始めます。ライブラリと同じように、Linuxシステム内のすべてのファイルは、効率的な取得と使用のために編成されています。 iノードは、Linuxシステム内のファイルの配置を支援するエンティティです。

ファイルメタデータとは何ですか?

データ「hello」を含む「sample.txt」というファイルがあるとします。

Linux iノードはどのように機能しますか?

このファイルには、ファイルサイズ、権限、ユーザーとグループの所有権、作成/アクセス/変更のタイムスタンプ、リンクカウントなど、関連するデータと情報が含まれています。これらの情報はすべて、まとめてファイルメタデータと呼ばれます。

Linux iノードはどのように機能しますか?

ファイルシステムとは何ですか?

ハードドライブなどのストレージデバイスでは、パーティションはファイルストレージに使用される前にファイルシステムとしてフォーマットされます。ファイルシステムは、ハードドライブのライブラリアンです。正式には、これはデータ構造とアルゴリズムのセットであり、ファイルをパーティションに系統的に格納するために連携して機能します。

Linuxシステムのパーティションは、EXT4でフォーマットされることがよくあります。 B-Treeファイルシステム(BTRFS)、Reiserファイルシステム、ZFSなどの他のファイルシステムも使用できます。

それらをすべて結び付ける

iノードはExt4のデータ構造であり、ファイルのすべてのメタデータを保持します。

Linux iノードはどのように機能しますか?

もちろん、ファイルシステムには多数のファイルがあります。ご想像のとおり、すべてのファイルには独自のiノードがあります。 iノードを一意に識別するために、各iノードには番号が付けられています。

iノードの番号付けはどのようになりますか?

ファイルシステムのiノード番号は1から始まります。最初の10個のiノードはシステム用に予約されています。ユーザーファイルのメタデータはiノード11から保存されます。すべてのiノードは、iノードテーブルにきちんと積み重ねられています。

Linux iノードはどのように機能しますか?

iノードテーブルの1つのエントリは、サイズが256バイトになります。ファイルの場合、Linuxはすべてのメタデータを256バイト以内にインテリジェントに整理します。さらに、ファイルのiノードには、ファイルシステムのどこにファイルのデータが配置されているかに関する情報も含まれます。覚えておいてください–ファイルのメタデータのみがiノードに保存されます。

ファイルシステム内のiノードの総数は、使用可能なスペースとパーティションに保存できるファイルの数によって異なります。

iノードはどのように割り当ておよび割り当て解除されますか?

ユーザーが新しくフォーマットされたファイルシステムにファイルを追加すると、11から始まるiノードがファイルメタデータを保持するために割り当てられます。

iノードの割り当てステータスを追跡するための「Inodeビットマップ」と呼ばれる別のデータ構造があります。これは、マップとして機能するビットのコレクションです。

次の表に示すように、iノード11〜18の割り当てステータスを示すためにiノードビットマップの8ビットを考えてみましょう。ビットマップの値1は、iノードが割り当てられていることを意味します。つまり、ファイルのメタデータを保持するために使用されます。ビットマップの値0は、iノードが現在使用されていないことを意味します。ここでは、iノード17が使用されていることがわかります。

Linux iノードはどのように機能しますか?

iノード17にメタデータがあるファイルが削除された場合、対応するビットマップステータスは0になり、別のファイルで自由に使用できることを示します。

Linux iノードはどのように機能しますか?

ファイルのiノード番号を表示するにはどうすればよいですか?

これを行うには2つの方法があります。

1つ目は、lsを使用することです。 –iを使用したコマンド スイッチの後にファイルの名前が続きます。出力の最初のフィールドは、「sample.txt」のメタデータを持つiノード番号です。

Linux iノードはどのように機能しますか?

statを使用して同じ情報を取得できます コマンドの後にファイル名を続けます。

Linux iノードはどのように機能しますか?

パーティションで使用可能なiノードの総数を表示するには、df コマンドは-iで使用できます スイッチ。

Linux iノードはどのように機能しますか?

「/dev/ sda4」パーティションでは、404754480 iノードが使用可能であり、そのうち359044iノードのみが使用されます。

結論

本来、iノードテーブルは、ファイルデータの場所に関する情報とともに、すべてのファイルのメタデータをiノードに細心の注意を払ってスタックします。 Linux iノードについて説明したのは、氷山の一角にすぎません。内部動作の詳細については、このリンクを参照してください。


  1. LinuxでZsyncを使用してファイルの一部を転送する方法

    ISOイメージのような大きなファイルをダウンロードすることは、大きな苦痛になる可能性があります。インターネット接続によっては、ダウンロードに時間がかかる場合があり、ハードドライブの容量を大量に消費します。次に、更新されたバージョンが必要になった場合は、プロセス全体をもう一度実行する必要があります。 ただし、解決策はあります。 ZsyncはLinux用のファイル同期ツールであり、すべてを再度ダウンロードすることなく、変更されたファイルの一部のみを更新できます。 Zsyncは、ファイルとディレクトリを同期するためのもう1つの人気のあるLinuxツールであるrsyncに基づいており、非常に使いや

  2. Linux でファイルを完全に削除する方法

    Linux オペレーティング システムでは、削除されたファイルはゴミ箱に移動します。ゴミ箱を空にすると、ファイルはシステムから削除されます。ただし、回復ソフトウェアの需要が高まるにつれて、ゴミ箱から削除されたファイルはある程度まで回復できます。これは、ゴミ箱から削除されたファイルが完全に削除されることはなく、目に見えなくなったことを意味します。ファイルはまだハード ドライブのどこかに不必要なスペースを占有しており、新しいファイルが作成されてハード ドライブの同じセクターに保存されたときにのみ完全に削除されます。貴重なディスク スペースを回復し、ファイルの破損を回避するには、Linux 内のファ