皆さんは、外付けHDD/SSDにWindowsをインストールしたいけど、「外付けディスクにはでインストールできません」

というようなエラーに出くわしたことがあるでしょうか?

  • OSが壊れたからほかのPCから再インストール作業をしたいけどPCを分解するのは面倒...
  • ブートロックがかかっていて、USBインストールメディアがブートができない...

など

今回は、PCとHDD/SSDと、USBのSATAケーブルがあれば簡単にインストールできるやり方を説明します。

UEFIとBIOSでやり方が少し異なるので、分けて解説します。

# BIOSの場合

Diskpartを使いたいので、まずはPowershellを起動します。

管理者権限で実行してください。

スクリーンショット 2025-09-12 173033.png

diskpart

と入力してdiskpartに入ります。

DISKPART> となっていれば、OKです。

PS C:\Users\masam> diskpart

Microsoft DiskPart バージョン 10.0.26100.1150

Copyright (C) Microsoft Corporation.
コンピューター: MASSANGO

DISKPART>

# ディスクの初期化

UEFIの場合、EFIシステムパーティション(ESP)が必要になりますが、BIOSの場合は必要ありません。

// インストールするディスクを見つける
list disk

// ディスクの選択
select disk X // Xにはインストールするディスクの番号

// パーティションを全消し 
// 選択したディスクのすべてのデータが削除されます
// よく確認して下さい
clean

// MBRに変換
convert mbr

// プライマリパーティション作成
create partition primary

// NTFSでフォーマット
format fs=ntfs quick label=Windows

// ドライブレターを割り当て
assign letter=W

// パーティションをアクティブに
active

exit

ドライブレターはWです。
後ほど使いますので、覚えておいてください。

# ISOイメージのマウント

まずは、ISOファイルをマウントします。

今回はWindows Server 2008を展開しますが、Windows 11でも同じやり方でできます。

以下のリンクから、下の方にディスクイメージ(ISO)をダウンロードするというところがあるので、

まだISOファイルをダウンロードしていない場合はここからダウンロードしてください。

ダウンロードしたISOファイルをダブルクリックすると警告が出ますが、開くを押すとマウントされます。

スクリーンショット 2025-09-12 173511.png

アイコンが私とは違うかもしれませんが、マウントが成功していればこのようなアイコンが表示されると思います。

スクリーンショット 2025-09-12 174238.png

マウントすると、ドライブレターが自動で割り振られます。(今回はFドライブ)

このアサインをDismコマンドで使うので、メモしてください。

# Dismコマンドで展開する

Powershellを使って、このコマンドを実行します。

PS C:\Users\masam> dism /apply-image /imagefile:F:\sources\install.wim /index:1 /applydir:W:\

変更の必要な部分だけ、説明します。

  1. /imagefile:F:\sources\install.wim
    • 展開元のイメージファイルを指定する
注意
今回はFドライブなので、/imagefile:F:と指定していますが、ここは環境によって変わります。
  1. /index:1
    • winイメージの中には複数のエディションHomePro、Enterpriseなど)が入っていることがあります
    • index:1 はその中の1番目のエディションを展開するという指定です
エディションについて
エディションを確認したい方は、エディションの確認セクションを確認してください。

エディションの確認

  1. /applydir:W:\
    • 展開先のドライブが指定できます
    • 記事通りに進んでいれば、ドライブレターはWです

Wと書かれているところを変更すれば、別のドライブレターを指定できます。

# ブートローダーを書き込む

ブートローダーを書き込むためには、bcdbootコマンドを使用します。

このコマンドは、指定したドライブにあるwinイメージから、起動ファイルを作成し、システムパーティションにコピーする役割を果たします。

以下のURLは、bcdbootの解説ページです。

Powershellからコマンドを実行します。

管理者権限で実行してください。

PS C:\Users\masam>bcdboot W:\Windows /s W: /f BIOS
ドライブレター
記事通りに進んでいれば、コマンドの中にあるWという文字は変える必要はありません。 もし異なるドライブレターにした場合は、そのドライブレターに置き換えてください。

