web-dev-qa-db-ja.com

UEFIがXPS13で起動可能なシステムを見つけられない

短縮版

Dell XPS 13にUbuntu 15.10を再インストールしました(オプション:ディスクを消去してUbuntuをインストールします)が、ブート時にブート可能なシステムが見つからないというメッセージが表示されます。ブートオプションを表示し、SSD(「レガシー」)を選択すると、UEFIは起動可能ではないと言います(UbuntuはUEFIモードでインストールされます)。

どうすれば修正できますか? (再インストールはオプションです)

状況

14.04から15.10へのアップグレード

14.04がインストールされているため、ちょっとした癖があり、アップグレードしたいと思いました。 Ubuntuが最新バージョンにアップグレードするように設定を使用しただけで、機能しました。しかし、利用可能なネットワークがありませんでした。

15.10新規インストール、レガシーモード

クリーンインストール(USBスティック、Unetbootin)に行きましたが、そのとき、本当の間違いを犯したと思います:ディスクの消去とUbuntuのインストールオプションを選択します。

それ以降、起動しません。ブートメニューから手動で起動することはできましたが、Ubuntuが以前表示されていたUEFIセクションが消えていることがわかりました。

15.10新規インストール、UEFIモード

UEFIモードで再インストールしようとしましたが、うまくいきませんでした。システムがブートに使用するパーティションをスクレイピングしたのではないかと心配しましたが、いいえ、efiパーティションが存在します(Ubuntuは実際に、パーティションの変更を行う前にESPパーティションを作成すると述べました)。

レガシーモードでの起動はオプションではなくなりました(明らかに...)。

BIOS(2015年11月からDellが提供する最新バージョンに更新された)はUEFIパーティションを認識しないようです。ただし、設定を行ってBOOTオプションを追加しようとすると、Ubuntuの部分が表示されますが、追加できません。

そしていま?

それを修正する正しい方法はありますか?

9
Chop

これは、明らかに、Dell XPS 13 9343にインストールする場合のUbuntu 15+の既知のバグです。 回避策はLaunchpadに記載されています 。この回答はこのチケットにのみ基づいています(これにより問題が解決しました)。

原因

問題の原因はこのチケットで説明されています:

Dev/sda1が消去され、EFIブートパーティションが削除されます
これは置き換えられますが、Dell biosは/EFI/boot/bootx64.efiを見つけることを期待していますが、ubuntuはEFI/ubutnu/*。efiエントリを追加するだけなので、ハードドライブをまったく見つけることができません。

Workaround

回避策は次のとおりです。

Bootx64.efiを作成します

ライブCDで起動し、ターミナルを開いて、次のコマンドを入力します。

Sudo mount /dev/sda1 /tmp
cd /tmp/EFI
Sudo mkdir boot
Sudo touch boot/bootx64.efi
Sudo reboot

ブートを構成する

  1. 起動設定を開きます(Dellロゴが表示されたら、右上隅に黄色のメッセージが表示されるまでF2を押します)。
  2. Boot Sequenceを選択します。
  3. ブートオプションの追加をクリックします。
  4. 新しいウィンドウで、次を入力します。
    • 起動オプション名:Ubuntu
    • ファイル名:3つのドットをタップして、EFI/ubuntu/shimx64.efiを選択します
  5. Ubuntuエントリを確認し、UEFI:SAMSUNG SSDのチェックを外します...
  6. 適用して終了

作業システムをお楽しみください!

12
Chop

エレメンタリーOSではこれをわずかに異なる方法で修正しましたが、他のオペレーティングシステムにも適用する必要があります。

  1. 通常どおりUEFIモードでElementary OSをインストールします。
  2. 再起動して、黒い画面が表示されることを確認します。
  3. OSのインストールに使用したUSBディスクで再起動します。
  4. Grubが起動し、「基本要素を試す」オプションのプロンプトが表示されたら、cを押して、grubコマンドラインにドロップします。
  5. lsを使用して、/rootをインストールしたばかりのドライブとパーティションのうち、どれが使用可能かを判断してください。フルディスク暗号化を使用した場合、これは不可能な場合がありますが、私は/homeを暗号化します。それを見つけたら、それをgrubのルートに設定します。私にとっては、set root=(hd1,2)のように見えます。
  6. エレメンタリーOSのインストールを起動するために、エレメンタリー提供のgrub構成を使用します:conffile /boot/grub/grub.cfg。そのファイルが存在しない場合は、前の手順で間違ったドライブ/パーティションを選択した可能性があります。
  7. Elementary OSで起動するはずです。この時点で、USBスティックを取り出すことができ、正常に機能するはずです。
  8. (おそらくオプション)ルートシェルにドロップし、他の回答で言及されたファイルを作成します:Sudo touch Sudo touch /boot/bootx64.efi
  9. GRUBの更新:Sudo update-grub
  10. Dell BIOSで再起動します
  11. 起動シーケンス画面に移動します
  12. オプションを追加し、Ubuntu(またはその他)と呼びます
  13. 3つの点をタップして、efiファイルを選択します。 EFI\ubuntu\grubx.efiまたはそのようなものを選択できるはずです。もう1つの答えはshimx64.efiを選択しましたが、grubはそれを更新しないと思います。
  14. 高度なブートオプションメニューに移動します
  15. 従来のROMオプションを無効にします。何らかの理由でこれを行う必要がありますか、黒い画面が再び表示されます。
  16. 保存して、適用して、再起動して、勝ちます。

それも持続します。カーネルをまだ更新していないので、永久に動作することを確信することはできません。このため、現在は常にライブUSBを持ち歩いています。

3
Anthony Naddeo