web-dev-qa-db-ja.com

NTFSジャンクションを作成する方法

Windows XPでNTFSジャンクションポイントを作成するにはどうすればよいですか?

21
jemila Ali

デフォルトでは、Windows XPジャンクションポイントを作成するツールはありません。このツール(linkd)は Windows Resource Kit Tools の一部です。

別のツールは、Mark Russinovichによる junction です。

11

Sysinternalsの junction ユーティリティを試してください。これはW2k +で利用できます

7
Yakeen

ジャンクションポイントの定義は、別のディレクトリにハードリンクされているディレクトリですか?

もしそうならそれは簡単です

mklink /J <new directory to be linked> <target directory>

この後、ディレクトリ間の区別はありません。それらは同じMFT_REFを持っています( http://en.wikipedia.org/wiki/NTFS_symbolic_link から)。

fsutilは、再解析ポイントのクエリやハードリンクの作成にも役立ちます。

プログラムでこれを行う方法を知りたい場合は、ボリュームハンドルでNTFSストレージドライバーのIOCTL呼び出しを使用できます。しかし、mklinkを呼び出すだけの方が簡単です。

ターゲットディレクトリの書き込みと変更の権限が必要なことに注意してください。これを機能させるには、昇格したcmd.exeを実行する必要があります。

6
Dominik Weber

Link Shell ExtensionをGUI指向のインターフェースとして使用することもできます。 Windowsでジャンクション、ハードリンク、さらにはシンボリックリンクを作成することができますXP説明に従って木村正敏からNTFS 5フィルタードライバーをインストールした場合 http://schinagl.priv.at/ nt/hardlinkshellext/hardlinkshellext.html

3
Toughy

Junction.exeの「ライブ」リンクは次のとおりです。

http://live.sysinternals.com/junction.exe

1
Orwellophile

ネイティブWindows XP、7、および8コマンド:

ディレクトリジャンクション
mklink /J <oldpath(link)> <newpath(target)>

newpathを絶対的にすると、newpathへのポインタを壊すことなくリンクを移動できます。 newpathを相対化すると、移動する限り、リンクが壊れないようにすることができます[〜#〜]両方[〜#〜 ]リンクとターゲット[〜#〜]一緒に[〜#〜]およびそれらの相対パスを維持します。

1
BenH

特別なソフトウェアでNTFSジャンクションを作成できます。 Link Shell Extension(LSE) をお勧めします。フリーウェアで使いやすいです。また、すべてのステップのスクリーンショットを含む優れたドキュメントもあります。

0
vasili111

ジャンクションポイントを作成するには

REPARSE_MOUNTPOINT_DATA_BUFFER* pReparseInfo = // ...
pReparseInfo->ReparseTag = IO_REPARSE_TAG_MOUNT_POINT;
// ...
DeviceIoControl(..., FSCTL_SET_REPARSE_POINTFSCTL_SET_REPARSE_POINT, pReparseInfo, ... 

API呼び出し。 pReparseInfoは、提供する必要があるREPARSE_MOUNTPOINT_DATA_BUFFER構造を指します。

MSDN記事 には、ページの下部に、APIの使用方法を示すコミュニティ提供のコードスニペットがあります。

0
Roman R.