copy

モード: 特権EXECモード
カテゴリー: 運用・管理 / ファイル操作


# copy SOURCE DESTINATION


ファイルをコピーする。
ローカルファイルシステム上でのコピーだけでなく、ネットワーク経由のリモートコピー(アップロードやダウンロード)やコンソールポート経由のファイル転送も可能。

本コマンドではさまざまな書式を使用できるが、基本パターンは次のとおり。

  1. 通常ファイルをコピーするためのもっとも一般的な書式
    コピー元とコピー先は、ローカルファイルシステム上のファイルでも、リモートホスト上のファイルでもよい。

    copy REGULARSRC REGULARDST


  2. 設定の保存や復元に使用する特殊な書式


  3. 現在実行中のファームウェアイメージを通常ファイルにコピーするための書式。ファームウェアのバックアップに用いる(この書式を用いず、1の書式でイメージファイルを直接指定してもかまわない)。

    copy current-software REGULARDST


  4. ZMODEMプロトコルを用いてコンソールポート経由のファイル転送を行うための書式


パラメーター

SOURCE コピー元(読み出し元)ファイルのパス。次のような指定が可能
REGULARSRC 通常ファイル。大きく分けて次の2種類がある
  LOCALSRC ローカルファイルのパス。もっとも簡略な指定方法として、「flash」、「nvs」、「usb」、「card」のようにデバイス名だけを指定することもできる。この場合は、指定したデバイス上のパスを対話式にたずねてくる
  REMOTESRC リモートファイルのURL。リモートコンピューター上のファイルをネットワーク経由で転送する場合はこの形式で指定する。プロトコルとしては、TFTP、HTTP、SCP、SFTPを使用可能。もっとも簡略な指定方法として、「tftp」、「http」、「scp」、「sftp」のようにスキーム(プロトコル)だけを指定することもできる。この場合は、ホスト名やファイル名を対話式にたずねてくる。また、通常のURLを指定した場合であっても、足りない情報があるときは対話式にたずねてくる。なお、HTTPはIPv4にのみ対応。TFTP、SCP、SFTPはIPv4とIPv6の両方に対応している
zmodem コンソールポート経由でファイルを受信する場合に指定する(転送プロトコルはZMODEM)。このとき、第2引数(DESTINATION)は指定できず、受信したファイルはZMODEMプロトコルで通知された名前で保存される
running-config ランタイムメモリー上にある現在の設定内容(ランニングコンフィグ)を示す特殊な指定
startup-config 起動時コンフィグ(スタートアップコンフィグ)を示す特殊な指定。スタートアップコンフィグの実体ファイルはshow bootコマンドで確認でき、boot config-fileコマンドで変更できる
current-software 現在実行中のファームウェアイメージを示す特殊な指定
DESTINATION コピー先(書き込み先)ファイルまたはディレクトリーのパス。第一引数(SOURCE)がzmodemの場合は指定できない。基本的な指定方法は第一引数(SOURCE)と同じ。ディレクトリーを指定した場合は、保存時のファイル名を対話式にたずねてくる
REGULARDST 通常ファイルまたはディレクトリー。大きく分けて次の2種類がある
  LOCALDST ローカルファイルまたはディレクトリーのパス。もっとも簡略な指定方法として、「flash」、「nvs」、「usb」、「card」のようにデバイス名だけを指定することもできる。この場合は、指定したデバイス上のパスを対話式にたずねてくる
  REMOTEDST リモートファイルまたはディレクトリーのURL。第1引数(SOURCE)で指定したファイルをネットワーク経由でリモートコンピューターに転送する場合はこの形式で指定する。転送プロトコルとしては、TFTP、SCPを使用可能。もっとも簡略な指定方法として、「tftp」、「scp」のようにスキーム(プロトコル)だけを指定することもできる。この場合は、ホスト名やファイル名を対話式にたずねてくる。また、通常のURLを指定した場合であっても、足りない情報があるときは対話式にたずねてくる。なお、TFTP、SCPはIPv4とIPv6の両方に対応している
