8. Using Linux NFS with Other OSesEvery operating system, Linux included, has quirks and deviations in the behavior of its NFS implementation -- sometimes because the protocols are vague, sometimes because they leave gaping security holes. Linux will work properly with all major vendors' NFS implementations, as far as we know. However, there may be extra steps involved to make sure the two OSes are communicating clearly with one another. This section details those steps. In general, it is highly ill-advised to attempt to use a Linux machine with a kernel before 2.2.18 as an NFS server for non-Linux clients. Implementations with older kernels may work fine as clients; however if you are using one of these kernels and get stuck, the first piece of advice we would give is to upgrade your kernel and see if the problems go away. The user-space NFS implementations also do not work well with non-Linux clients. Following is a list of known issues for using Linux together with major operating systems. 8.1. AIX8.1.1. Linux Clients and AIX ServersThe format for the /etc/exports file for our example in Section 3 is:
8.1.2. AIX clients and Linux ServersAIX uses the file /etc/filesystems instead of /etc/fstab. A sample entry, based on the example in Section 4, looks like this:
8.2. BSD8.2.1. BSD servers and Linux clientsBSD kernels tend to work better with larger block sizes. 8.2.2. Linux servers and BSD clientsSome versions of BSD may make requests to the server from insecure ports, in which case you will need to export your volumes with the insecure option. See the man page for exports(5) for more details. 8.3. Tru64 Unix8.3.1. Tru64 Unix Servers and Linux ClientsIn general, Tru64 Unix servers work quite smoothly with Linux clients. The format for the /etc/exports file for our example in Section 3 is:
(The root option is listed in the last entry for informational purposes only; its use is not recommended unless necessary.) Tru64 checks the /etc/exports file every time there is a mount request so you do not need to run the exportfs command; in fact on many versions of Tru64 Unix the command does not exist. 8.3.2. Linux Servers and Tru64 Unix ClientsThere are two issues to watch out for here. First, Tru64 Unix mounts using Version 3 NFS by default. You will see mount errors if your Linux server does not support Version 3 NFS. Second, in Tru64 Unix 4.x, NFS locking requests are made by daemon. You will therefore need to specify the insecure_locks option on all volumes you export to a Tru64 Unix 4.x client; see the exports man pages for details. 8.4. HP-UX8.4.1. HP-UX Servers and Linux ClientsA sample /etc/exports entry on HP-UX looks like this:
8.4.2. Linux Servers and HP-UX ClientsHP-UX diskless clients will require at least a kernel version 2.2.19 (or patched 2.2.18) for device files to export correctly. Also, any exports to an HP-UX client will need to be exported with the insecure_locks option. 8.5. IRIX8.5.1. IRIX Servers and Linux ClientsA sample /etc/exports entry on IRIX looks like this:
There are reportedly problems when using the nohide option on exports to linux 2.2-based systems. This problem is fixed in the 2.4 kernel. As a workaround, you can export and mount lower-down file systems separately. As of Kernel 2.4.17, there continue to be several minor interoperability issues that may require a kernel upgrade. In particular:
8.5.2. IRIX clients and Linux serversIrix versions up to 6.5.12 have problems mounting file systems exported from Linux boxes - the mount point "gets lost," e.g.,
This is known IRIX bug (SGI bug 815265 - IRIX not liking file handles of less than 32 bytes), which is fixed in IRIX 6.5.13. If it is not possible to upgrade to IRIX 6.5.13, then the unofficial workaround is to force the Linux nfsd to always use 32 byte file handles. A number of patches exist - see: 8.6. Solaris8.6.1. Solaris ServersSolaris has a slightly different format on the server end from other operating systems. Instead of /etc/exports, the configuration file is /etc/dfs/dfstab. Entries are of the form of a share command, where the syntax for the example in Section 3 would look like
Solaris servers are especially sensitive to packet size. If you are using a Linux client with a Solaris server, be sure to set rsize and wsize to 32768 at mount time. Finally, there is an issue with root squashing on Solaris: root gets mapped to the user noone, which is not the same as the user nobody. If you are having trouble with file permissions as root on the client machine, be sure to check that the mapping works as you expect. 8.6.2. Solaris ClientsSolaris clients will regularly produce the following message:
This happens because Solaris clients, when they mount, try to obtain ACL information - which Linux obviously does not have. The messages can safely be ignored. There are two known issues with diskless Solaris clients: First, a kernel version of at least 2.2.19 is needed to get /dev/null to export correctly. Second, the packet size may need to be set extremely small (i.e., 1024) on diskless sparc clients because the clients do not know how to assemble packets in reverse order. This can be done from /etc/bootparams on the clients. 8.7. SunOSSunOS only has NFS Version 2 over UDP. 8.7.1. SunOS ServersOn the server end, SunOS uses the most traditional format for its /etc/exports file. The example in Section 3 would look like:
Again, the root option is listed for informational purposes and is not recommended unless necessary. 8.7.2. SunOS ClientsBe advised that SunOS makes all NFS locking requests as daemon, and therefore you will need to add the insecure_locks option to any volumes you export to a SunOS machine. See the exports man page for details. Linux HOWTO full list |
|||||||||||||||||||
|
This document, LDP HOWTO-INDEX, is copyrighted (c) 1995 - 2002 by Tim Bynum, Guylhem Aznar, Joshua Drake and Greg Ferguson. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is available at http://www.gnu.org/copyleft/fdl.html. If you have questions, please contact the LDP.
Web Design Copyright © 1999-2003. Chrisranjana Software Solutions Pvt Ltd. syndicate rss feed |