Windows のシンボリックリンク

 通常、UNIX のシンボリックリンクは、Windows ではショートカットで代用されることが多いでしょう。しかし、場合によってはショートカットでは目的を達成できないことがあります。

 例えば、共有にサーバのローカルドライブのショートカットを置いても、クライアントから参照するとクライアント側のローカルなドライブを参照することになってしまいます。

 このような場合、Windows では、ジャンクションまたはシンボリック・リンクというもので対処できます。どちらも mklink というコマンドで作成できます。

mklink の書式

mklink /?
シンボリック リンクを作成します。

MKLINK [[/D] | [/H] | [/J]] リンク ターゲット
/D ディレクトリのシンボリック リンクを作成します。既定では、
ファイルのシンボリック リンクが作成されます。
/H シンボリック リンクではなく、ハード リンクを作成します。
/J ディレクトリ ジャンクションを作成します。
リンク 新しいシンボリック リンク名を指定します。
ターゲット 新しいリンクが参照するパス (相対または絶対)
を指定します。

ジャンクション

 Windows 2000 以降で使用できるものです。リンク先はディレクトリでなければなりません。また、ローカルなボリュームである必要もあります。

 ジャンクションを作成する場合は、mklink コマンドに /j オプションをつけます。

シンボリック・リンク

 Windows Vista 以降で使用できます。リンク先はファイルでもディレクトリでもよく、ネットワーク上にあるフォルダでも大丈夫です。ただし、作成には管理者権限が必要です。

 シンボリック・リンクの作成は、mklink コマンドでオプションを付けないか、/d オプションを付けて作成します。

 その他、ハードリンクもありますが、あまり利用することはないでしょう。

Memo,Windows

Posted by sirius