Re: RCng/NTP Catch-22

From: M. Warner Losh <imp_at_bsdimp.com>
Date: Thu, 21 Oct 2004 15:03:30 -0600 (MDT)
In message: <20041020220329.64CE75D04_at_ptavv.es.net>
            "Kevin Oberman" <oberman_at_es.net> writes:
: I have run into a messy issue with ntp on a V5 or current system. I have
: kludged around it, but the problem really needs to be fixed.
: 
: ntpd uses symlinked devices to talk to the reference clock (if there is
: one).
: lrwxr-xr-x  1 root  wheel  10 Jul  1 14:36 /dev/pps1 -> /dev/cuaa1
: lrwxr-xr-x  1 root  wheel  10 Jul  1 14:36 /dev/true1 -> /dev/cuaa1
: 
: While I really wish ntpd did not do this, it does and it's in the base
: system. 
: 
: Since /etc/rc.d/ntpd contains:
: BEFORE: LOGIN
: and /etc/rc.d/devfs contains:
: REQUIRE: LOGIN
: I don't see a clean way to create the symlinks at boot time. If the
: devices are not present when ntp starts, it never looks again.
: 
: I have kludged this by adding the symlinks in the ntpd script, but this
: is really ugly. There should be a better way of doing it. Ideally, ntp
: should read the device(s) to use from ntp.conf (and quit overloading
: the loopback address space while we are at it). Barring this, there
: needs to be a way of getting th devices created before nptd is started.
: 
: Any of the RCng folks have any suggestions?

We solved this problem here by doing the following:

# PROVIDE: devfs
# REQUIRE: LOGIN
# BEFORE:  securelevel ntpd
# KEYWORD: FreeBSD nojail

But that's suboptimal.  devfs should start as soon after fsck has
happened as possible, imho.  I don't think the REQUIRE: LOGIN line is
the right one to use, but rather 'mountcritlocal' would be better.  In
fact, I have no idea why the above works for us here!

# PROVIDE: devfs
# REQUIRE: mountcritlocal
# BEFORE: ipfilter var

Seems like the right order to me.  Or even more radical:

# PROVIDE: devfs
# REQUIRE: root
# BEFORE: mountcritlocal

Since just about anything after root could use a potentially aliased device.

Warner
Received on Thu Oct 21 2004 - 19:05:11 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:19 UTC