210 likes | 336 Vues
Explore the intricacies of Network File System (NFS), a pivotal protocol developed by Sun Microsystems in the 1980s. This guide delves into essential concepts like MOUNT negotiations, virtual file systems (VFS), and remote procedure calls (RPC). Learn how NFS facilitates file sharing between DOS/Windows and UNIX applications over a network. Discover the installation and configuration processes on various platforms, essential daemons, and common troubleshooting methods to ensure seamless disk access across systems.
E N D
Remote Disk Access with NFS Vicki Insixiengmay Jonathan Krieger
NFS Background • Developed inside Sun Microsystems in early 1980’s • Based on 2 similar but distinct protocols • MOUNT Initial Negotiation between Server and Client • Determines which file systems are available for mounting • NFS Allows Client to Utilize Files in Directory
NFS Description • Network File System(NFS) • An abbreviation for Network File System, a file format and set of drivers created by Sun Microsystems Incorporated that allows DOS/Windows and UNIX applications to share files on disk drives running under UNIX. NFS relies on remote procedure calls (RPCs) for communication between clients and servers. • Allows any network user to access disk space over a networks. • Incorporates with NIS to access specific file folders for each user
Important NFS Concepts • Virtual File System (VFS) – transparently and automatically redirects for mounted files to the server • Remote Procedure Call (RPC) – used for background mounting of a folder with a file system • Hard Mounting – Continuously trying to remount a file system • Soft Mounting – Repeated RPC failures cause the NFS to fail and not hang
Important NFS Daemons • portmap – manages connections for applications that use the RPC specification • nfs – starts necessary RPC processes • nfslock – allows clients to lock files within the NFS file system • netfs – allows processes running on the client to mount an NFS file system
Installing NFS • RedHat Linux installs NFS by default • Automatically activated when system boots • To check: • rpm –qa | grep nfs • If list is empty, one needs to installed
Configuring NFS on the Server • Needs • portmap • nfs • nfslock • Correctly configured /etc/exports file
Configuring the /etc/exports file • Main NFS configuration file • 2 columns: • 1st Directories made available on the network • 2nd Networks or DNS domains that can access the directories and options • Options include: • ro, rw, no_root_squash, no_subtree_check, sync
The /etc/exports file #/etc/exports /public 134.198.161.101(rw, sync, no_root_squash) /public 134.198.161.102(rw, sync, no_root_squash) /public 134.198.161.103(rw, sync, no_root_squash) /public 134.198.161.104(rw, sync, no_root_squash) /public 134.198.161.254(rw, sync, no_root_squash) • NFS Users Control Panel in Linux
Starting NFS on the Server • Configure required daemons chkconfig –level 35 nfs on chkconfig –level 35 nfslock on chkconfig –level 35 portmap on • Use /etc/init.d to start daemons service portmap start service nfs start service nfslock start • Test NFS rpcinfo –p localhost
Starting NFS on the Client • Configure required daemons chkconfig –level 35 netfs on chkconfig –level 35 nfslock on chkconfig –level 35 portmap on • Use /etc/init.d to start daemons service portmap start service netfs start service nfslock start • Test NFS rpcinfo –p
NFS and DNS • NFS client must have a matching pair of forward and reverse DNS entries • DNS lookup on NFS server for IP address of NFS client must return server name mapping back to original IP address host 134.198.161.103 host 134-198-161-103.research.cs.uofs.edu
NFS Directory Mounting -- Permanent • Insert line into /etc/fstab file #/etc/fstab #Directory Mount Point Type Options Dump FSCK .103:/public /home nfs defaults 0 0 • Create mount directory mkdir /home • Mount onto directory into new directory mount -a
NFS Directory Mounting -- Temporary • No needed /etc/fstab entry mkdir /home ls /home mount –t nfs 134.198.161.103:/public /home ls /home <Listing of Directory>
Deleting a Share • Removing an exported directory from /etc/exports • Client Side: umount /home • Server Side: Exportfs –ua Exportfs -a
Problems • After installing NFS on lab3… • Lab3 mounted • Others NFS on • Errors • port 22: No route to host • Permission denied, server is down • Firewall Problems
Problems • Installing NFS on Gateway • Running FreeBSD • Inserted into rc.conf file nfs_client_enable = “YES” • Source http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/network-nfs.html
References • www.linuxdocs.org • www.linuxhomenetworking.com • www.freebsd.org