summaryrefslogtreecommitdiffstats
path: root/init.d/localinit
diff options
context:
space:
mode:
Diffstat (limited to 'init.d/localinit')
-rwxr-xr-xinit.d/localinit31
1 files changed, 31 insertions, 0 deletions
diff --git a/init.d/localinit b/init.d/localinit
new file mode 100755
index 0000000..030a0fc
--- /dev/null
+++ b/init.d/localinit
@@ -0,0 +1,31 @@
+#!/sbin/runscript
+
+mount_once() {
+ if mount | grep $1 >/dev/null 2>&1 ; then
+ NOUMOUNT=$1
+ else
+ mount $1 >/dev/null 2>&1
+ fi
+}
+
+umount_once() {
+ [ "$NOUMOUNT" != "$1" ] && umount "$1" 2>/dev/null
+}
+
+start() {
+ for media in $MOUNTS ; do
+ m="/media/$media"
+ mount_once $m
+ if [ -e $m/localinit ] ; then
+ ebegin "Running localinit from $media"
+ $m/localinit
+ retcode=$?
+ umount_once $m
+ eend $retcode
+ exit
+ fi
+ sleep 1
+ umount_once $m
+ done
+}
+