概要
2種あるリンクの違いや、リンクのメリットなどを記載する
リンクとは
たとえば。。。
よく見る例だと
あるファイルを参照したいけど
ファイルの参照
cat /hoge/hogege/...../test
という感じで、めちゃくちゃ階層が深くて参照するのがめんどくさい事があるが頻繁に利用する。
そんな時は自分のよく利用するディレクトリにWindows だとショートカットを作成する。
Windowsのショートカットとは異なるものなので削除させていただきました。m( )m
そんな時に利用すると便利なのがこのリンクコマンド
シンボリックリンク
ln -s 参照先 リンク名
ln
コマンドに-sをつけた形となる
ハードリンク
ln 参照先 リンク名
こちらは先ほどのシンボリックリンクとは違いオプションをつけずに実行するとハードリンクとなる
※基本-s をつけなければハードリンクになる
シンボリックリンクとハードリンクの違い
作成の仕方は分かったが何が違うのか。
シンボリックリンク : 参照先のパスを見に行く
ハードリンク:iノードを直接参照する
ファイルは、「iノード」と呼ばれるモノで管理されています
iノードはファイルの中身の情報(i_block)が格納されています。
ディレクトリエントリには、ファイルの実体であるiノードと、 ファイル名が格納されています。
引用元 : http://www.usupi.org/sysad/242.html
このiノードに直接紐づけするのがハードリンクであり、
シンボリックリンクはディレクトリエントリにあるファイルを参照しにいくものとなっている。
注意点
シンボリックリンクとハードリンクを利用していく中で注意すべき点が一点
・シンボリックリンクは参照先のファイルが移動/削除されると参照できなくなってしまう
上記に気を付けて利用していきたい