Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Nov 2005 18:19:30 -0800
From:      Brooks Davis <brooks@one-eyed-alien.net>
To:        "Ian D. Leroux" <ian_leroux@fastmail.fm>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: Restarting ntpd on address change
Message-ID:  <20051130021930.GA24227@odin.ac.hmc.edu>
In-Reply-To: <1133316076.522.28.camel@localhost>
References:  <1133316076.522.28.camel@localhost>

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

--4Ckj6UjgE2iN1+kY
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Tue, Nov 29, 2005 at 09:01:16PM -0500, Ian D. Leroux wrote:
> Greetings,
>=20
> My machine's ip address is assigned by DHCP, and whenever it changes
> ntpd stops functioning and must be restarted.  I gather this behavior
> will be changed in some future ntpd version, but in the meantime I had
> added a line to my /etc/dhclient-exit-hooks to restart ntpd every time a
> new address was obtained:
>=20
> # [...] setup variables for ipcheck
>=20
> if [ -n "$new_ip_address" ]; then
>   # [...] run ipcheck to update my dyndns
>   /etc/rc.d/ntpd restart
> fi
>=20
> This seemed work fine on 5.4, but on 6.0 it gives problems at boot.
> Specifically, I get repeated "bad file descriptor" errors after my
> network address is assigned, and running ps after the boot completes
> shows that there are two ntpd processes running.  Killing one of them
> stops the file descriptor errors.  My interpretation of this (for what
> it's worth) is that an ntpd process gets started before dhclient gets a
> chance to configure the address (perhaps when the interface initially
> comes up) and then when the address is assigned the /etc/rc.d/ntpd
> restart starts a second process, but somehow fails to stop the first
> one.  For now I've removed that line from dhclient-exit-hooks, which
> avoids the problems at boot time.
>=20
> I have the feeling that I'm not doing the Right Thing here.  So is there
> an accepted (or at least known-good) way of automatically managing the
> restart of ntpd on address change?  Have I found a bug in rc.d worth
> investigating? Or should I just stick to manual restarts until ntpd
> stops needing them?

Hmm, this should work because the pid file should prevent ntpd from
getting started twice.  That happens on my -CURRENT laptop so I'm
thinking there's something going on in the startup process that's
tripping you up.  One thought I had was that /var/run might be getting
cleared, but it doesn't look like that should be the case.

On a tangential note, the ntpd script won't actually support chroots due
to it's broken assumption that devices can exist outside devfs file
systems.

--- 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

--4Ckj6UjgE2iN1+kY
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQFDjQwyXY6L6fI4GtQRAvYxAKCsY1d9YmyDK1uyG/R1QOxSrYC0vACgnXH5
f93xteMqjChuvXfrrmIK/2c=
=olKt
-----END PGP SIGNATURE-----

--4Ckj6UjgE2iN1+kY--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20051130021930.GA24227>