savecore revision 124622
178344Sobrien#!/bin/sh 278344Sobrien# 398184Sgordon# $NetBSD: savecore,v 1.5 2002/03/22 04:34:00 thorpej Exp $ 498184Sgordon# $FreeBSD: head/etc/rc.d/savecore 124622 2004-01-17 10:59:43Z mtm $ 578344Sobrien# 678344Sobrien 778344Sobrien# PROVIDE: savecore 878344Sobrien# REQUIRE: syslogd 998184Sgordon# BEFORE: SERVERS 10124616Smtm# KEYWORD: FreeBSD 1178344Sobrien 1278344Sobrien. /etc/rc.subr 1378344Sobrien 1478344Sobrienname="savecore" 1578344Sobrienstart_cmd="savecore_start" 1698184Sgordonstart_precmd="savecore_prestart" 1778344Sobrienstop_cmd=":" 1878344Sobrien 1998184Sgordonsavecore_prestart() 2078344Sobrien{ 2198184Sgordon # ${DUMPDIR} should be a directory or a symbolic link 2278344Sobrien # to the crash directory if core dumps are to be saved. 2378344Sobrien # 2498184Sgordon DUMPDIR="${dumpdir:-/var/crash}" 2598184Sgordon 26124622Smtm # Quit if we have no dump device 27124622Smtm case ${dumpdev} in 28124622Smtm [Nn][Oo] | '') 29124622Smtm debug 'No dump device. Quitting.' 30124622Smtm return 1 31124622Smtm ;; 32124622Smtm esac 3398184Sgordon 34124622Smtm # If there is no crash directory set it now 35124622Smtm case ${dumpdir} in 36124622Smtm '') 37124622Smtm dumpdir='/var/crash' 3898184Sgordon ;; 39124622Smtm [Nn][Oo]) 40124622Smtm dumpdir='NO' 4198184Sgordon ;; 4298184Sgordon esac 43124622Smtm 44124622Smtm if [ ! -e "${dumpdev}" -o ! -d "${dumpdir}" ]; then 45124622Smtm warn "Wrong dump device or directory. Savecore not run." 46124622Smtm return 1 47124622Smtm fi 4898184Sgordon return 0 4998184Sgordon} 5098184Sgordon 5198184Sgordonsavecore_start() 5298184Sgordon{ 5378344Sobrien echo "Checking for core dump..." 5498184Sgordon savecore ${savecore_flags} ${DUMPDIR} 5578344Sobrien} 5678344Sobrien 5778344Sobrienload_rc_config $name 5878344Sobrienrun_rc_command "$1" 59