Table Of Contents


User Guide

First time using the AWS CLI? See the User Guide for help getting started.

Note: You are viewing the documentation for an older major version of the AWS CLI (version 1).

AWS CLI version 2, the latest major version of AWS CLI, is now stable and recommended for general use. To view this page for the AWS CLI version 2, click here. For more information see the AWS CLI version 2 installation instructions and migration guide.

[ aws . datasync ]



Defines a file system on a Network File System (NFS) server that can be read from or written to.

See also: AWS API Documentation

See 'aws help' for descriptions of global parameters.


--subdirectory <value>
--server-hostname <value>
--on-prem-config <value>
[--mount-options <value>]
[--tags <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]


--subdirectory (string)

The subdirectory in the NFS file system that is used to read data from the NFS source location or write data to the NFS destination. The NFS path should be a path that's exported by the NFS server, or a subdirectory of that path. The path should be such that it can be mounted by other NFS clients in your network.

To see all the paths exported by your NFS server, run "showmount -e nfs-server-name " from an NFS client that has access to your server. You can specify any directory that appears in the results, and any subdirectory of that directory. Ensure that the NFS export is accessible without Kerberos authentication.

To transfer all the data in the folder you specified, DataSync needs to have permissions to read all the data. To ensure this, either configure the NFS export with no_root_squash, or ensure that the permissions for all of the files that you want DataSync allow read access for all users. Doing either enables the agent to read the files. For the agent to access directories, you must additionally enable all execute access.

If you are copying data to or from your Snowcone device, see NFS Server on Snowcone for more information.

For information about NFS export configuration, see 18.7. The /etc/exports Configuration File in the Red Hat Enterprise Linux documentation.

--server-hostname (string)

The name of the NFS server. This value is the IP address or Domain Name Service (DNS) name of the NFS server. An agent that is installed on-premises uses this host name to mount the NFS server in a network.

If you are copying data to or from your Snowcone device, see NFS Server on Snowcone for more information.


This name must either be DNS-compliant or must be an IP version 4 (IPv4) address.

--on-prem-config (structure)

Contains a list of Amazon Resource Names (ARNs) of agents that are used to connect to an NFS server.

If you are copying data to or from your Snowcone device, see NFS Server on Snowcone for more information.

AgentArns -> (list)

ARNs of the agents to use for an NFS location.


Shorthand Syntax:


JSON Syntax:

  "AgentArns": ["string", ...]

--mount-options (structure)

The NFS mount options that DataSync can use to mount your NFS share.

Version -> (string)

The specific NFS version that you want DataSync to use to mount your NFS share. If the server refuses to use the version specified, the sync will fail. If you don't specify a version, DataSync defaults to AUTOMATIC . That is, DataSync automatically selects a version based on negotiation with the NFS server.

You can specify the following NFS versions:

  • **NFSv3 ** - stateless protocol version that allows for asynchronous writes on the server.
  • **NFSv4.0 ** - stateful, firewall-friendly protocol version that supports delegations and pseudo file systems.
  • **NFSv4.1 ** - stateful protocol version that supports sessions, directory delegations, and parallel data processing. Version 4.1 also includes all features available in version 4.0.

Shorthand Syntax:


JSON Syntax:

  "Version": "AUTOMATIC"|"NFS3"|"NFS4_0"|"NFS4_1"

--tags (list)

The key-value pair that represents the tag that you want to add to the location. The value can be an empty string. We recommend using tags to name your resources.


Represents a single entry in a list of Amazon Web Services resource tags. TagListEntry returns an array that contains a list of tasks when the ListTagsForResource operation is called.

Key -> (string)

The key for an Amazon Web Services resource tag.

Value -> (string)

The value for an Amazon Web Services resource tag.

Shorthand Syntax:

Key=string,Value=string ...

JSON Syntax:

    "Key": "string",
    "Value": "string"

--cli-input-json (string) Performs service operation based on the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, the CLI values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See 'aws help' for descriptions of global parameters.


LocationArn -> (string)

The Amazon Resource Name (ARN) of the source NFS file system location that is created.