All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Taylor, ForrestX" <forrestx.taylor@intel.com>
To: Ian Kent <raven@themaw.net>
Cc: autofs mailing list <autofs@linux.kernel.org>
Subject: Re: autofs v4 maintainer request
Date: Mon, 18 Aug 2003 13:26:10 -0700	[thread overview]
Message-ID: <3F413662.2010209@intel.com> (raw)
In-Reply-To: Pine.LNX.4.44.0308182102250.977-100000@raven.themaw.net

[-- Attachment #1: Type: text/plain, Size: 647 bytes --]

Ian Kent wrote:
> Ignorant of me to ignore existing 4.0.0 users. I appologise.
> 
> It's been a long time since I have worked with the original 4.0.0 
> distribution so I will need input from people that are using it.
> 
> Could everyone post bug reports and send any patches to me. Please 
> include some indication of priority such as show stopper, nice to have 
> etc. I will attempt to solve the problems and merge any patches.

Here is a patch that I use that contains mostly Red Hat-specific 
changes.  This includes starting autofs after NIS, and stopping autofs 
before NFS, as well as changing the directory to /etc/init.d.

Forrest
-- 


[-- Attachment #2: autofs.patch --]
[-- Type: text/plain, Size: 6392 bytes --]

diff -urN autofs-4.0.0pre10/autofs.spec autofs-4.0.0pre10.new/autofs.spec
--- autofs-4.0.0pre10/autofs.spec	2001-03-27 21:08:23.000000000 -0800
+++ autofs-4.0.0pre10.new/autofs.spec	2003-08-18 12:54:59.000000000 -0700
@@ -4,6 +4,7 @@
 %define version 4.0.0pre10
 Version: %{version}
 Release: 1
+Epoch: 2
 Copyright: GPL
 Group: Networking/Daemons
 Source: ftp://ftp.kernel.org/pub/linux/daemons/autofs/autofs-%{version}.tar.gz
@@ -49,7 +50,7 @@
 
 %install
 rm -rf $RPM_BUILD_ROOT
-mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d
+mkdir -p $RPM_BUILD_ROOT/etc/init.d
 mkdir -p $RPM_BUILD_ROOT/usr/sbin
 mkdir -p $RPM_BUILD_ROOT/usr/lib/autofs
 mkdir -p $RPM_BUILD_ROOT/usr/man/man5
@@ -65,16 +66,34 @@
 
 %post
 chkconfig --add autofs
+echo "alias autofs autofs4" >> /etc/modules.conf
+AUTOFSMOD=`/sbin/lsmod | grep 'autofs '`
+if [[ $AUTOFSMOD ]];then
+	# XXX We need to rmmod the old autofs, and stop autofs,
+	# but we can't do it here.
+	#rmmod
+	echo
+	echo "Autofs appears to be running.  Please stop autofs and rmmod the module."
+	echo "(I.e.,  /sbin/service autofs stop"
+	echo "        /sbin/rmmod autofs"
+	echo "        /sbin/service autofs start )"
+	echo
+fi
 
-%postun
-if [ "$1" = 0 ] ; then
-  chkconfig --del autofs
+%preun
+/sbin/service autofs stop
+if [ $1 = 0 ] ; then
+  /sbin/chkconfig --del autofs
+  /sbin/rmmod autofs4
 fi
+cp /etc/modules.conf /etc/modules.conf.autofs
+cat /etc/modules.conf | grep -v "alias autofs autofs4" > /etc/modules.conf.new
+mv /etc/modules.conf.new /etc/modules.conf
 
 %files
 %defattr(-,root,root)
 %doc COPYRIGHT NEWS README TODO
-%config /etc/rc.d/init.d/autofs
+%config /etc/init.d/autofs
 %config(missingok) /etc/auto.master
 %config(missingok) /etc/auto.misc
 %config(missingok) /etc/auto.net
@@ -105,6 +124,14 @@
 
 # RedHat logs:
 
+* Mon Aug 18 2003 Forrest Taylor <forrestx.taylor@intel.com>
+- Added nonstrict to auto.net
+- Changed start and stop sequence.  Autofs needs to start after NIS and stop before NFS.
+- Changed %postun to %preun in the specfile so that /etc/init.d/autofs is still there when trying to chkconfig --del autofs.
+- Changed /etc/rc.d/init.d/ to /etc/init.d/
+- Added Epoch 2 to specfile so that one can upgrade from autofs-3 from Red Hat.
+- Add module alias to /etc/modules.conf
+
 * Tue Oct  6 1998 Bill Nottingham <notting@redhat.com>
 - fix bash2 breakage in init script
 
diff -urN autofs-4.0.0pre10/samples/auto.net autofs-4.0.0pre10.new/samples/auto.net
--- autofs-4.0.0pre10/samples/auto.net	2001-03-27 21:08:23.000000000 -0800
+++ autofs-4.0.0pre10.new/samples/auto.net	2003-08-18 10:01:17.000000000 -0700
@@ -9,7 +9,7 @@
 
 # add "nosymlink" here if you want to suppress symlinking local filesystems
 # add "nonstrict" to make it OK for some filesystems to not mount
-opts="-fstype=nfs,hard,intr,nodev,nosuid"
+opts="-fstype=nfs,hard,intr,nodev,nosuid,nonstrict"
 
 # Showmount comes in a number of names and varieties.  "showmount" is
 # typically an older version which accepts the '--no-headers' flag
diff -urN autofs-4.0.0pre10/samples/rc.autofs.in autofs-4.0.0pre10.new/samples/rc.autofs.in
--- autofs-4.0.0pre10/samples/rc.autofs.in	2001-03-27 21:08:23.000000000 -0800
+++ autofs-4.0.0pre10.new/samples/rc.autofs.in	2003-08-18 12:36:46.000000000 -0700
@@ -12,7 +12,7 @@
 
 # For Redhat-ish systems
 #
-# chkconfig: 345 15 85
+# chkconfig: 345 61 19
 # description: Automounts filesystems on demand
 
 # This is used in the Debian distribution to determine the proper
@@ -28,7 +28,9 @@
 # Location of the automount daemon and the init directory
 #
 DAEMON=@@sbindir@@/automount
+#DAEMON=/usr/sbin/automount
 initdir=@@initdir@@
+#initdir=/etc/init.d
 
 #
 # Determine which kind of configuration we're using
@@ -61,7 +63,7 @@
 # We can add local options here
 # e.g. localoptions='rsize=8192,wsize=8192'
 #
-localoptions=''
+localoptions='rsize=8192,wsize=8192'
 
 #
 # Daemon options
@@ -138,7 +140,7 @@
 	echo ""
 	echo "Active Mount Points:"
 	echo "--------------------"
-	ps ax|grep "[0-9]:[0-9][0-9] automount " | (
+	ps ax|grep "[0-9]:[0-9][0-9] $DAEMON " | (
 		while read pid tt stat time command; do echo $command; done
 	)
 }
@@ -167,66 +169,80 @@
 #
 # See how we were called.
 #
-case "$1" in
-  start)
+  start() {
 	# Check if the automounter is already running?
 	if [ ! -f /var/lock/subsys/autofs ]; then
 	    echo 'Starting automounter: '
 	    getmounts | sh
 	    touch /var/lock/subsys/autofs
 	fi
-	;;
-  stop)
+  }
+  stop() {
 	pids=$(/sbin/pidof $DAEMON)
 	kill -TERM $pids 2> /dev/null && sleep 1
 	count=1
 	while alive $pids; do
-	    sleep 5
+	    sleep 2
 	    count=$(expr $count + 1)
-	    if [ $count -gt 5 ]; then
+	    if [ $count -gt 10 ]; then
 		echo "Giving up on automounter"
 		break;
 	    fi
 	    echo "Automounter not stopped yet: retrying... (attempt $count)"
 	done
-	if [ $count -gt 1 -a $count -le 10 ]; then
+	if [ $count -ge 1 -a $count -le 10 ]; then
 	    echo "Automounter stopped"
 	fi
 	rm -f /var/lock/subsys/autofs
-	;;
-  reload|restart)
+  }
+  condrestart() {
 	if [ ! -f /var/lock/subsys/autofs ]; then
 		echo "Automounter not running"
 		exit 1
 	fi
 	echo "Checking for changes to /etc/auto.master ...."
+	echo
         TMP1=`mktemp /tmp/autofs.XXXXXX` || { echo "could not make temp file" >& 2; exit 1; }
         TMP2=`mktemp /tmp/autofs.XXXXXX` || { echo "could not make temp file" >& 2; exit 1; }
 	getmounts >$TMP1
-	ps ax|grep "[0-9]:[0-9][0-9] $DAEMON " | (
+	ps ax --sort=-pid|grep "[0-9]:[0-9][0-9] $DAEMON " | (
 	    while read pid tt stat time command; do
 		echo "$command" >>$TMP2
-		if ! grep -q "^$command" $TMP2; then
-			while kill -USR2 $pid; do
-			    sleep 3
-			done
-			echo "Stop $command"
+		if grep -q "^$command" $TMP2; then
+			kill -USR2 $pid
+			    sleep 1
+			echo "Stopping $command"
 		fi
 	    done
+	echo
 	)
 	( while read x; do
 		if ! grep -q "^$x" $TMP2; then
 			$x
-			echo "Start $x"
+			echo "Starting $x"
 		fi
-        done ) < $TMP1
+	  done ) < $TMP1
 	rm -f $TMP1 $TMP2
+  }
+case "$1" in
+  start)
+	start
+	;;
+  stop)
+	stop
+	;;
+  restart)
+	stop
+	start
+	;;
+  condrestart|reload)
+	condrestart
 	;;
   status)
-	status
+	status $DAEMON
 	;;
   *)
-	echo "Usage: $initdir/autofs {start|stop|restart|reload|status}"
+	echo "Usage: $initdir/autofs {start|stop|restart|reload|condrestart|status}"
 	exit 1
 esac
 }
@@ -289,4 +305,4 @@
 	redhat "$@"
 fi
 
-exit 0
+exit $?

[-- Attachment #3: Type: text/plain, Size: 140 bytes --]

_______________________________________________
autofs mailing list
autofs@linux.kernel.org
http://linux.kernel.org/mailman/listinfo/autofs

       reply	other threads:[~2003-08-18 20:26 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <Pine.LNX.4.44.0308182102250.977-100000@raven.themaw.net>
2003-08-18 20:26 ` Taylor, ForrestX [this message]
     [not found] <Pine.LNX.4.44.0308161741530.1538-100000@raven.themaw.net>
     [not found] ` <1061138039.23980.8.camel@ixodes.goop.org>
2003-08-17 21:26   ` autofs v4 maintainer request Jochen Reinwand

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3F413662.2010209@intel.com \
    --to=forrestx.taylor@intel.com \
    --cc=autofs@linux.kernel.org \
    --cc=raven@themaw.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.