昨今、ほとんどの Linux ディストリビューションは Windows とのデュアルブート設定をほぼ自動的で行ってくれる。
しかし、そこから自分で1つ変更を加えようとなると手のつけようがないほど面倒になる。
大学の講義に使うノート PC をマルチブート環境にしようとオペレーティング・システムを複数インストールし、設定を破壊した日には地獄を見るだろう。
今までの筆者の経験から Linux 同士の共存ならばともかく1つのドライブに全く異なる OS を同居させるのは止めておいた方が良いと考える。
本稿ではその理由と解決策をご紹介。
事由
パーティションテーブルのカオス化
1つ目は単純で間違って Windows のパーティションを消去してしまうことがあるからだ。
現在の Windows パーティション・システムは昔と比べて複雑で回復パーティションや EFI パーティション、システムパーティションなどに分けられている。更にPCメーカーが割り振ったバックアップデータが入ったパーティションも存在したりする。 SSD の場合、パフォーマンスを維持するための予約領域もある。

ここからパーティションを削除したり縮小し、 Linux を詰め込めるだけのスペースを確保しなければならない。よくわからないけど名前的に削除しても良いだろうと思ったら Windows が起動しなくなった、ということが多々ある。
それに久しぶりにパーティションを弄ろうとしたときにどれがどれだかわからなくなってしまうこともある。
ブートローダの複雑さ
ブートローダーとは、簡単に言うと OS を管理・呼び出すための小ブログラムで様々な種類が存在する。
代表的なものでは Windows OS が標準搭載している Windows Boot Manager (以下 WBM )と UNIX 系でよく使われている GRUB がある。基本的にシステムごとに1つのブートローダしかインストールできない。
昨今のマザーボードは UEFI 標準搭載によって設定が非常に複雑になっている。UEFI は BIOS におしゃれな画面を提供したりセキュリティを強化できたりと様々な利点があるが、中身がクローズドソースなためブラックボックスと化している。これに伴いブートローダの設定や構造も複雑化している。
ほとんどの場合、はじめて Linux を導入するときは Windows が入ったシステムに後から Linux をインストールする形になる。そのとき GRUB が WBM にとって変わりインストールされることになる。
しかし Windows アップデートが WBM を自動的に復元してしまう場合がある。筆者は Windows 10 アップデート ver.1909 でこれを経験したが、Ver.2002でもブートローダの上書きが行われるという情報もある。
こうなったとき、アクセス不能な Linux パーティションがドライブに残ることになる。 Linux のインストールメディアを使って復旧することは可能だが、相応の知識が必要だ。セキュアブートの標準化で Linux を締めだそうと画策していることからわかるようにマイクロソフトがデュアルブートというのを良しとしていない。
どうしても Windows と Linux のマルチブート環境を作りたい場合は Windows OS のインストールメディアを用意し、Windows Boot Manager をブートローダとして設定したほうが良いかもしれない。
復旧作業が面倒に
3つ目はパーティションが増えることによってドライブ内がゴチャゴチャになりバックアップがより面倒になる。
やっぱ Linux は肌に合わんしヤメダ、ヤメ!ってなったとき Windows ディスクマネージャから Linux パーティションを削除するだけではダメなのだ。 Windows ディスクイメージを入手してブータブルメディアにインストールして、そこからコマンドを打ち込んで WBM を修復しなければならない。初心者にとってはこの作業だけでも調べる時間も入れて2時間以上はかかるだろう。
人の助けは期待できない
ユーザが多い Windows OS やユーザが少なくてもクローズドで限られたハードウェアしか使わない macOS と違い、Linux はデスクトップのユーザベースが小さいにも関わらず、雑多なハードウェアにインストールできてしまう。ゆえにインターネットを駆使したとしても同じ環境の人と巡り会えることが少ない。 ハードが原因でうまくブート設定ができないこともある。
エキスパートが隣に座ってアドバイスしてくれるならばともかく、ネットを介して適切な助言をもらえる望みは薄い。Linux フォーラムでは未解決の問題が溢れている。
ブートローダやパーティションといった問題はなるべく切り離し、システムをシンプルに保つよう心がけたい。
解決策
もう1つドライブを載せる
デスクトップ PC の場合は空いているドライブ・ベイにもう一つドライブを載せることで簡単にこの問題を解決できる。こうすることで広義の意味でマルチブート環境を実現できる。

まずデスクトップ PC に接続されているドライブをすべて外し、買ってきた真っ新なドライブだけを接続し、Ubuntu 、Fedora や OpenSUSE なりをインストール。電源を落とした後に他のドライブを再接続。これで間違って Windows がインストールされたドライブに Linux をインストールしてしまうトラブルは回避できる。

