NetBSD/etc/rc.d/raidframe
lukem 6c5c021900 use the recently added hw.disknames value from sysctl(8) to determine
the list of currently configured disk devices, and start raid parity
rebuilds on devices which match "raid[0-9]*"
2002-01-27 14:16:33 +00:00

41 lines
706 B
Bash
Executable File

#!/bin/sh
#
# $NetBSD: raidframe,v 1.6 2002/01/27 14:16:33 lukem Exp $
#
# PROVIDE: disks
. /etc/rc.subr
name="raidframe"
start_cmd="raidframe_start"
stop_cmd=":"
raidframe_start()
{
# Configure non-auto-configured raid devices.
# Ensure order by globbing raid[0-9].conf before raid[0-9][0-9].conf.
#
for cfg in /etc/raid[0-9].conf /etc/raid[0-9][0-9].conf ; do
[ ! -f $cfg ] && continue
dev=${cfg##*/}
dev=${dev%%.conf}
raidctl -c $cfg $dev
done
# Initiate parity/mirror reconstruction as needed, in the background.
#
(
for dev in `sysctl -n hw.disknames`; do
case $dev in
raid[0-9]*)
raidctl -P $dev
;;
esac
done
) &
}
load_rc_config $name
run_rc_command "$1"