Xubuntu 14.04でプレインストールされたWindows 7を交換しようとしたため、ラップトップ(HP ProBook 450 G2)で起動の問題があります。 BIOSはUEFIブートモードを使用します(ただし、「レガシー」ブートモードを試しても改善はありません)。
どんな方法を試しても、ルートパーティションへの道を自動的に見つけることはできません。それはただ言う:
「BootDeviceが見つかりませんハードディスクにオペレーティングシステムをインストールしてください。ハードディスク F0)」...
ただし、私のXubuntuルートは正しくインストールされます。なぜなら、(ブート時に)毎回BIOSブートオプションを介して正しくナビゲートすれば、ブートできるからです。
「Boot from EFI File」を選択してから、
「Acpi(PNP0A03,0)/ Pci(1F | 2)/ Sata(Port 0)/ HD(Part1、Sig81D20AD3-C00E-47C2-ACEC-BC1F51」
、次に"EFI"
、"ubuntu"
、および"grubx64.efi"
の順に進み、grubに到達し、最終的にXubuntuの起動に成功します。 shimxを選択すると、xubuntuルートパーティションで起動することになります。ただし、上記のメッセージが表示されて、再起動して自動的に失敗します。
"secure boot"
オプションを無効にする必要があると聞きましたが、そのようです。
私のパーティションは次のように構成されています:
/ dev/sda1 fat32 121MBブート
/ dev/sda2 ext4 465GBルート
/ dev/sda3 linux-swap 7MB
ブート修復ユーティリティでgrubを再インストールしようとしましたが、何も変わりませんでした。
ところで、ここにboot-repairからのブート情報の要約があります:---(http://paste.ubuntu.com/9595800/
ブート修復は常に"Please do not forget to make your BIOS boot on sda1/EFI/ubuntu/shimx64.efi file!"
と言ってしまいますが、それをブートするために他に何をすべきかわかりません。
MBRが破損している可能性があるため、次のddコマンドで消去しました。
dd if =/dev/zero of =/dev/sda bs = 446 count = 1
そして、boot-repairで再度ブートを修復しようとしましたが、それでも同じ結果になりました...
EFIファイルを変更し、新しいブートエントリも作成しようとしましたが、役に立ちませんでした。その後、efibootmgrのステータスは次のとおりです。
~$ Sudo efibootmgr -v
BootCurrent: 0000
Timeout: 0 seconds
BootOrder: 0000
Boot0000* Notebook Hard Drive BIOS(2,0,00).......................................................................
Boot0001* Notebook Hard Drive BIOS(2,0,00).......................................................................
それで、EFIファイルに新しいブートエントリを作成しようとしました。
~$ Sudo efibootmgr -v -c -w -L ubuntu_14_04 -l \EFI\ubuntu\shimx64.efi
BootCurrent: 0000
Timeout: 0 seconds
BootOrder: 0002,0000
Boot0000* Notebook Hard Drive BIOS(2,0,00).......................................................................
Boot0001* Notebook Hard Drive BIOS(2,0,00).......................................................................
Boot0002* ubuntu_14_04 HD(1,800,100000,81d20ad3-c00e-47c2-acec-bc1f51dd12d1)File(EFIubuntushimx64.efi)
...作成したばかりの新しいエントリで起動するように、起動順序を変更します。
~$ Sudo efibootmgr -v -o 2,1,0
BootCurrent: 0000
Timeout: 0 seconds
BootOrder: 0002,0001,0000
Boot0000* Notebook Hard Drive BIOS(2,0,00).......................................................................
Boot0001* Notebook Hard Drive BIOS(2,0,00).......................................................................
Boot0002* ubuntu_14_04 HD(1,800,100000,81d20ad3-c00e-47c2-acec-bc1f51dd12d1)File(EFIubuntushimx64.efi)
しかし、再起動後(もちろん、EFIブートオプションをナビゲートして動作させる):
~$ Sudo efibootmgr -v
BootCurrent: 0000
Timeout: 0 seconds
BootOrder: 0000
Boot0000* Notebook Hard Drive BIOS(2,0,00).......................................................................
Boot0001* Notebook Hard Drive BIOS(2,0,00).......................................................................
Boot0002* ubuntu_14_04 HD(1,800,100000,81d20ad3-c00e-47c2-acec-bc1f51dd12d1)File(EFIubuntushimx64.efi)
設定した順序を失ったかのようです。
何かアイデアはありますか?
これは私のために働いた HP UEFIはUbuntuを自動的に起動しません 。
Biosにcustomboot値(EFI\ubuntu\grubx64.efi)を追加すると、ubuntuが自動的に起動します。
Bootloaderに起動エントリを追加せずにUbuntuを起動するのは困難です。ただし、Ubuntuを手動で起動できるため、別のブートローダーであるrEFIndを使用できます。 UbuntuにrEFIndをインストールする方法:
Sudo apt-add-repository ppa:rodsmith/refind
Sudo apt-get update
Sudo apt-get install refind
詳細はこちら: http://www.rodsbooks.com/refind/
Ttyまたは端末でこれを入力しようとしましたか?
Sudo apt-get purge -y --force-yes shim-signed-efi grub* shime-signed-generic
Sudo apt-get install -y --force-yes shim-signed-efi shim-signed-AMD64 shim-signed-generic
そして、ttyまたは端末にもこれを入力します:
Sudo apt-get update
Sudo apt-get upgrade
この方法でうまくいくかもしれません。
コマンドを少し間違えました:
Sudo efibootmgr -v -c -w -L ubuntu_14_04 -l \EFI\ubuntu\shimx64.efi
スラッシュはbashのメタキャラクターであるため、渡される実際の値はEFIubuntushimx64.efiです。
パスを引用符で囲むか、二重スラッシュを使用する必要があります。次のように機能しました:
Sudo efibootmgr -c -l "\EFI\ubuntu\shimx64.efi"