If you re sharing files between Linux and Unix computers, the standard service is the Network File System (NFS). Running NFS requires starting several /etc/rc.d/init.d scripts, including nfs , nfslock , and portmap . NFS directories are shared through /etc/exports and posted with the exportfs command. NFS communication can be blocked through TCP/IP ports 111 and 2049 by iptables firewalls as well as TCP Wrappers rules in /etc/ hosts .allow and /etc/hosts.deny .
Once you ve shared a directory through NFS, you can mount it from an NFS client computer. The showmount -e NFSserver command lists shared directories. You mount an NFS server just like any other local or remote directory. Be sure to configure the mount in /etc/fstab in ways that do not "hang" when the NFS server is not available.
As NFS shares directories with other Linux and Unix computers, the Network Information Service (NIS) shares configuration files with Linux and Unix computers. For example, you can use NIS to create a single database of usernames and passwords by converting an /etc/passwd and /etc/groups file on a server into a single shared database. You need to define an NIS domain name and shared files in /var/yp/Makefile . Once your Makefile is ready, you can convert it to a database with ypinit; changes can be processed with the make command in the /var/yp directory. Slave servers can also be configured with ypinit and refreshed with yppush .
Configuring an NIS client is relatively easy; just ypbind it to the appropriate server. Alternatively, you can use the authconfig command Once you ve connected, NIS client commands let you look through the available databases. Finally, /etc/nsswitch.conf , properly configured, points your NIS client computer to the appropriate database on your NIS server.
In the next chapter , we ll examine Samba, which allows you to share files and directories with Linux, Unix, and Microsoft Windows computers.