diff options
author | dougb <dougb@FreeBSD.org> | 2001-10-19 06:50:52 +0000 |
---|---|---|
committer | dougb <dougb@FreeBSD.org> | 2001-10-19 06:50:52 +0000 |
commit | 2d4b0d066d5e32c2701543e212e460819076cf93 (patch) | |
tree | 5a57b7cd7dc4e20b37f96bec6cef5dca0ffdacce /etc/network.subr | |
parent | ad52e8338dc5073d23b96860d4f52e3df9cfe998 (diff) | |
download | FreeBSD-src-2d4b0d066d5e32c2701543e212e460819076cf93.zip FreeBSD-src-2d4b0d066d5e32c2701543e212e460819076cf93.tar.gz |
Handle the lack of nfs server or client support in the kernel by
kldload'ing the appropriate modules before enabling the service.
Diffstat (limited to 'etc/network.subr')
-rw-r--r-- | etc/network.subr | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/etc/network.subr b/etc/network.subr index 67c88a0..8f3f5a6 100644 --- a/etc/network.subr +++ b/etc/network.subr @@ -605,7 +605,16 @@ network_pass3() { [Yy][Ee][Ss]) case ${nfs_server_enable} in [Yy][Ee][Ss]) - if [ -r /etc/exports ]; then + # Handle absent nfs server support + nfsserver_in_kernel=0 + if sysctl vfs.nfsrv >/dev/null 2>&1; then + nfsserver_in_kernel=1 + else + kldload nfsserver && nfsserver_in_kernel=1 + fi + + if [ -r /etc/exports -a \ + ${nfsserver_in_kernel} -eq 1 ]; then echo -n ' mountd' case ${weak_mountd_authentication} in @@ -636,6 +645,8 @@ network_pass3() { echo -n ' rpc.statd'; rpc.statd ;; esac + else + echo -n ' Warning: nfs server failed' fi ;; *) |