#!/usr/bin/sh CMD=/usr/libexec/diskdrake child= restore_udev_rules() { rm -f /run/udev/rules.d/90-drakdisk-inhibit-udisks.rules udevadm control --reload udevadm trigger --subsystem-match=block } handle_signal() { if [ "x$child" != "x" ] ; then kill -s TERM $child wait $child fi } if ps -C udisksd > /dev/null ; then set -e mkdir -p /run/udev/rules.d trap handle_signal HUP INT QUIT ILL ABRT FPE SEGV PIPE ALRM TERM BUS trap restore_udev_rules EXIT echo 'SUBSYSTEM=="block", ENV{UDISKS_IGNORE}="1"' > /run/udev/rules.d/90-drakdisk-inhibit-udisks.rules udevadm control --reload udevadm trigger --subsystem-match=block $CMD "$@" & child=$! wait $child else exec $CMD "$@" fi