script beim ´runterfahren des Rechners

Andre Landwehr andre.landwehr at gmx.net
Sun Nov 7 16:18:41 CET 1999


On Sun, Nov 07, 1999 at 03:34:52PM +0100, Werner Nauerth wrote:
> Nur: ich weiß nicht, wie ich die auf dem win3.11-rechner befindlichen
> Laufwerke mounten kann, ohne dies mit smbmount von Hand zu tun. Ich
> habe diverse Varianten von einträgen in /etc/fstab versucht - ohne

Weil das Problem hier häufiger zu bestehen scheint poste ich jetzt als
Attachment einfach mal das Startscript, was die Redhat 6.1 zu diesem Zweck
mitliefert. Lösungsansatz ist hier, mit dem awk auf die fstab loszugehen und
sich Einträge mit nfs, ncpfs und smbfs rauszupicken um dann entsprechende
Mountkommandos zu starten.

Gruß
Andre

-------------- next part --------------
#!/bin/bash
#
# netfs         Mount network filesystems.
#
# Authors:	Bill Nottingham <notting at redhat.com>
# 		Miquel van Smoorenburg, <miquels at drinkel.nl.mugnet.org>
#
# chkconfig: 345 25 75
# description: Mounts and unmounts all Network File System (NFS), \
#	       SMB (Lan Manager/Windows), and NCP (NetWare) mount points.

# Source networking configuration.
if [ ! -f /etc/sysconfig/network ]; then
    exit 0
fi

# Source function library.
. /etc/rc.d/init.d/functions

. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0

NFSFSTAB=`grep -v '^#' /etc/fstab | awk '{ if ($3 ~ /^nfs$/ && $4 !~ /noauto/) print $2}'`
SMBFSTAB=`grep -v '^#' /etc/fstab | awk '{ if ($3 ~ /^smbfs$/ && $4 !~ /noauto/) print $2}'`
NCPFSTAB=`grep -v '^#' /etc/fstab | awk '{ if ($3 ~ /^ncpfs$/ && $4 !~ /noauto/) print $2}'`
NFSMTAB=`grep -v '^#' /proc/mounts | awk '{ if ($3 ~ /^nfs$/ ) print $2}'`
SMBMTAB=`grep -v '^#' /proc/mounts | awk '{ if ($3 ~ /^smbfs$/ ) print $2}'`
NCPMTAB=`grep -v '^#' /proc/mounts | awk '{ if ($3 ~ /^ncpfs$/ ) print $2}'`

# See how we were called.
case "$1" in
  start)
        [ -n "$NFSFSTAB" ] && action "Mounting NFS filesystems" mount -a -t nfs
        [ -n "$SMBFSTAB" ] && action "Mounting SMB filesystems" mount -a -t smbfs
        [ -n "$NCPFSTAB" ] && action "Mounting NCP filesystems" mount -a -t ncpfs
	touch /var/lock/subsys/netfs
	action "Mounting other filesystems" mount -a -t nonfs,smbfs,ncpfs
	;;
  stop)
  	[ -n "$NFSMTAB" ] && {
		sig=
		retry=3
		remaining=`awk '!/^#/ && $3 ~ /^nfs/ {print $2}' /proc/mounts`
		while [ -n "$remaining" -a "$retry" -gt 0 ]
		do
			if [ "$retry" -lt 3 ]; then
				action "Unmounting NFS filesystems (retry)" umount -f -a -t nfs
			else
				action "Unmounting NFS filesystems" umount -f -a -t nfs
			fi
			sleep 2
			remaining=`awk '!/^#/ && $3 ~ /^nfs/ {print $2}' /proc/mounts`
			[ -z "$remaining" ] && break
			/sbin/fuser -k -m $sig $remaining >/dev/null
			sleep 5
			retry=$(($retry - 1))
			sig=-9
		done
	}
	[ -n "$SMBMTAB" ] && action "Unmounting SMB filesystems" umount -a -t smbfs
	[ -n "$NCPMTAB" ] && action "Unmounting NCP filesystems" umount -a -t ncpfs
	rm -f /var/lock/subsys/netfs
	;;
  status)
	if [ -f /proc/mounts ] ; then
	        [ -n "$NFSFSTAB" ] && {
		     echo "Configured NFS mountpoints:"
		     for fs in $NFSFSTAB; do echo $fs ; done
		}
	        [ -n "$SMBFSTAB" ] && {
		     echo "Configured SMB mountpoints:"
		     for fs in $SMBFSTAB; do echo $fs ; done
		}
	        [ -n "$NCPFSTAB" ] && {
		     echo "Configured NCP mountpoints:"
		     for fs in $NCPFSTAB; do echo $fs ; done
		}
		[ -n "$NFSMTAB" ] && {
                      echo "Active NFS mountpoints:"
		      for fs in $NFSMTAB; do echo $fs ; done
		}
		[ -n "$SMBMTAB" ] && {
                      echo "Active SMB mountpoints:"
		      for fs in $SMBMTAB; do echo $fs ; done
		}
		[ -n "$NCPMTAB" ] && {
                      echo "Active NCP mountpoints:"
		      for fs in $NCPMTAB; do echo $fs ; done
		}
	else
		echo "/proc filesystem unavailable"
	fi
	;;
  restart)
	$0 stop
	$0 start
	;;
  reload)
        $0 start
	;;
  *)
	echo "Usage: netfs {start|stop|restart|reload|status}"
	exit 1
esac

exit 0

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 232 bytes
Desc: not available
URL: <http://lug-owl.de/pipermail/linux/attachments/19991107/3a082438/attachment.sig>


More information about the Linux mailing list