Server for NFS
Microsoft Server for NFS (Services for UNIX Version 1.0) is a 32-bit, Windows-based, multithreaded kernel program that is integrated into Windows NT. It enables users to share files in a mixed environment of computers, operating systems, and networks. Server for NFS enables a computer running the Microsoft Windows operating system to act as an NFS server. File access and administrative tasks are performed through the Windows NT interface. Administrative tasks for NFS are performed through a configuration utility.
Server for NFS uses the NFS protocol, which is based on the Open Network Computing Remote Procedure Call (ONC-RPC). Remote calls from clients appear to run locally, but run on the server. The Open Network Computing External Data Representation (ONC-XDR) protocol ensures portable data transmission betweeen NFS clients and the NFS server.
Sun Microsystems developed NFS and its associated protocols. Its architecture is shown in Figure 11.1.
Figure 11.1 NFS Architecture
Server for NFS supports the following features:
Remote File Access After Services for UNIX is installed on a Windows NT server, that server can make Windows directories and files accessible to NFS clients. Access control provides read, read-write, root and "no access" permissions to clients. Individual file permissions are controlled by Windows NT file permissions.
Global Permissions NFS clients can be grouped. NFS share access can be controlled by either using names of clients or names of groups. This is a convenient way of controlling access for a group of computers. The available permissions include no access, read-only, read/write, and root access.
Security Permissions Server for NFS is configurable for NTFS security permissions, including permissions mapping between UNIX and Windows.
User and Group Mapping In order to provide security on Windows NT files that are accessed from UNIX, Server for NFS requires the system administrator to map UNIX user or group accounts to Windows NT user or group accounts. Users are then given the same access rights under UNIX that they have under Windows NT. Alternately, sites with less stringent security needs can bypass the mapping procedure and treat all UNIX users as anonymous users.
Read and Write Buffer Size The buffer size can be managed to improve performance.
NFS Threads The number of threads can be set so that a reasonable number of NFS service requests can be handled. The maximum number of threads permitted is 512.
Caching of Inode and Directory Information The caching of the inode, which contains file attribute information, and of the directory name lookup information, which contains the paths of recently accessed directories, on the NFS server can reduce the number of system calls to the server. This can improve performance. The size of these caches can be configured by using Server for NFS.
Symbolic Links Server for NFS can be configured to support symbolic links.
File Locking File locking can be enabled either for NFS clients only (advisory locking) or for both NFS clients and Windows NT users (mandatory locking).
File Name Case Resolution Server for NFS can be configured to resolve conflicts that arise between NFS file names and NTFS, file allocation table (FAT), or CD-ROM file system (CDFS) file names as a result of case-sensitivity issues. File names can be converted to uppercase or lowercase, or case can be ignored. A translation file can be used to translate valid UNIX characters into a different character sequence. For example, Windows 2000-based computers do not permit file names to contain colons, but you can use a translation file to select a sequence of valid character to be used as a replacement for any colons that appear in a file name from a UNIX-based computer.
NFS Version 2 and Version 3 Server for NFS can be configured to use either NFS version.
Data Transport Using TCP or UDP Services for UNIX uses UDP for data transport by default. Server for NFS can be configured to use TCP, which is more reliable and has greater overhead.
Troubleshooting Tools Services for UNIX provides the showmount and rpcinfo commands for use in troubleshooting NFS problems.