空きドライブをパーティション分割してデュアルブート化
こんにちは、チヂミです。
前回の記事、「Windows 10右クリックメニューに「ディスクイメージの書き込み」がない場合に表示させる方法。」でも少しふれましたが。
Windows 10インストール済みの自作PCの空きドライブに、Ubuntu Linuxもインストールして、デュアルブート環境にできないか、ずっと悪戦苦闘していました。
あれから約5ヶ月。
ようやく成功したので(笑)、記事にしてみたいと思います。
今回使用した自作PCの構成を、Windows的に説明すると以下の通り。
Cドライブは、2.5インチ内蔵SSD(256GB)。Windows 10をインストール済み。
Dドライブは、内蔵ブルーレイドライブ。
Eドライブは、3.5インチ内蔵HDD(1TB)。個人データなどの保存を想定。
以上。
実はこの自作PC。組み上げてから1年以上経過していますが、今回Ubuntu Linuxをインストールするまでは、HDDが未フォーマット状態でした。
※ フォーマットしてないので正確にはEドライブではないですが、説明上Eドライブとします。
というのも、SSDにWindows 10をインストール後、HDDは時間のある時にフォーマットして使えるようにしようと思っていたのですが、当サイト管理人は写真や動画ファイルなどの容量の大きなデータをほとんど扱わないので、256GBのSSDでも十分に足りてしまい、気がついたらHDDの存在を忘れてました(笑)。
これではもったいないので、今回、個人データの保存用としてだけでなく、Linux学習のためにUbuntu Linuxもインストールして、HDDを活用することに。
具体的には、Windows 10インストール済みのSSD(Cドライブ)とは物理的に別ドライブの、HDD(Eドライブ)をWindows用データ領域とLinux領域にパーティション分割。
そのLinux用パーティションにUbuntu Linuxをインストールして、デュアルブート環境を作ろうというのが今回の試みになります。
実は、管理人は旧BIOS時代にお遊びで、WindowsのノートPCにLinuxもインストールしてデュアルブート化したことは何度かあるのですが、UEFIベースの、しかもWindowsとは別ドライブにインストールするデュアルブート化は今回が初めて。
なので、事前にネットでできるだけ関連記事を見つけて目を通し、参考にさせていただきました。
ネットを探すと、Windows 10とUbuntu Linuxのデュアルブート化についての詳細な手順が紹介された記事が、いくつも見つかります。
デュアルブート環境構築のくわしい手順は、そういう記事を探していただくとして(笑)、当サイトでは、当たり前過ぎるからなのか、他の記事ではあまり触れられていないポイントや、デュアルブート化の特殊な注意点のみ、説明してみます。
※ 管理人はkledgebさんの記事「Ubuntu 18.04 インストール(UEFI) その1 - UEFIのPCにUbuntu 18.04をインストールする(ライブメディアから起動 〜 インストールの種類の選択)」をとても参考にさせていただきました。
ライブDVD、ライブUSBはUEFIモードで起動
まず、最初の重要ポイントは、Ubuntu Linuxのインストールメディア(ライブDVD、ライブUSBなど)を、UEFIモードで起動させることです。
あらかじめ、Ubuntu LinuxのライブDVDやライブUSBをセッティングしておいたPCの電源ボタンをオン。
Windows 10が起動するより先に、F2キーなどを押してUEFIセットアップ画面に入って、Ubuntuインストールメディアのドライブを起動優先順位(Boot Option Priorities)の最優先に設定するか、またはF11キーなどを押してブートメニューを表示させて、Ubuntuインストールメディアのドライブを選択することで、Ubuntu Linuxのインストーラーを起動させなければならないのですが。
その際、Ubuntu Linuxのインストールメディアのドライブ(デバイス)名の先頭に、「UEFI:」があるオプションを選択するのが、UEFI(GPT形式)インストール成功のキモになります。
ついうっかりして、先頭に「UEFI:」のないデバイス名を選ぶと、UEFI(GPT形式)インストールではなく、従来のMBR形式のインストールになるので注意してください。
「インストールの種類」で「それ以外」を選ぶ
次に重要なポイントは、「インストールの種類」で「それ以外」を選ぶことです。
起動したUbuntu Linuxのインストーラーから、実際のインストール作業を進めていくわけですが、ここで重要なのは、「インストールの種類」という設定項目です。
Ubuntu Linuxをどのドライブ(ディスク、ストレージ)にインストールするのか、またドライブ全体またはドライブの一部にインストールするのかによって、選択するオプションが違ってきます。
今回の管理人のように、SSDやHDDを複数のパーティションに分割して、その一部にUbuntu Linuxをインストールしたい場合は、「それ以外」というオプションを選ぶと、パーティションの作成やサイズ変更ができるようになります。
また、ノートPCのような、すでにWindows 10がインストール済みのSSDまたはHDDをパーティション分割して、そこにUbuntu Linuxもインストールしてデュアルブート化したい場合は、「UbuntuをWindows Boot Managerとは別にインストール」というオプションが用意されています。
これを選ぶと、Ubuntu Linuxのインストール領域のパーティションサイズをマウスのドラッグ操作で決めるだけで、比較的簡単にインストールできるみたいです。
くわしいことは、パソコン工房さんの記事「Windows 10とUbuntu 18.04 デュアルブートする方法」がとても参考になると思います。
また、空のSSDやHDD、またはWindowsを削除してドライブ全体にUbuntu Linuxをインストールしたい場合は、「ディスクを削除してUbuntuをインストール」というオプションが用意されています。
ディスク(ドライブ)全体をフォーマットしてしまうので、ディスクの選択を誤るとWindowsやデータが全部消えてしまう危険性がありますが、インストール作業としては最も手間がかからない楽なオプションです。
EFIシステムパーティションの作成
「インストールの種類」で「それ以外」を選んだ場合に重要なのが、Ubuntu Linuxを起動させるブートローダー(GRUB2)のインストール先の選択です。
UEFIインストールでは、ブートローダーは「EFIシステムパーティション」というパーティションにインストールされます。
このEFIシステムパーティション。
適切な容量サイズがあれば複数のOSのブートローダーを一緒にインストールできるので、今回の例だと、Windows 10インストール済みのSSDに、Windowsのブートローダー(Windows Boot Manager)用に作成されたEFIシステムパーティションがあるので、ここにUbuntu Linuxのブートローダーをインストールすることも可能です。
ただ、EFIシステムパーティションがあるSSDがもし破損や故障した場合、HDDにインストールしたUbuntu Linuxも起動できなくなってしまうので、実際にはUbuntu LinuxをインストールするHDDにもEFIシステムパーティションを作成して、そこにUbuntu Linuxのブートローダーをインストールするほうがベターということになります。
※ この点については、SlackNoteさんの記事「LinuxとWindowsをデュアルブートするのは止めたほうが良い」を参考にさせていただきました。
EFIシステムパーティションの作成は、通常のパーティションを作成するのと同じ手順で、「利用方法」の項目で「EFIシステムパーティション」を選択するだけです。
EFIシステムパーティションの容量サイズですが、Ubuntu Japanese Team Wikiによれば100~250MBでよいそうです。
今回の例では、ネットで見つけたブログ記事などを参考に250MBにしましたが、今ではちょっと大きすぎたかなと思ってます。
Windows 10のEFIシステムパーティションのサイズが100MBなのですが、ここに数種類のLinuxのブートローダーを一緒にインストールしても問題ないみたいなので、別ドライブでもUbuntu Linux単体か、もしくは数種類ていどのLinuxしか一緒にインストールしないつもりなら、100MBで十分ではないかと思います。
ブートローダーのインストールに不具合
「インストールの種類」で「それ以外」を選び、EFIシステムパーティションやUbuntu Linux本体をインストールするルートパーティションなど、必要なパーティションを作成した後で重要なのが、「ブートローダをインストールするデバイス:」の選択です。
「ブートローダをインストールするデバイス:」とあるように、EFIシステムパーティションそのものではなく、EFIシステムパーティションを含むデバイス(ドライブ、ストレージ)全体を選択するのが正解みたいです。
今回の例だと、「/dev/sdb」になります。
ただし、ここで残念なお知らせがあります。
今回、インストールに使ったISOイメージは「Ubuntu 20.04 LTS」なのですが、インストーラーに不具合があるみたいなんです。
「ブートローダをインストールするデバイス:」でHDDを選択しているにもかかわらず、なぜか結果はWindows 10インストール済みのSSDのEFIシステムパーティションにインストールされてしまいます。
下の、ブートメニューの画像を見てもらうとわかると思いますが、Ubuntuのブートローダーの場所が、選択したはずのHDDではなく、Windows Boot Managerと同じSSDになっています。
そこで、Ubuntu Linux本体とブートローダー(GRUB2)をいったん削除。
今度は「ブートローダをインストールするデバイス:」でEFIシステムパーティションそのもの(/dev/sdb1)を選択して、もう一度Ubuntu Linuxをインストールしてみたのですが、結果は同じでした。
※ GRUB2の削除については、bioinfomaticsさんの記事「デュアルブートから Ubuntu を削除する方法」、俺の開発研究所さんの記事「Windows 10でUbuntu GRUBブートローダーの削除方法 UEFI/レガシーBIOS」をとても参考にさせていただきました(感謝)。
他のデバイスは全部外してインストール
こうなってしまうと、管理人のようなLinux超初心者でもできる方法はただひとつ。
Ubuntu Linuxをインストールするデバイスだけを残し、その他のインストール可能なデバイス(SSD、HDD、USBドライブなど)とマザーボードとの接続を全部外して、インストール作業を行うことです。
これなら、マザーボードに認識されるデバイスは1つしかないので、ブートローダーが間違って他のデバイスにインストールされる心配はありません。
これって、Windowsとは別ドライブ(ディスク、ストレージ)にLinuxをインストールしてデュアルブート化する時に、間違ってWindowsを消してしまわないよう、よく紹介されている方法です。
※ 上記の「LinuxとWindowsをデュアルブートするのは止めたほうが良い」でも紹介されています。
Ubuntu Linux本体とブートローダーをもう一度削除。
PCケースのサイドパネルを外して、Windows 10インストール済みのSSDに接続されているSATAケーブルを外しておきました。
マザーボードに接続されているのはHDDだけにして、またUbuntu Linuxをインストール。
HDDしかないので、「ブートローダをインストールするデバイス:」は、今度は「/dev/sda」になります。
三度目の正直で、ようやくブートローダー(GRUB2)がHDDのEFIシステムパーティションに正しくインストールされました。
※ 下の画像を見るとわかるのですが、ブートメニューのubuntuの部分の「WDC…」というのが、HDDの型番(ウェスタン・デジタル社製品HDD)です。
最初から素直にこの方法にしとけば、膨大な時間を無駄に費やすもなかったでしょう(泣)。
PCケースのサイドパネルを外したり、SATAケーブルを外したりする手間を惜しんだばっかりに、この始末です(笑)。
ただ、今回の例では他のデバイスが2.5インチSSDだけだったので、SATAケーブルを抜き差しするだけで済みましたが、これがマザーボードに直接取り付けるタイプのM.2 SSDだったら、もっと面倒なことになっていたかもしれません。
まだ、使ったことないのでわかりませんが。
なお、今回はWindowsのデータ保存用パーティションを作成したかったので、「インストールの種類」で「その他」を選択しましたが、パーティションを切らずにデバイスまるまるUbuntu Linuxをインストールするだけなら、「ディスクを削除してUbuntuをインストール」を選択してください。
これだと、EFIシステムパーティションの作成など、面倒くさいことは全部おまかせでやってくれます。
ようやくこれで、Windows 10に影響を与えることも受けることもなく、Ubuntu Linuxを使えるデュアルブート環境ができました。
さっそく、HDDのUbuntu Linuxから、SSDのWindows 10にアクセス。
「ピクチャ」フォルダに保存してある、Windowsスポットライトのお気に入り風景写真をコピべして、個人的には微妙な感じの、Ubuntu 20.04デフォルトの豹?の壁紙を変更してみました。
起動優先順位の変更
ただ、このままだとPCの電源をオンにすると、Windows 10よりも先にUbuntu Linuxが起動してしまうと思います。
Windows 10をメインに使っていたり、家族も同じPCを利用している場合はこれでは困ると思うので、起動優先順位を変更します。
Ubuntu Linuxが起動する前にUEFIのセットアップ画面に入って、「Boot」タブを開きます。
「起動優先順位」(Boot Option Priorities)の項目で、Boot Optionの1番目に「Windows Boot Manager」を設定すれば、以後、Windows 10が先に起動するようになります。
Ubuntu Linuxを起動したい時は、Windows 10が起動する前にF11キーなど長押しして、UEFIのブートメニューを呼び出し、Ubuntu Linuxを選択するだけです。
ではまた。
From チヂミ