[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:58112] 緩募:UEFI有効にするとDebianが起動しないマシンの情報



 やまねです。

 UEFI有効にすると、Debianをインストールしても、起動しないマシンをお持ちの方、
 お手数ですが情報をお寄せいただけませんか?


 * UEFI 有効にしてあるマシンで、Debian8.5のインストーラーは起動するが、
  インストール後に起動できない、が条件。

 * その場合、Debianインストールの際に、expert modeでインストールを実施し、
 「ハードディスクへのGRUBブートローダーのインストール」で「EFIリムーバブル
  メディアパスにGRUBインストールを強行しますか?」で「はい」を選ぶと
  起動できるようになるはず

 * インストール後に管理者権限で dmidecode コマンドを実行した結果を下さい
 (マシンのシリアルナンバーとかも表示されるので、問題がありそうなところは
  隠して頂ければ)


-----------------------------------------------------------------------------
思いつくまでの経緯

* VirtualBoxでUEFI有効にするとDebian起動できなくなる、というページを見つけた
 のでバグ報告しておいた。

* どうやら、VirtualBoxのUEFI実装にはバグがあって、起動時に設定したはずの
 /boot/efi/EFI/$vendorを見に行かない様子(NVRAMあたりの問題)

* WindowsやRHEL/CentOS/Fedora/openSUSE等は/boot/efi/EFI/BOOT以下にefiファイルを
 書き込むことで、このような壊れたUEFI実装を回避して起動するようにしている。
 しかし、これはUEFIの規格には違反している(本来はリムーバブルメディアの場合
 のみに利用される)。また、この挙動はマルチブートするときに既存の
 /boot/efi/EFI/BOOT以下を上書きするので、恐らく問題となる
 (が、OSがひとつしかインストールされない、と想定してるのであれば、
  問題は隠蔽される)

* Debian/Ubuntuの場合はUEFI規格どおりに/boot/efi/EFI/BOOT以下には書き込まない
 ため、VirtualBoxでUEFIを有効にしてインストールすると、一度シャットダウンすると
 UEFIシェルに落ちる。UEFIシェルで FS0:\boot\efi\EFI\debian\grubx64.efi を
 実行すれば grub が立ち上がる

* なので「VirtualBoxを検知したら/boot/efi/EFI/BOOT以下を書き込むようにしたら」
 と提案するも「そもそもVirtualBoxのUEFIサポートはexperimental。壊れたUEFIは
 沢山あるので、一々対処してられない」と返答が。

* VirtualBoxについてはある程度納得したが、「壊れたUEFIなマシン」については
 そのマシンの情報が集まれば、検知して迂回する処理を実装できたりしないだろうか?
 と考えた←今ココ


-- 
Regards,

 Hideki Yamane     henrich @ debian.or.jp/org
 http://wiki.debian.org/HidekiYamane