0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Windows/DTM】Cドライブを圧迫するVST3フォルダを別ドライブへ退避する技 (シンボリックリンクではなくジャンクションを使う理由)

Last updated at Posted at 2026-01-21

はじめに

背景

 ダウンロードしたSoundfontsが圧縮状態で約900MBもありディスク容量を圧迫するため、EドライブではなくSDカード等の外部保存領域に保存したいと考えた。
 その方法を調べる中で、FL Studioで指定のフォルダ以外にSoundfontを置く方法を解説したこちらの記事がヒットした。
 この方法はSoundfontに限らず、「保存場所がCドライブに限定されてしまうVST3プラグイン」の保存場所を変更するためにも活用できるのではないかと考えた。

目的

  • VST3フォルダの実体を、Cドライブから別のドライブに移動する
    • アクセス制限のわずらわしさから解放される
    • VST3プラグインをシステムドライブから分離し、Cドライブの容量圧迫を防ぐ

記事の対象者

  • Cドライブの容量がVSTプラグインで圧迫されて困っている方
  • DTM環境のファイル管理を、システムドライブ以外の外付け/別ドライブで整理したい方
    • ※ジャンクションを使用しているため、ネットワークドライブは対象外
  • その他、ディスク容量の確保インストール先の制約板挟みに悩むWindowsユーザー

なぜ一般的なシンボリックリンクではなく、あえてジャンクション機能を使うのかについても記載しています。
=> 【コラム】なぜシンボリックリンクではなくジャンクションなのか?

操作手順

最初の状態

VST3フォルダの実体がC:\Program Files\Common Filesにある時の、FLStudioのPluginManagerと、その上にCommon Filesが開かれたエクスプローラーのウィンドウが乗っているスクリーンショット。エクスプローラー上のVST3フォルダのアイコンと種類に下線が引かれている。アイコンの画像はファイルであり、種類は「ファイル フォルダー」になっている。 設定完了前のプラグインマネジャーとVST3ディレクトリの様子

VST3の保存先としてC:\Program Files\Common Files\VST3が指定されている。
VST3フォルダのアイコンがフォルダになっている。

1. 既存のVST3フォルダを移動する

ジャンクションの作成は「リンクの付与」ではなく、特殊な「ディレクトリの作成」という過程である為、VST3フォルダがC:\Program Files\Common Filesに存在していると失敗します。

元々存在していたVST3フォルダをEドライブへ移動する様子。これにより、ジャンクションを作成する場所(Cドライブ)を空にしつつ、リンク先となる実体フォルダ(Eドライブ)を用意している。 元々存在していたVST3フォルダを、実体として置きたい場所に移動する様子。
このgifでは行っていないが、操作ミスに備えVST3フォルダのバックアップを推奨

参考記事: シンボリックリンクでフォルダ同期のエラー3パターン, mklink(公式リファレンス)

2. 管理者権限でコマンドプロンプトを開く

ジャンクションの作成自体には管理者権限は必要ありませんが、今回の目的であるVST3関連の操作は、Windowsのシステム保護領域であるC:\Program Filesで行う為、管理者権限が必要になります。

  1. Win + R ショートカットを使用し、「ファイル名を指定して実行」ウィンドウを表示する
  2. cmd と入力する
    • 「ファイル名を指定して実行」の入力欄に cmd と入力している様子
      win+Rで開いた「ファイル名を指定して実行」ウィンドウの入力欄に cmd と入力している様子のスクリーンショット
  3. Ctrl + Shift + Enter を押す
  4. コマンドプロンプトが管理者権限で開く
    • カレントディレクトリが C:\WINDOWS\system32> になっている (参考)
      管理者権限で起動したコマンドプロンプトのスクリーンショット。カレントディレクトリが C:\WINDOWS\system32> として起動されている。

参考記事: 【一手間をなくそう!】コマンドプロンプトを素早く起動する方法

3. ジャンクションを作成する

管理者権限にて起動したコマンドプロンプトで、VST3フォルダのジャンクションを作成している、一連の動作のgif。最後にdirコマンドを使用して、VST3フォルダが正常にジャンクションとして作成されたかも確認している。 実際の動作の流れ

  1. 管理者権限で開いたコマンドプロンプトに、下記のコマンドを入力する
    • mklink /J "C:\Program Files\Common Files\VST3" "実体のパス"
      
      • "実体のパス"は、実際の物に変更する
      • gif中ではE:\00_Program_E_Drive\01_Tool\FL Studio 2025\Plugins\VST3

  2. コマンドを実行する
    • 作成に成功した場合、「ジャンクションが 作成されました」というメッセージが表示される

      静止画で確認する

      ジャンクション作成後のコマンドプロンプトのスクリーンショット ジャンクション作成後のコマンドプロンプトのスクリーンショット

      よく発生するエラー
      • 既に存在するファイルを作成することはできません。
        • C:\Program Files\Common Files\VST3が存在した状態でコマンドを使用しています
          • 1. 既存のVST3フォルダを移動するに記載している通り、このコマンドは「リンクの付与」ではなく、特殊な「ディレクトリの作成」という過程である為、C:\Program Files\Common Filesにある、VST3フォルダは削除して下さい

      • アクセスが拒否されました。
        • コマンドプロンプトが管理者権限で実行されていません
      • 「このファイルを開く方法を選んでください」が表示される
        • コマンドプロンプトではなく、PowerShellを使用しています

  3. (任意)正常に作成できているか、確認をする
    • dir "C:\Program Files\Common Files"
      
      • 種類の項目に<JUNCTION>と記載されている
      • ジャンクションの名前 VST3 と実体のパスが記載されている
      静止画で確認する

      ジャンクション作成後にdirコマンドを実行し、C:\Program Files\Common Files内のVST3フォルダが正常にジャンクションとして認識されているか確認しているコマンドプロンプトのスクリーンショット。結果リストの中で、ジャンクション名である VST3 と、その横にリンク先の実体パスが記載されており、ディレクトリの種類が <JUNCTION> と表示されている様子が緑色の枠で強調されている。 dirコマンドを実行し、正常にジャンクションが設定できているか確認している様子


