ハードリンクとは何ですか?
ハード リンク (ハード リンク): A は B へのハード リンク (A と B は両方ともファイル名)、A のディレクトリ エントリの i ノード番号は、A のディレクトリ エントリの i ノード番号と同じです。 B のディレクトリ エントリ ノード番号は同じです。つまり、1 つの i ノード ノードが 2 つの異なるファイル名に対応し、2 つのファイル名は同じファイルを指します。A と B はファイル システムと完全に同じです。
(推奨チュートリアル: linux チュートリアル)
一方を削除しても、もう一方には影響しません。ファイル名が追加されるたびに、inode ノード上のリンク数は 1 つずつ増加し、対応するファイル名が削除されるたびに、inode ノード上のリンク数は 0 になるまで 1 つずつ減り、inode ノードと対応するデータ ブロックがリサイクルされます。
注: ファイルとファイル名は別のものです。rm A はファイル名 A のみを削除し、A に対応するデータ ブロック (ファイル) は inode ノードのリンク数が 0 になった場合にのみ削除されます。 . システムのリサイクル。
ソフト接続とは何ですか?
ソフト リンクは Linux で一般的に使用されるコマンドで、その機能は、別の場所にある特定のファイルへの同期リンクを確立することです。
(ビデオ チュートリアルの推奨: linux ビデオ チュートリアル)
具体的な使用法は次のとおりです: ln -s ソース ファイル ターゲット ファイル。
同じファイルを異なるディレクトリで使用する必要がある場合、必要なすべてのディレクトリに同じである必要があるファイルを置く必要はなく、ln コマンドを使用して他のディレクトリにリンクするだけで済みます。 (リンク) は問題ありません。ディスク領域を繰り返し占有する必要はありません。
相違点:
1. マウント ポイント
同じストレージ メディア上のファイル間にはハード リンクのみを作成できます。ハード リンクは作成できません。後者の場合、ソフト リンクを使用できます (異なるマウント ポイントと同じマウント ポイント上の異なるディレクトリを区別します)
2. ディレクトリ
ソフト リンクWin のショートカットに相当します。つまり、ディレクトリへのソフト リンクが、指定された場所へのディレクトリへのショートカットである場合、オペレーティング システムは、このショートカットを検索するときに、実際のディレクトリでファイルを直接見つけます。ただし、ハード リンクはミラーリングと同等です。ディレクトリへのハード リンクを作成した後、オペレーティング システムは、このディレクトリ内のすべてのファイルのハード リンク (コピーをコピー) を作成する必要があります。継続的に走査する必要があるため、複雑さが大幅に増大し、無限ループに陥りやすくなります。
ファイル システムの設計により、ディレクトリに対してハード リンクを作成できません。 Linux ファイル システムのディレクトリには、現在のディレクトリと親ディレクトリという 2 つの特別なディレクトリが隠されています。実際には、これらは 2 つのハード リンクであり、システムがディレクトリへのハード リンクを作成すると、ディレクトリ ループが発生します。
以上がソフトリンクとハードリンクの違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。