[index] AT-AR2050V/AT-AR3050S/AT-AR4050S コマンドリファレンス 5.5.0

# copy

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

`# copy SOURCE DESTINATION`

ファイルをコピーする。
ローカルファイルシステム上でのコピーだけでなく、ネットワーク経由のリモートコピー（アップロードやダウンロード）やコンソールポート経由のファイル転送も可能。
本コマンドではさまざまな書式を使用できるが、基本パターンは次のとおり。

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

   `copy REGULARSRC REGULARDST`

2. 設定の保存や復元に使用する特殊な書式
   - ランタイムメモリー上にある現在の設定内容（ランニングコンフィグ）を起動時コンフィグ（スタートアップコンフィグ）として保存するための書式。write fileコマンド、write memoryコマンドと同等

     `copy running-config startup-config`

   - ランニングコンフィグを通常ファイルに保存するための書式。この場合、次回起動時にランニングコンフィグが自動復元されるわけではないので注意。

     `copy running-config REGULARDST`

   - 通常ファイルの内容をスタートアップコンフィグにコピーするための書式。指定したファイルに記述された設定内容を次回起動時に復元させたい場合に使用する。

     `copy REGULARSRC startup-config`

     > Note

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

   - スタートアップコンフィグを通常ファイルにコピーするための書式。スタートアップコンフィグのバックアップに使う。

     `copy startup-config REGULARDST`

3. ZMODEMプロトコルを用いてコンソールポート経由のファイル転送を行うための書式
   - コンソールポート経由でファイルを受信
     コピー先ファイル名は指定できない。ZMODEMプロトコルで通知された名前で保存される。

     `copy zmodem`

   - コンソールポート経由でファイルを送信

     `copy REGULARSRC zmodem`

4. 本体に保存されるログ（bufferedログとpermanentログ）を任意のファイルにコピーするための書式

   `copy buffered-log REGULARDST`

   `copy permanent-log REGULARDST`

### パラメーター

`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コマンドで変更できる
| `buffered-log` | bufferedログ（ランタイムメモリーに保存されている一時ログ）を表す特殊な指定
| `permanent-log` | permanentログ（フラッシュメモリーに保存されている永続ログ）を表す特殊な指定
`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 ↓

■ 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以下にすること。
■ 外部メディアへのコピー中に外部メディアを抜かないこと。コピー中に外部メディアを抜いた場合、実際はコピーに失敗していても「successful」というメッセージが表示されるため注意。
■ 外部メディアを取り外すときは、事前にunmountコマンドを実行し、未書き込みのデータを書き出してから取りはずすこと。

### 関連コマンド

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モード）
unmount（特権EXECモード）
user（RADIUSサーバーモード）
vlan（RADIUSサーバー・ユーザーグループモード）
write file（特権EXECモード）
write memory（特権EXECモード）
write terminal（特権EXECモード）

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

PN: 613-002107 Rev.AK_1