#!/bin/sh
#
#  $Id$
#
# /etc/init.d/siredit-fs
#
#
# hints for update-rc.d on Debian like distros and chkconfig on SuSE like distros
#
### BEGIN INIT INFO
# Provides:       siredit-fs
# Required-Start: $local_fs
# Required-Stop:  $local_fs
# Default-Start:  2 3 5
# Default-Stop:   0 1 4 6
# Description:    SiREdit RAM fs initializer
### END INIT INFO
#
#
# hints for chkconfig on RedHat like distros
#
# chkconfig: 345 90 10
# description: Starts/stops SiREdit ramfs.
# processname: siredit-fs
#


case "$1" in
    start)
        echo "Preparing ramfs for SiREdit ..."
	ISMOUNTED=$(mount -t ramfs |grep /tmp/siredit.ramfs)
        if [ -n "$ISMOUNTED" ] ; then
          echo "/tmp/siredit.ramfs already mounted"
          exit 0
        fi
	#umount /tmp/siredit.ramfs >/dev/null 2>/dev/null
	#rm -rf /tmp/siredit.ramfs >/dev/null 2>/dev/null
        mkdir -pv /tmp/siredit.ramfs || exit 1
	chmod 1777 /tmp/siredit.ramfs || exit 2
	mount -t ramfs -o size=10m -v ramfs /tmp/siredit.ramfs || exit 3
	chmod 1777 /tmp/siredit.ramfs || exit 4
        ;;
    status)
	ISMOUNTED=$(mount -t ramfs |grep /tmp/siredit.ramfs)
        if [ -n "$ISMOUNTED" ] ; then
          echo "OK: /tmp/siredit.ramfs already mounted:"
          echo "$ISMOUNTED"
          exit 0
        fi
        echo "NOT OK: /tmp/siredit.ramfs NOT mounted."
        exit 1
        ;;
    stop)
        echo "Dropping ramfs for SiREdit ..."
	umount -v -l -f /tmp/siredit.ramfs || exit 1
	rm -rf /tmp/siredit.ramfs || exit 2
        ;;
    restart)
        $0 stop || exit 1
        $0 start
        ;;
    *)
        echo "Usage: $0 {start|status|stop|restart}"
        exit 1
esac

