質問

私はそれは、彼らがファイルシステムにまたがることはできませんハードリンクの状態であることを知っています。これは、NFSマウントに適用されますか?次のディレクトリ構造を考えると、私は、ディレクトリB内のファイルを指すディレクトリAにハードリンクを作成することができるだろう?

/root
    /A
    /B  <-NFS mount

たとえば、私はln /root/B/file.txt /root/A/linkedfile.txtを実行したいと思います。

役に立ちましたか?

解決

彼らは同じファイルシステム上に存在しないので、

さて、/Bいるので、あなたはそれと/A間にハードリンクを作成することはできません別のファイルシステム(NFSマウント・ファイル・システム)です。

「それはハードリンクは、のデータのコピーを作成していないため、のそのデータにのポインタののコピーだけを入れていますので、彼らは同じである必要アドレス空間」ます。

他のヒント

最初のハードリンクが正確に理解すると良いでしょう。

通常のUNIXライクなシステム上で、inode番号へのディレクトリポイントでファイル名 - ファイルのため、基本的に数。 「ハードリンクは」ちょうどその同じinode番号を持つ別のファイル名を作成しています。今、あなたは、同じ番号のファイルを指す異なる名前を持っています。

しかし、実際にそれらの2名との間の直接接続がないということに気づきます。しかし、あなたがホールドアップし、「私の手でこのことは2つのファイル間のリンクである」と言うことができるものはありません - 関係は名1とName2は両方が彼らのinode番号が12756に設定されていることです。彼らは、ID番号を共有してちょうど2つのデータベースエントリです。 ID番号を共有するためのファイル名(あなたは、システム上のすべてのファイルのエントリを歩いているので、遅い)クエリを行うことができますが、それはこれだけです。

それは「2つのファイルシステム間のハードリンク」を作成するためには何を意味するものではありませんので、 - (完全に異なるファイルをポイントし、システム2のシステム1、および1234年にiノード1234)は、2つのファイルシステムが異なるナンバリングスキームを持っているので、とあなたが店に持っている唯一のことはやるべき何もない、名前+ inodeNumberです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top