AとBの2つのサーバーがあります。
Aには/ alphaと/ betaの2つのファイルシステムがあります。
シンボリックリンクがあります:
ln -s /alpha/foo /beta/bar
そのような:
lrwxrwxrwx 1 root root 70 Dec 22 13:32 /beta/bar -> /alpha/foo
次に、NFSマウントを介してBにリモートで/ betaをマウントします
リンクは機能しなくなります。
これを達成する方法はありますか?サーバーBのA:/ alpha/fooにアクセスできるようにしたいのですが、/ beta/barシンボリックリンクを介してアクセスできるようにしたいと考えています。
マウントやリンクを変更する必要がありますか?または私は不可能を達成しようとしていますか?
[〜#〜]更新[〜#〜]
「サーバーBに/ alphaをマウントせずに」を追加する必要がありました。つまり、サーバーBが/ beta/barにアクセスするたびに、問題のactualファイルへのシンボリックリンクをたどりたいのです。
ソフトリンクには、ローカルマシン上の別のファイルへのパスのみが含まれます。ローカルファイルシステムでアクセスできないファイルを参照することはできません。
オプション:
リンクは正しく/alpha/foo
を指していますが、お使いのマシンには存在しません。 /alpha
をマウントすると、リンクが機能します。
Sshfsユーティリティを使用して、目的の操作を実行できる場合があります。これにより、ファイルシステムをローカルコンピューターのリモートコンピューターにマウントできます。これを行う方法のリファレンスを以下に示します。 https://www.digitalocean.com/community/tutorials/how-to-use-sshfs-to-mount-remote-file-systems-over-ssh =
ソフトシンボルリンクのコンテンツはパス文字列であり、ファイルシステムのマウント方法については何も知りません。あなたの場合、Aのサンプルパスを使用して/ alphaと/ betaをBにマウントできます。ただし、ネットワークシステム間のクロスリンクは避けてください。維持するのは困難です。
マウントする必要があります/alpha
を使用するには、リンクを機能させる必要があります。
あなたが本当に欲しいのはハードリンクだと思います。ファイルシステム内の同じデータへの別のポインタなので、そのファイルを実際に削除してディスク領域を解放するには、そのファイルへのすべてのハードリンクを削除する必要があります。
一部のスクリプトとツールは、混乱する可能性があります。