mirror of https://github.com/OpenIPC/firmware.git
43 lines
967 B
Bash
Executable File
43 lines
967 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 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
|