Manual Pages
Table of Contents
na_ndmpcopy - transfers directory trees between filers
using NDMP
ndmpcopy [options] source destination
source and destination are of the form [filer:]path
options:
[-sa username:password]
[-da username:password]
[-st { text | md5 }]
[-dt { text | md5 }]
[-l { 0 | 1 | 2 }]
[-d]
[-f]
[-mcs { inet | inet6 }]
[-mcd { inet | inet6 }]
[-md { inet | inet6 }]
[-h]
Ndmpcopy transfers data between filers/vfilers using the
Network Data Management Protocol (NDMP) versions 3 and
higher. This process can be thought of as creating a dedicated
data pipe between dump running on the source filer
and restore running on the destination filer.
Ndmpcopy is supported on vfilers, as well as the physical
filer named vfiler0. Use vfiler context or vfiler run to
issue Ndmpcopy commands on a specific vfiler. See
na_vfiler(1) for details on how to issue commands on vfilers.
The use of Ndmpcopy on vfilers requires a MultiStore
license.
The password used must be the NDMP password as described
in the ndmpd man page.
The source and destination for the copy are specified in
the following format:
[filer:]path
where filer is the hostname or IP address of the filer and
path is the absolute pathname of the directory to be used
in the transfer. If you do not specify the filer hostname
or IP address, ndmpcopy assumes the source and destination
filers to be the same as the filer running the ndmpcopy
command. ndmpcopy creates the destination directory
if it does not already exist. When ndmpcopy receives a
destination pathname, the following rules are applied to
determine what volume that path is referencing and the
data is migrated accordingly:
Case 1: No /vol in the pathname. Default to the root volume.
Case 2: /vol/volume in the pathname and volume is a real
volume on the filer. Target at your volume.
Case 3: /vol/volume in the pathname and volume is not a
real volume on the filer. Default to the root volume.
The filer will print the full destination path when ndmpcopy
operation successfully completes.
When running ndmpcopy against a vfiler, all the source and
destination paths must live in volumes exclusively owned
by the vfiler.
ndmpcopy supports IPv6 addresses. IPv6 address can be used
to connect to source and destination filers (control connections)
and also for communication between the source
and destination filers (data connection). ndmpcopy by
default accepts both IPv6 (inet6) and IPv4 (inet) address
modes. In a mixed mode environment, IPv6 address has
precedence over an IPv4 address. ndmpcopy determines the
address mode for the data connection based on the address
mode of the control connections as follows:
If either of the IP addresses specified are IPv6 for the
control connections, then the data connection address mode
will be IPv6.
If both the IP addresses specified are IPv4 for the control
connections, then the data connection address mode
will be IPv4.
When a DNS name is specified for the control connection,
ndmpcopy will first attempt an IPv6 DNS lookup followed by
an IPv4 DNS lookup. The data connection address mode will
be determined accordingly.
To force the address modes for control and data connections,
the user can use options to override the specified
behavior.
If an IPv6 address is specified, it must be enclosed in
square brackets.
The following options may be used in any order:
-
-sa username:password
-
The source filer authentication is used to
authenticate the network connections to
the source filer. If the option is used,
username: must always be specified. pass_word
should be left blank if there is no
password configured for the username on
the source filer. Note that even if no
password is included, the : after the
username must be present.
-
-da username:password
-
The destination filer authentication is
used to authenticate the network connections
to the destination filer. If the
option is used, username: must always be
specified. password should be left blank
if there is no password configured for the
username on the source filer. Note that
even if no password is included, the :
after the username must be present.
-
-st { text | md5 }
-
The source filer authentication type is
used to identify the authentication mechanism.
The default is md5, which encrypts
passwords before they are passed over the
network. The text authentication does not
provide this benefit and should be used
with caution.
-
-dt { text | md5 }
-
The destination filer authentication type
is used to identify the authentication
mechanism. The default is md5, which
encrypts passwords before they are passed
over the network. The text authentication
does not provide this benefit and should
be used with caution.
-
-l { 0 | 1 | 2 }
-
The incremental level to be used for the
transfer is restricted to 0, 1 or 2 only.
The default level used is 0. You can do a
level 0 transfer at any time, following
which you can sequentially do one level 1
and one level 2 transfer.
-
-d
- The debug mode option allows ndmpcopy to
generate diagnostic/debugging information
while it runs. The extra diagnostic
information is sent only to the ndmpcopy
log file.
-
-f
- The force flag, is used to enable overwriting
of the system files in the /etc
directory on the root volume. Example 5
below describes this behaviour.
-
-mcs { inet | inet6 }
-
The source control connection mode option
forces the specified address mode for the
source filer. If an IPv6 address is specified,
it must be enclosed within square
brackets.
-
-mcd { inet | inet6 }
-
The destination control connection mode
option forces the specified address mode
for the destination filer. If an IPv6
address is specified, it must be enclosed
within square brackets.
-
-md { inet | inet6 }
-
The data connection mode option forces the
specified address mode for communication
between the source and destination filers.
-
-h
- The -h option is used to display the usage
and help message.
In these examples, network host names are used for the
filers. ("myhost" is used for a local filer and "remotehost1"
and "remotehost2" are used for remote filers.) If
you specify host names when you use the ndmpcopy command,
the filer running the ndmpcopy command should be able to
resolve these names to their IP addresses. You could use
the ping command to make sure that host name resolution
works.
Before starting the ndmpcopy operation, the NDMP request
daemon ndmpd has to be enabled on both the source and destination
filers. Issue `ndmpd on' on both filers to enable
the request daemon.
Example 1:
This command migrates data from a source path
(source_path) to a different destination path (destination_path)
on the same filer (myhost).
-
myhost> ndmpcopy -sa username:password
-da username:password
myhost:/vol/vol0/source_path
myhost:/vol/vol0/destination_path
You can also use this shorter form of the command to
achieve the same result.
-
myhost> ndmpcopy /vol/vol0/source_path
/vol/vol0/destination_path
Because you are running the ndmpcopy command on myhost and
the source and destination filer is the same as myhost,
you can omit specifying the source and destination filer
names on the ndmpcopy command line. Also note that when
your ndmpcopy command is running on the same filer as the
source filer and/or destination filer, you can omit the
-sa and/or -da options.
Example 2:
This command migrates data from a source path
(source_path) to a different destination path (destination_path)
on remotehost1.
-
myhost> ndmpcopy -da username:password
/vol/vol0/source_path
remotehost1:/vol/vol0/destination_path
The destination filer must be specified in this case,
because it is a remote filer. Also the destination authorization
is needed, but not the source authorization.
Example 3:
This command migrates data from a source path
(source_path) on remotehost2 to a destination path (destination_path)
on myhost.
-
myhost> ndmpcopy -sa username:password -st text
remotehost2:/vol/vol0/source_path
/vol/vol0/destination_path
The source authentication type specified by -st has been
set to text. The ndmpcopy command tool running on myhost
will authenticate with the source filer using text authentication.
Example 4:
This command migrates data from a source path
(source_path) on remotehost1 to a destination path (destination_path)
on remotehost2.
-
myhost> ndmpcopy -sa username:password
-da username:password -l 1
remotehost1:/vol/vol0/source_path
remotehost2:/vol/vol0/destination_path
Note that the -l 1 option is used to do a level 1 transfer.
Example 5:
This command describes the behaviour of ndmpcopy without
the -f option. In this case, the /etc directory and its
contents on the root volume of remotehost1 are protected
from being overwritten with the /etc directory from
myhost. This is intended to avoid the unintentional changing
of the system characteristics after the root volume
migration is completed.
-
myhost> ndmpcopy -da username:password /vol/rootvol
remotehost1:/vol/rootvol
If you intentionally wish to overwrite the /etc directory,
during the root volume migration, then use the -f flag as
in the following copy.
-
myhost> ndmpcopy -da username:password -f /vol/rootvol
remotehost1:/vol/rootvol
Example 6:
This command describes the usage of ndmpcopy where the
address mode for both control and data connections is
explicitly forced to IPv6.
-
myhost> ndmpcopy -sa username:password
-da username:password -l 0 -mcs inet6 -mcd inet6 -md inet6
remotehost1:/vol/vol0/source_path
[xx:xx:xx:xx:xx:xx:xx:xx]:/vol/vol0/destination_path
In the specified example, remotehost1 is the hostname that
resolves to an IPv6 address.
/etc/log/ndmpcopy.yyyymmdd - The ndmpcopy debug log files
na_dump(1), na_ndmpd(1), na_restore(1), na_vfiler(1)
Check the following things before running the ndmpcopy:
Whether ndmpd is installed and turned on, on the source
and destination filers involved in the
copy.
myhost> ndmpd on
Whether the 2 filers can ping each other with first their
hostnames and if not then their IP addresses. If both do
not work, then it usually denotes an incorrect network
setup.
myhost> ping remotehost
myhost> ping ip address of remotehost
Make sure that the Data ONTAP release on the filers you
are using for the copy support NDMP version 3 and/or
higher.
myhost> ndmpd version
Table of Contents