起こった問題
僕は自作パソコンにUbuntuを入れて使っています。
普段は20.04をインストールして使っていて、ROSをやろうと思いWebサイトを調べてみたところ、18.04を使っているものが主流だったので、20.04をインストールしているM.2 SSD(Nvme)とは別のSATA SSDにUbuntu 18.04をインストールしました。
この時、本当は20.04をインストールしていたM.2 SSDを抜いた状態で18.04を別のSSDにインストールしたかったのですが、M.2 SSDは手軽に抜き差しできないため、諦めました。
そこで20.04をインストールしたM.2 SSDを差したまま、18.04用にフォーマットしたSATA SSDを差してインストールを開始しました。この時、Live USBを使ってインストールし、インストール時にはSATA SSDをフォーマットしてインストールするオプションを選びました。そのほかはアップデートのダウンロード、ドライバの自動インストールもオンにし、それ以外はデフォルトのままだったと思います。
その後、パソコンを起動するとUbuntu 18.04とUbuntu 20.04のどちらを起動するか選択する画面が出てきて、どちらを選んでも選んだOSが正常に起動しました。
そして、20.04でも18.04と同様に正常にROSが起動することが分かったので、Ubuntu 18.04が不要になったので、SATA SSDを抜き、Ubuntu 20.04を起動しようとしたのですが、「GNU GRUB version 2.02 Minimal BASH-like ...」(一部省略)とだけ表示される画面が出てきて、Ubuntu 20.04が起動できませんでした。この画面からUbuntu 20.04を起動しようとしたのですが、うまく行きませんでした。
対処方法
調べてみるとこのような現象によく使われる対処法が、Boot Repair
というソフトを使って壊れたgrubを修正する、という方法のようです。
そこでこちらのWebサイト(https://itlogs.net/ubuntu-grub-boot-repair/ )の様にBoot Repair
をインストールし、推奨設定で、一度Ubuntu 20.04と18.04の両方のSSDを差した状態でBoot Repair
を実行しました。
その後、Ubuntu 18.04のSATA SSDを抜いた後、もう一度起動するとUbuntu 18.04のSSDはないはずなのに、Ubuntu 20.04とUbuntu 18.04を選択する画面が表示されました。
その後、Ubuntu 20.04を選択して起動し、もう一度Boot Repair
を実行したところ、再起動しても元通り、自動でUbuntu 20.04が起動する様になりました。
考えられる原因
そもそも原因としてデュアルブートが関係ない、という可能性もありますがUbuntu 18.04のSSDを抜くか挿すかで挙動が変わるので、デュアルブートしたタイミングでgrubの設定に何かしらの変化(おそらくどちらのOSを起動するか選択するための設定か何かが変更された)が起き、Ubuntu 18.04のSSDを抜いてもその変化が戻らなかったために齟齬が起きたのではないかと思います。
感想
デュアルブートは危険、と言われる理由がわかる様な気がしました。パーティションで分けているわけでもないのでお互いに干渉することはないだろうと思っていましたが、そんなことはないようです。
皆さんもデュアルブートには気をつけてください。