From a998ea5d9a48070079e7c5ea180a72ac5c1e0e19 Mon Sep 17 00:00:00 2001 From: Robert Garrett Date: Sun, 1 Feb 2004 10:25:48 +0000 Subject: [PATCH] Add much needed scripts to /etc/rc.d resident takes a list of pathnames or filenames from /etc/resident.conf and makes them resident varsym takes a list of variable definitions from /etc/varsym.conf and makes them system wide varsyms these are currently off by default thanks to Eirik Nygaard for his assistance --- etc/defaults/rc.conf | 4 +++- etc/rc.d/Makefile | 11 +++++------ etc/rc.d/resident | 36 ++++++++++++++++++++++++++++++++++++ etc/rc.d/varsym | 36 ++++++++++++++++++++++++++++++++++++ etc/resident.conf | 3 +++ etc/varsym.conf | 4 ++++ 6 files changed, 87 insertions(+), 7 deletions(-) create mode 100644 etc/rc.d/resident create mode 100644 etc/rc.d/varsym create mode 100644 etc/resident.conf create mode 100644 etc/varsym.conf diff --git a/etc/defaults/rc.conf b/etc/defaults/rc.conf index e5688eda8e..9345aaf924 100644 --- a/etc/defaults/rc.conf +++ b/etc/defaults/rc.conf @@ -14,7 +14,7 @@ # All arguments must be in double or single quotes. # # $FreeBSD: src/etc/defaults/rc.conf,v 1.180 2003/06/26 09:50:50 smkelly Exp $ -# $DragonFly: src/etc/defaults/rc.conf,v 1.4 2003/11/09 07:31:28 dillon Exp $ +# $DragonFly: src/etc/defaults/rc.conf,v 1.5 2004/02/01 10:25:48 rob Exp $ ############################################################## ### Important initial Boot-time options #################### @@ -432,6 +432,8 @@ jail_list="" # Space separated list of names of jails jail_set_hostname_allow="YES" # Allow root user in a jail to change its hostname jail_socket_unixiproute_only="YES" # Route only TCP/IP within a jail jail_sysvipc_allow="NO" # Allow SystemV IPC use from within a jail +resident_enable="NO" # Proccess /etc/resident.conf +varsym_enable="NO" # Proccess /etc/varsym.conf watchdogd_enable="NO" # Start the software watchdog daemon ############################################################## diff --git a/etc/rc.d/Makefile b/etc/rc.d/Makefile index 6a516eb1e7..5162678387 100644 --- a/etc/rc.d/Makefile +++ b/etc/rc.d/Makefile @@ -1,6 +1,6 @@ # $NetBSD: Makefile,v 1.16 2001/01/14 15:37:22 minoura Exp $ # $FreeBSD: src/etc/rc.d/Makefile,v 1.20 2003/06/29 05:15:57 mtm Exp $ -# $DragonFly: src/etc/rc.d/Makefile,v 1.3 2003/12/11 23:28:41 dillon Exp $ +# $DragonFly: src/etc/rc.d/Makefile,v 1.4 2004/02/01 10:25:48 rob Exp $ .include @@ -20,12 +20,11 @@ FILES= DAEMON LOGIN NETWORKING SERVERS abi accounting addswap adjkerntz \ named netif netoptions network network1 network2 network3 \ network_ipv6 nfsclient nfsd nfslocking nfsserver nisdomain ntpd \ ntpdate othermta pccard pcvt ppp ppp-user pppoed pwcheck quota random \ - rarpd rcconf.sh root route6d routed routing rpcbind rtadvd rwho \ - sysdb savecore securelevel sendmail serial sppp sshd swap1 \ - syscons sysctl \ - syslogd timed ttys usbd vinum virecover watchdogd ypbind \ + rarpd rcconf.sh resident root route6d routed routing rpcbind rtadvd \ + rwho sysdb savecore securelevel sendmail serial sppp sshd swap1 syscons\ + sysctl syslogd timed ttys usbd vinum virecover watchdogd ypbind \ yppasswdd ypserv ypset ypupdated ypxfrd \ - wscons + varsym wscons FILESDIR= /etc/rc.d FILESMODE= ${BINMODE} diff --git a/etc/rc.d/resident b/etc/rc.d/resident new file mode 100644 index 0000000000..b165e6de7a --- /dev/null +++ b/etc/rc.d/resident @@ -0,0 +1,36 @@ +#!/bin/sh + +# $DragonFly: src/etc/rc.d/resident,v 1.1 2004/02/01 10:25:48 rob Exp $ +# + +# PROVIDE: resident +# REQUIRE: mountcritremote +# KEYWORD: DragonFly + +. /etc/rc.subr + +name=resident +rcvar='resident_enable' +required_files="/etc/resident.conf" +start_cmd="resident_start" +stop_cmd=":" + +resident_start() +{ +if [ -f /etc/resident.conf ]; then + while read path comments + do + case ${path} in + \#*|"") + ;; + *) + file ${path} | grep shared | cut -f1 -d ':' -s | xargs resident + + esac + done < /etc/resident.conf +fi + +} + +load_rc_config $name +run_rc_command "$1" diff --git a/etc/rc.d/varsym b/etc/rc.d/varsym new file mode 100644 index 0000000000..a893bd81a3 --- /dev/null +++ b/etc/rc.d/varsym @@ -0,0 +1,36 @@ +#!/bin/sh + +# $DragonFly: src/etc/rc.d/varsym,v 1.1 2004/02/01 10:25:48 rob Exp $ +# + +# PROVIDE: varsym +# REQUIRE: mountcritremote +# KEYWORD: DragonFly + +. /etc/rc.subr + +name=varsym +rcvar='varsym_enable' +required_files="/etc/varsym.conf" +start_cmd="varsym_start" +stop_cmd=":" + +varsym_start() +{ + if [ -f /etc/varsym.conf ]; then + while read sym + do + case ${sym} in + \#*|' ') + ;; + *) + varsym -s ${sym} + esac + done < /etc/varsym.conf + fi + +} + +load_rc_config $name +run_rc_command "$1" + diff --git a/etc/resident.conf b/etc/resident.conf new file mode 100644 index 0000000000..4ec520b44c --- /dev/null +++ b/etc/resident.conf @@ -0,0 +1,3 @@ +# List of directories to search for shared binaries to make resident +# $DragonFly: src/etc/resident.conf,v 1.1 2004/02/01 10:25:48 rob Exp $ +# diff --git a/etc/varsym.conf b/etc/varsym.conf new file mode 100644 index 0000000000..6857b4e838 --- /dev/null +++ b/etc/varsym.conf @@ -0,0 +1,4 @@ +# System Wide VarSym Definitions +# +# $DragonFly: src/etc/varsym.conf,v 1.1 2004/02/01 10:25:48 rob Exp $ + -- 2.41.0