あとは BIOS の設定画面に入って起動順序を決める。設定を保存してから起動直後に F11 などを押して起動ドライブを選択すれば良いだけだ。
面倒なことは一切考えなくて良いし、片方のドライブの環境を壊してしまってもクリーンインストールするだけですぐに復旧できる。良いことずくめだ。
2021年現在、250 GB の SSD は最安3000円台で買えてしまうので出費も少なくて済む。250 GB もあれば Linux を入れて遊ぶには十分すぎる容量だ。
また予算に余裕がある方は M.2スロットを2個搭載したノートPC を購入してみるのも良いだろう。
仮想PCを使う
そこそこのスペックのPCを持ってるなら仮想PCでも快適に Linux を動かせるだろう。いじって遊ぶだけならこれで十分だ。
昨今の AMD Ryzen を筆頭とする CPU の多コア化により、当たり前のように物理コアを4個、6個搭載したノートPCが市場で売られている。仮想マシンを動かすのが非常に楽な時代になった。
お手軽に試せるのは VirtualBox 。デバイスの性能をなるべく引き出したい場合は VMware を使おう。特に Linux 上で Windows の仮想PCを動かす場合は VMware の方が快適だ。多少の設定が必要なようだが VMware を使って Windows 専用ゲームを遊んでいる人もいる。ただし Linux がホスト OS の場合 AMD製 GPU が使えないという制限があるのでよく確認しよう。
VirtualBox と VMware Player、どのような違いがあるのか知りたい方は下の記事をどうぞ。
Oracle VM Virtualbox
VMware Workstation Player Download
古いPCにLinuxをインストール
他よりも多めな出費になってしまうが中古ノートPC を買って遊ぶもの良いだろう。 HP かDELL、Lenovo(ThinkPadシリーズ)がおすすめ。なぜなら大量に出回っているため Linux コミュニティでも使われていることが多く、トラブルシューティングが楽なのだ。
Linux なら Intel CPU 第 1 世代 Core i シリーズでも重いデスクトップ環境を選ばなければ軽快に動いてくれるので選択肢は多い。
格安中古で Linux に慣れてきて Windows 抜きで生きていけそうになったら、メインPCのドライブをまるごとバックアップをとるか新品ドライブに交換してLinuxをインストールすれば良いだろう。
マルチブートはもはや時代遅れ?
PC の性能向上と仮想化技術の普及によりオペレーティング・システムのマルチブート化は時代遅れになりつつあると私は考える。
まだまだ発展途上ではあるが WSL (Windows Subsystem for Linux) といったツールの開発も行われているので今後ますます不要になっていきそうだ。
ソフトウェア・プロジェクトのオープンソース化が広まり、クロスプラットフォームなソフトウェアも急速に増えた。ソフトウェア開発も Docker の普及により OS の違いで困ることは少なくなった上、ウェブアプリの進化により、ほとんどの一般的な作業はブラウザ上でできてしまうようになった。
Linux をメインOSにして困るのは Adobe 関連のソフトウェアがどうしても学校や職場で必要になったときか DirectX API を利用してゲームを作りたいときくらいだろう。これらのソフトウェアを使わない人ならば思い切って Windows から Linux に切り替えた方が快適に過ごせる可能性もある。
Linux ではゲームができないじゃないか!と憤慨する人もいると思うが Valve 社の取り組みや Vulkan API の普及により、数年前では考えられないほど Linux で遊べるゲームが増えてきた。アンチチート対策が施されたオンラインゲームはまだ厳しいが遊べないタイトルはかなり減ってきた。

ProtonDBによればSteam ProtonでWindows専用ゲームを動かせるタイトルが15,000を超えた。
さらに Arch Linux をベースに開発された OS を搭載した Steam Deck が世界的に流行るなど、近年 Linux デスクトップも盛り上がりを見せている。 Linux が PC ゲーミングの主要プラットフォームの一つになるまであと一歩と言ったところまで来ている。あまり期待しすぎずに待っておこう。
最後に
やりたいことがあって Linux を使いたいのにブートローダやパーティション関連のトラブルに巻き込まれ、モチベーションと時間を浪費するのは非常に勿体のないことだ。
Linux のブートシーケンスや Systemd について学びたいのなら少しは収穫になるだろうが他の人にとってわざわざマルチブート環境を作るのははっきりいって時間の無駄だ。
おわり
Photo by Edgar Castrejon on Unsplash

