私は Linux Mint を実行しているラップトップを持っており、Ubuntu 17.10 を試してみることにしました。絶対に安全を期したかったので、HDD (実際には SSD ですが、問題ないはずです) を取り外し、予備の HDD (もう使用していない古いもの) と交換しました。予備のドライブに Ubuntu 17.10 をインストールし、問題なく動作していますが、移行には時間がかかるため、後で移行したいと思います。
とりあえず、古い Linux Mint に戻そうと思います。元のディスクはそのままなので、簡単にできるはずです。しかし、ディスクを戻した後、起動しないことに気付き、とても驚きました。BIOS には、次の 4 つのエントリを含むブート デバイス セレクタ メニューが表示されます。
- [ドライブのモデル番号]
- デビアン
- ウブントゥ
- リナックスミント
どれも機能しません (エラー メッセージは表示されず、同じリストに戻るだけです)。USB ディスクからライブ CD イメージを起動すると、元のディスクが正しく機能していることが確認できました。インストール プロセス中にシステム ディスクがラップトップから物理的に取り外されたのに、Ubuntu のインストールによって元のシステムが起動できなくなるのはなぜかわかりません。BIOS 設定も変更していません。
私の推測では、これは EFI/UEFI に関係していると思われますが、私はこれを常に黒魔術だと思っており、よく理解していません。BIOS ブート デバイス セレクターの OS 名は UEFI から取得されており、Ubuntu がリストされているという事実は、Ubuntu のインストールが BIOS の状態に何らかの影響を与えた可能性があることを示唆しています...?
誰かこの謎を説明してくれませんか?またどうすれば解決できるのでしょうか? よろしくお願いします!
答え1
いろいろ調べた結果、ようやく分かりました。この記事UEFI は、私が予想したとおり、何らかの状態を保存するために NVRAM を使用すると述べています。また、efibootmgr コマンドを使用してこの状態を操作できることもわかりました。
コマンドを使用するとefibootmgr -v
、ubuntuという名前のエントリがUbuntu 17.10 EFIディスクを指し、linuxmintという名前のエントリが存在しないディスクを指していることがわかりました。この記事「Linux Mint は ubuntu という名前の EFI ブート ディレクトリを使用しますが、これは明らかに Ubuntu 自体が使用するものと競合します」ということを知りました。つまり、linuxmint という名前のエントリは誤解を招くもので、Ubuntu と Linux Mint の両方が ubuntu という名前のエントリを使用し、このリストはコンピューター自体に保存されるため、インストール中に Linux Mint ブート ドライブが削除されたにもかかわらず、Ubuntu は Linux Mint のエントリを上書きしました。
解決策は、正しい EFI パーティションを参照する efibootmgr を使用して、リストに新しいエントリを追加することでした。
UEFI のこの動作はおかしいです。HDD は起動可能な OS を完全にカプセル化できるはずです。UEFI ではもうそうではありません。コンピューターの UEFI NVRAM も調整する必要があります。コンピューター間でブート ディスクを自由に交換できなくなりました。