2つのグラブインストールがお互いを破壊する

2つのグラブインストールがお互いを破壊する

にLinux Mint 19をインストールしました/dev/sda5。最近外付けドライブを接続し、/dev/sdb2ここにUbuntu 18.04 LTS()をインストールしました。その後、元のMintのインストールを開始できなくなります(外部ドライブがない場合)。黒いグラップ画面に移動してメッセージを表示します。

私の前提は、grubが外付けドライブに新しくインストールされ(自己起動することを望んでいたために期待されていた)、以前のgrubインストールが忘れられたことです。そのため、live cdとchrootメソッドを使用してgrubを修正しました。

ただし、今すぐ外付けドライブを再接続すると、BIOSブート選択でそのドライブから起動することを選択できなくなります。

私の2つのgrubインストールがある意味互換性がないようです。しかし、なぜそしてどうすれば解決するのですか?

追加情報:どちらのディスクにも grub2 がインストールされ、両方とも EFI と gpt を使用します。私はEFIパーティションなしでgrubをインストールできないので、あるEFIパーティションを開いて別のパーティションをsda開きましたsdb(そして、Ubuntuが別のシステムから自分で起動できるようにしたいので、sdaでEFIパーティションを参照したくありません)。

修正する:私の(修復された)Mint 19インストールでこのファイルが見つかりました/boot/efi/EFI/ubuntu(外部ドライブが接続されていません)。内部に他のフォルダはありません/boot/efi。 Mint 19はUbuntuに基づいており、そこに同様のディレクトリがない/boot/efi/EFIので、これが意味があるかどうかわかりません。 Ubuntuのインストールフォルダと同様に、/boot/efi/EFI/mint外付けドライブのEFIパーティションも完全に空です。/boot/efi正しいEFIパーティションを強制的に使用する方法を調べる必要があるようです。

grub2のアップデートを受け取りましたが、実行しようとしたときにエラーが発生しましたgrub-install

Installing for x86_64-efi platform.
grub-install: error: cannot find EFI directory.

しかし、システムは正常に起動します。 EFIパーティションがマウントされていません。

アップデート2/dev/sdaいいですね。最初のパーティション(通常)以外のパーティションにEFIをインストールするときに一般的な問題があるようです。ここ。外部 Ubuntu インストールの fstab には次の行があります。

# /boot/efi was on /dev/sda1 during installation
UUID=8A3D-B724  /boot/efi       vfat    umask=0077      0       1

これは、インストール時に私が選択したEFIパーティショニングオプションを無視したことを証明しました。

答え1

Ubuntu(そしておそらくMint)をインストールするときUEFIモードで、ブートローダは最初のドライブ(通常は内部ドライブ)に移動し、/dev/sdaそのドライブのEFIシステムパーティションに移動します。これは、システムが別のドライブにインストールするように指示した場合にも発生します。

2 台目のドライブを持ち運んで正常に起動するには、2 台目のドライブを取り外すときに次の操作を行う必要があります。最初のドライブの取り外し(またはプラグを抜く)インストールを開始する前。

次のリンクが役に立ちます。

USBフラッシュドライブにUbuntuをインストールする方法は? (起動ディスクジェネレータを使用せず)


最初のドライブ(通常は内部ドライブ)のブートシステムを回復するには、回復操作を開始する前に2番目のドライブの接続を切断する必要があります。


編集する:

できないなら切断/削除内蔵ドライブの回避策は次のとおりです。

  • 障害を負うUEFI/BIOS メニューの内部ドライブ

  • これバナー方法

    ㅏ。内蔵ドライブのEFIパーティションのロゴを紙に書いてください

    b。内蔵ドライブのEFIパーティションからフラグを削除します(たとえば、gpartedライブドライブから起動するときに使用されます)。

    氏。インストールの実行

    d。フラグを内部ドライブのEFIパーティションに復元します(gpartedライブドライブから起動)。

ドライブの接続を切断または削除しましたが、誰かがUEFI / BIOSメニューでドライブを無効にしていることを知っていて、フラグの修正について読んでいますが、フラグの方法についての経験はありません。

答え2

すでにこのような状況が発生していて、すべてを再インストールしたくない場合は、他のすべてのディスクを切断してください。スドゥドス彼の答えで提案したように、私は次の方法を見つけました。

まず、メインシステム自体が起動しない場合、外付けドライブを取り外し、Live CDまたはLive USBフラッシュドライブから起動します。ライブセッションにない場合は、「ブートリカバリ」ツールをインストールしてください(高度な使用の詳細とインストールここ、端末に入力して

sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair

&& boot-repairインストールが成功すると、最後の部分ですぐに実行されます。非常に自明なGUIを持っています。メインシステムの起動を修復して再起動します。

第二に、メインシステムが再起動すると、起動し、外部ドライブを接続します。EFI/ubuntu内部ドライブのEFIパーティション(この場合)の内容全体を/dev/sda1外部ドライブのEFIパーティションに2回コピーします。一度そこにEFI/ubuntu、一度そこにEFI/Boot。その後、EFI/Boot名前shimx64.efibootx64.efi

次に、外部Ubuntuルートパーティションのファイルを編集し、etc/fstab次の行を見つけます。

# /boot/efi was on /dev/sda1 during installation
UUID=8A3D-B724  /boot/efi       vfat    umask=0077      0       1

8A3D-B724プライマリシステムEFIパーティションに属するUUIDを外部EFIパーティションのUUIDに置き換えます。コマンドを使用しblkidたり、GUIアプリケーションを好む場合は、DiskまたはGpartedを使用できます。

完了したら、外付けドライブを起動できます。


また見なさい:

USBフラッシュドライブへのフルインストール、UEFIブート

関連情報