Configuration of NFS Server (v1.x) for NetWare
Novell Cool Solutions: Trench
By Kenneth Pont
Digg This -
Posted: 14 Jan 2002
Kenneth Pont has his sleeves rolled up again. And that can only mean one thing -- he's breathing new life into legacy products. In this piece, Kenneth shares his success configuring and maintaining NFS Server 1.2c on NetWare 3.x.
The purpose of this document is to outline the method for configuring and maintaining NFS Server 1.2c, which is still in heavy use on today's NetWare 3.x servers being used as NFS servers. This document is not intended to be used as a guide for installation; as both NetWare 3.x and NFS Server 1.x have been retired by Novell. This document is intended to allow the continued usability and maintenance beyond the product's End of Life.
Novell NFS Server version 1.x is intended for use in a Bindery environment. While there is recorded success with getting this service to function on NetWare servers as late as NetWare 4.2, this is only possible if the server is running Bindery Emulation and has both the user/group and server within its Bindery Context. The NFS services require host addresses to be entered and maintained in the SYS:ETC\HOSTS file, as this file is only read on the loading of the TCPIP.NLM module; any changes to the hosts would require the server to be rebooted before those changes take effect.
For any UNIX host to be capable of mounting and accessing the NFS export on a NFS Server (v 1.x), that server's IP address must exist in the SYS:ETC\HOSTS file and must be given "Trusted Hosts" status in the SYS:ETC\EXPORTS file. User and group information is maintained between the servers and does not require a restart of services to implement changes.
In many cases, the exports list of "Trusted Hosts" or servers with root access exceed the maximum character limit of the NFSADMIN.NLM utility screen; any modification when this is the case has been noted to truncate these hosts to only those visible in the utility window. For that reason, a third-party text editor must be used for exports beyond that limit. That utility MUST understand UNIX text file formatting (vs. DOS text file formatting); this limitation excludes the direct editing of this file by any Microsoft product (namely Notepad, WordPad or DOS EDIT). USE OF THESE PRODUCTS WILL DAMAGE THIS FILE! To date, the vi or vim (for Vi Improved) will properly edit this file, vi being a familiar editor in the UNIX world; the vim utility is a GPL licensed product and the latest version is available for download from http://www.vim.org (a Windows version of this editor is available without the need to compile source). The reason (and the difference between a UNIX text file and a DOS text file) is that the UNIX format depicts a new line with one byte while a DOS format depicts a new line with two bytes; this difference will cause files written on each platform to note certain inconsistencies on the other platform (and in our usage, can cause sporadic services and server ABENDs).
Edit SYS:ETC\HOSTS file and ensure the desired host is listed with the correct address; if not, create an entry in the hosts file with the appropriate information. Each new line is a new entry in the hosts list; the format is dotted IP address, followed by the host's hostname and separated by either spaces or a tab (multiple names can be used but IP addresses SHOULD NEVER BE REPEATED ON ANOTHER LINE)
10.0.0.1 thisname thatname
Edit the SYS:ETC\EXPORTS file and assure desired hostname is listed in the "Trusted Hosts" and possibly hosts with root access. SEE WARNING ABOVE CONCERNING THE USE OF MICROSOFT EDITORS. Each new line is a new entry in the exports list.
/volume/directory -access=thisname thatname, -root=thisname thatname, -trustee_rights=create, -dos_attributes=nomodify
There is a lot of information in this one line.
NOTE: this line is NOT limited in length to 80 characters; in vim this may wrap several times to complete this one line (another reason Microsoft editors, which are notorious for chopping word wrapped lines, MUST be avoided.)
/volume/directory is the export path (NOTE the use of the forward slash vs. the backslash)
-access=? is the "Trusted Hosts", format is a space-separated list of hostnames, this list is terminated with the comma.
-root=? is the hosts with root access, format is the same as the "Trusted Hosts" list and is terminated with the comma.
-trustee_rights= sets whether the trustee rights are to be created through NFS to emulate UNIX host permissions
-dos_attributes= sets whether the DOS attributes can be modified from the UNIX host using the chmod command
Using NFSADMIN.NLM (or a UNIX formatting text editor), modify the SYS:ETC\USERS and SYS:ETC\GROUPS files, entering the NFS uid and the same uid of the UNIX host's /etc/passwd and /etc/groups files specify (use only those users and groups necessary to make application or reason to use NFS work). In NFSADMIN.NLM, press insert and enter the uid/gid and press enter, then enter the NetWare user or group name and press enter again.
Exit the NFSADMIN (if open) and close your text editor, then reboot the server. When the NetWare server restarts, NFS mounts the exported file system from the UNIX host.
Troubleshoot any failures using the appropriate UNIX diagnostics utilities.
Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com