これで起動することができるようになりました。

# 動かない場合

ドライバやコマンドミスで、動かない場合があります。

もし動かなかった場合は、このようなことを参考にしてください。

OSが起動しない

  • HDDが「active」になっているか確認してください

ブルースクリーン

  • 別PCで起動して、一度ドライバを組み込んでください

# UEFIの場合

スクリーンショット 2025-09-12 212015.png

UEFIの場合、大まかな内容はBIOSの時と変わらないものの、一つ大きな違いがあります。
それは、EFIシステムパーティション(ESP)を作成する必要がある点です。

EFIシステムパーティションは、UEFIファームウェアが読み込むブートローダーを置く専用領域です。

BIOSでは「アクティブ」マークを付けたパーティションから起動しましたが、UEFIでは必ずFAT32形式のESPを用意する必要があります。

# UEFIで必要なパーティション構成

  • EFIシステムパーティション
    • サイズ: 100~300MB程度
    • ファイルシステム:FAT32
    • ドライブレター:L(普段はついていない)
  • Windows本体用パーティション
    • 残りのディスク領域
    • ファイルシステム:NTFS
    • ドライブレター:W

それと、UEFIではパーティションはGPTになります。

MBRを使うには
MBRのパーティションを使うには、レガシーブートを有効にする必要があります。

# ディスクの初期化2

Diskpartを使いたいので、まずはPowershellを起動します。

管理者権限で実行してください。

スクリーンショット 2025-09-12 173033.png

diskpart

と入力してdiskpartに入ります。

DISKPART> となっていれば、OKです。

PS C:\Users\masam> diskpart

Microsoft DiskPart バージョン 10.0.26100.1150

Copyright (C) Microsoft Corporation.
コンピューター: MASSANGO

DISKPART>

UEFI用になったコマンド

// インストールするディスクを見つける
list disk

// ディスクの選択
select disk X // Xにはインストールするディスクの番号

// パーティションを全消し
// 選択したディスクのすべてのデータが削除されます
// よく確認して下さい
clean

// GPTに変換
convert gpt

// EFIシステムパーティション (ESP) 作成
create partition efi size=300 // 100MBでも行けるかも
format fs=fat32 quick label=System
assign letter=L

// Windows用パーティション作成
create partition primary
format fs=ntfs quick label=Windows
assign letter=W

// パーティションをアクティブに
active

exit

ドライブレターはWです。
後ほど使いますので、覚えておいてください。

# ISOイメージのマウントからDISMで展開まで

この部分はBIOSの場合と全く同じです。BIOSの場合/ISOイメージのマウントからDismコマンドで展開するをご覧ください。

# ブートローダーを書き込む part2

BIOSと違うところは、コマンドの最後の部分と、ドライブレターです。

Powershellを管理者権限で実行してください。

PS C:\Users\masam>bcdboot W:\Windows /s L: /f UEFI

BIOSの場合は最後がBIOSと書かれています。

今回はUEFIなので、UEFIと書いています。

EFIパーティションのドライブレターはLなので、Lになっています。

これで完了です。

# エディションの確認

インストールイメージ(install.win)には、複数のエディションがまとめて入っている場合があります。
そのため、展開する前に「どのエディションがどの番号か」を確認します。

PS C:\Users\masam> dism /get-wiminfo /wimfile:F:\sources\install.wim
注意
wimfile:F:\ と書いてありますが、これはISOイメージをマウントしたときに割り当てられるドライブレターです。 環境によって `E:\` や `G:\` になる場合もあるので、自分の環境に合わせて読み替えてください。

実行すると、以下のように出力されます。

インデックス: 1
名前: Windows 10 Home
説明: Windows 10 Home
サイズ: 14,567,890,123 バイト

インデックス: 2
名前: Windows 10 Pro
説明: Windows 10 Pro
サイズ: 15,123,456,789 バイト

ここでインストールしたいエディションのインデックス番号を確認します
例えば、Proを使いたければ /index:2を指定します。