zmodem 第1引数(SOURCE)で指定したファイルをコンソールポート経由で送信する場合に指定する(転送プロトコルはZMODEM)
startup-config 起動時コンフィグ(スタートアップコンフィグ)を示す特殊な指定。スタートアップコンフィグの実体ファイルはshow bootコマンドで確認でき、boot config-fileコマンドで変更できる。なお、コピー元にrunning-configを指定した場合を除いて、本コマンドで既存のスタートアップコンフィグを上書きすることはできない。スタートアップコンフィグの内容を変更する場合は、あらかじめerase startup-configコマンドでスタートアップコンフィグを消去しておくこと


使用例

■ カレントディレクトリーにあるファイルtest1.cfgをtest2.cfgとしてコピーする。

awplus# copy test1.cfg test2.cfg


■ 現在の設定内容(ランニングコンフィグ)を起動時コンフィグ(スタートアップコンフィグ)として保存する。これにより、次回起動時に現在の設定内容が復元される。

awplus# copy running-config startup-config


■ 現在の設定内容(ランニングコンフィグ)をカレントディレクトリーのファイルsnmpv3.cfgとして保存する。本コマンドは、現在の設定内容をsnmpv3.cfgに保存するだけで、その内容が次回起動時に読み込まれるよう設定するわけではないことに注意(次の例も参照)。

awplus# copy running-config snmpv3.cfg


■ 起動時コンフィグ(スタートアップコンフィグ)の内容をflash:/basicip.cfgにコピー(バックアップ)する。

awplus# copy startup-config flash:/basicip.cfg


■ カレントディレクトリーにあるファイルsnmpv3.cfgの内容を起動時コンフィグ(スタートアップコンフィグ)にコピーする。これにより、次回起動時にsnmpv3.cfgの内容が復元される。

awplus# erase startup-config
awplus# copy snmpv3.cfg startup-config

Note - 「copy REGULARSRC startup-config」の書式では、既存のスタートアップコンフィグを上書きすることはできない。同書式でスタートアップコンフィグの内容を変更する場合は、あらかじめerase startup-configコマンドでスタートアップコンフィグを消去しておくこと。なお、次回のスタートアップコンフィグを変更する方法には、boot config-fileコマンドでスタートアップコンフィグの実体ファイルを切り替える方法もある。コンフィグファイルの管理方針にしたがって適切な方法を選択すること。

■ 現在の設定内容(ランニングコンフィグ)をTFTPサーバーhiyoko.example.comにアップロードし、同サーバー上のファイルrunning.cfgとして保存する(バックアップする)。

awplus# copy running-config tftp://hiyoko.example.com/running.cfg


■ 現在実行中のファームウェアイメージをSSHサーバーhiyoko.example.comにアップロードし、同サーバー上のディレクトリーtmp/に保存する(バックアップする)。転送プロトコルにはSSHのサブアプリケーションであるSCP(Secure CoPy)を使用し、ユーザー名zeinでログインする。コピー先としてディレクトリーを指定した場合は、この例のように保存するときのファイル名をたずねてくる(ここではmyfirm.relというファイル名を指定している)。

awplus# copy current-software scp://zein@hiyoko.example.com/tmp/
Enter destination file name [current-software]:myfirm.rel 
Copying from source file, please wait...
Password:XXXXXX ↓ (実際には表示されません)
Copying to destination file, please wait...
Successful operation

Note - コピー元としてキーワードcurrent-softwareを指定し、コピー先としてディレクトリーを指定した場合、デフォルトの保存先ファイル名として「current-software」が提示されるが、boot systemコマンドで指定する起動ファームウェアのイメージファイルは拡張子が「.rel」でなくてはならないため、この名前のままでは起動用ファームウェアとして指定できないので注意。

■ IPv6対応のSSHサーバー「2001:db8:2:3::4」上のファイルtmp/heavytest.cfgをSSHのサブアプリケーションであるSCP(Secure CoPy)経由で取得し、フラッシュメモリーのルートディレクトリーにtest1000.cfgとして保存する。ログイン時のユーザー名としてはzeinを使用する。