参考記事: 【PC】ディスク容量不足解消にシンボリックリンク(Windows 10編), シンボリックリンクの使い方と落とし穴
参考リファレンス: mklink, ハード リンクとジャンクション, dir

作成が完了した状態

DAW側の表示

VST3フォルダの実体をEドライブに移動し、C:\Program Files\Common Filesにはジャンクションがある時の、FLStudioのPluginManagerと、C:\Program Files\Common Filesが開かれたエクスプローラーのスクリーンショット。PluginManagerの、プラグインの形式がVST3の所と、そのプラグインのPathの項目が四角で囲まれている。パスはC:\Program Files\Common Filesとそのサブディレクトリで構成されている。またエクスプローラーのVST3ジャンクションのアイコンと種類に下線が引かれている。アイコンはフォルダーショートカットで、種類は「ファイル フォルダー 設定完了後のプラグインマネジャーとVST3ディレクトリの様子

VST3の保存先としてC:\Program Files\Common Files\VST3が指定されている。
VST3フォルダのアイコンがショートカットになっているが、種類はファイル フォルダーになっている。

作成したジャンクションを確認しているgif。エクスプローラーのウィンドウが2つ並べられている。左側のウィンドウに「実体フォルダ側」という字幕が、右側に「ジャンクション側」という字幕が表示されている。尚、どちらもVST3のひとつ前の階層が表示されている。マウスカーソルが実体フォルダ側のパスを指し示し、「実体(ターゲット)として指定した、Eドライブのパス」と字幕が表示される。そして、VST3フォルダが開かれる。マウスカーソルがジャンクション側のVST3のアイコンを指し示し、「アイコンがショートカットになっている。」という字幕が表示される。マウスカーソルがVST3の種類を指し示し、「しかし、種類は「ファイル フォルダー」になっている。」という字幕が表示される。最後にジャンクション側のVST3が開かれ、マウスカーソルがパスを指し示し、「パスは実体(C:)ではなく、ジャンクション(C:)のままになっている。その為、DAWからはCドライブにあるように見える。(ショートカットなら、実体のパスになる)」という字幕が表示される。 作成が完了した状態の確認

実体を実体から開くと、パスは実体の物になる。
ジャンクションのVST3ディレクトリを開くと、ジャンクションのパスになる。
その為、実体はEドライブにあるが、DAWからはCドライブにあるように見えている。

インストールテスト (実践確認)

インストール先をC:\Program Files\Common Files\VST3から変更できない『Bongo Cat Band』プラグインを利用し、ジャンクション経由でも実体フォルダへ正常にインストールされる様子を検証したGIF。まず、実体側(Eドライブ)のディレクトリが表示され、『実体側の初期状態。Bongo Cat Band はインストールされていない』という字幕と共に、ファイルがない状態が映る。次にジャンクション側(Cドライブ)へ移動し、『ジャンクション側。プラグインはインストールされていない。』という字幕が表示される。その後、インストールが実行され、ジャンクション側のフォルダ内にプラグインのファイルが追加される様子が確認できる。最後に、再び実体側のフォルダを表示し、こちらにも正常にファイルが保存されていることが示される。 インストール先が変更できないプラグインを利用し、実体側にインストールできるか確認している様子

インストール先が、強制的にC:\Program Files\Common Files\VST3にされている。
その為、インストーラー上ではCドライブへのインストールとして処理が進む。
インストール後に実体のディレクトリを表示すると、正常に実体にインストールできている事が確認できる。

解説

コマンドの説明

使用するコマンド

mklink /J "<link>" "<target>"
コマンド
パラメーター
説明
mklink シンボリックリンクまたはハードリンク、及びジャンクションを作成するコマンド。
ディレクトリ自体を生成する為、VST3フォルダが存在する場合は、移動又は削除が必要。
/J ディレクトリ用のジャンクションを作成するオプション。

