From nobody Wed Aug 31 07:36:34 2022 X-Original-To: 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 4MHbbG5xyDz4bTnw for ; Wed, 31 Aug 2022 07:36:42 +0000 (UTC) (envelope-from nao@enuenu.org) Received: from mail-pf1-x436.google.com (mail-pf1-x436.google.com [IPv6:2607:f8b0:4864:20::436]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4MHbbD5qkLz3lQB for ; Wed, 31 Aug 2022 07:36:40 +0000 (UTC) (envelope-from nao@enuenu.org) Received: by mail-pf1-x436.google.com with SMTP id 145so13274981pfw.4 for ; Wed, 31 Aug 2022 00:36:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enuenu.org; s=enuenu; h=content-transfer-encoding:in-reply-to:from:references:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc; bh=qAzWm3/RBljHON/wWZlJVW8SG6vmwglxUhDiF9SfngA=; b=b5bdpQorSsXAHltUB2b2nt1g5vRnz5jvsI1XOVzhfiWSY2O8AMG30jD/FdlIWJmAfN Kw2RzOa6+Qv+r7t2zML3XHorWwyqU15nfeNVcDKTsQn8kI6pTo7B4qVGcJILeb7tbH37 35y9Md/R9fJZz0QCyAdZgt35xuz2oGnzZtccR3CDxeok5ymbIixgyaprZoepG+kamAfL 0/bdsTneTvHqUHEC3KA8LiIDGeXy0stRd468bC9Ulb8v5F3itakEZm0W/hr8udsaiyr6 npNGDcBvkhRAsSU+BeVuxNAvHWpRDJtFKU7pB1R7ElGSUH6Z9S3gh156TyOYLlo5+7t0 eYpA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc; bh=qAzWm3/RBljHON/wWZlJVW8SG6vmwglxUhDiF9SfngA=; b=sTAR1wC7YS/+DtAy2FNFAQk9zHLgoNAAPZFAqUv+auv6BAxUn0dpTPyUC04KqTXqLV AeSVvCNaTMREKE883kl6uY7hmX2KAA3GJhCE48y5YixzjpB+3z15q/pRUaNH5qbvoKBe 9bmMlpjNDcnRSZ/QusB0dpy0jK8/NOkXcgJ5DNiJ8KY4GvC8UsnY5CHkjaJpSPOEMqdP RgUybFqJe8k6b1r67dENDkiyjoHBICN2qTxIhnFOm7r8FqRrlU/LNW9vuNZCKWmRq9ie 41tvrnGvtWV+trsBTIjAY5Ip28IifHs5saSOSPyoBkt1Uv6FDE3rstMa86nQMrBd1Cxi /xvg== X-Gm-Message-State: ACgBeo1mH+sVxhn3BBCjtBljNEdw8alEo3j2YE+bMB4jIFN41M7jrGpB Chb6z/iqCN98fu8CVZGben9CZvV9tXZx0w== X-Google-Smtp-Source: AA6agR4DEhpYfqo5tt4UiRmHZq1VmgU5ZcKWvT1+ajGWSn2DWJlT8I/DJvpwWQkRcpZNvEqFhHNzQg== X-Received: by 2002:a05:6a00:1996:b0:52e:b0f7:8c83 with SMTP id d22-20020a056a00199600b0052eb0f78c83mr25152499pfl.59.1661931398627; Wed, 31 Aug 2022 00:36:38 -0700 (PDT) Received: from ?IPV6:240b:10:ac00:4df1:3c15:277f:1221:bfe4? ([240b:10:ac00:4df1:3c15:277f:1221:bfe4]) by smtp.gmail.com with ESMTPSA id q11-20020a170903204b00b001708b189c4asm10858947pla.137.2022.08.31.00.36.37 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 31 Aug 2022 00:36:38 -0700 (PDT) Message-ID: <65d8c2c2-e6b6-7aba-0dfb-8577160c7e39@enuenu.org> Date: Wed, 31 Aug 2022 16:36:34 +0900 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 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Firefox/91.0 Thunderbird/91.13.0 Subject: Re: loader.efi of 13.1 Content-Language: en-US To: users-jp@freebsd.org References: From: Naomichi Nonaka In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 4MHbbD5qkLz3lQB X-Spamd-Bar: --- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=enuenu.org header.s=enuenu header.b=b5bdpQor; dmarc=none; spf=pass (mx1.freebsd.org: domain of nao@enuenu.org designates 2607:f8b0:4864:20::436 as permitted sender) smtp.mailfrom=nao@enuenu.org X-Spamd-Result: default: False [-3.50 / 15.00]; NEURAL_HAM_SHORT(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-0.996]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; R_DKIM_ALLOW(-0.20)[enuenu.org:s=enuenu]; MIME_GOOD(-0.10)[text/plain]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::436:from]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+]; MLMMJ_DEST(0.00)[users-jp@freebsd.org]; FROM_EQ_ENVFROM(0.00)[]; DKIM_TRACE(0.00)[enuenu.org:+]; DMARC_NA(0.00)[enuenu.org]; RCVD_VIA_SMTP_AUTH(0.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; FROM_HAS_DN(0.00)[]; ARC_NA(0.00)[]; RCVD_COUNT_THREE(0.00)[3]; TO_MATCH_ENVRCPT_ALL(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[users-jp@freebsd.org]; TO_DN_NONE(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; MID_RHS_MATCH_FROM(0.00)[] X-ThisMailContainsUnwantedMimeParts: N 野中です。 13.Xまでのbootの手順は EFIファーム->EFIパーティションのboot1.efi ->FreeBSDパーティションの/boot/loader.efi ->FreeBSDパーティションのkernel という順番で実行され、loader.luaはboot1.efiがloader.efiに渡します。 なので > /boot/loader.efi を ada0 の efi パーティションの > EFI/Boot/bootx64.efi にコピー ではなく、 > /boot/boot1.efi を ada0 の efi パーティションの > EFI/Boot/bootx64.efi にコピー が正しいです。 boot1.efiは将来的に廃止予定とされていますが、13.Xではまだ現役です。 On 2022/08/31 14:39, 丸山直昌 wrote: > 丸山@年金生活者 です。 > > そろそろ古い FreeBSDを卒業して、13.1あたりに移住しようと思い、インストー > ルを試してみたのですが、loader.efi の使い方で躓いていて、思うようなレ > イアウトで内臓ディスクにインストールできずにいます。私が直面している状 > 況を誰にでも実験可能な形で説明するために、次のような「練習問題」を考え > てみます。 > > FreeBSD 13.1 の loader.efi の使い方の練習問題 > 既にどこかにインストールしてある13.1のパーティション(amd, zfs on > UEFIマシン)を別のディスクにコピーして boot可能にするにはどうしたら良 > いか。 > > 具体的には以下のような手順でやってみました。 > > 1. FreeBSD-13.1-RELEASE-amd64-dvd1.iso をdd でコピーした外付け USB ディ > スク(/dev/da0、つまりは「イントールメディア」)で起動し、中身が空の > USB ディスク(/dev/da1)に FreeBSD13.1amdを zfs でインストールする。 > これは簡単で、 > > # gpart show da1 > => 40 78140080 da1 GPT (37G) > 40 532480 1 efi (260M) > 532520 1024 2 freebsd-boot (512K) > 533544 984 - free - (492K) > 534528 4194304 3 freebsd-swap (2.0G) > 4728832 73410560 4 freebsd-zfs (35G) > 78139392 728 - free - (364K) > > のようになる。この USB ディスクを以下「インストール済みディスク」と呼 > ぶことにします。 > > 2. インストール済みディスクのみを外付けデバイスとして接続してパソコン > を起動すると、勿論起動する。/dev/da0 となる。 > > 3. 内臓ディスク(ada0, gptスキーム)の空きパーティション(私の場合 > ada0p13)を type freebsd-zfs にして、そこにda0p4のzrootをコピーする。 > > zpool create NEWPOOLNAME ada0p13 > zfs send -R zroot@SNAPSHOT | zfs recv -F NEWPOOLNAME > > 4. (ada0からのbootの準備) > zpool set bootfs=NEWPOOLNAME/ROOT/default NEWPOOLNAME > (安全のため) ada0 の efi パーティション(私の場合 ada0p4)の > EFI/Boot/bootx64.efi を退避 > /boot/loader.efi を ada0 の efi パーティションの > EFI/Boot/bootx64.efi にコピー > zpool export NEWPOOLNAME > halt -p > > 以上の準備の元、すべての外付けデバイスを外して、内臓ディスクから起動してみます。 > > Consoles: EFI console > Reading loader vars from /efi/freebsd/loadef.env > Setting currdev disk0p4: > FreeBSD/amd64 EFI loader, Revision 1.1 > > Command line arguments: > Image base: 0xd0998000 > EFI version: 2.31 > > 等と表示されます。続いてさらに画面半分ほどのメッセージが表示された後、 > > ERROR: cannot open /boot/lua/loader.lua: no such file or directory. > > Type '?' for a list of commands,'help' for more detailed help. > OK > > となって止まります。ここで > > OK lsdev > > とやると ada0p12(古い FreeBSDで作った zfs) と ada0p13(今回作った > FreeBSD13.1の zfs) にある zfs のプール名は zfs devices として正しく表 > 示されます。ここで Google 検索で見つけた > > https://www.ish.org/blog/?p=968 > > を手がかりに以下のようにしてみました。 > > OK set currdev=zfs:NEWPOOLNAME/ROOT/default: > OK unload > OK boot > > すると、何やら起動作業と思われる動作が進行し、画面には色々表示されるの > ですが、 > > mountroot> > > で止まってしまいます。不思議なことに、 mountroot> プロンプトの少し前に > 以下のように表示されているのに mount できていません。 > > Loader variables: > vfs.root.mountfrom=zfs:NEWPOOLNAME/default > > ここの最後にコロン(:)が無いのも不思議です。仕方ないので > > mountroot> zfs:NEWPOOLNAME/ROOT/default: > > とやってみますが、うまくゆきません。お手上げです。 > > なお、上の OK プロンプトのところで上記 ish.org のブログに書いてある > > free-module-options > や > start > > は unknown commandとなるので、 12.x と 13.1 では loader.efi の仕様が違っ > ているようです。 > > どなたかお助けください。 > > -------- > 丸山 直昌 まるやま なおまさ > メールアドレス: masa@amogha.jp >