From nobody Sat Sep 10 22:51:07 2022 X-Original-To: freebsd-users-jp@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4MQ7Pr4LVTz4cD15 for ; Sat, 10 Sep 2022 22:51:12 +0000 (UTC) (envelope-from amogha@www1084.sakura.ne.jp) Received: from www1084.sakura.ne.jp (www1084.sakura.ne.jp [219.94.129.94]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4MQ7Pq127Lz46C2 for ; Sat, 10 Sep 2022 22:51:10 +0000 (UTC) (envelope-from amogha@www1084.sakura.ne.jp) Received: from www1084.sakura.ne.jp (localhost [127.0.0.1]) by www1084.sakura.ne.jp (8.15.2/8.15.2) with ESMTP id 28AMp89H009840; Sun, 11 Sep 2022 07:51:08 +0900 (JST) (envelope-from amogha@www1084.sakura.ne.jp) Received: (from amogha@localhost) by www1084.sakura.ne.jp (8.15.2/8.15.2/Submit) id 28AMp84p009839; Sun, 11 Sep 2022 07:51:08 +0900 (JST) (envelope-from amogha) X-Mailer: emacs 24.5.1 (via feedmail 11-beta-1 I) From: masa@amogha.jp (=?iso-2022-jp?B?GyRCNF07M0Q+PjsbKEI=?=) To: freebsd-users-jp@freebsd.org Subject: Re: loader.efi of 13.1 In-Reply-To: (masa@amogha.jp) Organization: =?iso-2022-jp?B?GyRCNF07M0Q+PjskTjtkRSo7SE1RJSIlSSVsJTkbKEI=?= Reply-To: masa@amogha.jp Date: Sun, 11 Sep 2022 07:51:07 +0900 Message-ID: List-Id: Discussion relevant to FreeBSD communities in Japan List-Archive: https://lists.freebsd.org/archives/freebsd-users-jp List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-users-jp@freebsd.org X-BeenThere: freebsd-users-jp@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=iso-2022-jp X-Rspamd-Queue-Id: 4MQ7Pq127Lz46C2 X-Spamd-Bar: - Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=none (mx1.freebsd.org: domain of amogha@www1084.sakura.ne.jp has no SPF policy when checking 219.94.129.94) smtp.mailfrom=amogha@www1084.sakura.ne.jp X-Spamd-Result: default: False [-1.39 / 15.00]; AUTH_NA(1.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.999]; NEURAL_HAM_MEDIUM(-0.59)[-0.595]; FORGED_SENDER(0.30)[masa@amogha.jp,amogha@www1084.sakura.ne.jp]; MIME_GOOD(-0.10)[text/plain]; FROM_NO_DN(0.00)[]; MLMMJ_DEST(0.00)[freebsd-users-jp@freebsd.org]; HAS_REPLYTO(0.00)[masa@amogha.jp]; R_DKIM_NA(0.00)[]; R_SPF_NA(0.00)[no SPF record]; MIME_TRACE(0.00)[0:+]; DMARC_NA(0.00)[amogha.jp]; HAS_ORG_HEADER(0.00)[]; ASN(0.00)[asn:9371, ipnet:219.94.128.0/17, country:JP]; TO_MATCH_ENVRCPT_ALL(0.00)[]; RCVD_TLS_LAST(0.00)[]; ARC_NA(0.00)[]; RCVD_COUNT_THREE(0.00)[3]; REPLYTO_DN_EQ_FROM_DN(0.00)[]; TO_DN_NONE(0.00)[]; REPLYTO_ADDR_EQ_FROM(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; FROM_NEQ_ENVFROM(0.00)[masa@amogha.jp,amogha@www1084.sakura.ne.jp] X-ThisMailContainsUnwantedMimeParts: N 丸山です。 「大袈裟な実験」のまとめです。 UEFIマシンにおいて FreeBSD13.1 の loader.efi がシステムを起動するプロセ スを見ると (A) loader.efi がデバイスから必要な情報を読み込んで「Welcome to FreeBSD」 画面を表示させる (B) その後 カーネルをロードしてカーネルに制御を渡す の2段階に分けて考えることができます。A段階で必要な情報を読み込むデバイス (以下「Aデバイス」と呼びます)とB段階でカーネル等を読み込むデバイス(以下 「Bデバイス」と呼びます)は、通常の運用では同じデバイスですが、私は意図的 に異なるデバイスとなるようにしてみて、挙動を調べてみました。その方法は、 「Welcome to FreeBSD」画面でメニューエントリの3番を選んで OK プロンプト を表示させ、 OK set currdev={Bデバイス}: boot とやる方法です。判ったことは 1. ディスクからの起動で、ディスク内に freebsd-ufs あるいは freebsd-zfs のパーティションが複数存在する場合にはパーティション番号が一番小さい freebsd-ufs, freebsd-zfs が Aデバイスとして選択される 2. loader.efi はA段階においても、B段階においても、 ufs ファイルシステム、 zfs ファイルシステムのいずれも読むことができる。(インストールメディア FreeBSD-13.1-RELEASE-amd64-dvd1.isoから起動した場合も考慮すると、 iso ファイルシステムも読めることがわかる。) 3. Bデバイスがzfsの場合、B段階においてロードされたカーネルがBデバイスを ルートシステムとしてマウントできるかどうかは、loader.efi がAデバイス から読み込んだ /boot/loader.conf の中に zfs_load="YES" があるかどうか に依存している。 以上です。 -------- 丸山 直昌 まるやま なおまさ メールアドレス: masa@amogha.jp