e3c46a3332
with theirs, so this information doesn't need to be in the live file. Having it in our CVS history is enough.
66 lines
1.1 KiB
Bash
Executable File
66 lines
1.1 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
# PROVIDE: savecore
|
|
# REQUIRE: syslogd
|
|
# BEFORE: SERVERS
|
|
# KEYWORD: nojail
|
|
|
|
. /etc/rc.subr
|
|
|
|
name="savecore"
|
|
start_cmd="savecore_start"
|
|
start_precmd="savecore_prestart"
|
|
stop_cmd=":"
|
|
|
|
savecore_prestart()
|
|
{
|
|
# ${DUMPDIR} should be a directory or a symbolic link
|
|
# to the crash directory if core dumps are to be saved.
|
|
#
|
|
DUMPDIR="${dumpdir:-/var/crash}"
|
|
|
|
# Quit if we have no dump device
|
|
case ${dumpdev} in
|
|
[Nn][Oo] | '')
|
|
debug 'No dump device. Quitting.'
|
|
return 1
|
|
;;
|
|
[Aa][Uu][Tt][Oo])
|
|
dumpdev=`/bin/realpath /dev/dumpdev`
|
|
;;
|
|
esac
|
|
|
|
# If there is no crash directory set it now
|
|
case ${dumpdir} in
|
|
'')
|
|
dumpdir='/var/crash'
|
|
;;
|
|
[Nn][Oo])
|
|
dumpdir='NO'
|
|
;;
|
|
esac
|
|
|
|
if [ ! -c "${dumpdev}" ]; then
|
|
warn "Dump device does not exist. Savecore not run."
|
|
return 1
|
|
fi
|
|
|
|
if [ ! -d "${dumpdir}" ]; then
|
|
warn "Dump directory does not exist. Savecore not run."
|
|
return 1
|
|
fi
|
|
return 0
|
|
}
|
|
|
|
savecore_start()
|
|
{
|
|
echo "Checking for core dump on ${dumpdev}..."
|
|
savecore ${savecore_flags} ${DUMPDIR} ${dumpdev}
|
|
}
|
|
|
|
load_rc_config $name
|
|
run_rc_command "$1"
|