RCP provides another method of
downloading and uploading image files between remote hosts and the switch.
Unlike TFTP, which uses User Datagram Protocol (UDP), a connectionless
protocol, RCP uses TCP, which is connection-oriented.
To use RCP to copy files, the server from or to which you will be
copying files must support RCP. The RCP copy commands rely on the rsh server
(or daemon) on the remote system. To copy files by using RCP, you do not need
to create a server for file distribution as you do with TFTP. You only need to
have access to a server that supports the remote shell (rsh). (Most UNIX
systems support rsh.) Because you are copying a file from one place to another,
you must have read permission on the source file and write permission on the
destination file. If the destination file does not exist, RCP creates it for
you.
RCP requires a client to send a remote username on each RCP request to
a server. When you copy an image from the switch to a server by using RCP, the
Cisco IOS software sends the first valid username in this list:
-
The username specified in the
archive download-sw or
archive upload-sw privileged EXEC command if a username is
specified.
-
The username set by the
ip rcmd remote-usernameusername global
configuration command if the command is entered.
-
The remote username associated with the current TTY (terminal)
process. For example, if the user is connected to the router through Telnet and
was authenticated through the
username command, the switch software sends the Telnet
username as the remote username.
- The switch hostname.
For the RCP copy request to execute successfully, an account must be
defined on the network server for the remote username. If the server has a
directory structure, the image file is written to or copied from the directory
associated with the remote username on the server. For example, if the image
file resides in the home directory of a user on the server, specify that user's
name as the remote username.
Before you begin downloading or uploading an image file by using RCP,
do these tasks:
- Ensure that the
workstation acting as the RCP server supports the remote shell (rsh).
- Ensure that the switch has
a route to the RCP server. The switch and the server must be in the same
subnetwork if you do not have a router to route traffic between subnets. Check
connectivity to the RCP server by using the
ping command.
- If you are accessing the
switch through the console or a Telnet session and you do not have a valid
username, make sure that the current RCP username is the one that you want to
use for the RCP download. You can enter the
show users privileged EXEC command to view the valid username.
If you do not want to use this username, create a new RCP username by using the
ip rcmd remote-usernameusername global
configuration command to be used during all archive operations. The new
username is stored in NVRAM. If you are accessing the switch through a Telnet
session and you have a valid username, this username is used, and there is no
need to set the RCP username. Include the username in the
archive download-sw or
archive upload-sw privileged EXEC command if you want to
specify a username only for that operation.
- When you upload an image
to the RCP to the server, it must be properly configured to accept the RCP
write request from the user on the switch. For UNIX systems, you must add an
entry to the .rhosts file for the remote user on the RCP server.
For example, suppose the switch contains these configuration lines:
hostname Switch1
ip rcmd remote-username User0
If the switch IP address translates to
Switch1.company.com, the .rhosts file for User0 on
the RCP server should contain this line:
Switch1.company.com Switch1
For more information, see the documentation for your RCP server.