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

ここからパーティションを削除したり縮小したりLinuxを詰め込めるだけのスペースを確保しなければならないのだ。よくわからないけど名前的に削除しても良いだろうと思ったらWindowsが起動しなくなったということが多々ある。
それに久しぶりにパーティションを弄ろうとしたときにどれがどれだかわからなくなってしまうこともある。
ブートローダの複雑さ
Windows Boot Manager(以下WBM)とGRUB2などのLinux系のブートローダはマザーボードの UEFI 標準搭載などによって設定が非常に複雑になっている。コイツを設定するのに何時間無駄にしたかわからないくらいだ。MBRのときでさえ頭を抱えたが EFI パーティションの設定が厄介さを増している。
ほとんどの場合、Windowsが入ったシステムにあとからLinuxをインストールする形になる。GRUBがWBMととって変わりインストールされることになる。しかしWindowsアップデートがWBMを自動的に復元してしまう場合があるのだ。筆者はWindows 10アップデートVer 1909でこれを経験した。Ver 2002でもブートローダの上書きが行われることを確認している。
こうなった場合、アクセス不能なLinuxパーティションがドライブに残ることになる。セキュアブートの標準化でLinuxを締めだそうと画策したことからわかるようにマイクロソフトがデュアルブートというのを良しとしていないのだ。
復旧作業が面倒に
パーティションが増えることによってドライブ内がゴチャゴチャになり、バックアップがより面倒になる。
やっぱLinuxは肌に合わんしヤメダ、ヤメ!ってなったとき、WindowsディスクマネージャからLinuxパーティションを削除するだけではダメなのだ。Windowsディスクイメージを入手してブータブルメディアにインストールして、そこからコマンドを打ち込んでWindows Boot Managerを修復しなければならない。初心者にとってはこの作業だけでも調べる時間も入れて2時間以上はかかるだろう。 マルチブート環境をどうしても作りたい場合はWindows Boot Managerをブートローダとして設定したほうが良いかもしれない。
人の助けは期待できない
ユーザが多いWindows OSやユーザが少なくてもクローズドで限られたハードウェアしか使わないmacOSと違い、Linuxはデスクトップのユーザベースが小さいのに雑多なハードウェアにインストールできてしまう。ゆえにインターネットを駆使したとしても同じ環境の人と巡り会えることが少ない。 ハードが原因でうまくブート設定ができないこともある。
エキスパートが隣に座ってアドバイスしてくれるならばともかく、ネットを介して適切な助言をもらえる望みは薄い。フォーラムでは未解決の問題が溢れている。ブートローダやパーティションといった問題はなるべく切り離し、システムをシンプルに保つよう心がけたい。
解決策
もう1つドライブを載せる(デスクトップの場合)
デスクトップPCの場合は空いているドライブ・ベイにもう一つドライブを載せることでこの問題を解決できる。こうすることで広義の意味でマルチブート環境を実現できる。

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

あとはBIOSの設定画面に入って起動順序を決める。設定を保存してから起動直後にF11などを押して起動ドライブを選択すれば良いだけだ。
2018年現在、120GBのSSDは最安3000円台で買えてしまう。120GBもあれば Linux を入れて遊ぶには十分すぎる容量だ。
仮想PCを使う
そこそこのスペックのPCを持ってるなら仮想PCでも快適にLinuxを動かせるだろう。いじって遊ぶだけならこれで十分だ。昨今のRyzenを筆頭とするCPUの多コア化により、当たり前のように物理コアを6個、8個搭載したPCが市場で売られている。仮想マシンを動かすのが非常に楽な時代になった。
お手軽に試せるのはVirtualBox。デバイスの性能をなるべく引き出したい場合はVMwareを使ったほうが良いだろう。特にLinux上でWindowsの仮想PCを動かす場合はVMwareの方が良さそうだ。多少の設定が必要なようだが、VMwareを使ってWindowsのゲームで遊んでいる人もいる。
VirtualBoxとVMware Player、どのような違いがあるのか知りたい方は下の記事をどうぞ。
Oracle VM Virtualbox
VMware Workstation Player Download
古いPCにLinuxをインストール
他よりも多めな出費になってしまうが中古ノートPCを買って遊ぶもの良いだろう。HPかDELL、Lenovo(ThinkPadシリーズ)がおすすめ。なぜなら大量に出回っているためLinuxコミュニティでも使われていることが多く、トラブルシューティングが楽なのだ。Linuxなら第 1 世代Core iシリーズでも重いデスクトップ環境を選ばなければ軽快に動いてくれるので選択肢は割と多いと思う。
格安中古でLinuxに慣れてきて Windows 抜きで生きていけそうになったら、メインPCのドライブをまるごとバックアップをとるか新品ドライブに交換してLinuxをインストールすれば良いだろう。
最後に
やりたいことがあってLinuxを使いたいのにブートローダやパーティション関連のトラブルに巻き込まれ、モチベーションと時間を浪費するのは非常に勿体のないことだ。Linuxカーネルについて学びたいのなら少しは収穫になるだろうが他の人にとってははっきりいって時間の無駄だ。
マルチブートはもはや時代遅れ?
市販PCの性能向上と仮想化技術の普及により、OSのマルチブート化はむしろ時代遅れになりつつあると私は考える。まだまだ発展途上ではあるがWSL (Windows Subsystem for Linux)といったツールの開発も行われているので今後どんどん不要になっていきそうだ。
ソフトウェアプロジェクトのオープンソース化が広まり、クロスプラットフォームなソフトウェアも急速に増えた。ソフトウェア開発もDockerの普及によりOSの違いで困ることは少なくなった。
LinuxをメインOSにして困るのはAdobe関連のソフトがどうしても学校や職場で必要になったときか、DirectX APIを利用してゲームを作りたいときくらいだろう。
Linuxではゲームができないじゃないか!と憤慨する人もいると思うが、Valveの取り組みやVulkan APIの普及により、数年前とは考えられないほどプレイできるゲームが増えてきた。
ProtonDBによればSteam ProtonでWindows専用ゲームを動かせるタイトルが13,000を超えた。
LinuxがPCゲーミングの主要プラットフォームの一つになるまであと一歩と言ったところまで来ているのは確かだ。あまり期待しすぎずに待っておこう。
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を別ドライブで運用出来てます。
ありがとうございます。