3a61bacdcb
The NFS server needs to create files in /var/lock/subsys/, but this directory doesn't exist in our skeleton. This commit makes sure it gets created by the S60nfs startup script, which fixes the operation of the NFS server (tested with rpcbind). Reported-by: Ofer Heifetz <oferh@marvell.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
91 lines
1.7 KiB
Bash
Executable File
91 lines
1.7 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# nfs This shell script takes care of starting and stopping
|
|
# the NFS services. Stolen from RedHat FC5.
|
|
|
|
[ -x /usr/sbin/rpc.statd ] || exit 0
|
|
[ -x /usr/sbin/rpc.nfsd ] || exit 0
|
|
[ -x /usr/sbin/rpc.mountd ] || exit 0
|
|
[ -x /usr/sbin/exportfs ] || exit 0
|
|
|
|
# Don't fail if /etc/exports doesn't exist; create a bare-bones version and continue.
|
|
[ -r /etc/exports ] || \
|
|
{ touch /etc/exports && chmod u+rw,g+r,o+r /etc/exports ; } || \
|
|
{ echo "/etc/exports does not exist" ; exit 0 ; }
|
|
|
|
# The /var/lib/nfs directory is actually on a tmpfs filesystem.
|
|
mkdir -p /var/lib/nfs/sm
|
|
mkdir -p /var/lib/nfs/sm.bak
|
|
mkdir -p /var/lock/subsys
|
|
touch /var/lib/nfs/etab
|
|
touch /var/lib/nfs/rmtab
|
|
touch /var/lib/nfs/state
|
|
touch /var/lib/nfs/xtab
|
|
|
|
start() {
|
|
# Start daemons.
|
|
echo -n "Starting NFS statd: "
|
|
rpc.statd
|
|
touch /var/lock/subsys/nfslock
|
|
echo "done"
|
|
|
|
echo -n "Starting NFS services: "
|
|
/usr/sbin/exportfs -r
|
|
rpc.statd
|
|
echo "done"
|
|
|
|
echo -n "Starting NFS daemon: "
|
|
rpc.nfsd 2
|
|
echo "done"
|
|
|
|
echo -n "Starting NFS mountd: "
|
|
rpc.mountd
|
|
echo "done"
|
|
touch /var/lock/subsys/nfs
|
|
}
|
|
|
|
stop() {
|
|
# Stop daemons.
|
|
echo -n "Shutting down NFS mountd: "
|
|
killall -q rpc.mountd
|
|
echo "done"
|
|
|
|
echo "Shutting down NFS daemon: "
|
|
kill -9 `pidof nfsd` 2>/dev/null
|
|
echo "done"
|
|
|
|
echo -n "Shutting down NFS services: "
|
|
/usr/sbin/exportfs -au
|
|
rm -f /var/lock/subsys/nfs
|
|
killall -q rpc.statd
|
|
echo "done"
|
|
|
|
echo -n "Stopping NFS statd: "
|
|
killall -q rpc.statd
|
|
echo "done"
|
|
rm -f /var/lock/subsys/nfslock
|
|
}
|
|
|
|
# See how we were called.
|
|
case "$1" in
|
|
start)
|
|
start
|
|
;;
|
|
stop)
|
|
stop
|
|
;;
|
|
restart)
|
|
stop
|
|
start
|
|
;;
|
|
reload)
|
|
/usr/sbin/exportfs -r
|
|
touch /var/lock/subsys/nfs
|
|
;;
|
|
*)
|
|
echo "Usage: nfs {start|stop|reload}"
|
|
exit 1
|
|
esac
|
|
|
|
exit 0
|