home wiki.fukuchiharuki.me
Menu

  • 追加された行はこの色です。
  • 削除された行はこの色です。
ハードリンクとはコンピュータのファイルシステム上のファイルやディレクトリ等の資源とその資源につけられた名前を結びつけること、もしくは、その結びつきのことをいう。
実体に対して名前を付けること。

*特徴 [#oea27eb4]
-リンク先を移動してもリンクが切れない
--そもそもリンク先に指定したのがハードリンクだっていう話、だと思う
-すべてのハードリンクが削除されて実体が削除される
--ショートカットみたく、どちらがマスタということがない
-権限の設定は他のハードリンクと共用する
--リンク先のinodeが権限の設定をもっているため
-名前は他のハードリンクと共用しない
--ハードリンクはinode番号を共通にするだけで名前はディレクトリデータがもつ

実体を移動してしまうとリンクが無効になってしまうシンボリックリンクとは違い、リンク先のファイル(オリジナル)をどこに移動してもリンクが切れることはない。
*具体例 [#g6fa85ae]
UNIXにおける、ディレクトリのハードリンク3種類
-ディレクトリの名前
-そのディレクトリから自分自身を参照する「.」
-子ディレクトリからそのディレクトリを参照する「..」

UNIXにおいては、ディレクトリが3種類のハードリンクで参照されているのが特徴的である。例えば「tmp」と呼ばれるディレクトリに対して、その3つとは
-親ディレクトリからそのディレクトリを参照するためにつけられた「tmp」という名前
-そのディレクトリから自分自身を参照するためにつけられた「.」という名前
-子ディレクトリからそのディレクトリを参照するためにつけられた「..」という名前
次のようにしてハードリンクを張る。
 ln リンク先 名前