#!/bin/sh # PROVIDE: var_run # REQUIRE: mountcritlocal # BEFORE: cleanvar # KEYWORD: shutdown . /etc/rc.subr name=var_run rcvar=var_run_enable extra_commands="load save" start_cmd="_var_run_start" load_cmd="_var_run_load" save_cmd="_var_run_save" stop_cmd="_var_run_stop" load_rc_config $name # doesn't make sense to run in a svcj: config setting var_run_svcj="NO" _var_run_load() { if [ -f "${var_run_mtree}" ] ; then mtree -U -i -q -f "${var_run_mtree}" -p /var/run > /dev/null fi } _var_run_save() { if ! [ -d "${var_run_mtree%/*}" ]; then mkdir -p "${var_run_mtree%/*}" fi mtree -dcbj -p /var/run > "${var_run_mtree}" } _var_run_start() { if df -ttmpfs /var/run > /dev/null 2>&1; then _var_run_load fi } _var_run_stop() { if checkyesno var_run_autosave; then if df -ttmpfs /var/run > /dev/null 2>&1; then _var_run_save fi fi } run_rc_command "$1"