New mergemaster option -I, failsafe install files

Doug Barton dougb at FreeBSD.org
Mon May 11 04:54:53 UTC 2009


Jeremie Le Hen wrote:
> Hi Doug,
> 
> As you may guess from my multiple emails, I'm in the process of
> upgrading my jails :-).
> 
> Since I have one jail per service, a very few number of configuration
> files are modified on each jail.  As most of user of FreeBSD I think,
> I'm used to run "mergemaster -iU" to automate the process as much as
> possible.  The problem with service jails (chapter 15.6.1 of the
> handbook) is that / is read-only mounted on all jails, /etc /var /root
> and a few other places being symlinks to /s, the private read-write
> space of each jail.  Thus when mergemaster tries to update
> /boot/devices.hints it fails and abort.

I think the way to solve this problem would be with an
MM_PRE_COMPARE_SCRIPT that deletes /boot/device.hints (and any other
relevant files) from the temproot. If they are not present in that
directory when the comparison starts then it's a non-issue.

> Therefore I've implemented a new -I option that does the same thing as
> -i except that it will proceed on failure. 

ewwww, scary. :)  Seriously though, I have very strong feelings about
not blasting through errors since I have no way of determining which
errors are/should be show stoppers, and which are merely annoying. And
even if I thought I could write code to do that, the real answer would
depend heavily on local policy in any case.


Thanks for thinking about this issue in any case,

Doug


More information about the freebsd-current mailing list