From owner-freebsd-questions@freebsd.org Sat Feb 13 08:52:59 2016 Return-Path: Delivered-To: freebsd-questions@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 388A3AA7794 for ; Sat, 13 Feb 2016 08:52:59 +0000 (UTC) (envelope-from idefix@fechner.net) Received: from anny.lostinspace.de (anny.lostinspace.de [IPv6:2a01:138:a006::2]) (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 DE52F1FC4 for ; Sat, 13 Feb 2016 08:52:58 +0000 (UTC) (envelope-from idefix@fechner.net) Received: from server.idefix.lan (aftr-185-17-205-89.dynamic.mnet-online.de [185.17.205.89]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: idefix@fechner.net) by anny.lostinspace.de (Postfix) with ESMTPSA id 823981A27D2; Sat, 13 Feb 2016 09:52:55 +0100 (CET) DMARC-Filter: OpenDMARC Filter v1.3.1 anny.lostinspace.de 823981A27D2 Authentication-Results: anny.lostinspace.de; dmarc=none header.from=fechner.net DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=fechner.net; s=default; t=1455353575; bh=9EUDzvL0b0kHIr+zos6xt/Mr9gVFghehtlvP3ss6D2E=; h=Subject:To:References:Cc:From:Date:In-Reply-To; b=pUF8VwPxQm9yKkfoZ3E3AQydJbPtTaTb/3+qtJnWtlonXAXIs7Kz3vVTZv25727if SKb201HEEW8OC3D9JvIuQpaDrNbm/uvjFSlvddim1X4/NnjYTkNOFrFYSvQvbfyI48 zBdllfA2FtSr6Gh/cAjulzhmWrGW4Yv/FnfVw5aY= Received: from [192.168.0.151] (aftr-185-17-205-89.dynamic.mnet-online.de [185.17.205.89]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by server.idefix.lan (Postfix) with ESMTPSA id D9BD4CDF08; Sat, 13 Feb 2016 09:52:54 +0100 (CET) Subject: Re: Switch from legacy to UEFI boot?? To: =?UTF-8?Q?Trond_Endrest=c3=b8l?= References: <20160203213414.GB60231@rancor.immure.com> <56B353E5.9080605@fechner.net> <56BB9BDE.6030706@fechner.net> <56BCE92B.7030600@fechner.net> Cc: freebsd-questions@freebsd.org From: Matthias Fechner X-Enigmail-Draft-Status: N1110 Message-ID: <56BEEEDE.9000201@fechner.net> Date: Sat, 13 Feb 2016 09:52:46 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Feb 2016 08:52:59 -0000 Am 12.02.2016 um 08:28 schrieb Trond Endrestøl: > The ESP contains nothing more than the boot1.efi disquised as > /EFI/BOOT/BOOTX64.EFI, i.e. the contents of the /boot/boot1.efifat > image. The bootfs property points to zroot/ROOT/default, and > everything else resides in the zpool. > > Somehow your setup is different. I will give you as many details as you need to find out why it does not work. The FreeBSD is running in an Oracle Virtualbox on windows 10 (version 5.0.14r105127). I use this version to simulate updates for my real boxes. There is a FreeBSD 10.2-RELEASE-p9 installed that is updated using freebsd-update. The zpool consists of two 20GB harddisk switch together as a mirror: pool: zroot state: ONLINE scan: resilvered 8.82G in 0h12m with 0 errors on Wed Feb 10 08:54:53 2016 config: NAME STATE READ WRITE CKSUM zroot ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 gpt/disk0 ONLINE 0 0 0 gpt/disk1 ONLINE 0 0 0 I resized the zpool to have space for the efi partition (was a little bit of snapshoting and copying around). The new layout of both disks is now: $ gpart show => 34 41942973 ada0 GPT (20G) 34 6 - free - (3.0K) 40 262144 1 efi (128M) 262184 128 2 freebsd-boot (64K) 262312 41680688 3 freebsd-zfs (20G) 41943000 7 - free - (3.5K) => 34 41942973 ada1 GPT (20G) 34 6 - free - (3.0K) 40 262144 1 efi (128M) 262184 128 2 freebsd-boot (64K) 262312 41680688 3 freebsd-zfs (20G) 41943000 7 - free - (3.5K) As you can see, I have legacy and efi partions available so I can boot uefi and legacy. As freebsd10.2 is not able to boot efi I copied the boot1.efi/loader.efi and GNUSparseFile/boot1.efifat (using dd) to the efi partition. The efi partition was filled with: newfs_msdos ada0p1 mount -t msdosfs /dev/ada0p1 /mnt mkdir -p /mnt/efi/boot/ cp boot1.efi /mnt/efi/boot/BOOTx64.efi mkdir -p /mnt/boot cat > /mnt/boot/loader.rc << EOF unload set currdev=zfs:zroot/ROOT/default: load boot/kernel/kernel load boot/kernel/zfs.ko autoboot EOF (cd /mnt && find .) . ./efi ./efi/boot ./efi/boot/BOOTx64.efi ./boot ./boot/loader.rc umount /mnt The same steps are performed on the second disk (but this should make for these test not a difference I think). I tested boot1.efi/loader.efi and the efifat with dd from 10.3-beta1 and 11, but was only able to boot with the loader.rc in place. The moment I removed the loader.rc the systems stops on boot prompt and I have to type the lines from the loader.rc manually to boot the system. The bootfs flag is defined: $ zpool get bootfs NAME PROPERTY VALUE SOURCE zroot bootfs zroot/ROOT/default local $ zfs list NAME USED AVAIL REFER MOUNTPOINT zroot 12.9G 6.19G 19K none zroot/ROOT 433M 6.19G 19K none zroot/ROOT/default 433M 6.19G 433M none zroot/swap 4.13G 10.3G 8K - zroot/tmp 74.5K 6.19G 74.5K /tmp zroot/usr 5.68G 6.19G 3.42G /usr zroot/usr/home 11.2M 6.19G 11.2M /usr/home zroot/usr/local 895M 6.19G 895M /usr/local zroot/usr/ports 525M 6.19G 280M /usr/ports zroot/usr/ports/distfiles 242M 6.19G 242M /usr/ports/distfiles zroot/usr/ports/packages 2.76M 6.19G 2.76M /usr/ports/packages zroot/usr/src 880M 6.19G 880M /usr/src zroot/var 2.72G 6.19G 1.18G /var zroot/var/crash 19K 6.19G 19K /var/crash zroot/var/db 1.54G 6.19G 1.50G /var/db zroot/var/db/pkg 38.8M 6.19G 38.8M /var/db/pkg zroot/var/empty 19K 6.19G 19K /var/empty zroot/var/log 243K 6.19G 243K /var/log zroot/var/mail 23K 6.19G 23K /var/mail zroot/var/run 30K 6.19G 30K /var/run zroot/var/tmp 171K 6.19G 171K /var/tmp > $ zfs get mountpoint > NAME PROPERTY VALUE SOURCE > zroot mountpoint none received > zroot/ROOT mountpoint none inherited from zroot > zroot/ROOT/default mountpoint none inherited from zroot > zroot/swap mountpoint - - > zroot/tmp mountpoint /tmp received > zroot/usr mountpoint /usr received > zroot/usr/home mountpoint /usr/home inherited from zroot/usr > zroot/usr/local mountpoint /usr/local inherited from zroot/usr > zroot/usr/ports mountpoint /usr/ports inherited from zroot/usr > zroot/usr/ports/distfiles mountpoint /usr/ports/distfiles inherited from zroot/usr > zroot/usr/ports/packages mountpoint /usr/ports/packages inherited from zroot/usr > zroot/usr/src mountpoint /usr/src inherited from zroot/usr > zroot/var mountpoint /var received > zroot/var/crash mountpoint /var/crash inherited from zroot/var > zroot/var/db mountpoint /var/db inherited from zroot/var > zroot/var/db/pkg mountpoint /var/db/pkg inherited from zroot/var > zroot/var/empty mountpoint /var/empty inherited from zroot/var > zroot/var/log mountpoint /var/log inherited from zroot/var > zroot/var/mail mountpoint /var/mail inherited from zroot/var > zroot/var/run mountpoint /var/run inherited from zroot/var > zroot/var/tmp mountpoint /var/tmp inherited from zroot/var The boot environments are managed using beadm: $ beadm list BE Active Mountpoint Space Created default NR / 433.0M 2016-02-10 08:10 I hope the post is not to long ;) Gruß Matthias -- "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning." -- Rich Cook