Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 Oct 2013 09:59:51 +0200
From:      Nick Hibma <nick@van-laarhoven.org>
To:        Colin Percival <cperciva@freebsd.org>
Cc:        FreeBSD current <freebsd-current@freebsd.org>, freebsd-rc@freebsd.org
Subject:   Re: RFC: support for "first boot" rc.d scripts
Message-ID:  <41F1219E-4DCC-4B04-A1DC-40038809556B@van-laarhoven.org>
In-Reply-To: <525B258F.3030403@freebsd.org>
References:  <525B258F.3030403@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Colin,

Sounds useful: We have nanobsd images that configure a hard disk if =
present, but obviously only need to be run once.

However: NanoBSD stores uses a memory disk for /etc and stores it's =
permanent scripts in /conf/* (/etc/rc.initdiskless) and/or /cfg =
(NanoBSD) so I doubt whether the 'embedded systems' argument is of much =
use, as deleting the script or flagging 'firstboot' is non-permanent.

Nick Hibma
nick@van-laarhoven.org

Want to feel like going on a holiday tomorrow? Try GTD.

On 14 Oct 2013, at 00:58, Colin Percival <cperciva@freebsd.org> wrote:

> Hi all,
>=20
> I've attached a very simple patch which makes /etc/rc:
>=20
> 1. Skip any rc.d scripts with the "firstboot" keyword if =
/var/db/firstboot
> does not exist,
>=20
> 2. If /var/db/firstboot and /var/db/firstboot-reboot exist after =
running rc.d
> scripts, reboot.
>=20
> 3. Delete /var/db/firstboot (and firstboot-reboot) after the first =
boot.
>=20
> The purpose of this is to support "run on first boot" rc.d scripts.  =
These can
> be useful for both virtual machines and embedded systems; unlike =
conventional
> desktops and servers, these may have a lengthy gap between =
"installing" and
> "turning on" the system.
>=20
> As examples of what such scripts could do:
>=20
> * In Amazon EC2, I use a "first boot" script to download an SSH public =
key
> from EC2 so that users can log in to newly provisioned EC2 instances.
>=20
> * Now that (starting from 10.0-BETA1) it is possible to use FreeBSD =
Update
> to update everything on EC2 instances, I'm planning on writing a =
script which
> runs 'freebsd-update fetch install' when the system first boots, and =
then
> reboots if there were updates installed.  (I imagine this would be =
useful
> to other embedded / VM providers too.)
>=20
> * Once packages are provided (properly) for 10.0 I'd like to allow =
people to
> specify a list of packages they want installed onto an EC2 instance =
and have
> them downloaded and installed when the EC2 instance launches.
>=20
> I'd like to get this into HEAD in the near future in the hope that I =
can
> convince re@ that this is a simple enough (and safe enough) change to =
merge
> before 10.0-RELEASE.
>=20
> Comments?
>=20
> --=20
> Colin Percival
> Security Officer Emeritus, FreeBSD | The power to serve
> Founder, Tarsnap | www.tarsnap.com | Online backups for the truly =
paranoid
> <firstboot.patch>_______________________________________________
> freebsd-current@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to =
"freebsd-current-unsubscribe@freebsd.org"




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?41F1219E-4DCC-4B04-A1DC-40038809556B>