--- /dev/null
+#!/bin/bash
+#
+# test.block - run udev(8) on each block device in /sys/block
+
+if [ $# = "0" ] ; then
+ echo
+ echo "usage: $0 <action>"
+ echo "where <action> is \"add\" or \"remove\""
+ echo
+ exit 1
+fi
+
+killall udevd
+
+SYSFSDIR=/sys # change this for a nonstand sysfs mount point
+BIN=./udevsend # location of your udev binary
+export ACTION=$1 # 'add' or 'remove'
+seq=1
+
+for i in ${SYSFSDIR}/block/*; do
+ # add each drive
+ export DEVPATH=${i#${SYSFSDIR}}
+ export SEQNUM=$seq
+ $BIN block
+ x=$((seq++))
+
+ # add each partition, on each device
+ for j in $i/*; do
+ if [ -f $j/dev ]; then
+ export DEVPATH=${j#${SYSFSDIR}}
+ export SEQNUM=$seq
+ $BIN block
+ x=$((seq++))
+ fi
+ done
+done