web-dev-qa-db-ja.com

シナリオ-NTFSシンボリックリンクまたはジャンクション?

違い

┌───────────────┬──────────┬──────────┬────── ┬───────────┬─────┐
││絶対│相対│ファイル│ディレクトリ│UNC│
├──────── ───────┼──────────┼──────────┼──────┼───────────┼─ ────┤
│シンボリックリンク│はい│はい│はい│はい│はい│
│ジャンクション│はい│-│-│はい│-│
└── ─────────────┴──────────┴──────────┴──────┴─────── ────┴─────┘

シナリオ

リダイレクトを作成するための再解析ポイントを作成していると仮定しましょうC:\SomeDir => D:\SomeDir

このシナリオではローカルの絶対パスのみが必要なため、ジャンクションまたはシンボリックリンクのいずれかが機能します。この状況で、どちらか一方を使用することに利点はありますか?

下位互換性を無視して、OSにWindows7を想定します。 (Vistaより前は、シンボリックリンクはネイティブでサポートされていませんが、Windows XPでシンボリックリンクをサポートする サードパーティドライバー があります。)

更新

私は別の違いを見つけました。

  • シンボリックリンク-リンクのアクセス許可は、リンク自体の削除/名前変更操作にのみ影響します。(ターゲットへの)読み取り/書き込みアクセスは、ターゲットのアクセス許可によって管理されます
  • ジャンクション-ジャンクションのパーミッションは列挙に影響します。ジャンクションのパーミッションを取り消すと、ターゲットフォルダーにさらに許容されるACLがある場合でも、そのジャンクションを介したファイルリストが拒否されます

シンボリックリンクを使用すると、既存のアクセス許可を変更せずに、レガシーアプリケーションがUAC制限領域(%ProgramFiles%など)の構成ファイルにアクセスできるため、ファイルを制限されていない場所に保存し、制限されたディレクトリ。

アップデート2

Windows 8.1は、Save As...ダイアログボックスのテキストボックスを介してシンボリックディレクトリリンクに移動すると、シンボリックディレクトリリンクを解決します。ジャンクションは拡張されません。

17
user73728

NTFSシンボリックリンクは、同じように機能するだけでなく、追加機能(リモートポイント)も提供するため、新しいWindows OS(Vista/7/8)のジャンクションの代わりになることを理解しています。したがって、新しいオペレーティングシステムのみを使用している場合は、シンボリックリンクオプションを使用しない理由はありません。

4
Garrett

ジャンクションポイントは、シンボリックリンクよりもバックアップソフトウェアで広くサポートされていると思います。サポートされている機能を使用しているバックアッププログラムを確認する必要があります。

サポートされていない場合、シンボリックリンク/ジャンクションポイントは別のディレクトリとしてバックアップされる(そしてそのように復元される)か、まったくバックアップされません。

バックアップの問題を除いて、特定のケース(ローカルディレクトリ)では、どちらか一方を優先する理由はわかりません。

2
haimg

NTFSジャンクションはディレクトリのみを指すことができますが、シンボリックリンクはファイルでも機能します。

1
user1686

コメントのどこかで見逃しているかもしれませんが、Windowsのシンボリックリンクとジャンクションの非常に重要な違いの1つは、両方を作成するために必要な特権です。シンボリックリンクはデフォルトでは、デフォルトユーザーが持っていない特別な権限を使用してのみ作成できますが、ジャンクションはすべてのデフォルトユーザーOOBが簡単に作成できるため、dirsに適したリンクタイプです。

デフォルトでは、Administratorsグループのメンバーにこの権限があります。

https://docs.Microsoft.com/en-us/windows/device-security/security-policy-settings/create-symbolic-links

0

これが私が気付いた1つの違いです:

スクリプト、ポータブルアプリなどの同期ディレクトリがあります。バッチスクリプトを使用して、ポータブルアプリのショートカットのディレクトリを指すスタートメニューディレクトリにジャンクションを作成します。

ジャンクションを使用すると、ショートカットをスタートメニューに表示できます。代わりにシンボリックリンクを使用すると、機能しません。

0
paradroid