awplus# copy scp://zein@[2001:db8:2:3::4]/tmp/heavytest.cfg flash:/test1000.cfg
Password:XXXXXX ↓ (実際には表示されません)
Copying..
Successful operation

Note - URLのホスト指定部にIPv6アドレスを直接記述するときは、この例のようにスクエアブラケット([ ])で囲む必要があることに注意。

■ HTTPサーバーwww.example.com上のファイル/~zein/work/myconfig.cfgをダウンロードし、カレントディレクトリーのファイルmyconfig.cfgとして保存する。

awplus# copy http://www.example.com/~zein/work/myconfig.cfg myconfig.cfg


■ SSHサーバー上のファイルwww/work/myconfig.cfgをSSHのサブアプリケーションであるSFTP(Secure FTP)経由で取得し、フラッシュメモリーのルートディレクトリーにmyconfig2.cfgとして保存する。ログイン時のユーザー名としてはzeinを使用する。

awplus# copy sftp://zein@www.example.com/www/work/myconfig.cfg flash:/myconfig2.cfg
Password:XXXXXX ↓ (実際には表示されません)
Copying..
Successful operation


■ カレントディレクトリーにあるファイルmyconfig2.cfgをコンソールポート経由で送信する(プロトコルはZMODEM)。

awplus# copy myconfig2.cfg zmodem
**B00000000000000
(通信ソフトウェア側でZMODEMによるファイル受信の操作を行う)


■ ZMODEMプロトコルを用いてコンソールポート経由でファイルを受信し、カレントディレクトリーに保存する。保存時の名前にはZMODEMで通知されたものが使われる。

awplus# copy zmodem
rz waiting to receive.**B0100000023be50
(通信ソフトウェア側でZMODEMによるファイル送信の操作を行う)


■ TFTPによるファイルダウンロードを対話式に行うには、コピー元に「tftp」、コピー先に「flash」とだけ指定する。

awplus# copy tftp flash
Enter source host name []:172.17.28.70 ↓ (TFTPサーバー)
Enter source file name []:test1234.cfg ↓ (ダウンロード対象ファイル)
Enter destination file name [test1234.cfg]: ↓ (ダウンロード後ファイル名。カッコ内の名前でよければ単にEnter)
Copying...
Successful operation


■ TFTPによるファイルアップロードを対話式に行うには、コピー先に「tftp」とだけ指定する。以下の例ではコピー元ファイル名を明示しているが、単に「flash」などと指定すればコピー元ファイルのパスも対話式に入力できる。

awplus# copy test2345.cfg tftp
Enter destination host name []:172.17.28.70 ↓ (TFTPサーバー)
Enter destination file name [test2345.cfg]: ↓ (アップロード後ファイル名。カッコ内の名前でよければ単にEnter)
Copying..
Successful operation


■ HTTPによるファイルダウンロードを対話式に行うには、コピー元に「http」、コピー先に「flash」とだけ指定する。

awplus# copy http flash
Enter source host name []:172.17.28.70 ↓ (HTTPサーバー)
Enter source file name []:~zein/work/weekly.txt ↓ (ダウンロード対象ファイル)
Enter destination file name [weekly.txt]: ↓ (ダウンロード後ファイル名。カッコ内の名前でよければ単にEnter)
Copying..
Successful operation


■ SCPによるファイルダウンロードを対話式に行うには、コピー元に「scp」、コピー先に「flash」とだけ指定する。

awplus# copy scp flash
Enter source host name []:zein@172.17.28.1 ↓ (SCP(SSH)サーバー。通常は「ユーザー名@」を前置する)
Enter source file name []:tmp/test3456.cfg ↓ (ダウンロード対象ファイル)
Enter destination file name [test3456.cfg]: ↓ (ダウンロード後ファイル名。カッコ内の名前でよければ単にEnter)
Password:XXXXXXXX ↓ (SSHサーバーにログインするためのパスワード。実際には表示されません)
Copying..
Successful operation


