購入したミニPCにWindowsがインストールされていたので、Windowsを削除せずに「Ubuntu Server」を追加してデュアルブート環境を作ろうとしたときの話です。「Windows側で空き容量(未割り当て領域)を確保したはずなのに、Ubuntuインストーラー上で『Free space』が表示されない!」 というトラブルに遭遇しました。

本記事では、この現象が発生する原因と、コマンド(diskpartやcfdisk)を使って安全にトラブルを回避し、デュアルブート構築を成功させるまでの完全手順を解説します。
この記事でわかること・解決する悩み
- WindowsとUbuntu Serverを1つのSSDで共存(デュアルブート)させる方法
- インストーラー(Storage configuration)で未割り当て領域(Free space)が表示されない原因
diskpartを用いたWindows回復パーティションの安全な削除手順cfdiskコマンドを使った、インストーラーのバグ回避とパーティション作成手順- WSLやDockerに依存しない、ピュアなLinux環境を基礎から作るための推奨設定
なぜ「Free space(未割り当て領域)」が出ないのか?(原因と結論)
結論から言うと、原因は「Windowsの回復パーティションの位置」と「Ubuntuインストーラーの表示不具合」の2つが重なっていることにあります。
1. 回復パーティションの位置問題
Windowsの「ディスクの管理」でCドライブを縮小すると、空き領域の後ろに「回復パーティション(数百MB〜数GB)」が取り残されることがあります。Ubuntu Serverのインストーラー(Subiquity)は、この「既存パーティションの間に挟まれた空き領域」をうまく認識・リスト化できない仕様になっています。
2. インストーラーの表示仕様・UIバグ
システム内部では「ディスクの空き容量」として認識されているにもかかわらず、画面上のリストに「Free space」として描画されない不具合が発生します。
【結論】どうやって解決する?
Windows側で邪魔な回復パーティションを削除して空き領域をディスクの最後尾にまとめた上で、Ubuntuインストーラーの裏画面(ターミナル)を開き、cfdisk コマンドを使って直接パーティションを割り当てることで安全に解決できます!
【第1部】Windows側で行う事前準備(必須)
Ubuntuをインストールする前に、まずはWindows上で以下の3つの準備を必ず完了させてください。
手順1:Ubuntu用の「未割り当て領域」を確保する
Windowsの「ディスクの管理」を開き、Cドライブを右クリックして「ボリュームの縮小」を実行します。Ubuntuに割り当てたい容量(最低でも30GB〜50GB以上、可能なら100GB〜150GB程度)を縮小し、「未割り当て」の領域を作成します。
手順2:不要な「回復パーティション」を削除して空き領域を最後尾にする
もし縮小した未割り当て領域の後ろに「回復パーティション」が残っている場合は、通常の画面から削除できないため、コマンドを使って強制削除します。(※回復パーティションを消してもWindowsの通常起動に影響はありません)
- スタートボタンから
cmdと検索し、「管理者として実行」でコマンドプロンプトを開く。 - 以下のコマンドを順に入力します。
diskpart
list disk
select disk 0 (※該当するディスクの番号を入力)
list partition
- リストから一番後ろにある「回復パーティション」の番号(サイズが数百MB〜1GB程度のもの)を確認し、以下のコマンドで削除します。
select partition 4 (※確認した回復パーティションの番号)
delete partition override
これで、ディスクの最後尾が一続きの「未割り当て領域」になります。
手順3:「高速スタートアップ」をオフにして完全シャットダウンする
(※超重要) Windowsの「高速スタートアップ」が有効のままだと、ディスクがロックされてLinux側からパーティションの変更や認識が正しく行えません。
- 「コントロールパネル」>「ハードウェアとサウンド」>「電源オプション」>「電源ボタンの動作の選択」を開く。
- 「現在利用可能ではない設定を変更します」をクリック。
- 「高速スタートアップを有効にする(推奨)」のチェックを外して変更を保存する。
- 「再起動」ではなく、一度「シャットダウン」して電源を完全に落とします。

