Creating, loading, and maintaining configuration files enable you to generate a set of user-configured commands to customize the functionality of your Cisco routing device. For a complete description of the configuration file management commands, refer to the
Cisco IOS Configuration Fundamentals Command Reference.
Your software release may not support all the features documented in this module. For the latest caveats and feature information, see
Bug Search Tool and the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the feature information table at the end of this module.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to
www.cisco.com/go/cfn. An account on Cisco.com is not required.
Prerequisites for Managing Configuration Files
You should have at least a basic familiarity with the Cisco IOS environment and the command-line interface.
You should have at least a minimal configuration running on your system. You can create a basic configuration file using the
setup command (see Using Setup Mode to Configure a Cisco Networking Device for details).
Restrictions for Managing Configuration Files
Many of the Cisco IOS commands described in this document are available and function only in certain configuration modes on the router.
Some of the Cisco IOS configuration commands are only available on certain router platforms, and the command syntax may vary on different platforms.
Configuration files contain the Cisco IOS software commands used to customize the functionality of your Cisco routing device (router, access server, switch, and so on). Commands are parsed (translated and executed) by the Cisco IOS software when the system is booted (from the startup-config file) or when you enter commands at the CLI in a configuration mode.
Startup configuration files (startup-config) are used during system startup to configure the software. Running configuration files (running-config) contain the current configuration of the software. The two configuration files can be different. For example, you may want to change the configuration for a short time period rather than permanently. In this case, you would change the running configuration using the
configureterminal EXEC command but not save the configuration using the
copyrunning-configstartup-config EXEC command.
To change the running configuration, use the
configureterminal command, as described in the “Modifying the Configuration File at the CLI ” section. As you use the Cisco IOS configuration modes, commands generally are executed immediately and are saved to the running configuration file either immediately after you enter them or when you exit a configuration mode.
To change the startup configuration file, you can either save the running configuration file to the startup configuration using the
copyrunning-configstartup-config EXEC command or copy a configuration file from a file server to the startup configuration (see the “Copying a Configuration File from a TFTP Server to the Router ” section for more information).
Configuration Mode and Selecting a Configuration Source
To enter configuration mode on the router, enter the
configurecommand at the privileged EXEC prompt. The Cisco IOS software responds with the following prompt asking you to specify the terminal, memory, or a file stored on a network server (network) as the source of configuration commands:
Configuring from terminal, memory, or network [terminal]?
Configuring from the terminal allows you to enter configuration commands at the command line, as described in the following section. Configuring from memory loads the startup configuration file. See the “Reexecuting the Configuration Commands in the Startup Configuration File ” section for more information. Configuring from the network allows you to load and execute configuration commands over the network. See the “Copying a Configuration File from a TFTP Server to the Router ” section for more information.
Configuration File Changes Using the CLI
The Cisco IOS software accepts one configuration command per line. You can enter as many configuration commands as you want. You can add
comments to a configuration file describing the commands you have entered. Precede a comment with an exclamation point (
!). Because comments are not
stored in NVRAM or in the active copy of the configuration file, comments do not appear when you list the active configuration with theshowrunning-configormoresystem:running-config EXEC command. Comments do not display when you list the startup configuration with the showstartup-config or morenvram:startup-config EXEC mode command. Comments are stripped out of the configuration file when it is loaded onto the router. However, you can list the comments in configuration files stored on a File Transfer Protocol (FTP), remote copy protocol (rcp), or Trivial File Transfer Protocol (TFTP) server. When you configure the software using the CLI, the software executes the commands as you enter them.
Location of Configuration Files
Configuration files are stored in the following locations:
The running configuration is stored in RAM.
On all platforms except the Class A Flash file system platforms, the startup configuration is stored in nonvolatile random-access memory (NVRAM).
On Class A Flash file system platforms, the startup configuration is stored in the location specified by the CONFIG_FILE environment variable (see the “Specifying the CONFIG_FILE Environment Variable on Class A Flash File Systems” section). The CONFIG_FILE variable defaults to NVRAM and can be a file in the following file systems:
nvram: (NVRAM)
bootflash: (internal Flash memory)
slot0: (first PCMCIA slot)
slot1: (second PCMCIA slot)
Copy Configuration Files from a Network Server to the Router
You can copy configuration files from a TFTP, rcp, or FTP server to the running configuration or
startup configuration of the router. You may want to perform this function for one of the following reasons:
To restore a backed-up configuration file.
To use the configuration file for another router. For example, you may add another router to your network and want it to have a similar configuration to the original router. By copying the file to the new router, you can change the relevant parts rather than re-creating the whole file.
To load the same configuration commands on to all the routers in your network so that all the routers have similar configurations.
The copy{ftp: | rcp: | tftp:system:running-configEXECcommand loads the configuration files into the router as if you were typing the commands in at the command line. The router does not erase the existing running configuration before adding the commands. If a command in the copied configuration file replaces a command in the existing configuration file, the existing command will be erased. For example, if the copied configuration file contains a different IP address in a particular command than the existing configuration, the IP address in the copied configuration will be used. However, some commands in the existing configuration may not be replaced or negated. In this case, the resulting configuration file will be a mixture of the existing configuration file and the copied configuration file, with the copied configuration file having precedence.
In order to restore a configuration file to an exact copy of a file stored on a server, you need to copy the configuration file directly to the startup configuration (using the copyftp:| rcp:| tftp:} nvram:startup-configcommand) and reload the router.
To copy configuration files from a server to a router, perform the tasks described in the following sections:
The protocol you use depends on which type of server you are using. The FTP and rcp transport mechanisms provide faster performance and more reliable delivery of data than TFTP. These improvements are possible because the FTP and rcp transport mechanisms are built on and use the TCP/IP stack, which is connection-oriented.
Copy a Configuration File from the Router to a TFTP Server
In some implementations of TFTP, you must create a dummy file on the TFTP server and give it read, write, and execute permissions before copying a file over it. Refer to your TFTP documentation for more information.
Copy a Configuration File from the Router to an rcp Server
You can copy configuration file from the router to an rcp server.
One of the first attempts to use the network as a resource in the UNIX community resulted in the design and implementation of the remote shell protocol, which included the remote shell (rsh) and remote copy (rcp) functions. Rsh and rcp give users the ability to execute commands remotely and copy files to and from a file system residing on a remote host or server on the network. The Cisco implementation of rsh and rcp interoperates with standard implementations.
The rcp copy commands rely on the rsh server (or daemon) on the remote system. To copy files using rcp, you need not create a server for file distribution, as you do with TFTP. You need only 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.
Although the Cisco rcp implementation emulates the functions of the UNIX rcp implementation--copying files among systems on the network--the Cisco command syntax differs from the UNIX rcp command syntax. The Cisco rcp support offers a set of copy commands that use rcp as the transport mechanism. These rcp copy commands are similar in style to the Cisco TFTP copy commands, but they offer an alternative that provides faster performance and reliable delivery of data. These improvements are possible because the rcp transport mechanism is built on and uses the TCP/IP stack, which is connection-oriented. You can use rcp commands to copy system images and configuration files from the router to a network server and vice versa.
You also can enable rcp support to allow users on remote systems to copy files to and from the router.
To configure the Cisco IOS software to allow remote users to copy files to and from the router, use the iprcmdrcp-enable global configuration command.
The rcp protocol requires a client to send a remote username on each rcp request to a server. When you copy a configuration file from the router to a server using rcp, the Cisco IOS software sends the first valid username it encounters in the following sequence:
The username specified in the copy EXEC command, if a username is specified.
The username set by the iprcmdremote-username global configuration command, if the command is configured.
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 router software sends the Telnet username as the remote username.
The router host name.
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 configuration file or image is written to or copied from the directory associated with the remote username on the server. For example, if the system image resides in the home directory of a user on the server, you can specify that user name as the remote username.
Use the iprcmdremote-username command to specify a username for all copies. (Rcmd is a UNIX routine used at the super-user level to execute commands on a remote machine using an authentication scheme based on reserved port numbers. Rcmd stands for “remote command”). Include the username in the copy command if you want to specify a username for that copy operation only.
If you are writing to the server, the rcp server must be properly configured to accept the rcp write request from the user on the router. For UNIX systems, you must add an entry to the .rhosts file for the remote user on the rcp server. For example, suppose the router contains the following configuration lines:
hostname Rtr1
ip rcmd remote-username User0
If the router IP address translates to Router1.company.com, then the .rhosts file for User0 on the rcp server should contain the following line:
Router1.company.com Rtr1
Requirements for the rcp Username
The rcp protocol requires a client to send a remote username on each rcp request to a server. When you copy a configuration file from the router to a server using rcp, the Cisco IOS software sends the first valid username it encounters in the following sequence:
The username specified in the copy EXEC command, if a username is specified.
The username set by the iprcmdremote-username global configuration command, if the command is configured.
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 router software sends the Telnet username as the remote username.
The router host name.
For the rcp copy request to execute, an account must be defined on the network server for the remote username. If the server has a directory structure, the configuration file or image is written to or copied from the directory associated with the remote username on the server. For example, if the system image resides in the home directory of a user on the server, specify that user name as the remote username.
Refer to the documentation for your rcp server for more information.
Copy a Configuration File from the Router to an FTP Server
You can copy a configuration file from the router to an FTP server.
The FTP protocol requires a client to send a remote username and password on each FTP request to a server. When you copy a configuration file from the router to a server using FTP, the Cisco IOS software sends the first valid username it encounters in the following sequence:
The username specified in the copy EXEC command, if a username is specified.
The username set by the ipftpusername global configuration command, if the command is configured.
Anonymous.
The router sends the first valid password it encounters in the following sequence:
The password specified in the copy command, if a password is specified.
The password set by the ipftppassword command, if the command is configured.
The router forms a password username
@routername
.domain
. The variable username
is the username associated with the current session, routername
is the configured host name, and domain
is the domain of the router.
The username and password must be associated with an account on the FTP server. If you are writing to the server, the FTP server must be properly configured to accept the FTP write request from the user on the router.
If the server has a directory structure, the configuration file or image is written to or copied from the directory associated with the username on the server. For example, if the system image resides in the home directory of a user on the server, specify that user name as the remote username.
Refer to the documentation for your FTP server for more information.
Use the ipftpusername and ipftppassword global configuration commands to specify a username and password for all copies. Include the username in the copy EXEC command if you want to specify a username for that copy operation only.
Configuration Files Larger than NVRAM
To maintain a configuration file that exceeds size of NVRAM, you should be aware of the information in the following sections:
The servicecompress-config global configuration command specifies that the configuration file be stored compressed in NVRAM. Once the configuration file has been compressed, the router functions normally. When the system is booted, it recognizes that the configuration file is compressed, expands it, and proceeds normally. The morenvram:startup-config EXEC command expands the configuration before displaying it.
Before you compress configuration files, refer to the appropriate hardware installation and maintenance publication. Verify that your system’s ROMs support file compression. If not, you can install new ROMs that support file compression.
The size of the configuration must not exceed three times the NVRAM size. For a 128-KB size NVRAM, the largest expanded configuration file size is 384 KB.
The servicecompress-configglobal configurationcommand works only if you have Cisco IOS software Release 10 or later release boot ROMs. Installing new ROMs is a one-time operation and is necessary only if you do not already have Cisco IOS Release 10 in ROM. If the boot ROMs do not recognize a compressed configuration, the following message is displayed:
Boot ROMs do not support NVRAM compression Config NOT written to NVRAM
Storing the Configuration in Flash Memory on Class A Flash File Systems
On Class A Flash file system routers, you can store the startup configuration in Flash memory by setting the CONFIG_FILE environment variable to a file in internal Flash memory or Flash memory in a PCMCIA slot.
See the “Specifying the CONFIG_FILE Environment Variable on Class A Flash File Systems ” section for more information.
Care must be taken when editing or changing a large configuration. Flash memory space is used every time a
copysystem:running-confignvram:startup-config EXEC command is issued. Because file management for Flash memory, such as optimizing free space, is not done automatically, you must pay close attention to available Flash memory. Use the
squeeze command to reclaim used space. We recommend that you use a large-capacity Flash card of at least 20 MB.
Loading the Configuration Commands from the Network
You can also store large configurations on FTP, rcp, or TFTP servers and download them at system startup. To use a network server to store large configura tions, see the “Copying a Configuration File from the Router to a TFTP Server” and “Configure the Router to Download Configuration Files” sections for more information on these commands.
Control of the Parser Cache
The Cisco IOS command-line parser in the Cisco IOS software performs the translation and execution (parsing) of command lines. The Parser Cache feature was developed to rapidly process large configuration files, thereby dramatically improving load time.
The Parser Cache feature allows the rapid recognition and translation of configuration lines in a configuration file that differ slightly from previously used configuration lines (for example, pvc 0/100, pvc 0/101, and so on) by dynamically creating, caching, and reusing simplified parse graphs. This improvement is useful primarily for configuration files that repeat similar commands hundreds or thousands of times, such as cases in which thousands of virtual circuits must be configured for subinterfaces, or hundreds of access lists must be configured. Performance will improve the most for those files in which the same commands are used repeatedly but the numerical arguments change from command to command.
The Parser Cache is enabled by default on all platforms using Cisco IOS Release 12.1(5)T and later releases. However, users with Cisco devices that do not require large configuration files may want to disable the Parser Cache to free the resources used by this feature. (Memory used by this feature depends on the size of the configuration files parsed, but is generally less than 512 KB.)
There are several ways to control the parser cache (these are all optional):
Clearing the Parser Cache--To free resources or to reset the parser cache memory, you may wish to clear the parse entries and hit/miss statistics stored by the Parser Cache feature
Disabling the Parser Cache--The Parser Cache feature is enabled by default. To disable the Parser Cache feature, use the no parser cache command in global configuration mode. When the parser cache is disabled, the noparsercache command line is written to the running configuration file. If you wish to disable the parser cache to free system resources, you should clear the parser cache before issuing the noparsercache command. You will not be able to clear the parser cache after disabling it.
Reenabling the Parser Cache--To reenable the Parser Cache feature after disabling it, use the parsercache command in global configuration mode
Monitoring the Parser--Statistics about the last configuration file parsed are kept in the system memory, along with hit/miss statistics on the commands parsed by the Parser Cache feature. “Hits” and “misses” refer to the matches that the parser cache was able to make to similar commands used previously in the configuration session. Those commands that are matched (“hits”) be parsed more efficiently. The parser cache cannot improve the parse time for those commands it was unable to match (“misses”).
Configure the Router to Download Configuration Files
You can configure the router to load one or two configuration files at system startup. The configuration files are loaded into memory and read in as if you were typing the commands at the command line. Thus, the configuration for the router will be a mixture of the original startup configuration and the one or two downloaded configuration files.
For historical reasons, the first file the router downloads is called the network configuration file. The second file the router downloads is called the host configuration file. Two configuration files can be used when all of the routers on a network use many of the same commands. The network configuration file contains the standard commands used to configure all of the routers. The host configuration files contain the commands specific to one particular host. If you are loading two configuration files, the host configuration file should be the configuration file you want to have precedence over the other file. Both the network and host configuration files must reside on a network server reachable via TFTP, rcp, or FTP, and must be readable.
To display information about configuration files, complete the tasks in this section:
SUMMARY STEPS
1.enable
2.showbootvar
3.morefile-url
4.showrunning-config
5.showstartup-config
DETAILED STEPS
Command or Action
Purpose
Step 1
enable
Example:
Router> enable
Enables privileged EXEC mode.
Enter your password if prompted.
Step 2
showbootvar
Example:
Router# show bootvar
Lists the contents of the BOOT environment variable, the name of the configuration file pointed to by the CONFIG_FILE environment variable, and the contents of the BOOTLDR environment variable.
Step 3
morefile-url
Example:
Router# more 10.1.1.1
Displays the contents of a specified file.
Step 4
showrunning-config
Example:
Router# show running-config
Displays the contents of the running configuration file. (Command alias for themoresystem:running-config command.)
Step 5
showstartup-config
Example:
Router# show startup-config
Displays the contents of the startup configuration file. (Command alias for the morenvram:startup-config command.)
On all platforms except the Class A Flash file system platforms, the default startup-config file usually is stored in NVRAM. On the Class A Flash file system platforms, the CONFIG_FILE environment variable points to the default startup-config file. The CONFIG_FILE variable defaults to NVRAM.
Modifying the Configuration File at the CLI
The Cisco IOS software accepts one configuration command per line. You can enter as many configuration commands as you want. You can add comments to a configuration file describing the commands you have entered. Precede a comment with an exclamation point ( !). Because comments are
not stored in NVRAM or in the active copy of the configuration file, comments do not appear when you list the active configuration with theshowrunning-configormoresystem:running-config EXEC command. Comments do not display when you list the startup configuration with the
showstartup-config or
morenvram:startup-config EXEC mode command. Comments are stripped out of the configuration file when it is loaded onto the router. However, you can list the comments in configuration files stored on a File Transfer Protocol (FTP), remote copy protocol (rcp), or Trivial File Transfer Protocol (TFTP) server. When you configure the software using the CLI, the software executes the commands as you enter them. To configure the software using the CLI, use the following commands beginning in privileged EXEC mode:
SUMMARY STEPS
1.enable
2.configureterminal
3.configurationcommand
4.Do one of the following:
end
^Z
5.copysystem:running-confignvram:startup-config
DETAILED STEPS
Command or Action
Purpose
Step 1
enable
Example:
Router> enable
Enables privileged EXEC mode.
Enter your password if prompted.
Step 2
configureterminal
Example:
Router# configure terminal
Enters global configuration mode.
Step 3
configurationcommand
Example:
Router(config)# configuration command
Enter the necessary configuration commands. The Cisco IOS documentation set describes configuration commands organized by technology.
Step 4
Do one of the following:
end
^Z
Example:
Router(config)# end
Ends the configuration session and exits to EXEC mode.
Note
When you press the Ctrl and Z keys simultaneously, ^Z is displayed to the screen.
Saves the running configuration file as the startup configuration file.
You may also use the
copyrunning-configstartup-config command alias, but you should be aware that this command is less precise. On most platforms, this command saves the configuration to NVRAM. On the Class A Flash file system platforms, this step saves the configuration to the location specified by the CONFIG_FILE environment variable (the default CONFIG_FILE variable specifies that the file should be saved to NVRAM).
Examples
In the following example, the router prompt name of the router is configured. The comment line, indicated by the exclamation mark (!), does not execute any command. The
hostname command is used to change the router name from Router to new_name. By pressing Ctrl-Z (^Z) or entering the
endcommand, the user quits configuration mode. The
copysystem:running-confignvram:startup-config command saves the current configuration to the startup configuration.
Router# configure terminal
Router(config)# !The following command provides the router host name.
Router(config)# hostname new_name
new_name(config)# end
new_name# copy system:running-config nvram:startup-config
When the startup configuration is NVRAM, it stores the current configuration information in text format as configuration commands, recording only nondefault settings. The memory is checksummed to guard against corrupted data.
Note
Some specific commands might not get saved to NVRAM. You will need to enter these commands again if you reboot the machine. These commands are noted in the documentation. We recommend that you keep a list of these settings so that you can quickly reconfigure your router after rebooting.
Copying a Configuration File from the Router to a TFTP Server
To copy configuration information on a TFTP network server, complete the tasks in this section:
Copies the startup configuration file to a TFTP server.
Examples
The following example copies a configuration file from a router to a TFTP server:
Tokyo# copy system:running-config tftp://172.16.2.155/tokyo-confg
Write file tokyo-confg on host 172.16.2.155? [confirm] y
Writing tokyo-confg!!! [OK]
What to Do Next
After you have issued the copy command, you may be prompted for additional information or for confirmation of the action. The prompting will depend on how much information you provide in the copy command and the current setting of the fileprompt global configuration command.
Copying a Configuration File from the Router to an rcp Server
To copy a startup configuration file or a running configuration file from the router to an rcp server, use the following commands beginning in privileged EXEC mode:
Storing a Running Configuration File on an rcp Server
The following example copies the running configuration file named rtr2-confg to the netadmin1 directory on the remote host with an IP address of
172.16.101.101:
Router# copy system:running-config rcp://netadmin1@172.16.101.101/Rtr2-confg
Write file rtr2-confg on host 172.16.101.101?[confirm]
Building configuration...[OK]
Connected to 172.16.101.101
Router#
Storing a Startup Configuration File on an rcp Server
The following example shows how to store a startup configuration file on a server by using rcp to copy the file:
Rtr2# configure terminal
Rtr2(config)# ip rcmd remote-username netadmin2
Rtr2(config)# end
Rtr2# copy nvram:startup-config rcp:
Remote host[]? 172.16.101.101
Name of configuration file to write [rtr2-confg]?
Write file rtr2-confg on host 172.16.101.101?[confirm]
![OK]
What to Do Next
After you have issued the copy EXEC command, you may be prompted for additional information or for confirmation of the action. The prompting will depend on how much information you provide in the copy command and the current setting of the fileprompt global configuration command.
Copying a Configuration File from the Router to the FTP Server
To copy a startup configuration file or a running configuration
file from the router to an FTP server, complete the following tasks:
Storing a Running Configuration File on an FTP Server
The following example copies the running configuration file named rtr2-confg to the netadmin1 directory on the remote host with an IP address of
172.16.101.101:
Router# copy system:running-config ftp://netadmin1:mypass@172.16.101.101/Rtr2-confg
Write file rtr2-confg on host 172.16.101.101?[confirm]
Building configuration...[OK]
Connected to 172.16.101.101
Router#
Storing a Startup Configuration File on an FTP Server
The following example shows how to store a startup configuration file on a server by using FTP to copy the file:
Rtr2# configure terminal
Rtr2(config)# ip ftp username netadmin2
Rtr2(config)# ip ftp password mypass
Rtr2(config)# end
Rtr2# copy nvram:startup-config ftp:
Remote host[]? 172.16.101.101
Name of configuration file to write [rtr2-confg]?
Write file rtr2-confg on host 172.16.101.101?[confirm]
![OK]
What to Do Next
After you have issued the copy EXEC command, you may be prompted for additional information or for confirmation of the action. The prompting will depend on how much information you provide in the copy command and the current setting of the fileprompt global configuration command.
Copying a Configuration File from a TFTP Server to the Router
To copy a configuration file from a TFTP server to the router, complete the tasks in this section:
Copies a configuration file from a TFTP server to the startup configuration.
Examples
In the following example, the software is configured from the file named tokyo-config at IP address 172.16.2.155:
Router1# copy tftp://172.16.2.155/tokyo-confg system:running-config
Configure using tokyo-confg from 172.16.2.155? [confirm] y
Booting tokyo-confg from 172.16.2.155:!!! [OK - 874/16000 bytes]
What to Do Next
After you have issued the copy EXEC command, you may be prompted for additional information or for confirmation of the action. The prompting will depend on how much information you provide in the copy command and the current setting of the fileprompt global configuration command.
Copying a Configuration File from the rcp Server to the Router
To copy a configuration file from an rcp server to the running configuration or startup configuration, complete the following tasks:
The following example copies a configuration file named host1-confg from the netadmin1 directory on the remote server with an IP address of
172.16.101.101, and loads and runs those commands on the router:
Router# copy rcp://netadmin1@172.16.101.101/host1-confg system:running-config
Configure using host1-confg from 172.16.101.101? [confirm]
Connected to 172.16.101.101
Loading 1112 byte file host1-confg:![OK]
Router#
%SYS-5-CONFIG: Configured from host1-config by rcp from 172.16.101.101
Copy rcp Startup-Config
The following example specifies a remote username of netadmin1. Then it copies the configuration file named host2-confg from the netadmin1 directory on the remote server with an IP address of
172.16.101.101 to the startup configuration.
Rtr2# configure terminal
Rtr2(config)# ip rcmd remote-username netadmin1
Rtr2(config)# end
Rtr2# copy rcp: nvram:startup-config
Address of remote host [255.255.255.255]? 172.16.101.101
Name of configuration file[rtr2-confg]? host2-confg
Configure using host2-confg from 172.16.101.101?[confirm]
Connected to 172.16.101.101
Loading 1112 byte file host2-confg:![OK]
[OK]
Rtr2#
%SYS-5-CONFIG_NV:Non-volatile store configured from host2-config by rcp from 172.16.101.101
What to Do Next
After you have issued the copy EXEC command, you may be prompted for additional information or for confirmation of the action. The prompting will depend on how much information you provide in the copy command and the current setting of the fileprompt global configuration command.
Copying a Configuration File from an FTP Server to the Router
To copy a configuration file from an F TP server to the running configuration or startup configuration, complete the tasks in this section:
(Optional) Allows you to enter global configuration mode. This step is required only if you want to override the default remote username or password (see Steps 2 and 3).
Step 3
ipftpusernameusername
Example:
Router(config)# ip ftp username user1
(Optional) Specifies the default remote username.
Step 4
ipftppasswordpassword
Example:
Router(config)# ip ftp password guessme
(Optional) Specifies the default password.
Step 5
end
Example:
Router(config)# end
(Optional) Exits global configuration mode. This step is required only if you override the default remote username or password (see Steps 2 and 3).
The following example copies a host configuration file named host1-confg from the netadmin1 directory on the remote server with an IP address of
172.16.101.101, and loads and runs those commands on the router:
Router# copy rcp://netadmin1:mypass@172.16.101.101/host1-confg system:running-config
Configure using host1-confg from 172.16.101.101? [confirm]
Connected to 172.16.101.101
Loading 1112 byte file host1-confg:![OK]
Router#
%SYS-5-CONFIG: Configured from host1-config by ftp from 172.16.101.101
Copy FTP Startup-Config
The following example specifies a remote username of netadmin1. Then it copies the configuration file named host2-confg from the netadmin1 directory on the remote server with an IP address of
172.16.101.101 to the startup configuration.
Rtr2# configure terminal
Rtr2(config)# ip ftp usernamenetadmin1
Rtr2(config)# ip ftp passwordmypass
Rtr2(config)# end
Rtr2# copy ftp: nvram:startup-config
Address of remote host [255.255.255.255]? 172.16.101.101
Name of configuration file[rtr2-confg]? host2-confg
Configure using host2-confg from 172.16.101.101?[confirm]
Connected to 172.16.101.101
Loading 1112 byte file host2-confg:![OK]
[OK]
Rtr2#
%SYS-5-CONFIG_NV:Non-volatile store configured from host2-config by ftp from 172.16.101.101
What to Do Next
After you have issued the copy EXEC command, you may be prompted for additional information or for confirmation of the action. The prompting will depend on how much information you provide in the copy command and the current setting of the fileprompt global configuration command.
Maintaining Configuration Files Larger than NVRAM
To maintain a configuration file that exceeds size of NVRAM, perform the tasks described in the following sections:
When you have finished changing the running-configuration, saves the new configuration.
Examples
The following example compresses a 129-KB configuration file to 11 KB:
Router# configure terminal
Router(config)# service compress-config
Router(config)# end
Router# copy tftp://172.16.2.15/tokyo-confg system:running-config
Configure using tokyo-confg from 172.16.2.155? [confirm] y
Booting tokyo-confg from 172.16.2.155:!!! [OK - 874/16000 bytes]
Router# copy system:running-config nvram:startup-config
Building configuration...
Compressing configuration from 129648 bytes to 11077 bytes
[OK]
Storing the Configuration in Flash Memory on Class A Flash File Systems
To store the startup configuration in Flash memory, complete the tasks in this section:
Use FTP, rcp, or TFTP to copy the new configuration. If you try to load a configuration that is more than three times larger than the NVRAM size, the following error message is displayed:
Copies the current startup configuration to the new location to create the configuration file.
Step 3
configureterminal
Example:
Router# configure terminal
Enters global configuration mode.
Step 4
bootconfigflash-filesystem:filename
Example:
Router(config)# boot config slot0:router-config
Specifies that the startup configuration file be stored in Flash memory by setting the CONFIG_FILE variable.
Step 5
end
Example:
Router(config)# end
Exits global configuration mode.
Step 6
Do one of the following:
Use FTP, rcp, or TFTP to copy the new configuration. If you try to load a configuration that is more than three times larger than the NVRAM size, the following error message is displayed:
To clear the information stored by the Parser Cache feature, complete the task in this section:
SUMMARY STEPS
1.enable
2.clearparsercache
DETAILED STEPS
Command or Action
Purpose
Step 1
enable
Example:
Router> enable
Enables privileged EXEC mode.
Enter your password if prompted.
Step 2
clearparsercache
Example:
Router# clear parser cache
Clears the parse cache entries and hit/miss statistics stored for the Parser Cache feature.
Disabling the Parser Cache
The Parser Cache feature is enabled by default. To disable the Parser Cache feature, complete the task in this section:
SUMMARY STEPS
1.enable
2.noparsercache
DETAILED STEPS
Command or Action
Purpose
Step 1
enable
Example:
Router> enable
Enables privileged EXEC mode.
Enter your password if prompted.
Step 2
noparsercache
Example:
Router# no parser cache
Disables the Parser Cache feature:
When the parser cache is disabled, the noparsercache command line is written to the running configuration file.
If you wish to disable the parser cache to free system resources, you should clear the parser cache before issuing the noparsercache command. You will not be able to clear the parser cache after disabling it.
Reenabling the Parser Cache
To reenable the Parser Cache feature after disabling it, complete the task in this section:
SUMMARY STEPS
1.enable
2.parsercache
DETAILED STEPS
Command or Action
Purpose
Step 1
enable
Example:
Router> enable
Enables privileged EXEC mode.
Enter your password if prompted.
Step 2
parsercache
Example:
Router# parser cache
Enables the Parser Cache feature.
What to Do Next
Theshowparserstatistics command displays two sets of data, as follows:
The number of commands in the configuration file that was last copied into the running configuration, and the time it took for the system to parse them (a configuration file can be loaded into the running configuration at system startup, or by issuing commands such as the copysourcerunning-config EXEC command).
The status of the parser cache (enabled or disabled) and the number of command matches (hits or misses) since the system was started or since the parser cache was cleared.
Copying Configuration Files from Flash Memory to the Startup or Running Configuration
To copy a configuration file from Flash memory directly to your startup configuration in NVRAM or your running configuration, enter one of the commands in Step 2:
Copies a configuration file to your running configuration.
Examples
The following example copies the file named ios-upgrade-1 from partition 4 of the Flash memory PC Card in slot 0 to the router startup configurations:
Router# copy slot0:4:ios-upgrade-1 nvram:startup-config
Copy '
ios-upgrade-1
' from flash device
as 'startup-config' ? [yes/no] yes
[OK]
Copying Configuration Files Between Flash Memory File Systems
On platforms with multiple Flash memory file systems, you can copy files from one Flash memory file system, such as internal Flash memory or a Flash memory card in a PCMCIA slot, to another Flash memory file system. Copying files to different Flash memory file systems lets you create backup copies of working configurations and duplicate configurations for other routers. To copy a configuration file between Flash memory file systems, use the following commands in EXEC mode:
The following example copies the file named running-config from partition 1 of internal Flash memory to partition 1 of slot 1 on a Cisco 3600 series router. In this example, the source partition is not specified, so the router prompts for the partition number.
Router# copy flash: slot1:
System flash
Partition Size Used Free Bank-Size State Copy Mode
1 4096K 3070K 1025K 4096K Read/Write Direct
2 16384K 1671K 14712K 8192K Read/Write Direct
[Type ?<no> for partition directory; ? for full directory; q to abort]
Which partition? [default = 1]
System flash directory, partition 1:
File Length Name/status
1 3142748 dirt/network/mars-test/c3600-j-mz.latest
2 850 running-config
[3143728 bytes used, 1050576 available, 4194304 total]
PCMCIA Slot1 flash directory:
File Length Name/status
1 1711088 dirt/gate/c3600-i-mz
2 850 running-config
[1712068 bytes used, 2482236 available, 4194304 total]
Source file name? running-config
Destination file name [running-config]?
Verifying checksum for 'running-config' (file # 2)... OK
Erase flash device before writing? [confirm]
Flash contains files. Are you sure you want to erase? [confirm]
Copy 'running-config' from flash: device
as 'running-config' into slot1: device WITH erase? [yes/no] yes
Erasing device... eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee ...erased
!
[OK - 850/4194304 bytes]
Flash device copy took 00:00:30 [hh:mm:ss]
Verifying checksum... OK (0x16)
Copying a Configuration File from an FTP Server to Flash Memory Devices
To copy a configuration file from an FTP server to a Flash memory device, complete the task in this section:
Copies the configuration file from a network server to the Flash memory device using FTP.
What to Do Next
After you have issued the copy EXEC command, you may be prompted for additional information or for confirmation of the action. The prompting will depend on how much information you provide in the copy command and the current setting of the fileprompt global configuration command.
Copying a Configuration File from an rcp Server to Flash Memory Devices
To copy a configuration file from an rcp server to a Flash memory device, complete the tasks in this section:
Copies the configuration file from a network server to the Flash memory device using rcp. Reply to any router prompts for additional information or confirmation. The prompting will depending on how much information you provide in the copy command and the current setting of the fileprompt command.
Copying a Configuration File from a TFTP Server to Flash Memory Devices
To copy a configuration file from a TFTP server to a Flash memory device, complete the task in this section:
Copies the file from a TFTP server to the Flash memory device. Reply to any router prompts for additional information or confirmation. The prompting will depending on how much information you provide in the
copy command and the current setting of the
fileprompt command.
Examples
The following example shows the copying of the configuration file named router-config from a TFTP server to the Flash memory card inserted in slot 0 of the Network Processing Engine (NPE) or Route Switch Processor (RSP) card of a Cisco 7500 series router. The copied file is renamed new-config.
Router# copy tftp:router-config slot0:new-config
Reexecuting the Configuration Commands in the Startup Configuration File
To reexecute the commands located in the startup configuration file, complete the task in this section:
SUMMARY STEPS
1.enable
2.configurememory
DETAILED STEPS
Command or Action
Purpose
Step 1
enable
Example:
Router> enable
Enables privileged EXEC mode.
Enter your password if prompted.
Step 2
configurememory
Example:
Router# configure memory
Reexecutes the configuration commands
located in the startup configuration file
.
Clearing the Startup Configuration
You can clear the configuration information from the startup configuration. If you reboot the router with no startup configuration, the router will enter the Setup command facility so that you can configure the router from scratch.To clear the contents of your
startup configuration, complete the task in this section:
SUMMARY STEPS
1.enable
2.erasenvram
DETAILED STEPS
Command or Action
Purpose
Step 1
enable
Example:
Router> enable
Enables privileged EXEC mode.
Enter your password if prompted.
Step 2
erasenvram
Example:
Router# erase nvram
Clears the contents of your startup configuration.
Note
For all platforms except the Class A Flash file system platforms, this command erases NVRAM. The startup configuration file cannot be restored once it has been deleted.
On Class A Flash file system platforms, when you use the erasestartup-configEXECcommand, the router erases or deletes the configuration pointed to by CONFIG_FILE environment variable. If this variable points to NVRAM, the router erases NVRAM. If the CONFIG_FILE environment variable specifies a Flash memory device and configuration filename, the router deletes the configuration file. That is, the router marks the file as “deleted,” rather than erasing it. This feature allows you to recover a deleted file.
Deleting a Specified Configuration File
To delete a specifi
ed configuration on a specific Flash device, complete the task in this section:
SUMMARY STEPS
1.enable
2.deleteflash-filesystem:filename
DETAILED STEPS
Command or Action
Purpose
Step 1
enable
Example:
Router> enable
Enables privileged EXEC mode.
Enter your password if prompted.
Step 2
deleteflash-filesystem:filename
Example:
Router# delete slot0:myconfig
Deletes a specified configuration file on a specified Flash device.
Note
On Class A and B Flash file systems, when you delete a specific file in Flash memory, the system marks the file as deleted, allowing you to later recover a deleted file using the undelete EXEC command. Erased files cannot be recovered. To permanently erase the configuration file, use the squeeze EXEC command.
On Class C Flash file systems, you cannot recover a file that has been deleted.
If you attempt to erase or delete the configuration file specified by the CONFIG_FILE environment variable, the system prompts you to confirm the deletion.
Specifying the CONFIG_FILE Environment Variable on Class A Flash File Systems
On Class A Flash file systems, you can configure the Cisco IOS software to load the startup configuration file specified by the CONFIG_FILE environment variable. The CONFIG_FILE variable defaults to NVRAM. To change the CONFIG_FILE environment variable, complete the tasks in this section:
Saves the configuration performed in Step 3 to the startup configuration.
Step 7
showbootvar
Example:
Router#showbootvar
(Optional) Allows you to verify the contents of the CONFIG_FILE environment variable.
Examples
The following example copies the running configuration file to the first PCMCIA slot of the RSP card in a Cisco 7500 series router. This configuration is then used as the startup configuration when the system is restarted.
Router# copy system:running-config slot0:config2
Router# configure terminal
Router(config)# boot config slot0:config2
Router(config)# end
Router# copy system:running-config nvram:startup-config
[ok]
Router# show bootvar
BOOT variable = slot0:rsp-boot-m
CONFIG_FILE variable = nvram:
Current CONFIG_FILE variable = slot0:config2
Configuration register is 0x010F
What to Do Next
After you specify a location for the startup configuration file, the nvram:startup-config command is aliased to the new location of the startup configuration file. The morenvram:startup-config EXEC command will display the startup configuration, regardless of its location. The erasenvram:startup-config EXEC command will erase the contents of NVRAM and delete the file pointed to by the CONFIG_FILE environment variable.
When you save the configuration using the copysystem:running-confignvram:startup-config command, the router saves a complete version of the configuration file to the location specified by the CONFIG_FILE environment variable and a distilled version to NVRAM. A distilled version is one that does not contain access list information. If NVRAM contains a complete configuration file, the router prompts you to confirm your overwrite of the complete version with the distilled version. If NVRAM contains a distilled configuration, the router does not prompt you for confirmation and proceeds with overwriting the existing distilled configuration file in NVRAM.
Note
If you specify a file in a Flash device as the CONFIG_FILE environment variable, every time you save your configuration file with the copysystem:running-confignvram:startup-config command, the old configuration file is marked as “deleted,” and the new configuration file is saved to that device. Eventually, Flash memory will be full, because the old configuration files still take up memory. Use the squeeze EXEC command to permanently delete the old configuration files and reclaim the space.
Configuring the Router to Download the Network Configuration File
To configure the Cisco IOS software to download a network configuration file from a server at startup, complete the tasks in this section:
Specifies the network configuration file to download at startup, and the protocol to be used (TFTP, rcp, or FTP).
If you do not specify a network configuration filename, the Cisco IOS software uses the default filename network-confg. If you omit the address, the router uses the broadcast address.
You can specify more than one network configuration file. The software tries them in order entered until it loads one. This procedure can be useful for keeping files with different configuration information loaded on a network server.
Step 4
serviceconfig
Example:
Router(config)# service config
Enables the system to automatically load the network file upon restart.
Specifies the host configuration file to download at startup, and the protocol to be used (FTP, rcp, or TFTP):
If you do not specify a host configuration filename, the router uses its own name to form a host configuration filename by converting the name to all lowercase letters, removing all domain information, and appending “-confg.” If no host name information is available, the software uses the default host configuration filename router-confg. If you omit the address, the router uses the broadcast address.
You can specify more than one host configuration file. The Cisco IOS software tries them in order entered until it loads one. This procedure can be useful for keeping files with different configuration information loaded on a network server.
Step 4
serviceconfig
Example:
Router(config)# service config
Enables the system to automatically load the host file upon restart.
Saves the running configuration to the startup configuration file.
Examples
In the following example, a router is configured to download the host configuration file named hostfile1 and the network configuration file named networkfile1. The router uses TFTP and the broadcast address to obtain the file.
Router# configure terminal
Router(config)# boot host tftp:hostfile1
Router(config)# boot network tftp:networkfile1
Router(config)# service config
Router(config)# end
Router# copy system:running-config nvram:startup-config
No new or modified RFCs are supported, and support for existing RFCs has not been modified.
--
Technical Assistance
Description
Link
The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password.
Cisco and the Cisco Logo are trademarks of Cisco Systems, Inc. and/or its affiliates in the U.S. and other countries. A listing of Cisco's trademarks can be found at www.cisco.com/go/trademarks. Third party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1005R)