Home | History | Annotate | Download | only in rc.d
History log of /src/etc/rc.d/sysdb
RevisionDateAuthorComments
 1.26  25-Dec-2023  kre Stop using the obsolete test(1) -o operator, use sh || instead.
Prefer sh ! over test's ! (though that one is not completely obsolete).
 1.25  23-Apr-2016  dholland Avoid unnecessary use of basename(1). From Jukka Salmi a long, long time
ago on a tech-kern far, far away.
 1.24  03-Jun-2012  joerg Switch device database to cdb(5). Rework ttyname(3) and ttyname_r(3) to
depend on new devname_r(3) as heart. Add /dev/pts magic directly to
devname(3). While it can lead to returning non-existing paths, the
behavior is more consistent that way. Drop caching layer in devname(3),
it doesn't buy anything for the common case of having access to the
database. Teach devname(3) proper fallback behavior of scanning /dev.
Create both old-style and new-style database for now in /etc/rc.d/sysdb.
 1.23  21-Feb-2012  nakayama Avoid rebuilding services database every boot time.
The database has been renamed since the default was changed to CDB format.
 1.22  02-Sep-2011  mbalmer branches: 1.22.2; 1.22.4;
Terminate line with a '.', not the word 'done', for consistency with other
startup scripts.
 1.21  18-Jun-2009  christos now that pwd_mkdb does not change the version, warn if we still have version
0 databases.
 1.20  26-Aug-2007  dyoung Let an rc variable, sysdb=YES|NO, control the building of the system
databases. Defaults to YES.
 1.19  16-May-2007  christos check if the source exists, not that it is a file. Reported by
Blair Sadewitz
 1.18  13-May-2007  christos don't attempt to build the db file if the src file does not exist.
 1.17  10-May-2007  christos Move .db files for services and netgroup to /var/db per gimpy's request.
 1.16  08-May-2007  christos - don't trash utmp{,x} needlessly
- also support netgroup services and password
- pretty print
 1.15  12-Oct-2004  lukem Fix for /bin/ksh, from Jukka Salmi in PR 27232.
 1.14  13-Aug-2004  mycroft Add an _rc_subr_loaded variable, set to ":" by rc.subr. Scripts can use this
for a speedup by doing:
$_rc_subr_loaded . /etc/rc.subr
 1.13  11-May-2003  ragge branches: 1.13.4;
Remove kvm_mkdb, it's not used anymore.
 1.12  24-Feb-2003  atatat Execute the actual command as it's set instead of calling the sh
routine directly. This allows one to to override a specific command
via the use of /etc/rc.conf.d/sysdb.
 1.11  08-Oct-2002  atatat Reorganize the sysdb script so that lkm{1,2,3} can request that the
dev database be rebuilt after loading modules. Loading modules might
create new nodes in /dev, but the dev database is being initialized
too soon for lkm2 and lkm3. This means that, eg, /dev/xf86 (typically
marked AFTERMOUNT and loaded by lkm2) will show up properly. Reviewed
by lukem.
 1.10  16-Sep-2002  perry create a utmpx with the same permissions as utmp
Solves pr 18282, although very differently.
 1.9  22-Mar-2002  thorpej Correct the "direction" of the barrier dependencies (DAEMON, LOGIN,
NETWORKING, and SERVERS) by specifying that certain things should
come BEFORE a given barrier, rather than having the barrier REQUIRE
a service. This allows scripts to be removed without having to
edit the barrier dependencies.

As discussed on tech-userlevel, and approved by Luke.
 1.8  16-Apr-2001  lukem wrap kvm_mkdb arg in "s. from adam laurie in pr 12664
 1.7  14-Oct-2000  nisimura Add missing -n option of sysctl(8) booted_kernel name retrival.
 1.6  09-Oct-2000  nisimura - avoid -a or -o logical operator of test command as possible. They would
