▼ 文中の用語 |
あるファイルやディレクトリを別のパスで参照できるようにする仕組み。UNIX系OSのファイルシステムの機能として定着している。
UNIX系OSのファイルシステムでは、データ本体を格納する領域とは別に、それぞれのファイルやディレクトリについて「Iノード」というデータが作成される。Iノードにはサイズや作成日などファイルについての情報が格納されており、データ領域のどの位置にそのファイルが収められているかを表すポインタ情報も記録されている。同じファイル実体を指す複数のIノードを作成し、それぞれ別のパスを設定する機能がハードリンクである。
ファイルやディレクトリの中には、複数のパスで参照できると便利なものがあるが、ハードリンクを使えばそれ自体を複製することなく別のパスを設定することができ、ディスクの有効利用や管理の手間の軽減(コピーが複数あるとバージョンの管理などが面倒なため)につながる。
似た機能に「シンボリックリンク」がある。ハードリンクはデバイスやファイルシステムにまたがってリンクを作ることはできないが、シンボリックリンクはどこにでもリンクを作ることができる。ハードリンクでは実体ファイルの削除ができるが、シンボリックリンクを通じて実体を削除することはできない。