Setting Up NFS Services for Sharing directories in Solaris10
NFS, or Network File System, is a server-client protocol for sharing files between computers on a common network. NFS enables you to mount a file system on a remote computer as if it were local to your own system. You can then directly access any of the files on that remote file system. The server and client do not have to use the same operating system. The client system just needs to be running an NFS client compatible with the NFS server.
svcs doesn't really tell anything about what the problem is. In fact, svcs says that it is disabled by an administrator.
Solution
This generally occurs when you try to enable NFS server service without sharing any directory. or file /etc/dfs/dfstab doesn't exists
You need to setup share in the /etc/dfs/dfstab
mkdir /export/test
vi /etc/dfs/dfstab and add:
share -F nfs /export/test
Setting Up NFS Services
How to Start the NFS Services
- Become an administrator.
- Enable the NFS service on the server.Type the following command.This command enables the NFS service.
Note - The NFS server starts automatically when you boot the system. Additionally, any time after the system has been booted, the NFS service daemons can be automatically enabled by sharing the NFS file system.
How to Stop the NFS Services
Problems
svcadm fails to enable nfs/server
When trying to enable nfs/server, you keep getting this message that another entity has disabled the service but I cannot find where the problem is.
Code:
hostname:> svcadm -v enable -s svc:/network/nfs/server svc:/network/nfs/server:default enabled. svcadm: Instance "svc:/network/nfs/server:default" has been disabled by another entity.
Code:
hostname:> svcs -xv nfs/server svc:/network/nfs/server:default (NFS server) State: disabled since Tue Aug 12 19:59:12 2008 Reason: Disabled by an administrator. See: Sun Message ID: SMF-8000-05 See: man -M /usr/share/man -s 1M nfsd Impact: This service is not running.
Solution
This generally occurs when you try to enable NFS server service without sharing any directory. or file /etc/dfs/dfstab doesn't exists
You need to setup share in the /etc/dfs/dfstab
mkdir /export/test
vi /etc/dfs/dfstab and add:
share -F nfs /export/test
Nfs client mount RPC Error: Program not registered.
When trying to mount nfs partition in nfs client, you keep getting this message that Nfs client mount RPC Error: Program not registered.
Solution
This generally occurs when you try to mount NFS partition without sharing any directory from server or due to access restriction in server.
On NFS client, check the output of:
It should show some shared directory as shown in output below
Code:
# mount -t nfs 10.10.4.150:/data/pops_sva /mnt mount: mount to NFS server '10.10.4.150' failed: RPC Error: Program not registered. #
This generally occurs when you try to mount NFS partition without sharing any directory from server or due to access restriction in server.
On NFS client, check the output of:
It should show some shared directory as shown in output below
Code:
showmount -e <ip of server> rpcinfo -p <ip of server> e.g. bash-3.2# showmount -e 172.16.10.11 export list for 172.16.10.11: /share (everyone)
If output of 'showmount' command is blank or specific IP then you need to check settings on server or share it to client IP
1st at server end run these command mkdir /share vi /etc/dfs/dfstab (Add below line) /usr/sbin/share -F nfs -o rw -d "" /share svcadm -v restart -s svc:/network/nfs/server << For Public Share /usr/sbin/share -F nfs -o ro=192.168.111.10/32 -d "" /share << For Specific IP Share showmount -e 1.2.3.4 (your ip address=1.2.3.4 change as per ur req)
now at client machine showmount -e 1.2.3.4 mkdir /share2 mount -t nfs 1.2.3.4:/share /share2 ls /share2 (share2 will list the contents of Server share)
Comments