From nobody Wed Sep 03 18:03:53 2025 X-Original-To: freebsd-current@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 4cH9V337c3z66pcN for ; Wed, 03 Sep 2025 18:04:11 +0000 (UTC) (envelope-from bsd-lists@bsdforge.com) Received: from udns.ultimatedns.net (udns.ultimatedns.net [24.113.41.81]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "ultimatedns.net", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cH9V26Lnnz3JFm for ; Wed, 03 Sep 2025 18:04:10 +0000 (UTC) (envelope-from bsd-lists@bsdforge.com) Authentication-Results: mx1.freebsd.org; dkim=fail ("headers rsa verify failed") header.d=ultimatedns.net header.s=mx99 header.b="s+Q9Wm/m"; spf=pass (mx1.freebsd.org: domain of bsd-lists@bsdforge.com designates 24.113.41.81 as permitted sender) smtp.mailfrom=bsd-lists@bsdforge.com Received: from ultimatedns.net (localhost [127.0.0.1]) by udns.ultimatedns.net (8.16.1/8.16.1) with ESMTP id 583I3r1M028888; Wed, 3 Sep 2025 11:03:59 -0700 (PDT) (envelope-from bsd-lists@bsdforge.com) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=ultimatedns.net; s=mx99; t=1756922640; x=1756923240; r=y; bh=t3lMpyqoP2E8qECw2A9SSjxfgiXJsYICVJWASeeQ9to=; h=Date:From:To:Cc:Subject:In-Reply-To:References; b=s+Q9Wm/m71SrJU8IBnse06E/znQrKA9JRKFwu9aTuVTB4rjEyAJvNc9hY4kSXqayx civfb6syQCXm0DIqH1b06ze/g51kiarPa+DKrUL3XmpnMPCzNFyTsgU/8ocLDarKqB 5o0wkt4v7fxePxLtzu1kDpy4YtO1Eu+qqxOyu0+u2VLBXCRMPogj4252cw6YqSWRVI 9UxZF7LI0JwJn75B8G0C2Xjw5fTf7UgI9gqFqmmnNdhyuLh86DHB6GnxrJ2CnpCt5J 1cyXezBILSGsO342EqwKZ8lovOayes6Iir3QU6w7qltr6JRAWL150CpYR5B5us0bLr T/BJZVgqCfsXw== List-Id: Discussions about the use of FreeBSD-current List-Archive: https://lists.freebsd.org/archives/freebsd-current List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-current@FreeBSD.org MIME-Version: 1.0 Date: Wed, 03 Sep 2025 11:03:53 -0700 From: Chris To: Tomoaki AOKI Cc: Graham Perrin , FreeBSD-CURRENT Subject: Re: Using a recovery partition to repair a broken installation of FreeBSD In-Reply-To: <20250901175827.73ba0ea24812cebe2263811f@dec.sakura.ne.jp> References: <7b384ac0-9b24-43a4-bf63-012d745155a7@gmail.com> <18e1a7e9-07d8-43a2-96af-0acdab6c2920@gmail.com> <20250901175827.73ba0ea24812cebe2263811f@dec.sakura.ne.jp> User-Agent: UDNSMS/17.0 Message-ID: X-Sender: bsd-lists@bsdforge.com Content-Type: multipart/mixed; boundary="=_d26fa793762c87f411a9a66144812766" X-Spamd-Bar: + X-Spamd-Result: default: False [1.00 / 15.00]; R_DKIM_REJECT(1.00)[ultimatedns.net:s=mx99]; R_SPF_ALLOW(-0.20)[+mx]; ONCE_RECEIVED(0.20)[]; MIME_UNKNOWN(0.10)[application/pgp-keys]; MIME_GOOD(-0.10)[multipart/mixed,text/plain]; ASN(0.00)[asn:11404, ipnet:24.113.0.0/16, country:US]; local_wl_ip(0.00)[24.113.41.81]; MLMMJ_DEST(0.00)[freebsd-current@freebsd.org]; DKIM_TRACE(0.00)[ultimatedns.net:-]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; FREEMAIL_CC(0.00)[gmail.com,freebsd.org]; FROM_HAS_DN(0.00)[]; HAS_ATTACHMENT(0.00)[] X-Rspamd-Pre-Result: action=no action; module=multimap; Matched map: local_wl_ip X-Rspamd-Queue-Id: 4cH9V26Lnnz3JFm --=_d26fa793762c87f411a9a66144812766 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=UTF-8; format=flowed On 2025-09-01 01:58, Tomoaki AOKI wrote: > On Mon, 1 Sep 2025 02:58:58 +0100 > Graham Perrin wrote: > >> On 17/08/2025 01:55, Graham Perrin wrote to freebsd-pkgbase: >> >> > Subject: Using pkgbasify to repair a broken installation of FreeBSD >> > 14.3-RELEASE >> >> > >> >> >> The routine is effective, to the best of my knowledge, however it's not >> particularly attractive. At least: >> >> - the condensed steps will be too long for some users >> >> - the first step assumes that the operator will have local access >>   and a USB memory stick. >> >> I love this response to the Foundation's recent Community Check-In: >> >> > … it would be nice to have something like 'recovery partition', as >> some OSes have. or at least some tiny fail-safe feature. having remote >> machine in some distant datacenter, booting from a flashstick is always >> a problem. >> >> >> >> An enhancement to bsdinstall could, before creation of the partition >> table, allow the user to specify an amount of space to be left free at >> the end of a device … > > On legacy BIOS boots, using MBR (boot0) of FreeBSD allows selecting > which base 4 partition "in the drive" to boot. > So keeping this limitation in mind, rescue partition is possible > and if there's KVM switch accessible via netowork, selections > can be done on boot (not sure about IPMI: no experience). > > Currently, both UEFI boot1.efi and loader.efi don't have something > alike "on stock". Ability to choose BE from loader is available, > but IIUC, it can do nothing when the pool itself is causing problem. > > > On the other hand, boot1.efi has patch to choose partition / pool > to boot at Bug 207940, which is not landed but I'm always using. > > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=207940 > > But unfortunately, boot1.efi is deprecated (no expiration target > defined, though) and no merge would be expected. > > > So it would be nice if loader.efi has this kind of feature. > > Implementing with lua and/or forth shouldn't be an option, > as it wouldn't work once the pool / partition loader.efi > looks into is somehow broken. > > So should be implemented as the functionality of loader.efi itself and > show its selection menu BEFORE usual boot menu by lua/forth is shown. I was thinking of bolting something onto loader when I first read this too. But to my mind, wouldn't being able to load an image file be a more versatile choice? The ability to load and boot into a minimal FreeBSD environment from say an mfs image would be fantastic. You could place it on your FreeBSD root slice or on the ESP. If on the ESP, it's as if you're already using a special "boot" partition. Apologies if I'm dragging this too far off topic. --Chris -- The internet is not a place. --=_d26fa793762c87f411a9a66144812766 Content-Transfer-Encoding: 7bit Content-Type: application/pgp-keys; name=0xE512722F.asc Content-Disposition: attachment; filename=0xE512722F.asc; size=3074 -----BEGIN PGP PUBLIC KEY BLOCK----- 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 TEM= =oj6y -----END PGP PUBLIC KEY BLOCK----- --=_d26fa793762c87f411a9a66144812766--