May 22, 2024

LinuxとWindowsのシンボリックリンクとハードリンクとジャンクションを比較

自分用比較メモ

項目Linux シンボリックリンクLinux ハードリンクWindows シンボリックリンクWindows ハードリンクWindows ジャンクション
定義ファイルやディレクトリへの参照を作成同じデータを共有する2つ以上のファイルを作成Linuxと共通Linuxと共通ディレクトリへの参照を作成
作成コマンドln -slnmklink /D 1mklink /Hmklink /J
対象ファイルとディレクトリの両方ファイルのみLinuxと共通Linuxと共通ディレクトリのみ2
参照先の削除参照先が削除されてもリンクは残る参照先が削除されてもリンクは残るLinuxと共通Linuxと共通参照先が削除されてもリンクは残る
移動とリネーム参照先が移動またはリネームされるとリンクは壊れる参照先が移動またはリネームされてもリンクは有効Linuxと共通Linuxと共通参照先が移動またはリネームされるとリンクは壊れる
ボリューム異なるボリューム間でも作成できる同じボリューム内でのみ作成できるLinuxと共通Linuxと共通異なるボリューム間でも作成できる
管理者権限不要不要必要不要不要

  1. コマンドプロンプトから実行する必要あり
    Windows PowerShellから実行する場合は以下
    cmd /c mklink /D または New-Item -ItemType SymbolicLink
    cmd /c mklink /H または New-Item -ItemType HardLink
    cmd /c mklink /J または New-Item -ItemType Junction ↩︎

  2. ファイルへのジャンクション作成は一見成功するが、ディレクトリとして扱われるのでアクセスできない。 ↩︎

© 2020 nissy-lab.com