nfsd.init 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #!/bin/sh
  2. #PKG nfs-utils-server
  3. #INIT 70
  4. . /etc/rc.conf
  5. case $1 in
  6. autostop) ;;
  7. autostart)
  8. test x"${rpcbind:-NO}" = x"NO" && exit 0
  9. test x"${nfsd:-NO}" = x"NO" && exit 0
  10. test x"$nfsd" = x"DAEMON" && test -x /bin/mksh && exec mksh -T- $0 start
  11. exec sh $0 start
  12. ;;
  13. start)
  14. mkdir -p /var/lib/nfs/v4recovery
  15. touch /var/lib/nfs/rmtab
  16. touch /var/lib/nfs/etab
  17. touch /var/lib/nfs/xtab
  18. touch /var/lib/nfs/sm
  19. mount -t nfsd nfsd /proc/fs/nfsd
  20. chown nfs:nfs /var/lib/nfs/sm
  21. /usr/sbin/nfsd 4
  22. /usr/sbin/mountd
  23. exportfs -a
  24. if [ ${nfs_server_version} -eq 4 ];then
  25. mkdir -p /var/lib/nfs/rpc_pipefs
  26. mount -t rpc_pipefs rpc_pipefs /var/lib/nfs/rpc_pipefs
  27. /usr/sbin/idmapd
  28. /usr/sbin/svcgssd
  29. fi
  30. ;;
  31. stop)
  32. kill $(pgrep -f /usr/sbin/mountd)
  33. umount /proc/fs/nfsd
  34. if [ ${nfs_server_version} -eq 4 ];then
  35. kill $(pgrep -f /usr/sbin/idmapd)
  36. kill $(pgrep -f /usr/sbin/svcgssd)
  37. umount /var/lib/nfs/rpc_pipefs
  38. fi
  39. ;;
  40. restart)
  41. sh $0 stop
  42. sh $0 start
  43. ;;
  44. *)
  45. echo "Usage: $0 {start | stop | restart}"
  46. exit 1
  47. ;;
  48. esac
  49. exit $?