[FreeBSD-users-jp 95589] Re: Windows 8.x と PCBSDのマルチブート(geom と boot code)

Shin-ya Murakami murashin @ gfd-dennou.org
2015年 8月 11日 (火) 01:59:27 UTC


丸山様、

村上真也です。

> そうかな?/boot/boot1.efi を使った実験は日曜にもやった上で昨日の記事を書
> いたはずなのですが、実際もう一度実験してみてもうまくゆきません。

そうですか。見当違いだったようで、すみません。

> す。書き忘れていたようにも思いますが、私のマシンで「うまくゆかない」とい
> うのは、そもそも Boot Menu に FreeBSD とか PCBSD という項目が出ないので
> す。項目ができて、それを選択すると boot に fail する、ではないのです。

なるほど、昨日のメールを書いたときには、ブートできないことかと
思っていました。

私の環境ではBIOS時代のような、いわゆるブートメニューは出ません。
起動時にF2を押してファームウェア設定画面を表示し、明示的に
Windows Boot Managerを選択しないとWindowsは起動しません。
デフォルトではFreeBSDが起動するようになっており、それは
ファームウェア設定画面の「UEFI優先度」という項目で制御されているようです。

> 大変恐縮ですが、うまくできているマシンのブート構成データを教えていただけ
> ませんか?私のマシンのそれと比較したいのです。と言っても、ブート構成デー
> タを Windows8.1でどうやって表示したら良いのか、 bcdedit 初心者の私にはわ
> からないのですが、例えば
>
> bcdedit /enum firmware
> 
> の出力。あと、たった先ほど見つけたのですが、

以下のようになっています。

C:\WINDOWS\system32>bcdedit /enum firmware

ファームウェアのブート マネージャー
--------------------------------
identifier              {fwbootmgr}
displayorder            {a02e5f5b-0349-11e5-825e-34028644db8e}
                        {bootmgr}
                        {0a92286e-0349-11e5-9565-e5aaa8d01168}
                        {08105956-0349-11e5-9565-e5aaa8d01168}
                        {08105957-0349-11e5-9565-e5aaa8d01168}
timeout                 1

Windows ブート マネージャー
--------------------------------
identifier              {0a92286e-0349-11e5-9565-e5aaa8d01168}
device                  partition=\Device\HarddiskVolume2
path                    \EFI\Microsoft\Boot\bootmgfw.efi
description             Recovery Partition
locale                  ja-JP
inherit                 {globalsettings}
default                 {0a2681de-0349-11e5-9565-e5aaa8d01168}
resumeobject            {0810595a-0349-11e5-9565-e5aaa8d01168}
displayorder            {0a2681de-0349-11e5-9565-e5aaa8d01168}
toolsdisplayorder       {memdiag}
timeout                 30

Windows ブート マネージャー
--------------------------------
identifier              {bootmgr}
device                  partition=\Device\HarddiskVolume2
path                    \EFI\Microsoft\Boot\bootmgfw.efi
description             Windows Boot Manager
locale                  ja-JP
inherit                 {globalsettings}
default                 {current}
resumeobject            {a02e5f5d-0349-11e5-825e-34028644db8e}
displayorder            {current}
toolsdisplayorder       {memdiag}
timeout                 30

Windows ブート マネージャー
--------------------------------
identifier              {a02e5f5b-0349-11e5-825e-34028644db8e}
device                  partition=\Device\HarddiskVolume2
path                    \EFI\FreeBSD\boot1.efi
description             FreeBSD
locale                  ja-JP
inherit                 {globalsettings}
integrityservices       Enable
resumeobject            {0810595a-0349-11e5-9565-e5aaa8d01168}
toolsdisplayorder       {memdiag}
timeout                 30

