こんにちは、cloudpack津村です。

:nemui:
※徹夜明けです。

Cisco IOSでファイルを操作する

ルータを構築していると、Configを保存したり書き戻す等、意外とファイル操作をする事があると思います。

エディタとのコピペも1つの手ですが、写真のようにUSBポートがある場合、これらの作業にUSBメモリを使用する事が出来ます。

今回は、USBメモリを使ってConfigやIOSの本体を操作する方法をまとめました。
【きっと】CiscoIOSでのファイル操作術【役立つ!】: USBメモリを利用できるルータ

USBメモリを挿入する

USBメモリを挿入すると、「usbflush0:」として認識されます。事前にFATでフォーマットされている場合、そのままファイル操作が可能です。

mount / unmount の操作は必要ありません。

*Mar  4 06:16:01.243: %USBFLASH-5-CHANGE: usbflash0 has been inserted!

USBメモリをフォーマットする

IOS自身で、USBメモリをフォーマットする事が可能です。
ファイルシステムはFATであり、今回はTOSHIBA製及びTRANCEND製の16GBのメモリで動作を確認しました。

Router#format usbflash0:
Format operation may take a while. Continue? [confirm]
Format operation will destroy all data in "usbflash0:".  Continue? [confirm]
Format: All system sectors written. OK...

Format: Total sectors in formatted partition: 30308481
Format: Total bytes in formatted partition: 15517942272
Format: Operation completed successfully.

Format of usbflash0: complete

デバイスの容量を確認する

各デバイス毎に、容量および空き容量を確認する事ができます。

Router#show file systems
File Systems:
       Size(b)       Free(b)      Type  Flags  Prefixes
[中略]
*     31989760       1421312      disk     rw   flash:#
        196600        192452     nvram     rw   nvram:
[中略]
   15487623168   15487619072  usbflash     rw   usbflash0:

ファイルをコピーする

ファイルをコピーする事が可能です。

今回は、CF上のIOS本体を、USBメモリへコピーします。大量の「C」が出力されますので、お茶でも飲んでお待ちください。

Router#copy flash:c181x-adventerprisek9-mz.151-4.M6.bin usbflash0:
Destination filename [c181x-adventerprisek9-mz.151-4.M6.bin]?
Copy in progress...CCCCCCCCCCC[中略]
30554380 bytes copied in 29.888 secs (1022296 bytes/sec)

ファイルの詳細を表示する

ファイルの詳細を表示します。ファイルタイプ及びファイルサイズを確認できます。

Router#show file information usbflash0:c181x-adventerprisek9-mz.151-4.M6.bin
usbflash0:c181x-adventerprisek9-mz.151-4.M6.bin:
  type is image (elf) []
  file size is 30554380 bytes, run size is 30724078 bytes
  Runnable image, entry point 0x80012000, run from ram

デバイス内のファイルの一覧を出力する

デバイス内のファイルの一覧を出力します。

Router#show usbflash0:
-#- --length-- -----date/time------ path
1     30554380 Mar 4 2015 06:21:52 +00:00 c181x-adventerprisek9-mz.151-4.M6.bin

15457062912 bytes available (30560256 bytes used)

ファイルを削除する

デバイス内のファイルを削除します。

Router#delete usbflash0:c181x-adventerprisek9-mz.151-4.M6.bin
Delete filename [c181x-adventerprisek9-mz.151-4.M6.bin]?
Delete usbflash0:/c181x-adventerprisek9-mz.151-4.M6.bin? [confirm]

startup-configを任意の名前でUSBメモリに保存する

ここでは、CF上に保存された startup-config を、USBメモリ上に任意の名前で保存します。

ここでは、一度 config を保存(write memory)した後、USBメモリへ「default-router.config」として保存します。

Default-Router#wr mem
Building configuration...
[OK]
Default-Router#copy startup-config usbflash0:default-router.config
Destination filename [default-router.config]?
1390 bytes copied in 0.488 secs (2848 bytes/sec)

Cisco Routerを初期化する

Cisco Routerを初期化します。

一般的には startup-config の削除のみですが、VLAN Database(vlan.dat)が悪さをする場合があるので、明示的に削除します。 その他、ログ等を出力している場合も、IOS本体以外を同様に削除します。
この後、ルータをリロードする事で初期化が完了します。

Default-Router#erase startup-config
Erasing the nvram filesystem will remove all configuration files! Continue? [confirm]
[OK]
Erase of nvram: complete
*Mar  4 06:28:08.023: %SYS-7-NV_BLOCK_INIT: Initialized the geometry of nvram
Default-Router#delete flash:vlan.dat
Delete filename [vlan.dat]?
Delete flash:/vlan.dat? [confirm]
Default-Router#show flash:
-#- --length-- -----date/time------ path
1     30554380 Feb 22 2013 01:24:02 +00:00 c181x-adventerprisek9-mz.151-4.M6.bin

1425408 bytes available (30564352 bytes used)

ルータへConfigを上書きする

USBメモリに保存された Configstartup-config に上書きします。

running-config へ上書きする事も可能ですが、ケースにより意図しない挙動をする場合があり、個人的に推奨していません。

上書き後、リロードする事で反映されます。

Router#copy usbflash0:default-router.config startup-config
Destination filename [startup-config]?
[OK]
1390 bytes copied in 1.396 secs (996 bytes/sec)

Router#reload
Proceed with reload? [confirm]

終わりに

俺、飯くって家帰ってUbuntuインストールしたら、寝るんだ・・・・・・・。
あぱむ、あぱぁーむっ….zzzz…

元記事はこちらです。
【きっと】CiscoIOSでのファイル操作術【役立つ!】