NFSv4 Introduction

From Linux NFS

(Difference between revisions)
Jump to: navigation, search
(Features)
 
(15 intermediate revisions not shown)
Line 1: Line 1:
= NFSv4 =
= NFSv4 =
-
'''NFSv4''' is a new generation of network filesystems. It is designed to be run over internet, and so, it get this capabilities :
+
'''NFSv4''' is a new generation of network filesystems. It is designed to be run over internet, and it has these capabilities :
* [[#Security|Strong security]]
* [[#Security|Strong security]]
* [[#Network_optimisations|Network optimisations]]
* [[#Network_optimisations|Network optimisations]]
Line 9: Line 9:
= Features =
= Features =
==Security ==
==Security ==
 +
 +
NFSv4 is can be secured via one of three types of security "flavors":
 +
*[[Enduser_doc_kerberos|Kerberos]]
 +
*SPKM
 +
*LIPKEY
 +
 +
For each flavor, there may be multiple implementations.  For instance, with Kerberos there are both "MIT Kerberos", and "Heimdal Kerberos".
 +
 +
=== Kerberos and NFSv4 ===
 +
 +
Setup instructions for kerberos/NFSv4 are [[Enduser_doc_kerberos|here]]
 +
==Network optimisations==
==Network optimisations==
 +
==Interoperability==
==Interoperability==
 +
==IPv6 support for the client==
==IPv6 support for the client==
 +
Here is a short description to explain how to have an IPv6 ready client for NFSv2,v3 and v4.
 +
For further information about the IPv6 support design, please look '''[http://nfsv4.bullopensource.org/doc/nfs_ipv6.php here]'''
 +
 +
<h4>TI-RPC library</h4>
 +
The ti-rpc library is designed to replace sunrpc library. It is necessary to do Remote Procedures Calls regardless of the transport used.
 +
 +
Download the tirpc tarball: '''[http://nfsv4.bullopensource.org/patches/nfs-ipv6/libtirpc-0.1.7.tar.bz2 libtirpc-0.1.7.tar.bz2]'''
 +
 +
Build and install:
 +
 +
> ./configure
 +
> make
 +
> make install
 +
 +
<h4>Kernel patches</h4>
 +
Dowload the cumulative patch: '''[http://nfsv4.bullopensource.org/patches/nfs-ipv6/linux-2.6.11-ALL.patch linux-2.6.11-ALL.patch]'''
 +
 +
In the kernel source directory:
 +
 +
> patch -p1 < linux-2.6.11-NFS-IPv6-client.patch
 +
 +
<h4>User part patches</h4>
 +
Download nfs-utils tarball with IPv6 support included: '''[http://nfsv4.bullopensource.org/patches/nfs-ipv6/util-linux-2.12-IPv6.tar.bz2 util-linux-2.12-3-IPv6.tar.bz2]'''
 +
<br>or
 +
 +
Download the util-linux-2.12 tarball: '''[http://www.citi.umich.edu/projects/nfsv4/linux/util-linux-tarballs/util-linux-2.12.tar.gz util-linux-2.12.tar.gz]'''
 +
 +
Download and apply the util-linux-2.12-CITI_NFS4_ALL-3 patchset '''[http://www.citi.umich.edu/projects/nfsv4/linux/util-linux-patches/2.12-3/util-linux-2.12-CITI_NFS4_ALL-3.dif util-linux-2.12-CITI_NFS4_ALL-3.dif]'''
 +
 +
In util-linux-2.12 directory:
 +
 +
> patch -p1 < util-linux-2.12-CITI_NFS4_ALL-3.dif
 +
 +
Download and apply cumulative patch for util-linux-2.12 : '''[http://nfsv4.bullopensource.org/patches/nfs-ipv6/util-linux-2.12-IPv6.patch util-linux-2.12-IPv6.patch]'''
 +
<br>In util-linux-2.12 directory:
 +
 +
> patch -p1 < util-linux-2.12-IPv6.patch
 +
 +
Build and install new nfs client commands:
 +
 +
> make
 +
> make install
 +
 +
<h4>Related links</h4>
 +
'''[http://nfsv4.bullopensource.org/doc/tirpc_rpcbind.php TI-RPC library and rpcbind support]'''<br>
 +
'''[http://nfsv4.bullopensource.org/doc/nfs_ipv6.php IPv6 support in NFS (client and server general design)]'''<br>
 +
'''[http://nfsv4.bullopensource.org/patches/nfs-ipv6-4/index.php Current status and download]'''<br>
 +
'''[http://nfsv4.bullopensource.org/patches/nfs-ipv6-4/IPv6-test-plan.php IPv6 support testing]'''<br>
 +
'''[http://www.ietf.org/rfc/rfc3493.txt Basic Socket Interface Extensions for IPv6 (RFC_3493)]'''<br>
= Linux configuration =
= Linux configuration =
 +
 +
* [[nfsv4_configuration|English documentation]]
 +
* [[nfsv4_configuration_fr|Documentation Française]]
 +
 +
[[Category:File sharing]]
 +
[[Category:NFSv4]]

Latest revision as of 05:33, 10 June 2010

Contents

NFSv4

NFSv4 is a new generation of network filesystems. It is designed to be run over internet, and it has these capabilities :


Features

Security

NFSv4 is can be secured via one of three types of security "flavors":

For each flavor, there may be multiple implementations. For instance, with Kerberos there are both "MIT Kerberos", and "Heimdal Kerberos".

Kerberos and NFSv4

Setup instructions for kerberos/NFSv4 are here

Network optimisations

Interoperability

IPv6 support for the client

Here is a short description to explain how to have an IPv6 ready client for NFSv2,v3 and v4. For further information about the IPv6 support design, please look here

TI-RPC library

The ti-rpc library is designed to replace sunrpc library. It is necessary to do Remote Procedures Calls regardless of the transport used.

Download the tirpc tarball: libtirpc-0.1.7.tar.bz2

Build and install:

> ./configure
> make
> make install

Kernel patches

Dowload the cumulative patch: linux-2.6.11-ALL.patch

In the kernel source directory:

> patch -p1 < linux-2.6.11-NFS-IPv6-client.patch

User part patches

Download nfs-utils tarball with IPv6 support included: util-linux-2.12-3-IPv6.tar.bz2
or

Download the util-linux-2.12 tarball: util-linux-2.12.tar.gz

Download and apply the util-linux-2.12-CITI_NFS4_ALL-3 patchset util-linux-2.12-CITI_NFS4_ALL-3.dif

In util-linux-2.12 directory:

> patch -p1 < util-linux-2.12-CITI_NFS4_ALL-3.dif

Download and apply cumulative patch for util-linux-2.12 : util-linux-2.12-IPv6.patch
In util-linux-2.12 directory:

> patch -p1 < util-linux-2.12-IPv6.patch

Build and install new nfs client commands:

> make
> make install

Related links

TI-RPC library and rpcbind support
IPv6 support in NFS (client and server general design)
Current status and download
IPv6 support testing
Basic Socket Interface Extensions for IPv6 (RFC_3493)

Linux configuration

Personal tools