dumpon revision 301612
1#!/bin/sh 2# 3# $FreeBSD: stable/10/etc/rc.d/dumpon 301612 2016-06-08 13:32:00Z ngie $ 4# 5 6# PROVIDE: dumpon 7# BEFORE: disks 8# KEYWORD: nojail 9 10. /etc/rc.subr 11 12name="dumpon" 13start_cmd="dumpon_start" 14stop_cmd="dumpon_stop" 15 16dumpon_try() 17{ 18 if /sbin/dumpon "${1}" ; then 19 # Make a symlink in devfs for savecore 20 ln -fs "${1}" /dev/dumpdev 21 return 0 22 fi 23 warn "unable to specify $1 as a dump device" 24 return 1 25} 26 27dumpon_start() 28{ 29 # Enable dumpdev so that savecore can see it. Enable it 30 # early so a crash early in the boot process can be caught. 31 # 32 case ${dumpdev} in 33 [Nn][Oo] | '') 34 ;; 35 [Aa][Uu][Tt][Oo]) 36 dev=$(/bin/kenv -q dumpdev) 37 if [ -n "${dev}" ] ; then 38 dumpon_try "${dev}" 39 return $? 40 fi 41 while read dev mp type more ; do 42 [ "${type}" = "swap" ] || continue 43 [ -c "${dev}" ] || continue 44 dumpon_try "${dev}" 2>/dev/null && return 0 45 done </etc/fstab 46 echo "No suitable dump device was found." 1>&2 47 return 1 48 ;; 49 *) 50 dumpon_try "${dumpdev}" 51 ;; 52 esac 53} 54 55dumpon_stop() 56{ 57 case ${dumpdev} in 58 [Nn][Oo] | '') 59 ;; 60 *) 61 rm -f /dev/dumpdev 62 /sbin/dumpon -v off 63 ;; 64 esac 65} 66 67load_rc_config $name 68run_rc_command "$1" 69