私のサーバーに新しいマザーボードをインストールしました(スーパーマイクロX9DRi-F)そしてDebian 10を新しくインストールしようとしています。ただし、GRUBをインストールしようとすると失敗します。
Unable to install GRUB in dummy
Executing 'grub-install dummy' failed.
This is a fatal error.
BIOSに入り、強制起動時にUEFIモードでインストーラ(USBドライブ)を起動したことを確認しました(「UEFI:Sandisk」が正しく表示されます)。
/var/log/syslog メッセージを切り取って貼り付けることはできませんが、デフォルトでは次のようになります。
Installing grub on 'dummy'
grub-install does not support --no-floppy
Running chroot /target grub-install --force "dummy"
Installing for x86_64-efi platform.
grub-install: warning: Cannot read EFI Boot* variables.
grub-install: warning: read_file: could not read from file: Input/output error.
grub-install: warning: vars_get_variable: read_file(...) failed: Input/output error.
検索してみると他の人もこの問題を経験しているようですが、どのように解決されたのかわかりませんね。
誰でも私を助けることができますか?
答え1
システムに grub を再インストールする際にも同じ問題が発生しました。私のソリューション(Debian Live Systemを使用):
~ # mount /dev/sdX /target
~ # mount -o rbind /dev /target/dev
~ # mount -t proc proc /target/proc
~ # mount -t sysfs sys /target/sys
~ # mount -t efivarfs efivarfs /target/sys/firmware/efi/efivars # added that line (in difference to all other manuals found on the internet..)
~ # chroot /target/
~ # grub-install
~ # update-grub
答え2
また、このエラーが発生し、別の方法で手動でgrubをインストールする必要があると思います。追加情報は次のとおりです。 GPTテーブルドライブにUEFIモードでインストールし、BTRFSをルートファイルシステムとして使用しました。
私のハードドライブはNVME Samsung 970 evoです。https://pcpartpicker.com/product/JLdxFT/samsung-970-evo-10tb-m2-2280-solid-state-drive-mz-v7e1t0baw
私のマザーボードはASUS PRIME B360M-Aです。https://pcpartpicker.com/product/WfF48d/asus-prime-b360m-a-micro-atx-lga1151-motherboard-prime-b360m-a
Linuxシステムが不足し、Rufusを使用してWindows 10システムでUSBインストールメディアを作成しました。
私はここの指示に従いました。https://wiki.debian.org/GrubEFIの再インストール
1.) efi debianをインストールします。 grubエラーが発生した場合は、ブートローダを使用してインストールしないように選択します(インストールメディアはefiモードで起動する必要があります)。
2.) 一部のブートメディアに refind を書き込んで(手順 1 と同じメディアを上書きすることができます)、efi でブートし、インストールしたばかりの Debian システムからブートします。
3.) ターミナル/シェルを開いてログインします。
4.)実際にefiモードで起動していることを確認してください。 [ -d /sys/firmware/efi ] && echo "efi, continue" || echo "No efi, restart in efi"
5.) efiパーティションが/boot/efiにマウントされていることを確認してください。 (その場合はlsblkを実行して確認してください。)
6.) sudoグラップのインストール
7.) sudo アップデート - グラップ
8.) シャットダウンし、前の手順でブートメディアを取り出し、電源を入れてハードドライブからシステムがブートしていることを確認します。
非常に簡単な修正で動作します。
PSのインストール段階でrootユーザーの作成をスキップしてsudoを使用したことに注意してください。 suルートを好む場合は、手順3から始めてください。
答え3
ありがとう、デビッド!これは基本的に答えのコピーです。初心者には、自明ではない可能性があるいくつかの詳細と欠落を追加しました。すべてがデフォルトですが、Debian 10 Buster(シングルブート)をインストールすることはできません。私はオンラインで解決策を探していましたが、あなたのソリューションだけが私に役立つほど明確でシンプルです。 /dev/sdX1 が EFI パーティションであり、/dev/sdX2 が Debian Buster がインストールされたばかりだが起動していない ext4 であるとしましょう。また、インストールが失敗した後も grub のインストールが続くと想定されます。これでライブシステムで起動し、ターミナルを開きました。
~ # sudo mkdir /target
~ # sudo mount /dev/sdX2 /target
~ # sudo mount /dev/sdX1 /target/boot/efi
~ # sudo mount -o rbind /dev /target/dev
~ # sudo mount -t proc proc /target/proc
~ # sudo mount -t sysfs sys /target/sys
~ # sudo mount -t efivarfs efivarfs /target/sys/firmware/efi/efivars
~ # sudo chroot /target/
~ # sudo rm -f /sys/firmware/efi/efivars/dump*
~ # sudo grub-install
~ # sudo update-grub
お役に立てば幸いです。応援します。