コメント
新品のSSDにWindows7や10とLinuxやUbuntuを共存する場合を想定していない記事
中古のWindowsパソコンにLinux入れたらパテーションカオス化するかもしれんが、Linux入れる人は普通Windowsもクリーンインストールするだろ
はい、そういった方を想定していませんよ。
メーカー製のPCにプリインストールされたWindows OSのあとからLinuxを入れるのが入門者の一般的な行動だとおもいます。
Linuxに何度も触れている人やOSのマルチブートに失敗をしたことのある人以外、わざわざ新品のドライブを買ってくるということはしないと思います。
しかもデバイスの構成を変えたらWindowsの認証が通らなくなるということもあり、Windowsのライセンスをまた購入する必要がある場合もあります。
最近は昔のようにインストールメディアがなかったりで復旧が面倒になっていることも多いのでさらに厄介ですね。
Linuxってなんか難しそう
パソコンって私無理
みたいな意味の無い、今の時代に逆行した風潮を舞い戻すかのような記事
厳しいかもしれませんが、そもそもまだブログで意見発信できるくらいのスキルが無いだけでは?
冒頭でも記してあるとおりあくまでLinux入門者向けのテキストです。
あまりPCについて詳しくない方がいきなりデュアルブートをしようと思うと様々なトラブルに見舞われることが多いです。現に数年前の自分もそうでした。
その過程で学ぶこともありましたがそれ以上に徒労感を覚えたのを思い出し、この記事を書くにいたりました。
実際、OSをドライブごとにわけて運用するのはデータのバックアップや環境を変えたいというときに楽で非常に快適です。
パーティションについてあまり知らずに、Windowsを起動できなくなったという方も多くみてきました。
その結果やっぱりLinuxはダメだなぁということを言う人もいました。
そういう人を少しでも少なくなってくれればと思います。
貴見のとおり。どっちにしろ、ブートローダーがしょっちゅう壊れるので、うっとうしい。仮想マシンでの運用が一番安定している、バックアップもスクリーンショット感覚で取れるし、デバイスの共有も容易である。難点を言えば、拡張を予定して余裕を持ってディスクスペースを割り当てる事ぐらいである。複数のデスクトップ環境を操れるようになると興味本位でどんどこインストールして、適当にそれぞれアップデートして環境の崩壊を経験出来るようになる。
据え置きは、確かに何個かベイありますからデュアルブートは容易ですね。
ただ、4,5世代(どっちか)からノートにもm.2インタフェースが始まりましたし、
2ベイ対応ノートも世の中ありますから、
デュアルブートもできますよ~(∩´∀`)∩
確かに、単体でのデュアルブートはGRUB壊れちゃいました←オイオイ
sundaybridge,skylake世代のノートとかは不便ですけどねー。
m.2は革命ですねー。。。
連投すいません。
確か、m.2の前身”mSATA”ありましたねー。
ごめんさいー。
[…] LinuxとWindowsをデュアルブートするのは止めたほうが良いPhoto byEdgar Castrejonon… […]
[…] ※ この点については、SlackNoteさんの記事「LinuxとWindowsをデュアルブートするのは止めたほうが良い」を参考にさせていただきました。 […]
参考になりました、こういう記事が分かり易くていいです。
おかげで、win7,kali linuxを別ドライブで運用出来てます。
ありがとうございます。
大変勉強になりました。わかりやすい解説に感謝いたします。
恐れ入ります、もしご意見いただければ、大変ありがたいと思いコメントさせて頂きました。
当方仮想通貨売買をしており、金額が大きくなって来たので注文・口座アクセス用PC(取引所のみしかWebアクセスしない)を用意しようと思いました。そこでWindowsよりUbuntuの方がセキュリティが高いと考え、別PC、Hyper-V、Windwos10とのDualBootと検討している内に、当サイトにたどり着きました。
私としては、Hyper-VでのUbuntuより、当サイト推奨の別ストレージでのDualBootの方がセキュリティは上なのではと思いましたが、ちゃんと設定すれば仮想マシンのUbuntuでもDualBootと同等にセキュアになりえるのか、お忙しい中申し訳ございませんが、お考えをお聞かせ頂ければ大変有り難いです。
Windows 11とUbuntuをデュアルブートしようとしていてこちらの記事にたどり着きました。
WindowsがMBR領域を上書きしたりするのは困るので、おとなしく物理的にディスクを分けることとしたうえで、BIOSからブート順番を変えることで対応します。
少し前(2020年)の話ですが、私は古いPCにwindows7→10にアップグレードしようとして途中で止まったのでやむをえず強制終了したところOSが立ち上がらなくなりました
不覚にもバックアップを取ってなかったので少しでもデータを取り出したいと格闘している最中、Ubuntuをインストールすればいいという記事を見つけました(私自身が不勉強であったことは認めます)そこに飛びついたところ、結局データは一切取り出せず、かつUbuntuをアンインストールすることもできず(何度起動してもUbuntuが起動してしまい)、素人が飛びつくのは本当に怖いなと痛感いたしました
その記事に「Ubuntuをインストールすれば立ち上がらなくなったwindowsのデータを取り出せる」とは書いてなかったと記憶していますが、windowsのファイルにアクセスできるとは書いてあったと記憶しています
OSが立ち上がらなくなった状態を前提にしてなかったと思いますが、とにかくデータを取り出せる可能性があると思って飛びつきました
Ubuntuに熟知している人からしたら簡単な話なのかもしれませんが、ど素人が飛びつくのは極めて危険だと思う一方、もう少し「甘くない」という話も載せて欲しかったと思いました
結局データは諦め、windows10をクリーンインストールしました
しかしながらスペックが追い付かずまともに動かなくなったので、新しいPCを買いました
今も「Ubuntu」と見ると悪夢を思い出します
こう言記事で、技術力がどんどんさがるんだろう。
そして、初心者が手前に読むような方が増えて、中の下以上の本が売れなくなる。