web-dev-qa-db-ja.com

このGPTパーティションラベルにはBIOSブートパーティションが含まれていません

私はレンガのラップトップで行き止まりにいます。昨日、ファンの狂気が高まり、デスクトップが応答しなくなった後、ラップトップは正常に再起動しませんでした。 dpkgは何も修復せず、ブリックされたラップトップが提供するコマンドラインに入力しても認識されません。ディスプレイが誤作動し始めるため、セーフモードでも起動できません。

原因と思われるため、ライブメディアを実行して、ブートローダーを使用してブート方法を再インストールしようとしました。正常に実行しましたが、Linux Mintにアクセスできません。原因がわからないためです。

問題は、私がこのリンクの手順に従っていたことです askubunt /mnt/boot/efiフォルダーがないため、できません(私は以前にgrubを持っていなかったと思いますか?)

これは私のパーティションテーブルです enter image description here

enter image description here

編集:答えで提供されたすべてのコマンドを正常に実行した後、これは何も押さずにブート時にマシンを起動することなく結果です

enter image description here 以前と同じように、UEFIを介して起動すると、グリッチが発生し、dpkgなどを選択できませんでした。

enter image description here

解決策:問題の原因を見つけ、壊れたsamba共有リンクでFSTAB構成を変更しました。すべてがバックアップされています。

1
Alessio_110

「このGPTパーティションラベルにはBIOSブートパーティションが含まれていません」というメッセージは、ライブメディアをレガシーBIOSスタイルでブートした可能性があることを示唆しており、その結果、BIOSバージョンのGRUBをインストールしようとします。 _ GPTパーティションディスク。

/dev/sda2/mnt/boot/efiにマウントする必要があるEFIシステムパーティション(ESP)のようです。 ESPはディスク上に存在するため、システムが以前にネイティブUEFIの方法で起動していたことを示しています。

/dev/sda3はスワップパーティションです。

残りの3つのパーティション、sda1sda4sda5はすべてext4です。これらの1つはルートファイルシステムです。もう1つは、独立した/bootファイルシステムの場合があります。残りは何ですか?

最初に、修復しようとしているシステムで使用されていたものと同じブートスタイル(BIOSまたはUEFI)を使用して、リカバリライブメディアをブートする必要があります。デフォルトでは、GRUBインストーラーは、システムの現在の起動方法に従って、インストールするブートローダーのタイプを自動検出します。また、GRUBのUEFIバージョンをインストールするには、UEFI NVRAM変数にアクセスする必要があります。これは、システムがネイティブUEFIモードで起動されている場合にのみ使用できます。

Sudo efibootmgr -vを実行すると、現在のブートモードを確認できます。ブート設定のリストが出力された場合、システムはUEFIネイティブモードでブートされます。 「このシステムではEFI変数はサポートされていません」というエラーメッセージが表示される場合は、レガシーBIOS互換モードでシステムを起動している可能性があります。

インストールに/bootが別個のファイルシステムとして含まれていた場合、3つの手順が必要になります。

  1. ルートファイルシステムをライブメディアの/mntにマウントします。その後、/mnt/bootが(とりわけ)存在するはずです。
  2. ライブメディアの/bootファイルシステムを/mnt/bootにマウントします。その後、/mnt/boot/efiおよび/mnt/boot/grubディレクトリが存在するようになります。
  3. ライブメディアのESPを/mnt/boot/efiにマウントします。その後、UbuntuのUEFIの以前のインストールのトレースGRUBがまだ存在していると仮定すると、/mnt/boot/efi/EFI/ubuntuのようなディレクトリパスが存在するはずです。はい、ディレクトリ構造に.../efi/EFI/...があるのは正常です。また、ESPは大文字と小文字を区別しないように設計されたFAT32ファイルシステムであるため、/mnt/boot/efiの下のディレクトリとファイルの名前の大文字と小文字は異なる場合があります。

これが完了すると、残りの手順を続行できます。

for i in /dev /dev/pts /proc /sys /run; do Sudo mount -B $i /mnt$i; done
Sudo chroot /mnt
grub-install /dev/sdX
update-grub  
1
telcoM