ターゲット:Ubuntuをインストールしようとしています。デルXPS 8900。
質問Unable to install Grub in /dev/sda
:インストールが中断されないと、Ubuntuのインストールを完了できませんExecuting 'grub-install /dev/sda failed.' This is a fatal error.
。そしてそれはboot-repair
問題を解決しません。
インストーラ:Ubuntu 22.04 LTSインストーラを含むフラッシュドライブを使用しています。以前のインストールのフラッシュドライブを試してみましたが、ブートディスクジェネレータアプリを使用して作成された別のフラッシュドライブに新しくインストールしようとしました。注:Ubuntuインストーラオペレーティングシステムを起動するために、grubコマンドにnomodesetとacpi = offを追加しました。
解決しようとする:
grubのインストールを完了するには、いくつかの方法を自分で試しました。回答アクベンツから。私は前述のことをしました。固定する失敗した後、インストーラのプロンプトを終了し、端末でコマンドを実行します。ここで grub のインストールが正常に完了しました。ただし、インストール中に初期エラーが発生したため、Ubuntuオペレーティングシステムではいくつかの問題が発生しました。私のサービスは失敗または開始されず(networkd-dispatcher.service、NetworkManager.service、fwupd-refresh.service、apparmor.service、caspermd5.services(?)を含むがこれらに限定されません)、残りは残ります。インストール(例:Install RELEASE というアプリケーションまだ私の申請書にあります)。
- 注:結果を
chroot
見て/mnt
実行することはgrub-install /dev/sda
unable to allocate pty: No such device
- 注:結果を
[ここで最高の答え](https://askubuntu.com/questions/143678/i-receive-the-error-grub-install-dev-sda-failed-while-attempting-to-install-u)はTry Ubuntuをクリックし、Install Ubuntu 24.04 LTSアプリを使用することを提案しましたが、ジェゲン効果はありませんでした。
[ここで最高の答え](https://askubuntu.com/questions/459620/unable-to-install-grub-in-dev-sda-when-installing-grub) は grub-install が間違ったデバイスにインストールされたことを示します。これは私の場合ではありません。
今は切迫してBIOSを最新のアップデートにアップデートしました。それは何もしませんでした。
インストールするアプリケーションを実行する前に grub-install を実行してみました。
- 注:実行
sudo grub-install --root-directory /mnt /dev/sda
結果は次のとおりです。grub-instal: error: failed to register the EFI boot entry: Operation not permitted.
- また、Ubuntu インストーラを実行する前に grub-install を正常に実行しても、Ubuntu インストーラがオプションなしで grub-install を実行できるため、Ubuntu インストーラが失敗し続けるのではないかと心配されます。
- 注:実行
boot-repair
NVramがロックされていると出てきます。私は見たNVRAMの消去に関する推奨事項渡すCMOSリセット。 CMOSをリセットした後も、インストール中に同じエラーメッセージが表示されます。
質問:Ubuntu 22.04 LTSインストールが "grub-install /dev/sda failed"エラーで失敗し続けるのはなぜですか?
結果boot-info
:
結果boot-repair
:
答え1
20.04LTSと22.04LTSをインストールできないのと同じ問題が発生しました。
ついに問題を解決しました。 Ubuntuインストーラが失敗した後、USBライブUbuntuで再起動し、起動リカバリを再実行しました。効果はとても良いです。
具体的には:
Nvidia 3090グラフィックカードが2枚あります。
GRUBメニューから「Install Ubuntu」を選択すると、黒い画面が表示されます。したがって、インストールのためにUSBライブUbuntuに入るには、
e
GRUBメニューの追加acpi=off
(nomodeset
または役に立たない「Secure Graphics」を選択)を押す必要があります。それからこれを見つけました。「NVMeにGRUBをインストールできません」、ブートリカバリの実行結果は「NVRAMがロックされています。」。
私のSSDに以前のインストール中に何らかの方法でロックが追加されたため、ブートリカバリは何も変更できないとします。代わりに、次のメッセージが表示されます。「NVRAMロック」。を実行すると
cd /target
すぐに入ります。再起動後に実行すると、エラーメッセージが
cd /target
表示されますnot a directory
。次に、起動リカバリを実行します。問題が解決しました。
また、AskUbuntuの投稿に基づいてGRUBを手動でインストールしてみました。ところで、私の母国語が英語ではなくて、どのドライブをどのドライブにインストールするべきかを混乱させたようです。 「デバイス/ハードウェア/ドライブ」という用語がUSBスティックを指しているのか、SSDを指しているのかは実際にはわかりません。
答え2
NVram Locked
/sys/firmware/efivars
このツールを使用すると、Linuxでefibootmgr
アクセス可能なUEFI NVRAM変数に書き込む際にいくつかの問題があるようです。
/mnt/chrootdir
以下にインストールして接続してchroot
失敗したインストールにアクセスするには、質問に対する回答のアドバイスに従った場合接続したUbuntuの質問をお願いします、両方に機能に重要な別のサブファイルシステムが含まれているため、どちらもmount --rbind
代わりに使用することをお勧めします。mount --bind
/dev
/sys
grub-install
/dev/pts
chroot環境で使用できないとエラーが発生しますunable to allocate pty: No such device
。- chroot環境で使用できない場合、
/sys/firmware/efi/efivars
UEFI NVRAM変数への書き込み試行は失敗します。これが主な問題です。
しかし、それでも役に立たない場合はお読みください。Roderick W. Smithが書いた素晴らしいウェブページです。は、他のオペレーティングシステムまたはUEFIファームウェアの実装の欠陥によって引き起こされる可能性があるいくつかの問題を説明し、解決策を提供します。
ディスクに次の内容を含むファイルがsda1
あるようです。efi/ubuntu/grub.cfg
search.fs_uuid 2D07-0F0A root hd0,gpt1
set prefix=($root)'/boot/grub'
configfile $prefix/grub.cfg
これは間違っているようです。ファイルシステムUUIDでESPパーティション()を見つけ、sda1
次のものを含むLinuxルートファイルシステムでなければならないとします。しかし、Linuxルートではなく、UEFI ESPと同様に/boot/grub
そうではありません。sda1
ファイルシステム
ファイルには次の内容を含める必要があります。
search.fs_uuid 25f0e88-f20a-4350-9df0-ee8c57ecc455 root hd0,gpt2
set prefix=($root)'/boot/grub'
configfile $prefix/grub.cfg
GRUBがで始まっても、有効な設定を見つけることができるように(または)efi/ubuntu/grub.cfg
にコピーできます。efi/BOOT/grub.cfg
sda1
efi/BOOT/BOOTx64.efi
この設定ファイルは、ESPがファイルシステムUUIDを介してgrubx64.efi
実際のUbuntuルートパーティション()を見つけ、そこから必要なGRUBモジュールをロードし、ESPから実際のGRUB設定をロードするようにします。sda2
/boot/grub/grub.cfg
sda2
UEFIフォールバック/リムーバブルメディアブートパスでも、ブートファイルセット全体を使用できるようにコピーする必要がefi/ubuntu/grubx64.efi
あるかもしれません。efi/BOOT/grubx64.efi
sda1
ブート回復出力のこの部分は、実際には次のように生成されますefibootmgr -v
。
BootCurrent: 0003
Timeout: 1 seconds
BootOrder: 0003,0004
Boot0003* UEFI: TOSHIBA TransMemory 1.00 PciRoot(0x0)/Pci(0x14,0x0)/USB(1,0)/HD(2,GPT,9240a165-d190-4ab6-8a12-46dc207b42ee,0x71e8a0,0x2130)..BO
Boot0004* UEFI: ST2000DM001-1ER164 HD(1,GPT,22c1dbaf-a26e-4408-a6f9-d1fc06b0d615,0x800,0x100000)/File(EFI\boot\bootx64.efi)..BO
これは現在USBから起動していますが、システムファームウェアが(sda1
PARTUUIDで識別されたファイルフォールバック/リムーバブルメディア起動パスを使用)から起動する準備ができていることを示します(ESPのファイルシステムなので、2c1dbaf-a26e-4408-a6f9-d1fc06b0d615
EFI/boot/bootx64.efi
vfat
しなければならない大文字と小文字は区別されませんが、一部のUEFIファームウェア実装は大文字と小文字を区別しません。したがって、ESPに対して上記の変更を加えることができれば、システムはsda1
。
UEFIモードで通常のUbuntuシステムを実行できる場合は、sudo grub-install /dev/sda
ブートローダの書き換えを再試行してUbuntuのNVRAMブート変数を自動的に書き換えることができます。または、efibootmgr
次のコマンドを使用してブート変数の問題を直接参照できます。
sudo efibootmgr -c -d /dev/sda -p 1 -l \\EFI\\ubuntu\\grubx64.efi -L Ubuntu
(このコマンドを使用するには、ファイルシステムを/dev/sda1
にマウントし、/boot/efi
ファイルefivarfs
システムをにマウントする必要があります。/sys/firmware/efi/efivars
両方の条件は、通常のUbuntuブートプロセスによって自動的に処理される必要があります。)
「NVram Locked」などのエラーが引き続き発生する場合は、UEFI実装にバグがある可能性がありますが、少なくとも代替/リムーバブルメディアパスを使用してUbuntuで起動できます。