Date: Mon, 19 Jan 2004 13:20:20 -0800 From: Brooks Davis <brooks@one-eyed-alien.net> To: Poul-Henning Kamp <phk@phk.freebsd.dk> Cc: current@freebsd.org Subject: Re: REVIEW: cleanvar.patch Message-ID: <20040119212006.GA8895@Odin.AC.HMC.Edu> In-Reply-To: <98643.1074545359@critter.freebsd.dk> References: <98643.1074545359@critter.freebsd.dk>
next in thread | previous in thread | raw e-mail | index | archive | help
--sm4nu43k4a2Rpi4c Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable You might want to post this to the FreeBSD-rc list (freebsd-rc@yahoogroups.com). On Mon, Jan 19, 2004 at 09:49:19PM +0100, Poul-Henning Kamp wrote: >=20 >=20 > This patch adds code which detects an read-only /var and puts > a MD(4) disk on it in that case. >=20 > This is really a move of some diskless specific code to the > more general use of read-only rootfs systems. Overall this seems like a good idea. I'm not sure cleanvar is the right place (as opposed to a new script cleanvar depends on), but this is probably as good as any. > +# Provide a function for normalizing the mounting of memory > +# filesystems. This should allow the rest of the code here to remain > +# as close as possible between 5-current and 4-stable. > +# $1 =3D size > +# $2 =3D mount point > +# $3 =3D (optional) bytes-per-inode > +mount_md() { > + if [ -n "$3" ]; then > + bpi=3D"-i $3" > + fi > + /sbin/mdmfs $bpi -s $1 -M md $2 > +} Since this would now appear in three files, maybe it should go in /etc/rc.subr. > +# Populate /var if it looks empty > +if [ -d /var/run -a -d /var/db -a -d /var/empty ] ; then > + true > +else > + /usr/sbin/mtree -deU -f /etc/mtree/BSD.var.dist -p /var > /dev/null 2>&1 You also need to create the sendmail files if sendmail is enabled: case ${sendmail_enable} in [Nn][Oo][Nn][Ee]) ;; *) /usr/sbin/mtree -deU -f /etc/mtree/BSD.sendmail.dist -p / > /dev/null ;; esac > + LOGFILES=3D`/usr/bin/awk '$1 !=3D "#" { printf "%s ", $1 } ' /etc/newsy= slog.conf` > + if [ -n "$LOGFILES" ]; then > + /usr/bin/touch $LOGFILES > + fi It's kind of lame that we have to do this when newsyslog has the -CC option. I guess we're stuck with it given we don't have /usr yet. > + /usr/bin/touch /var/log/lastlog > + > +fi -- Brooks --=20 Any statement of the form "X is the one, true Y" is FALSE. PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4 --sm4nu43k4a2Rpi4c Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQFADEoDXY6L6fI4GtQRAkLzAJ0dZZxDl5sKPUiuKlUx3cBe5/MohQCghGh0 yMzbRTGV68VQr7unBq0F+Oo= =Z0TS -----END PGP SIGNATURE----- --sm4nu43k4a2Rpi4c--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040119212006.GA8895>