firmware/general/overlay/lib/mdev/automount.sh

40 lines
839 B
Bash
Executable File

#!/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
[ -f "${destdir}/$1/autoconfig.sh" ] && sh ${destdir}/$1/autoconfig.sh | logger -s -p daemon.info -t autoconfig
}
case "${ACTION}" in
add|"")
my_umount ${MDEV}
my_mount ${MDEV}
;;
remove)
my_umount ${MDEV}
;;
esac