cvs commit: doc/en_US.ISO8859-1/books/handbook/desktop chapter.sgml doc/en_US.ISO8859-1/books/handbook/linuxemu chapter.sgml

John Baldwin jhb at freebsd.org
Tue Dec 13 13:42:41 UTC 2011


On Monday, December 12, 2011 9:28:43 pm Doug Barton wrote:
> On 12/10/2011 13:29, Nathan Whitehorn wrote:
> > On 12/10/11 15:06, Manolis Kiagias wrote:
> >> On 10/12/2011 10:40 μμ, Alexander Leidinger wrote:
> >>> On Wed, 7 Dec 2011 21:32:06 +0000 (UTC) Manolis Kiagias
> >>> <manolis at FreeBSD.org>  wrote:
> >>>
> >>> CCing re@, emulation@ and nwhitehorn@ due to a possible impact in the
> >>> upcomming release.
> >>>
> >>>>    Modified files:
> >>>>      en_US.ISO8859-1/books/handbook/desktop chapter.sgml
> >>>>      en_US.ISO8859-1/books/handbook/linuxemu chapter.sgml
> >>>>    Log:
> >>>>    Use /compat/linux/proc instead of /usr/compat/linux/proc as the
> >>>> mount point of linproc in the examples, since:
> >>>>
> >>>>    - linux_base always installs to /compat and creates it as a
> >>>> directory if it does not exist as a symlink
> >>>>    - Custom installations (not done by sysinstall(8)) may not
> >>>> have /compat at all
> >>>>    - The linuxemu chapter uses /compat anyway (except a single
> >>>> example, fixed)
> >>>>    - The new bsdinstall(8) does not create /compat either as directory
> >>>> or symlink
> >>> Looks like a bug in bsdinstall (and linux_base) to me. What you write
> >>> here means that a new release with bsdinstall instead of sysinstall may
> >>> cause problems where /compat is in a small partition and /usr in a big
> >>> partition (even if it creates a big one by default, an user may change
> >>> this). I suggest to fix bsdinstall before the release of 9.0. It also
> >>> changes what is expected by long-term users.
> >>
> >> Yes, this was discussed in the PR (see
> >> http://lists.freebsd.org/pipermail/freebsd-doc/2011-December/019270.html
> >> ). I think the best and safer way would be for bsdinstall to create
> >> the link if possible.
> > 
> > This is very easy to do, and the correct place is in
> > /usr/src/usr.sbin/bsdinstall/scripts/config. I don't have a good sense
> > of what the correct logic is, however, and so would appreciate either
> > guidance or patches from emulation-types.
> 
> I don't understand why the linux_base ports are not sorting this out on
> their own. Why should this be a function of the installer?

It's a sysadmin's decision what /compat is.  It could be a directory on /
(which is fine if you have one-big filesystem for everything).  It could be
a mountpoint for another filesystem.  It could be a symlink to a directory
on some other filesystem.  All these are valid, and the various ABI packages
should not be trying to set that policy.  I do think the installer can set a
good initial policy for this just as it can for /home.  Now, using the default
layout the installer could just leave /compat as a dir on /.   Many folks
still customize their layout to make /usr or /home separate, etc.  It might
be nice if the installer "noticed" that you created a separate /usr and
symlinked /compat to /usr/compat to preserve previous behavior in that case.
It turns out, though, that this also works just fine if you have the one-big
/, (since usr/compat will be on the same fs), so the simplest solution might
be to just always symlink it for now.  This reduces POLA, but since it is only
done at install time, the sysadmin can always customize it post-install.

-- 
John Baldwin


More information about the freebsd-emulation mailing list