Package: gfs-tools
Version: 0.trunk20050206-1
Severity: wishlist
Tags: patch


I have updated the gfs init.d script so that it works properly on Debian.

#!/bin/bash
#
# 
#
# chkconfig: 345 26 74
# description: mount/unmount gfs filesystems configured in /etc/fstab
#
#              
### BEGIN INIT INFO
# Provides: 
### END INIT INFO

[ -f /etc/sysconfig/cluster ] && . /etc/sysconfig/cluster

#
# This script's behavior is modeled closely after the netfs script.  
#
GFSFSTAB=$(LC_ALL=C awk '!/^#/ && $3 ~ /^gfs/ && $4 !~ /noauto/ { print $2 }' 
/etc/fstab)
GFSMTAB=$(LC_ALL=C awk '!/^#/ && $3 ~ /^gfs/ && $2 != "/" { print $2 }' 
/proc/mounts)

# See how we were called.
case "$1" in
  start)
        if [ -n "$GFSFSTAB" ] 
        then
                echo -n "Mounting GFS filesystems: " 
                mount -a -t gfs
                echo "."
        fi
        ;;

  stop)
        if [ -n "$GFSMTAB" ] 
        then
                sig=
                retry=6
                remaining=`LC_ALL=C awk '!/^#/ && $3 ~ /^gfs/ && $2 != "/" 
{print $2}' /proc/mounts`
                while [ -n "$remaining" -a "$retry" -gt 0 ]
                do
                        echo -n "Unmounting GFS filesystems: "
                        umount -a -t gfs
                        echo "."
                        
                        if [ $retry -eq 0 ] 
                        then
                                echo -n "Unmounting GFS filesystems (lazy): " 
                                umount -l -a -t gfs
                                echo "."
                                break
                        fi

                        sleep 2
                        remaining=`LC_ALL=C awk '!/^#/ && $3 ~ /^gfs/ && $2 != 
"/" {print $2}' /proc/mounts`
                        [ -z "$remaining" ] && break
                        /sbin/fuser -k -m $sig $remaining >/dev/null
                        sleep 10
                        retry=$(($retry - 1))
                        sig=-9
                done
        fi

        ;;

  status)
        if [ -f /proc/mounts ]
        then
                [ -n "$GFSFSTAB" ] && {
                     echo $"Configured GFS mountpoints: "
                     for fs in $GFSFSTAB; do echo $fs ; done
                }
                [ -n "$GFSMTAB" ] && {
                      echo $"Active GFS mountpoints: "
                      for fs in $GFSMTAB; do echo $fs ; done
                }
        else
                echo "/proc filesystem unavailable"
        fi
        ;;

  restart)
        $0 stop
        $0 start
        ;;

  reload)
        $0 start
        ;;
  *)
        echo $"Usage: $0 {start|stop|restart|reload|status}"
        exit 1
esac

exit 0
 

-- System Information:
Debian Release: 3.1
  APT prefers unstable
  APT policy: (300, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 2.6.12-1-686-smp-gcc3.3
Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1)

Versions of packages gfs-tools depends on:
ii  libc6                       2.3.2.ds1-22 GNU C Library: Shared libraries an

-- no debconf information


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to