 |
» |
|
|
 |
NAMErcp — remote file copy SYNOPSISCopy Single Filercp
[-p]
[-S
size]
[-R
size]
source_file1 dest_file Copy Multiple Filesrcp
[-p]
[-S
size]
[-R
size]
source_file1
[source_file2]...
dest_dir Copy One or More Directory Subtreesrcp
[-p]
[-S
size]
[-R
size]
-r
source_dir1
[source_dir2]...
dest_dir Copy Files and Directory Subtreesrcp
[-p]
[-S
size]
[-R
size]
-r
file_or_dir1
[file_or_dir2]...
dest_dir In Kerberos V5 Network Authentication Environments:Copy Single Filercp
[-k
realm]
[-P]
[-p]
[-S
size]
[-R
size]
source_file1 dest_file Copy Multiple Filesrcp
[-k
realm]
[-P]
[-p]
[-S
size]
[-R
size]
source_file1
[source_file2]...
dest_dir Copy One or More Directory Subtreesrcp
[-k
realm]
[-P]
[-p]
[-S
size]
[-R
size]
-r
source_dir1
[source_dir2]...
dest_dir Copy Files and Directory Subtreesrcp
[-k
realm]
[-P]
[-p]
[-S
size]
[-R
size]
-r
file_or_dir1
[file_or_dir2]...
dest_dir DESCRIPTIONThe
rcp
command copies files, directory subtrees,
or a combination of files and directory subtrees
from one or more systems to another.
In many respects, it is similar to the
cp
command (see
cp(1)). To use
rcp,
you must have read access to files being copied,
and read and search (execute) permission on all directories
in the directory path. Note that there are special
requirements for third-party transfers, which are described in the
Third-Party Transfers
section below. In a Kerberos V5 Network Authentication environment,
rcp
uses the Kerberos V5 protocol while initiating the connection
to a remote host. The authorization mechanism is dependent on
the command line options used to invoke
remshd
on the remote host (i.e.,
-K, -R, -r, or
-k).
Kerberos authentication and authorization rules are described
in the Secure Internet Services man page,
sis(5). Although Kerberos authentication and authorizations may
apply, the Kerberos mechanism is
not
applied when copying files. The files are still transferred
in clear text over the network. The
fallback
option can be set in the
krb5.conf
file within the
[appdefaults] section. (For more information on the [appdefaults]
section, refer to the
krb5.conf(4)
manpage in the Kerberos Client product). If the
fallback
option is set to true and the Kerberos authentication fails,
rcp
uses the non-secure mode of authentication. NOTE:
Command line options override the configuration file options. NOTE:
The Kerberos authentication and authorization mechanism is not
supported in
IPv6 enabled systems. Options and Argumentsrcp
recognizes the following options and arguments:
- source_file
- source_dir
This option specifies the name of an existing file or directory on
a local or remote machine that you want to be copied to a specified
destination.
The source file and directory names are constructed as
follows:
user_name@hostname:pathname/filename
or
user_name@hostname:pathname/dirname Component parts of file and directory names are described below.
If multiple existing files and/or directory subtrees
(source_file1,
source_file2, ...,
etc.) are specified, then the destination must be a directory.
Shell file name expansion is allowed on both local and remote systems.
Multiple files and directory subtrees can be copied from one or more systems
to a single destination directory by using a single command. - dest_file
This option specifies the name of the destination file.
If host name and path name are not specified,
then the existing file is copied into a file named
dest_file
in the current directory on the local system. If
dest_file
already exists and is writable, then the existing file is overwritten.
The destination file names are constructed in the same way as source files
except that the usage of file name expansion characters is forbidden
in the case of destination file names. - dest_dir
This option specifies the name of the destination directory.
If host name and path names are not specified, then
the existing file is copied into a directory named
dest_dir
in the current directory on the local system. If
dest_dir
already exists in the specified directory path
(or current directory if not specified), then a new directory named
dest_dir
is created underneath the existing directory named
dest_dir.
The destination directory names are constructed the in same way
as source directory tree names except that the usage of file name
expansion characters is forbidden in the case of destination directory names. If the
source_dir
has more than one file to be copied, the
dest_dir
does not exist, and if the
-r
option is used for recursive copying, then
rcp
first creates the
dest_dir
and later copies the files under the
source_dir
to the
dest_dir. - file_or_dir
If a combination of files and directories are specified for copying
(either explicitly or by file name expansion), then
only files are copied unless the
-r
option is specified. If
the
-r
option is present, then all the files and directory subtrees
whose names match the specified
file_or_dir
name are copied. - -k realm
This option is applicable only in a secure environment based on Kerberos V5.
It can be used to obtain tickets from the remote host in the
specified
realm
instead of the remote host's default realm as specified in the configuration
file
krb.realms. NOTE:
This option is not supported on
IPv6 enabled systems. - -P
This option is applicable only in a secure environment based on Kerberos V5.
It disables Kerberos authentication.
If the remote host has been configured to prevent non-secure access,
using this option would result in the generic error,
krcmd: connect: hostname: Connection refused See
DIAGNOSTICS
in
remshd(1M)
for more details. NOTE:
This option is not supported on
IPv6 enabled systems. - -p
This option can be used to preserve (duplicate) modification times and
modes (permissions) of source files, ignoring the current setting of the
umask
file creation mode mask.
If this option is specified,
rcp
preserves the sticky bit only if the target user is superuser. If the
-p
option is not specified,
rcp
preserves the mode and owner of
dest_file
if it already exists; otherwise
rcp
uses the mode of the source file modified by the
umask
on the destination host.
Modification and access times of the destination file
are set to the time when the copy was made. - -S size
This option sets the size of the socket send buffer. - -R size
This option sets the size of the socket receive buffer. - -r
This option can be used to recursively copy directory subtrees
rooted at the source directory name.
If any directory subtrees are to be copied,
rcp
recursively copies each subtree
rooted at the specified source directory name
to directory
dest_dir.
If
source_dir
is being copied to an existing directory of the same name,
rcp
creates a new directory
source_dir
within
dest_dir
and copies the subtree rooted at
source_dir
to
dest_dir/source_dir.
If
dest_dir
does not exist,
rcp
first creates it and copies the subtree rooted at
source_dir
to
dest_dir
and the output will be similar
irrespective of whether a wildcard character
(source_dir/*)
is used for copying or otherwise.
Constructing File and Directory NamesAs indicated above, file and directory names
contain one, two, or four component parts:
- user_name
Login name to be used
for accessing directories and files on remote system. - hostname
Hostname of remote system where directories and files are located. - pathname
Absolute directory path name or directory path name
relative to the login directory of user
user_name. - filename
Actual name of source or destination file.
File name expansion is allowed on source file names. - dirname
Actual name of source or destination directory subtree.
File name expansion is allowed on source directory names.
Each
file
or
directory
argument is either a remote file name of the form
hostname:path,
or a local file name (with a slash
(/)
before any colon
(:)).
hostname
can be either an official host name or an alias (see
hosts(4)).
If
hostname
is of the form
ruser@rhost,
ruser
is used on the remote host instead of the current user name.
An unspecified
path
(that is,
hostname:)
refers to the remote user's login directory.
If
path
does not begin with
/,
it is interpreted relative to the remote user's login directory on
hostname.
Shell metacharacters in remote
paths
can be quoted with backslash
(\),
single quotes
(''),
or double quotes (""
),
so that they will be interpreted remotely. rcp
does not prompt for passwords. In a non-secure or traditional
environment, user authorization is checked by determining if the
current local user name or any user name specified via
ruser
exists on
rhost.
In a Kerberos V5 Network Authentication or secure environment,
the authorization method is dependent upon the command line
options for
remshd
(see
remshd(1M)
for details). In either case, remote command execution via
remsh(1)
and
rcmd(3N),
or
rcmd_af(3N)
in case of IPv6 systems, must be allowed and
remshd(1M)
must be executable on the remote host. Third-Party TransfersThird-party transfers in the following form:
rcp ruser1@rhost1:path1 ruser2@rhost2:path2 are performed as:
remsh rhost1 -l ruser1 rcp path1 ruser2@rhost2:path2 Therefore, for a such a transfer to succeed,
ruser2
on
rhost2
must allow access by
ruser1
from
rhost1
(see
hosts.equiv(4)). rcp With IPv6 AddressTo invoke
rcp
with an IPv6 address, the IPv6 address must be enclosed in a
pair of square brackets
([ and ])
as shown in the example below. rcp source user@[IPv6_address]:dest If the IPv6 address is not enclosed within square brackets,
the first occurrence of a colon
(:)
is treated as the separator between the
hostname
and the
path. WARNINGSThe
rcp
routine is confused by any output generated by commands in a
.cshrc
file on the remote host (see
csh(1)). Copying a file onto itself, for example:
may produce inconsistent results.
The current HP-UX version of
rcp
simply copies the file over itself.
However, some implementations of
rcp,
including some earlier HP-UX implementations, corrupt the file.
In addition, the same file may be referred to in multiple ways,
for example, via hard links, symbolic links, or NFS.
It is not guaranteed that
rcp
will correctly copy a file over itself in all cases. Implementations of
rcp
based on the 4.2BSD version (including the implementations of
rcp
prior to HP-UX 7.0) require that remote users be specified as
rhost.ruser.
If the first remote host specified in a third party transfer
(rhost1
in the example below) uses this older syntax, the command must have
the form:
rcp ruser1@rhost1:path1 rhost2.ruser2:path2 since the target is interpreted by
rhost1.
A common problem is encountered when two remote files
are to be copied to a remote target that specifies a remote user.
If the two remote source systems,
rhost1
and
rhost2,
each expect a different form for the remote target, the command:
rcp rhost1:path1 rhost2:path2 rhost3.ruser3:path3 will certainly fail on one of the source systems.
Perform such a transfer using two separate commands. DIAGNOSTICSDiagnostics can occur from both the local and remote hosts.
Those diagnostics that occur on the local host
before the connection is completely established are written to standard error.
Once the connection is established,
any error messages from the remote host are written to standard output,
like any other data.
- Error! could not retrieve authentication type.
- Please notify sys admin.
There are two authentication mechanisms used by
rcp.
One authentication mechanism is based on Kerberos and the other is not.
The type of authentication mechanism is obtained from a system file which is
updated by
inetsvcs_sec(1M).
If the system file does not contain
known authentication types, the above error is displayed. - Kerberos is not supported in IPv6. Ignoring kerberos authentication
On a
IPv6 enabled system,
if Kerberos based authentication mechanism is set, the above error is displayed
and the user authorization is done in a non-secure or traditional environment.
AUTHORrcp
was developed by the University of California, Berkeley. SEE ALSOcp(1),
ftp(1),
remsh(1),
inetsvcs_sec(1M),
remshd(1M),
rcmd(3N),
rcmd_af(3N),
hosts(4),
hosts.equiv(4),
krb5.conf(4),
sis(5)
|