ハードディスク容量が少ないWindows 10マシンでは、アプリやユーザーのデータですぐに容量がいっぱいになってしまいます。
そんなときは、ユーザーデータを別の場所に移動させるのが一般的ですが、それ以外の方法として、アプリをSDカードやUSBメモリにインストールするという方法があります。
ですが、SDカードやUSBメモリを単に接続しただけでは、アプリのインストール先として指定することはできません。
そこでここでは、Windows 10でSDカードやUSBメモリ上に仮想ハードディスクを作成して、アプリをインストールできるようにする方法を紹介します。
目次
動作環境
この記事は、以下の環境で実行した結果を基にしています。他のエディションやバージョンでは、動作結果が異なる場合があることをご了承ください。
ソフトウェア | バージョン |
---|---|
Windows 10 Pro 64bit | 21H2 |
仮想ハードディスクを作成する
ここでは例として、SDカードやUSBメモリ上に1GBの仮想ハードディスクを作成して、利用できるようにします。
管理者権限でPowerShellを起動し、次のPowerShellコマンドレットを実行します。
PS C:\> New-VHD -Path J:\vdisk01.vhdx -SizeBytes 1GB | Mount-VHD -Passthru |Initialize-Disk -PartitionStyle MBR -Passthru |New-Partition -AssignDriveLetter -UseMaximumSize |Format-Volume -FileSystem NTFS -Force
上のコマンドでは、以下を実行しています。
- 仮想ハードディスクの作成
- 作成した仮想ハードディスクをマウント(オンライン化)
- 作成した仮想ハードディスクを初期化
- 作成した仮想ハードディスクにパーティションを作成して、ドライブレターを割り当て
- 作成した仮想ハードディスクをフォーマット
コマンド | 説明 |
---|---|
New-VHD -Path J:\vdisk01.vhdx -SizeBytes 1GB | 1GBのVHDX形式仮想ハードディスクをJ:vdisk01.vhdxとして作成 ※Jドライブは、SDカードやUSBメモリに割り当てられているドライブレターです。 |
Mount-VHD -Passthru | 仮想ハードディスクをマウントする |
Initialize-Disk -PartitionStyle MBR -Passthru | 仮想ハードディスクをMBRディスクとして初期化する |
New-Partition -AssignDriveLetter -UseMaximumSize | 仮想ハードディスクに最大サイズでパーティションを作成して、ドライブレータを割り当て |
Format-Volume -FileSystem NTFS -Force | NTFSでフォーマット |
コマンド実行後、仮想ハードディスクの状況が表示されればOKです。
これで、仮想ハードディスクが利用できるようになりました。(上のコマンドでは、作成した仮想ハードディスクがIドライブとして割り当てられています。)
あとは、アプリのインストール時に、仮想ハードディスクに割り当てられたドライブを指定してインストールすればOKです。
仮想ハードディスクを自動でマウントさせるには
仮想ハードディスクをドライブとしてマウントした場合、Windowsを起動するたびにマウントが外れてしまうため、Windows起動時に自動的にマウントするように設定しておきます。
手順は簡単で、SDカードやUSBメモリ上に作成した仮想ハードディスクファイルのショートカットを、スタートアップフォルダーに配置するだけです。
Windows 10では、以下の場所がスタートアップフォルダーとなります。
ユーザーごとのスタートアップフォルダーのパス:
C:Users<ユーザー名>AppDataRoamingMicrosoftWindowsStart MenuProgramsStartup
全ユーザー共通のスタートアップフォルダーのパス:
C:ProgramDataMicrosoftWindowsStart MenuProgramsStartup
仮想ハードディスクを取り外すには
マウントされている仮想ハードディスクをアンマウントする(取り外す)には、エクスプローラーでマウントしている仮想ハードディスクを右クリックし、メニューから「取り出し」をクリックします。
あとがき
仮想ハードディスクは、管理ツールの「ディスクの管理」からも作成できますが、コマンド操作に慣れている方であれば、ここで紹介しているようにコマンドから作成したほうが手っ取り早いです。
参考
https://docs.microsoft.com/en-us/powershell/module/hyper-v/new-vhd?view=win10-ps