system management
1752778 メンバー
6046 オンライン
108789 解決策
新規ポスト

NFSのシンボリックリンクについて

 
りま
アドバイザー

NFSのシンボリックリンクについて

はじめて利用させていただきます。

よろしくお願いいたします。

NFS使用時のリンクについて教えてください。

マシンA:/home/AAA

aaa.txt

a->aaa,txt

c->ccc.txt

/CCC

ccc.txt

マシンB:/home/BBB

aaa.txt

a->aaa,txt

c->ccc.txt

NFSを使用してマシンAのAAAをマシンBのBBBにマウントしています。

AAAディレクトリ内のaaaファイルにaというシンボリックリンクを作成します。

同様に、CCCディレクトリのシンボリックリンクをcを作成します。

このとき、マシンBからaの内容、cの内容を見ようとした場合

aの内容は見れるのですが、cの内容が見ることができません。

(新規ファイルとして表示されてしまいました・・。)

シンボリックリンクではcの内容を表示できなかったのですが、

ハードリンクの場合は表示することができました。

ハードリンクを調べてみたところ、シンボリックリンクとは異なり

複製を作成するとありましたが、ハードリンクを貼る時にdfでディスク容量を

見てみたのですが容量が増えていないように見えました。

なぜ、シンボリックリンクではcの内容が表示できないのにハードリンクでは

表示できるのでしょうか?

シンボリックリンクでcの内容を表示することはできないのでしょうか?

よろしくお願いいたします。

6件の返信6
nt
貴重なコントリビューター

NFSのシンボリックリンクについて

hard link は直接 i-node で参照します。

symbolic link はリンク先のファイルを参照して、そこの

i-node で参照します。

ですのでリンク先のファイルが参照できなければアクセス

できません。 NFS mount により c.txt の path が元のシステム

と違ってしまう場合も同じです。

りま
アドバイザー

NFSのシンボリックリンクについて

nt様

とてもわかりやすい説明ありがとうございます。

元のファイルがアクセスできない限り、シンボリックリンクでは元のファイルにアクセスできないのですね。

シンボリックリンクとハードリンクの参照方法の違いについても理解することができました。

ありがとうございました。

今後ともよろしくお願いいたします。
nt
貴重なコントリビューター

NFSのシンボリックリンクについて

hard link は file の複製を作りません。同じ i-node (file の実態) を

複数の directory entry (file name) が参照しているのが hard link

です。

りま
アドバイザー

NFSのシンボリックリンクについて

nt様

お世話になっております。

調べたページにハードリンクはファイルの複製を作成します・・とあったので、複製を作成するのかと思ってました。

シンボリックリンクの場合はリンク先の入ったファイルを作成するということだったと思いますが、ハードリンクの場合のi-nodeの参照はどのように行っているのでしょうか?

nt
貴重なコントリビューター

NFSのシンボリックリンクについて

> ハードリンクの場合のi-nodeの参照はどのように行っているのでしょうか?

普通の file と同じです。 directory entry に i-node number が

書いてあるので、それを使います。

りま
アドバイザー

NFSのシンボリックリンクについて

nt様

お世話になっております。

ハードリンクの場合はdirectory entryに記述されているんですね。

システムのことなどわからないことばかりですが・・

いつも回答ありがとうございます!