ファームウェア アプリケーション (101fffff
--------------------------------
identifier              {08105956-0349-11e5-9565-e5aaa8d01168}
description             UEFI: IP6 Intel(R) Ethernet Connection (3) I218-LM

ファームウェア アプリケーション (101fffff
--------------------------------
identifier              {08105957-0349-11e5-9565-e5aaa8d01168}
description             UEFI: IP4 Intel(R) Ethernet Connection (3) I218-LM


> bcdedit /? TYPES BOOTMGR
> 
> とやると、最後の方に
> 
> 表示
> ======
>   DISPLAYBOOTMENU (bool)  ブート メニューの表示を有効にします。
>   DISPLAYORDER (list)     ブート マネージャーの表示順序の一覧を定義し
>   ます。
>   TOOLSDISPLAYORDER (list)    ブート マネージャーのツール表示順序の一覧を定義
>                               します。
> 
> という説明が出ます。ということは、多分ブート構成データの中には「ブート
> メニューの表示を有効/無効」という情報があるのだと思います。これをどうやっ

適当にググって
bcdedit.exe /set {bootmgr} DisplayBootMenu True
とやってみました。

bcdedit.exe /enum firmwareの出力の
  Windows ブート マネージャー
  --------------------------------
  identifier              {bootmgr}
の最後に
  displaybootmenu Yes
というのが付きました。

しかし、F2を押さずに放っておいて起動しても、
F2を押してWindows Boot Managerを選択して起動しても、
ブートメニューは現れませんでした。

From: maruyama @ ism.ac.jp (丸山直昌)
Date: Tue, 11 Aug 2015 03:30:53 +0900

> 村上 様
> 
> 統計数理研究所の丸山です。早速のお返事、有難うございます。
> 
> Mon, 10 Aug 2015 14:09:06 +0900 (JST)
> Shin-ya Murakami <murashin @ gfd-dennou.org> writes:
> 
>>私はLet's Note SX4にWindowsを残したままFreeBSDをインストールしました。
>>その記録は http://d.hatena.ne.jp/msll/20150527/1432708323 にあります。
> 
> みました。参考になります。snapshots には UEFIブート可能なインストーラー
> があるのですね。PCBSDには今のところありません。 feature request を
> https://bugs.pcbsd.org/projects/pcbsd/ に出すことにします。
> 
> また、
> 
> 高速スタートアップ解除
> 復元の無効化
> 
> の2つが関係がありそうだと思ってやってみました。でも駄目でした。
> 
>># UEFI関係の手順はtakawataさんのと同じです
> 
> そうですか。
> 
>>> ここは /boot/boot1.efi ってものが最近の distribution にはあるので、自分
>>> でコンパイルする必要はないし、また上記の手順で PCBSDをインストールした場
>>> 合には /boot/efi/EFI/Boot/bootx64.efi があるので、これをこのまま使うべき
>>> と判断しました。
>>
>>この判断が疑わしいのではないかと思いました。
> 
> そうかな?/boot/boot1.efi を使った実験は日曜にもやった上で昨日の記事を書
> いたはずなのですが、実際もう一度実験してみてもうまくゆきません。
> 
> もし /boot/efi/EFI/Boot/bootx64.efi に問題があるなら、そんな役に立たない
> ものを /dev/ada0p2 の中に作ってしまうのは、PCBSDインストラーのバグと言う
> べきでしょう。ですが、 /boot/boot1.efi を使ってもうまくゆかないので、別
> の理由と考えざるを得ません。
> 
> 大変恐縮ですが、うまくできているマシンのブート構成データを教えていただけ
> ませんか?私のマシンのそれと比較したいのです。と言っても、ブート構成デー
> タを Windows8.1でどうやって表示したら良いのか、 bcdedit 初心者の私にはわ
> からないのですが、例えば
> 
> bcdedit /enum firmware
> 
> の出力。あと、たった先ほど見つけたのですが、
> 
> bcdedit /? TYPES BOOTMGR
> 
> とやると、最後の方に
> 
> 表示
> ======
>   DISPLAYBOOTMENU (bool)  ブート メニューの表示を有効にします。
>   DISPLAYORDER (list)     ブート マネージャーの表示順序の一覧を定義し
>   ます。
>   TOOLSDISPLAYORDER (list)    ブート マネージャーのツール表示順序の一覧を定義
>                               します。
> 
> という説明が出ます。ということは、多分ブート構成データの中には「ブート
> メニューの表示を有効/無効」という情報があるのだと思います。これをどうやっ
> て確認したら良いのかわからないのですが、何らかの理由でお持ちのマシンと私
> マシンではこの設定が違っている、というような事があるのではないかと思いま
> す。書き忘れていたようにも思いますが、私のマシンで「うまくゆかない」とい
> うのは、そもそも Boot Menu に FreeBSD とか PCBSD という項目が出ないので
> す。項目ができて、それを選択すると boot に fail する、ではないのです。
> 
>>FreeBSDのboot1.efiは別途インストールする必要があるのではないか?
>>というのが私の意見です。
> 
> あり得ません。 /usr/src/sys/boot/amd64/boot1.efi で make -n install をや
> ると
> 
> install -o root  -g wheel -m 555  boot1.efi  /boot/boot1.efi
> install -o root -g wheel  -m 444 boot1.efifat /boot
> 
> と表示されます。release についている /boot/boot1.efi を信用しない理由は
> どこにもありません。
> 
> --------
> 丸山直昌@統計数理研究所
----
Shin-ya Murakami
email: murashin @ gfd-dennou.org
WWW: http://www.gfd-dennou.org/member/murashin/


freebsd-users-jp メーリングリストの案内