【第2部】Ubuntu Serverのインストールとトラブル解決手順
パソコンにインストール用USBを挿し込み、電源を入れてインストーラーを起動します。
1. 基本設定(ネットワーク〜ミラー設定)
- Network configuration
有線LANケーブルを挿し、DHCPで自動的にIPアドレスが取得されていることを確認して次へ進みます。 - Proxy configuration
一般的な家庭・個人環境であれば何も入力せず空欄のままスキップします。 - Archive mirror
デフォルト(jp.archive.ubuntu.comなど)のまま[ Done ]で進みます。
2. Guided storage configuration(ストレージの基本方針)
Windowsを残してデュアルブートにするため、必ず 「Custom storage layout(カスタム設定)」 を選択してください。
(※間違えて「Use an entire disk」を選ぶとWindowsがすべて消去されるので要注意!)
3. Storage configuration(※最重要ポイント!)
カスタム設定画面に進んでもリストに「Free space」が表示されていない場合、以下のコマンド操作でインストーラーの表示バグを突破します。
手順1:裏画面のターミナルでパーティションを直接作成する (cfdisk)
- キーボードの
Ctrl+Alt+F2を同時に押して、裏画面(黒いターミナル)を開く。 - 以下のコマンドを入力し、パーティション作成ツールを起動する。
sudo cfdisk /dev/sda
(※ディスク名がsdaやnvme0n1など環境によって異なる場合があります。分からない場合は事前にlsblkコマンドで確認してください) - 上下矢印キーでリストの下の方にある
Free space(未割り当て領域)を選択する。 - 左右矢印キーで画面下部のメニューから
[ New ]を選んでEnterを押す。 - Partition size: はデフォルト(全容量を使う設定)のまま
Enterを押す。 - 下部メニューの
[ Write ]を選び、yesと入力してEnter(ディスクへの書き込み確定)。 [ Quit ]を選んで終了し、Ctrl+Alt+F1を同時に押してインストーラー画面に戻る。
手順2:インストーラーで最終割り当てを行う
- インストーラー画面の最下部にある
[ Reset ]を選択し、ディスク情報を再読み込みさせます。 - リストに出現した新しいパーティション(例:
partition 4)を選択し、以下のように設定します。- Format:
ext4 - Mount:
/(ルート)
- Format:
- もともとあるWindowsの起動用EFIパーティション(約200MBの
vfat/fat32領域)を選択し、以下のように設定します。- Format:
Leave unformatted(※絶対にフォーマットしないでください!) - Mount:
/boot/efi
- Format:
画面上部にあった警告メッセージが消え、一番下の [ Done ] が押せるようになれば設定完了です!
4. インストール完了までの設定
- Profile configuration(アカウント設定)
自身の名前、サーバー名(ホスト名)、ログイン用ユーザー名、パスワードを設定します。 - Ubuntu Pro(商用サポート案内)
個人利用なら 「Skip for now」 を選択して問題ありません。 - SSH configuration(遠隔操作の設定)
他のメインPCからターミナル等でアクセスして作業できるようにするため、「Install OpenSSH server」には必ずチェック([X])を入れます。 - Featured server snaps(追加ソフトウェア)
DockerやAWS CLI等の人気ツール一覧ですが、後から自分で手動インストールした方が設定を細かく管理できて環境が安定するため、ここでは何もチェックを入れず(空欄のまま)[ Done ]で進めるのがおすすめです。
すべて設定すると自動でインストール処理が開始されます。画面下部に Reboot Now が表示されたらUSBメモリを抜いて再起動してください。 起動時に「GRUB」のメニュー画面が表示され、Ubuntu ServerとWindowsを自由に選んで立ち上げることができるようになります!
まとめ
Ubuntu ServerとWindowsのデュアルブート環境を構築する際、「Free spaceが出ない」現象はとても焦りますが、以下のポイントを押さえていれば確実に解決できます。
- Windows側で回復パーティションを消して未割り当て領域を最後尾にする
- 高速スタートアップを必ず無効にする
- インストーラーの不具合は
Ctrl+Alt+F2からのcfdiskコマンドで安全に回避する
サーバー用OSでも、デスクトップ環境(GUI)と同じようにWindowsと共存したクリーンなLinux環境を作ることは可能です。環境構築で同じようにハマってしまった方の参考になれば幸いです!
