S60nfs 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. #!/bin/sh
  2. #
  3. # nfs This shell script takes care of starting and stopping
  4. # the NFS services. Stolen from RedHat FC5.
  5. mkdir -p /var/lock/subsys
  6. mkdir -p /run/nfs/sm
  7. mkdir -p /run/nfs/sm.bak
  8. touch /run/nfs/rmtab
  9. CFG_FILE=/etc/default/nfsd
  10. NR_THREADS=2
  11. if [ -f "${CFG_FILE}" ]; then
  12. . "${CFG_FILE}"
  13. fi
  14. start() {
  15. # Start daemons.
  16. printf "Starting NFS statd: "
  17. rpc.statd
  18. [ $? = 0 ] && echo "OK" || echo "FAIL"
  19. touch /var/lock/subsys/nfslock
  20. printf "Starting NFS services: "
  21. /usr/sbin/exportfs -r
  22. [ $? = 0 ] && echo "OK" || echo "FAIL"
  23. printf "Starting NFS daemon: "
  24. rpc.nfsd ${NR_THREADS}
  25. [ $? = 0 ] && echo "OK" || echo "FAIL"
  26. printf "Starting NFS mountd: "
  27. rpc.mountd
  28. [ $? = 0 ] && echo "OK" || echo "FAIL"
  29. touch /var/lock/subsys/nfs
  30. }
  31. stop() {
  32. # Stop daemons.
  33. printf "Shutting down NFS mountd: "
  34. killall -q rpc.mountd 2>/dev/null
  35. [ $? = 0 ] && echo "OK" || echo "FAIL"
  36. printf "Shutting down NFS daemon: "
  37. killall -q nfsd 2>/dev/null
  38. [ $? = 0 ] && echo "OK" || echo "FAIL"
  39. printf "Shutting down NFS services: "
  40. /usr/sbin/exportfs -au
  41. [ $? = 0 ] && echo "OK" || echo "FAIL"
  42. printf "Stopping NFS statd: "
  43. killall -q rpc.statd 2>/dev/null
  44. [ $? = 0 ] && echo "OK" || echo "FAIL"
  45. rm -f /var/lock/subsys/nfs
  46. rm -f /var/run/rpc.statd.pid
  47. rm -f /var/lock/subsys/nfslock
  48. }
  49. # See how we were called.
  50. case "$1" in
  51. start)
  52. start
  53. ;;
  54. stop)
  55. stop
  56. ;;
  57. restart)
  58. stop
  59. start
  60. ;;
  61. reload)
  62. /usr/sbin/exportfs -r
  63. touch /var/lock/subsys/nfs
  64. ;;
  65. *)
  66. echo "Usage: $0 {start|stop|restart|reload}"
  67. exit 1
  68. esac
  69. exit 0