このオプション(または /D)を付けない場合、デフォルトではファイル扱い(ファイルシンボリックリンク)として作成されてしまい、フォルダとして機能しない
<link> 作成するジャンクションのパスを指定する。
例: C:\Program Files\Common Files\VST3
<target> ジャンクションの接続先となる「実体移動先)」のパスを指定する
例: E:\00_Program_E_Drive\01_Tool\FL Studio 2025\Plugins\VST3

参考リファレンス: mklink, ハード リンクとジャンクション

ジャンクションとは

よくある誤解:
Web上の一部の解説記事では「ジャンクションはボリューム(ドライブ)を跨げない」と記載されていることがありますが、これは誤りです(ハードリンクの制約もしくはネットワークドライブの制限と混同されているケースが多いです)。

Microsoft公式リファレンスにも記載がある通り、同一コンピューター上のローカルドライブ間であれば、ジャンクションで問題なくリンク可能です。

参考(公式リファレンス) : ハード リンクとジャンクション

  • ファイルの属性の一種である

  • 再解析ポイント により実装される

    • 再解析ポイントの種類を表す 再解析タグ が設定される
    • シンボリックリンクやジャンクションでは、実体のパス等の情報が含まれる 再解析データ が設定される
      • Get-Itemコマンドとfsutil.exeコマンドでディレクトリの属性と再解析ポイントの詳細を確認している様子
        「Windows PowerShell」でのコマンド実行画面。「Get-Item」コマンドにより、VST3ディレクトリの属性が「ReparsePoint」であることを確認している。続けて「fsutil.exe」コマンドで再解析ポイントの詳細を照会し、再解析タグが「Mount Point」であること、および代替名として実体のパスが設定されていることを示している。画面下部の緑色の枠内では、再解析データ(16進数ダンプ)の中に実体のパス情報が記録されている様子が強調され、「実体のパスは再解析データとして記録されている」という注釈が添えられている。
        • Get-Itemコマンドにより、VST3ディレクトリの属性はReparsePointである事を確認できる
        • fsutil.exeコマンドで再解析ポイントの詳細を照会している
          • 再解析タグはMount Pointであることを確認できる
          • 再解析データに実体のパスが記録されている事を確認できる
        • 参考記事: ASCII.jp

  • 動作の仕組み

    • 保存領域にアクセスする際、再解析ポイントが存在すると ファイルシステムフィルタードライバー が処理に介入し、実体の場所へと接続(リダイレクト)する

参考記事: WindowsのNTFS/ReFSに搭載されている「再解析ポイント」とは何か?
参考資料: ファイル属性定数, 再解析ポイント

【コラム】なぜシンボリックリンクではなくジャンクションなのか?

本記事では、ディレクトリのリンク機能としてより高機能な「シンボリックリンク (/D)」ではなく、あえて古くからある「ジャンクション (/J)」を採用しています。
これには以下の理由があります。

1. アプリケーションの互換性と安定性

シンボリックリンクはWindows Vista(2007年1月30日発売)から導入された機能ですが、一部の古いアプリケーションやファイルダイアログでは正常に認識されず、予期せぬ挙動(開けない、見つからない等)を引き起こす可能性があります。

特にDTMの現場では、プロジェクトの再現性のためにあえて古いバージョンのDAWを使用するケースがあります。
例えば、『UNDERTALE』の作者であるToby Fox氏が FL Studio 10 (2011年頃のバージョン) を使用していたことは有名ですが、こうした少し前の世代のDAWや、設計の古いVSTプラグインが混在する環境においては、より歴史が古く(Windows 2000から存在)、ディレクトリとしての透過性が高い(OSが普通のフォルダとして扱いやすい)ジャンクションの方がトラブルが少ないと判断しました。

参考資料: UNDERTALE Help, FAQ and Troubleshooting, XユーザーのDaily Toby Fox Trivia (Chapter 5 2026)さんによるポスト, History - FL Studio

2. 機能の十分性

シンボリックリンクの利点として「ネットワークドライブや相対パスを指定できる」点が挙げられますが、今回の目的は「ローカルドライブ間でのフォルダ移動」であり、ジャンクションの機能で必要十分です。

また、もう一つの利点である「管理者権限なしで作成可能」という点についても、今回はターゲットがシステム保護領域である C:\Program Files 内であるため、いずれにせよ管理者権限が必要となり、シンボリックリンクに対する優位性にはなりません。

以上のことから、今回は「機能の豊富さよりも枯れた技術ゆえの確実性」を優先し、ジャンクションを採用しました。

参考資料: シンボリックリンクの使い方と落とし穴
参考リファレンス: シンボリックリンク

参考資料

FL Studio指定のSoundfontsフォルダ外部にSoundfontを置く方法

コマンドプロンプトを管理者権限で開く方法

シンボリックリンク・ジャンクションリンクの作成方法

躓きやすいポイントの説明

ジャンクションについて

何故ジャンクションを選定したか

検証に使用したプラグイン

  • Bongo Cat Band (Audio Fusion Bureau)
    • インストーラーにて保存先ディレクトリの変更ができず、強制的に C:\Program Files\Common Files が指定されるため、今回の検証・動作確認に利用しました
0
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?