■ SCPによるファイルアップロードを対話式に行うには、コピー先に「scp」とだけ指定する。以下の例ではコピー元ファイル名を明示しているが、単に「flash」などと指定すればコピー元ファイルのパスも対話式に入力できる。

awplus# copy test4567.cfg scp
Enter destination host name []:zein@172.17.28.1 ↓ (SCP(SSH)サーバー。通常は「ユーザー名@」を前置する)
Enter destination file name [test4567.cfg]: ↓ (アップロード後ファイル名。カッコ内の名前でよければ単にEnter)
Copying from source file, please wait...
Password:XXXXXXXX ↓ (SSHサーバーにログインするためのパスワード。実際には表示されません)
Copying to destination file, please wait...
Successful operation


■ SFTPによるファイルダウンロードを対話式に行うには、コピー元に「sftp」、コピー先に「flash」とだけ指定する。

awplus# copy sftp flash
Enter source host name []:zein@172.17.28.1 ↓ (SFTP(SSH)サーバー。通常は「ユーザー名@」を前置する)
Enter source file name []:tmp/test5678.cfg ↓ (ダウンロード対象ファイル)
Enter destination file name [test5678.cfg]: ↓ (ダウンロード後ファイル名。カッコ内の名前でよければ単にEnter)
Password:
Copying..
Successful operation


■ TFTPサーバー2001:db8::2からファイルtftp-test.txtを本体内蔵フラッシュメモリーにダウンロードする。

awplus# copy tftp://2001:db8::2/tftp-test.txt flash


■ TFTPサーバー2001:db8::2にファイルipv6-tftp.cfgをアップロードする。

awplus# copy ipv6-tftp.cfg tftp://2001:db8::2/


注意・補足事項

■ リモートホストをIPアドレス(IPv4/IPv6)ではなくホスト名で指定するためには、あらかじめip name-serverコマンドでDNSサーバーの設定をしておき(初期状態では未設定)、ip domain-lookupコマンドでDNSへの問い合わせ機能を有効にしておく必要がある(初期状態で有効)。なお、指定したホスト名が複数のアドレスに解決された場合(IPv4アドレスとIPv6アドレスの両方が返ってきた場合や、複数のIPv4アドレスあるいは複数のIPv6アドレスが返ってきた場合など)は、成功するまで各アドレスを順に使って接続を試行するがその順序は不定。

■ コピー先にスタートアップコンフィグ(startup-config)、スタートアップコンフィグの実体ファイル(boot config-fileコマンドで指定したファイル)、あるいは、初期設定の実体ファイル(flash:/default.cfg)を指定して上書きコピーすることはできない。ただし、「copy running-config startup-config」だけは例外で、スタートアップコンフィグの実体ファイルが存在していても、現在のランニングコンフィグの内容で上書きする。

■ ファイル名、フォルダ名に \ は使用できない。

■ 本コマンドは、複数ノードを対象とするワーキングセットプロンプト(atmf working-set)では実行できない(下記メッセージが出てエラーになる)。1台のノードだけを対象とするワーキングセットプロンプトか、ローカルプロンプトから実行すること。

% Working set must contain only single node for this command

ただし、設定保存用の「copy running-config startup-config」だけは例外的に実行可能。

■ ZMODEMで転送するファイルのサイズは3MByte以下にすること。


関連コマンド

cd(特権EXECモード)
dir(特権EXECモード)
group(RADIUSサーバーモード)
ip domain-lookup(グローバルコンフィグモード)
ip name-server(グローバルコンフィグモード)
radius-server local(グローバルコンフィグモード)
service http(グローバルコンフィグモード)
show mac address-table(非特権EXECモード)
show radius local-server group(非特権EXECモード)
show radius local-server user(非特権EXECモード)
show running-config(特権EXECモード)
show startup-config(特権EXECモード)
user(RADIUSサーバーモード)
write file(特権EXECモード)
write memory(特権EXECモード)
write terminal(特権EXECモード)



(C) 2015 - 2017 アライドテレシスホールディングス株式会社

PN: 613-002107 Rev.M