Move /etc/conf.d/rc to /etc/rc.conf.
Lowercase all configurable variables, non configurations remain uppercase. Replace rc_env_bool with rc_yesno. Split localmount info procfs (Linux) and dumpon, savecore (BSD)
This commit is contained in:
5
init.d.misc/Makefile
Normal file
5
init.d.misc/Makefile
Normal file
@@ -0,0 +1,5 @@
|
||||
DIR = /etc/init.d
|
||||
BIN = $(CONTENTS)
|
||||
|
||||
TOPDIR = ..
|
||||
include $(TOPDIR)/default.mk
|
||||
116
init.d.misc/named
Normal file
116
init.d.misc/named
Normal file
@@ -0,0 +1,116 @@
|
||||
#!/sbin/runscript
|
||||
# Copyright 2007 Roy Marples
|
||||
# All rights reserved
|
||||
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions
|
||||
# are met:
|
||||
# 1. Redistributions of source code must retain the above copyright
|
||||
# notice, this list of conditions and the following disclaimer.
|
||||
# 2. Redistributions in binary form must reproduce the above copyright
|
||||
# notice, this list of conditions and the following disclaimer in the
|
||||
# documentation and/or other materials provided with the distribution.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
||||
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
||||
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
# SUCH DAMAGE.
|
||||
|
||||
command=/usr/sbin/named
|
||||
command_args=${named_args}
|
||||
pidfile=/var/run/named/pid
|
||||
name="Domain Name server"
|
||||
extra_commands="reload"
|
||||
|
||||
namedb=/etc/namedb
|
||||
named_uid=${named_uid:-bind}
|
||||
|
||||
depend() {
|
||||
provide dns
|
||||
need localmount
|
||||
after bootmisc
|
||||
}
|
||||
|
||||
start_pre() {
|
||||
if [ -n "${named_chroot}" ]; then
|
||||
# Create (or update) the chroot directory structure
|
||||
if [ -r /etc/mtree/BIND.chroot.dist ]; then
|
||||
mtree -deU -f /etc/mtree/BIND.chroot.dist -p "${named_chroot}"
|
||||
else
|
||||
ewarn "/etc/mtree/BIND.chroot.dist missing,"
|
||||
ewarn "chroot directory structure not updated"
|
||||
fi
|
||||
|
||||
if [ ! -d "${named_chroot}"/. ]; then
|
||||
eerror "chroot directory ${named_chroot} missing"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Create /etc/namedb symlink
|
||||
if [ ! -L "${namedb}" ]; then
|
||||
if [ -d "${namedb}" ]; then
|
||||
ewarn "named chroot: ${namedb} is a directory!"
|
||||
elif [ -e "${namedb}" ]; then
|
||||
ewarn "named chroot: ${namedb} exists!"
|
||||
else
|
||||
ln -s "${named_chroot}${namedb}" "${namedb}"
|
||||
fi
|
||||
else
|
||||
# Make sure it points to the right place.
|
||||
ln -shf "${named_chroot}${namedb}" "${namedb}"
|
||||
fi
|
||||
|
||||
case "${RC_UNAME}" in
|
||||
*BSD|DragonFly)
|
||||
# Mount a devfs in the chroot directory if needed
|
||||
umount "${named_chroot}"/dev 2>/dev/null
|
||||
mount -t devfs dev "${named_chroot}"/dev
|
||||
devfs -m "${named_chroot}"/dev ruleset devfsrules_hide_all
|
||||
devfs -m "${named_chroot}"/dev rule apply path null unhide
|
||||
devfs -m "${named_chroot}"/dev rule apply path random unhide
|
||||
;;
|
||||
esac
|
||||
|
||||
# Copy local timezone information if it is not up to date.
|
||||
if [ -r /etc/localtime ]; then
|
||||
cmp -s /etc/localtime "${named_chroot}/etc/localtime" ||
|
||||
cp -p /etc/localtime "${named_chroot}/etc/localtime"
|
||||
fi
|
||||
|
||||
command_args="${command_args} -t ${named_chroot}"
|
||||
|
||||
ln -fs "${named_chroot}${pidfile}" "${pidfile}"
|
||||
fi
|
||||
|
||||
if [ ! -s "${named_chroot}${namedb}/rndc.conf" ]; then
|
||||
local confgen="${command%/named}/rndc-confgen -a -b256 -u ${named_uid} \
|
||||
-c ${named_chrootdir}/etc/namedb/rndc.key"
|
||||
if [ -s "${named_chroot}${namedb}/rndc.key" ]; then
|
||||
local getuser="stat -f%Su"
|
||||
[ "${RC_UNAME}" = "Linux" ] && getuser="stat -c%U"
|
||||
case $(${getuser} "${named_chroot}${namedb}"/rndc.key) in
|
||||
root|"${named_uid}") ;;
|
||||
*) ${confgen} ;;
|
||||
esac
|
||||
else
|
||||
${confgen}
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
reload() {
|
||||
rndc reload
|
||||
}
|
||||
|
||||
stop_post() {
|
||||
if [ -n "${named_chroot}" -a -c "${named_chroot}"/dev/null ]; then
|
||||
umount "${named_chroot}"/dev 2>/dev/null || true
|
||||
fi
|
||||
}
|
||||
59
init.d.misc/ntpd
Normal file
59
init.d.misc/ntpd
Normal file
@@ -0,0 +1,59 @@
|
||||
#!/sbin/runscript
|
||||
# Copyright 2007 Roy Marples
|
||||
# All rights reserved
|
||||
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions
|
||||
# are met:
|
||||
# 1. Redistributions of source code must retain the above copyright
|
||||
# notice, this list of conditions and the following disclaimer.
|
||||
# 2. Redistributions in binary form must reproduce the above copyright
|
||||
# notice, this list of conditions and the following disclaimer in the
|
||||
# documentation and/or other materials provided with the distribution.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
||||
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
||||
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
# SUCH DAMAGE.
|
||||
|
||||
ntpd_config=${ntpd_config:-/etc/ntp.conf}
|
||||
ntpd_drift=${ntpd_drift:-/var/db/ntpd.drift}
|
||||
|
||||
command=/usr/sbin/ntpd
|
||||
pidfile=/var/run/ntpd.pid
|
||||
command_args="${ntpd_args} -c ${ntpd_config} -f ${ntpd_drift} -p ${pidfile}"
|
||||
name="Network Time Protocol Daemon"
|
||||
|
||||
depend() {
|
||||
use dns
|
||||
need localmount
|
||||
after bootmisc ntp-client
|
||||
}
|
||||
|
||||
start_pre() {
|
||||
if [ ! -r "${ntpd_config}" ]; then
|
||||
eerror "${ntpd_config} is not readable"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -n "${ntpd_chroot}" ]; then
|
||||
case "${RC_UNAME}" in
|
||||
*BSD|DragonFly)
|
||||
if [ ! -c "${ntpd_chroot}/dev/clockctl" ]; then
|
||||
rm -f "${ntpd_chroot}/dev/clockctl"
|
||||
(cd /dev; /bin/pax -rw -pe clockctl "${ntpd_chroot}/dev")
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
ln -fs "${ntpd_chroot}${ntpd_drift}" "${ntpd_drift}"
|
||||
|
||||
command_args="${command_args} -u ntpd:ntpd -i ${ntpd_chroot}"
|
||||
fi
|
||||
}
|
||||
Reference in New Issue
Block a user