Date: Fri, 29 Sep 2023 15:49:17 +0200 From: Guido Falsi <mad@madpilot.net> To: Jason Bacon <bacon4000@gmail.com>, freebsd-hackers@freebsd.org Subject: Re: Single-user actions on reboot Message-ID: <67d9160e-c1fc-4e60-93fb-8c18afc2ac41@madpilot.net> In-Reply-To: <b70d24e3-ce25-f2fb-1f0f-9526f16173b0@gmail.com> References: <b70d24e3-ce25-f2fb-1f0f-9526f16173b0@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 29/09/23 15:21, Jason Bacon wrote: > > I'm wondering if there's a canonical way to schedule a command to run > automatically during the next boot cycle, but before going multiuser. > > This would be useful, for example, to run certain tunefs commands on /, > which can only be done in single-user mode, on remotely managed systems. > > Running things after going multiuser is easy, of course, but not > sufficient for tunefs commands that cannot be performed on a filesystem > mounted rw. > > Thanks... > AFAIK there is no ready made tool in base (or ports) for that. But ezjail uses this trick with rc scripts (removing itself): https://erdgeist.org/gitweb/ezjail/tree/examples/example/etc/rc.d/ezjail.flavour.example This is effective but requires the disk mounted r/w which maybe is not enough for you. Problem is, without any writable media mounted, how can any script register it has already ran? One idea that comes to mind is adding some hook to the main rc script, before mounting disk r/w, and a second script that removes existing hooks once disks are r/w. -- Guido Falsi <mad@madpilot.net>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?67d9160e-c1fc-4e60-93fb-8c18afc2ac41>