introduce syntaxical ambiguousity, and having concatenation with && or
|| costs nothing because our sh(1) has test(1) builtin.
- use elif construct to avoid dungling else-ifs.
- while-read construct does not need enclosed by a sub-shell.
- variable detection could be done in eval args=\$ifconfig_$int
- smart variable substitution occationally saves lines and extra command
invocations.
 1.5  19-Sep-2000  lukem - only perform the checkyesno on the variable named in $rcvar (rather than
implicitly using $name if $rcvar isn't set), and always perform this check,
even when using start_cmd (et al).
this check is performed before the pidcmd
is run, speeding up scripts that weren't going to be run anyway.
this should speed up booting slow systems.

- take advantage of the above and remove
start_precmd="checkyesno foo"
in scripts that use start_cmd.

- explicitly set rcvar=foo in the rc.d/foo scripts which have an equivalent
rc.conf entry

- fix `rcvar' and `restart' when $rcvar isn't set.
these above changes fix PR [bin/11027].

- when doing `force*', ignore the return value of *_precmd.
this fixes PR [bin/10781].

- rename what sysdb provides from `databases' to `sysdb', to reflect
the name of the script.

- improve the comments in rc.subr
 1.4  27-Jul-2000  lukem move recreating /var/run/utmp from mountcritlocal (where /var/run is
purged but /usr/bin/install is not available) to sysdb.
problem noted by Matthias Drochner.
 1.3  26-Jul-2000  lukem * add new dummy dependancy `NETWORK' to be REQUIREd by services which need
networking to be operational before starting, and use as appropriate.
NETWORK depends upon network and dhclient.
* move the guts of systemfs into mountcritlocal
* replace the dependancy on systemfs with mountcritremote, and remove the
former.
* SERVERS now also depends upon ppp

Notes:
* dhclient (and others) needs /var to be a $critical_filesystem_beforenet
* dhclient now starts before syslogd (because the latter needs /usr, and
/usr might need dhclient to be mounted)

Should fix PRs:
[install/9853] [bin/10002] [misc/10349] [port-i386/10633] [misc/10641]
 1.2  13-May-2000  lukem branches: 1.2.4;
Use load_rc_config() (from rc.subr) instead of sourcing /etc/rc.conf.
This allows us or a user to change the configuration file method in
one place - rc.subr - without having to edit all of the rc.d/* files.
 1.1  10-Mar-2000  lukem branches: 1.1.1;
Initial revision
 1.1.1.1  10-Mar-2000  lukem rc.d scripts derived from /etc/rc
 1.2.4.2  02-Oct-2000  lukem pull up rev 1.5 (approved by thorpej):
- always use $rcvar to determine the name of the var to checkyesno
- fix force*
 1.2.4.1  09-Aug-2000  lukem pull up the following
approved by: thorpej

etc/rc.d/DAEMON 1.3
etc/rc.d/LOGIN 1.3
etc/rc.d/NETWORK 1.1
etc/rc.d/SERVERS 1.2
etc/rc.d/cron 1.4
etc/rc.d/dhclient 1.6
etc/rc.d/dmesg 1.4
etc/rc.d/inetd 1.5
etc/rc.d/lkm1 1.3
etc/rc.d/lkm2 1.3
etc/rc.d/lkm3 1.4
etc/rc.d/motd 1.3
etc/rc.d/mountcritlocal 1.3-1.4
etc/rc.d/mountcritremote 1.3
etc/rc.d/mountd 1.7
etc/rc.d/network 1.12 1.14
etc/rc.d/ntpdate 1.4
etc/rc.d/ppp 1.3-1.4
etc/rc.d/pwcheck 1.3
etc/rc.d/rpcbind 1.4
etc/rc.d/sshd 1.3-1.5
etc/rc.d/swap1 1.5
etc/rc.d/swap2 1.4
etc/rc.d/sysdb 1.3-1.4
etc/rc.d/syslogd 1.5-1.6
etc/rc.d/systemfs REMOVE
etc/rc.d/virecover 1.3
etc/rc.d/wscons 1.4
etc/rc.d/xdm 1.5

summary:

* reword descriptions
* add '# KEYWORD: shutdown' to some of these scripts so that only they get run
at shutdown time. now, only scripts with the keyword `shutdown' will be
run by /etc/rc.shutdown, which speeds up shutdown and makes it more robust
* add new dummy dependancy `NETWORK' to be REQUIREd by services which need
networking to be operational before starting, and use as appropriate.
NETWORK depends upon network and dhclient.
* move the guts of systemfs into mountcritlocal
* replace the dependancy on systemfs with mountcritremote, and remove the
former.
* SERVERS now also depends upon ppp
* move recreating /var/run/utmp from mountcritlocal (where /var/run is
purged but /usr/bin/install is not available) to sysdb.
problem noted by Matthias Drochner.
* share the same load_rc_config between the lkm* scripts
* network: Don't warn that $hostname isn't set if the hostname is already set.
* network: reenable stop_cmd now that network doesn't get run at shutdown
* add sshd startup script
* use "load_rc_config swap" for swap1 and swap2
* syslog requires databases from sysdb which creates /var/run/utmp.

Should fix PRs:
[install/9853] [bin/10002] [misc/10349] [port-i386/10633] [misc/10641]
 1.13.4.1  08-May-2005  riz Pull up revision 1.15 (requested by lukem in ticket #1266):
Fix for /bin/ksh, from Jukka Salmi in PR 27232.
 1.22.4.2  23-Jun-2012  riz Pull up following revision(s) (requested by joerg in ticket #328):
lib/libc/gen/devname.c: revision 1.22
distrib/sparc64/instfs/dot.profile: revision 1.7
distrib/i386/cdroms/install.sh: revision 1.3
tests/lib/libcurses/director/director.c: revision 1.10
lib/libc/include/reentrant.h: revision 1.15
distrib/amd64/cdroms/install.sh: revision 1.3
tests/include/t_paths.c: revision 1.12
share/man/man7/hier.7: revision 1.101
etc/rc.d/sysdb: revision 1.24
include/stdlib.h: revision 1.99
tests/lib/libcurses/Makefile: revision 1.3
distrib/sparc64/cdroms/installcd/install.sh: revision 1.3
distrib/i386/cdroms/Makefile.cdrom: revision 1.27
lib/libc/gen/ttyname.c: revision 1.25
usr.bin/tic/Makefile: revision 1.2
tools/compat/Makefile: revision 1.57
lib/libterminfo/compile.c: revision 1.7
lib/libc/gen/ttyname.c: revision 1.26
lib/libterminfo/compile.c: revision 1.8
tools/compat/Makefile: revision 1.59
tools/compat/cdbw.h: revision 1.1
distrib/i386/installimage/install.sh: revision 1.2
lib/libc/include/namespace.h: revision 1.154
usr.bin/tic/tic.c: revision 1.13
usr.bin/tic/tic.c: revision 1.14
usr.bin/tic/tic.c: revision 1.15
distrib/sets/lists/base/mi: revision 1.996
usr.bin/tic/tic.c: revision 1.16
usr.sbin/dev_mkdb/dev_mkdb.8: revision 1.13
usr.bin/tic/tic.c: revision 1.17
usr.bin/tic/tic.c: revision 1.18
tools/compat/cdbr.h: revision 1.1
distrib/sparc64/instfs/list: revision 1.25
usr.bin/tic/tic.c: revision 1.19
lib/libc/cdb/cdbw.c: revision 1.4
lib/libc/cdb/cdbw.3: revision 1.4
lib/libc/cdb/cdbw.3: revision 1.5
share/terminfo/Makefile: revision 1.3
usr.sbin/dev_mkdb/dev_mkdb.c: revision 1.29
usr.sbin/dev_mkdb/Makefile: revision 1.8
lib/libc/gen/ttyname.3: revision 1.23
lib/libc/gen/ttyname.3: revision 1.24
lib/libc/cdb/cdbr.c: revision 1.3
include/cdbw.h: revision 1.2
distrib/sparc64/cdroms/installcd/Makefile: revision 1.15
lib/libc/gen/devname.3: revision 1.12
tools/compat/compat_defs.h: revision 1.85
tools/compat/compat_defs.h: revision 1.86
lib/libterminfo/term_private.h: revision 1.10
lib/libterminfo/term.c: revision 1.14
usr.bin/tic/tic.1: revision 1.10
lib/libterminfo/term.c: revision 1.15
lib/libterminfo/Makefile.hash: revision 1.5
lib/libterminfo/term.c: revision 1.16
distrib/amd64/installimage/install.sh: revision 1.2
share/man/man5/rc.conf.5: revision 1.152
distrib/sets/lists/tests/mi: revision 1.472
distrib/amd64/cdroms/Makefile.cdrom: revision 1.7
include/paths.h: revision 1.41
bin/ps/ps.1: revision 1.101
lib/libterminfo/terminfo.5.in: revision 1.16
usr.bin/tic/tic.c: revision 1.20
lib/libterminfo/terminfo.5.in: revision 1.17
Prefer __printflike.
Use queue(3)
Replace linear lookup with hash table, reducing runtime by 60%.
Use e* from util.h.
One more strdup -> estrdup.
Maintain nalias and nterm on the fly.
Add void for ttyslot prototype.
Use memcmp in place of strncmp, since length is known to no longer than
either of the arguments.
Fix a number of memory leaks. Keep final loop of the cleanup in tic(1)
under #ifdef __VALGRIND__ though.
Add __predict_true / __predict_false definitions.
Add a special seeder for cdbw_output that gives stable results.
Hook up cdbw(3) for the tool build.
Prototype for cdbw_stable_seeder.
Provide a usable thr_once for !_REENTRANT
Switch device database to cdb(5). Rework ttyname(3) and ttyname_r(3) to
depend on new devname_r(3) as heart. Add /dev/pts magic directly to
devname(3). While it can lead to returning non-existing paths, the
behavior is more consistent that way. Drop caching layer in devname(3),
it doesn't buy anything for the common case of having access to the
database. Teach devname(3) proper fallback behavior of scanning /dev.
Create both old-style and new-style database for now in /etc/rc.d/sysdb.
Switch terminfo(3) to cdb(5).
Fix typos.
Make Alan Barrett happy and add ().
Add cdbr(3) support to tools/compat.
Bump date for previous.
Relax consistency to make it possible to match valid entries.
Prefix devname's buffer with /dev/ as ttyname is supposed to return the
full path. Reported by Dave Huang.
 1.22.4.1  23-Feb-2012  riz Pull up following revision(s) (requested by nakayama in ticket #27):
etc/rc.d/sysdb: revision 1.23
Avoid rebuilding services database every boot time.
The database has been renamed since the default was changed to CDB format.
 1.22.2.2  30-Oct-2012  yamt sync with head
 1.22.2.1  17-Apr-2012  yamt sync with head

RSS XML Feed