svn commit: r335948 - stable/11/etc/rc.d
Ian Lepore
ian at FreeBSD.org
Wed Jul 4 14:01:58 UTC 2018
Author: ian
Date: Wed Jul 4 14:01:56 2018
New Revision: 335948
URL: https://svnweb.freebsd.org/changeset/base/335948
Log:
MFC r335575, r335786-r335787
r335575:
Use 'mv -f' in rc.d/ntpd to avoid spuriously halting the boot.
The final 'mv' to install a fetched leap-list file can fail (due to a
readonly fs, or schg flags, for example), and that leads to mv(1)
prompting the user, stopping the boot process. Instead, use mv -f
to supress the prompting, and if verbose mode is on, emit a warning
that the existing file cannot be replaced.
PR: 219255
r335786:
Rename variable ntp_tmp_leapfile to have a leading underbar, to distinguish
it from variables with similar names which are set in rc.conf. This will
make more sense as the script grows more similar-name local variables in
some upcoming changes.
r335787:
When being verbose about various leapfile versions, also mention expiration.
The expiration date is actually more of a version number than the version
date, because expiration changes twice a year, whereas the version only
changes when actual leap second events occur (except in USNO leapfiles,
which inappropriately bump the version with every expiration date change).
Modified:
stable/11/etc/rc.d/ntpd
Directory Properties:
stable/11/ (props changed)
Modified: stable/11/etc/rc.d/ntpd
==============================================================================
--- stable/11/etc/rc.d/ntpd Wed Jul 4 13:57:49 2018 (r335947)
+++ stable/11/etc/rc.d/ntpd Wed Jul 4 14:01:56 2018 (r335948)
@@ -20,7 +20,7 @@ fetch_cmd="ntpd_fetch_leapfile"
needfetch_cmd="ntpd_needfetch_leapfile"
start_precmd="ntpd_precmd"
-ntp_tmp_leapfile="/var/run/ntpd.leap-seconds.list"
+_ntp_tmp_leapfile="/var/run/ntpd.leap-seconds.list"
load_rc_config $name
@@ -56,7 +56,7 @@ ntpd_precmd()
( cd /dev ; /bin/pax -rw -pe clockctl "${ntpd_chrootdir}/dev" )
fi
ln -fs "${ntpd_chrootdir}/var/db/ntp.drift" /var/db/ntp.drift
- ln -fs "${ntpd_chrootdir}${ntp_tmp_leapfile}" ${ntp_tmp_leapfile}
+ ln -fs "${ntpd_chrootdir}${_ntp_tmp_leapfile}" ${_ntp_tmp_leapfile}
# Change run_rc_commands()'s internal copy of $ntpd_flags
#
@@ -106,8 +106,8 @@ ntpd_needfetch_leapfile() {
ntp_expiry_src=$(get_ntp_leapfile_expiry $ntp_src_leapfile)
ntp_ver_no_db=$(get_ntp_leapfile_ver $ntp_db_leapfile)
ntp_expiry_db=$(get_ntp_leapfile_expiry $ntp_db_leapfile)
- $verbose ntp_src_leapfile version is $ntp_ver_no_src
- $verbose ntp_db_leapfile version is $ntp_ver_no_db
+ $verbose ntp_src_leapfile version is $ntp_ver_no_src expires $ntp_expiry_src
+ $verbose ntp_db_leapfile version is $ntp_ver_no_db expires $ntp_expiry_db
if [ "$ntp_ver_no_src" -gt "$ntp_ver_no_db" -o \
"$ntp_ver_no_src" -eq "$ntp_ver_no_db" -a \
@@ -140,15 +140,16 @@ ntpd_fetch_leapfile() {
if ntpd_needfetch_leapfile ; then
for url in $ntp_leapfile_sources ; do
$verbose fetching $url
- fetch $ntp_leapfile_fetch_opts -o $ntp_tmp_leapfile $url && break
+ fetch $ntp_leapfile_fetch_opts -o $_ntp_tmp_leapfile $url && break
done
- ntp_ver_no_tmp=$(get_ntp_leapfile_ver $ntp_tmp_leapfile)
- ntp_expiry_tmp=$(get_ntp_leapfile_expiry $ntp_tmp_leapfile)
+ ntp_ver_no_tmp=$(get_ntp_leapfile_ver $_ntp_tmp_leapfile)
+ ntp_expiry_tmp=$(get_ntp_leapfile_expiry $_ntp_tmp_leapfile)
if [ "$ntp_expiry_tmp" -gt "$ntp_expiry_db" -o \
"$ntp_expiry_tmp" -eq "$ntp_expiry_db" -a \
"$ntp_ver_no_tmp" -gt "$ntp_ver_no_db" ]; then
$verbose using $url as $ntp_db_leapfile
- mv $ntp_tmp_leapfile $ntp_db_leapfile
+ mv -f $_ntp_tmp_leapfile $ntp_db_leapfile ||
+ $verbose "warning: cannot replace $ntp_db_leapfile (read-only fs?)"
else
$verbose using existing $ntp_db_leapfile
fi
More information about the svn-src-stable-11
mailing list