#!/bin/sh destdir=/mnt my_umount() { if grep -qs "^/dev/$1 " /proc/mounts ; then umount "${destdir}/$1"; fi [ -d "${destdir}/$1" ] && rmdir "${destdir}/$1" } my_mount() { mkdir -p "${destdir}/$1" || exit 1 if ! mount -t auto -o sync "/dev/$1" "${destdir}/$1"; then # failed to mount, clean up mountpoint rmdir "${destdir}/$1" exit 1 fi # copy files from autoconfig folder [ -d "${destdir}/$1/autoconfig" ] && cp -afv ${destdir}/$1/autoconfig/* / | logger -s -p daemon.info -t autoconfig # execution of the specified commands one time [ -f "${destdir}/$1/autoconfig.sh" ] && (sh ${destdir}/$1/autoconfig.sh ; rm -f ${destdir}/$1/autoconfig.sh) | logger -s -p daemon.info -t autoconfig # execution of the specified commands [ -f "${destdir}/$1/autostart.sh" ] && sh ${destdir}/$1/autostart.sh | logger -s -p daemon.info -t autostart } case "${ACTION}" in add|"") my_umount ${MDEV} my_mount ${MDEV} ;; remove) my_umount ${MDEV} ;; esac