wok-6.x annotate nfs-utils/stuff/etc/init.d/nfsd @ rev 25533
nfs-utils: made stop and restart working in /etc/init.d/nfsd
author | Hans-G?nter Theisgen |
---|---|
date | Tue Feb 28 14:41:52 2023 +0100 (16 months ago) |
parents | ff5fd8788cd9 |
children | 23441bc814ae |
rev | line source |
---|---|
pascal@7285 | 1 #!/bin/sh |
al@19161 | 2 # /etc/init.d/nfsd: Start, stop and restart NFS daemon on SliTaz, at boot |
pascal@7285 | 3 # time or with the command line. |
pascal@7285 | 4 # |
pascal@7285 | 5 # To start daemon at boot time, just put the right name in the $RUN_DAEMONS |
pascal@7285 | 6 # variable of /etc/rcS.conf. |
pascal@7285 | 7 # |
Hans-G?nter@25533 | 8 |
pascal@7285 | 9 . /etc/init.d/rc.functions |
pascal@7285 | 10 |
pascal@7285 | 11 NAME=NFSd |
al@19159 | 12 DESC="$(_ '%s daemon' NFS)" |
pascal@7285 | 13 DAEMON=/usr/sbin/rpc.nfsd |
pascal@7285 | 14 PID_FILE=/var/run/nfsd.pid |
Hans-G?nter@25533 | 15 OPTIONS="8" # start 8 threads, default is 1 if omitted |
Hans-G?nter@25533 | 16 . /etc/daemons.conf |
Hans-G?nter@25533 | 17 [ -z "$NFSD_OPTIONS" ] || OPTIONS="$NFSD_OPTIONS" |
pascal@7285 | 18 |
pascal@7285 | 19 case "$1" in |
Hans-G?nter@25533 | 20 (start) |
Hans-G?nter@25533 | 21 if active_pidfile $PID_FILE nfsd |
Hans-G?nter@25533 | 22 then |
Hans-G?nter@25533 | 23 _ '%s is already running.' $NAME |
Hans-G?nter@25533 | 24 exit 1 |
Hans-G?nter@25533 | 25 fi |
Hans-G?nter@25533 | 26 action 'Starting %s: %s...' "$DESC" $NAME |
Hans-G?nter@25533 | 27 # Start rpcbind when not already running: |
Hans-G?nter@25533 | 28 [ -n "$(pidof rpcbind)" ] || rpcbind |
Hans-G?nter@25533 | 29 # Export directories specified in /etc/exports: |
Hans-G?nter@25533 | 30 /usr/sbin/exportfs -r |
Hans-G?nter@25533 | 31 # Start nfsd: |
Hans-G?nter@25533 | 32 $DAEMON $OPTIONS |
Hans-G?nter@25533 | 33 p=$(pidof nfsd) |
Hans-G?nter@25533 | 34 echo "${p%% *}" > $PID_FILE |
Hans-G?nter@25533 | 35 # Start RPC mount daemon: |
Hans-G?nter@25533 | 36 /usr/sbin/rpc.mountd |
Hans-G?nter@25533 | 37 status |
Hans-G?nter@25533 | 38 ;; |
Hans-G?nter@25533 | 39 (stop) |
Hans-G?nter@25533 | 40 if ! active_pidfile $PID_FILE nfsd |
Hans-G?nter@25533 | 41 then |
Hans-G?nter@25533 | 42 _ '%s is not running.' $NAME |
Hans-G?nter@25533 | 43 exit 1 |
Hans-G?nter@25533 | 44 fi |
Hans-G?nter@25533 | 45 action 'Stopping %s: %s...' "$DESC" $NAME |
Hans-G?nter@25533 | 46 # Stop RPC mount daemon: |
Hans-G?nter@25533 | 47 killall -q -KILL rpc.mountd |
Hans-G?nter@25533 | 48 # Stop all threads of nfsd: |
Hans-G?nter@25533 | 49 p=$(pidof nfsd) |
Hans-G?nter@25533 | 50 # remove first pid, supposing it is own pid: |
Hans-G?nter@25533 | 51 p=${p#* } |
Hans-G?nter@25533 | 52 kill -KILL $p |
Hans-G?nter@25533 | 53 # Unexport all exported directories: |
Hans-G?nter@25533 | 54 /usr/sbin/exportfs -au |
Hans-G?nter@25533 | 55 # flush kernel's export table: |
Hans-G?nter@25533 | 56 /usr/sbin/exportfs -f |
Hans-G?nter@25533 | 57 status |
Hans-G?nter@25533 | 58 ;; |
Hans-G?nter@25533 | 59 (restart) |
Hans-G?nter@25533 | 60 if ! active_pidfile $PID_FILE nfsd |
Hans-G?nter@25533 | 61 then |
Hans-G?nter@25533 | 62 _ '%s is not running.' $NAME |
Hans-G?nter@25533 | 63 exit 1 |
Hans-G?nter@25533 | 64 fi |
Hans-G?nter@25533 | 65 action 'Restarting %s: %s...' "$DESC" $NAME |
Hans-G?nter@25533 | 66 # Stop RPC mount daemon: |
Hans-G?nter@25533 | 67 killall -q -KILL rpc.mountd |
Hans-G?nter@25533 | 68 # Stop all instances of nfsd: |
Hans-G?nter@25533 | 69 p=$(pidof nfsd) |
Hans-G?nter@25533 | 70 # remove first pid, supposing it is own pid: |
Hans-G?nter@25533 | 71 p=${p#* } |
Hans-G?nter@25533 | 72 kill -KILL $p |
Hans-G?nter@25533 | 73 # Unexport all exported directories: |
Hans-G?nter@25533 | 74 /usr/sbin/exportfs -au |
Hans-G?nter@25533 | 75 # flush kernel's export table: |
Hans-G?nter@25533 | 76 /usr/sbin/exportfs -f |
Hans-G?nter@25533 | 77 # Wait before starting: |
Hans-G?nter@25533 | 78 sleep 2 |
Hans-G?nter@25533 | 79 # Export directories specified in /etc/exports: |
Hans-G?nter@25533 | 80 /usr/sbin/exportfs -r |
Hans-G?nter@25533 | 81 # Start nfsd: |
Hans-G?nter@25533 | 82 $DAEMON $OPTIONS |
Hans-G?nter@25533 | 83 p=$(pidof nfsd) |
Hans-G?nter@25533 | 84 echo "${p%% *}" > $PID_FILE |
Hans-G?nter@25533 | 85 # Start RPC mount daemon: |
Hans-G?nter@25533 | 86 /usr/sbin/rpc.mountd |
Hans-G?nter@25533 | 87 status |
Hans-G?nter@25533 | 88 ;; |
Hans-G?nter@25533 | 89 (*) |
Hans-G?nter@25533 | 90 emsg "<n><b>$(_ 'Usage:')</b> $0 [start|stop|restart]" |
Hans-G?nter@25533 | 91 newline |
Hans-G?nter@25533 | 92 exit 1 |
Hans-G?nter@25533 | 93 ;; |
pascal@7285 | 94 esac |
pascal@7285 | 95 |
pascal@7285 | 96 exit 0 |