目录

简介

先决条件

要求

使用的组件

背景信息

适用硬件

警告和限制

执行NX-OS压缩映像程序后NX-OS二进制映像文件更改的MD5和SHA512校验和

NX-OS二进制映像文件通过SCP在带内接口上发生故障的精简映像过程

NX-OS二进制映像文件通过SCP的精简映像程序失败率为29%

在9.3(x)主版本中升级到NX-OS软件版本后，Nexus交换机在引导环路中卡住，带紧凑型映像

NX-OS紧凑型映像平台组

思科软件下载网站上的紧凑型NX-OS软件映像

NX-OS紧凑型映像程序

Bootflash上NX-OS二进制映像文件的精简映像程序

USB上NX-OS二进制映像文件的精简映像程序

NX-OS二进制映像文件通过SCP的精简映像过程

将Linux主机用作SCP服务器

将Nexus设备用作SCP服务器

其他信息

相关信息

简介

本文档介绍通过紧凑型映像程序在Cisco Nexus 3000、3100和3500系列交换机上减小NX-OS二进制映像文件文件大小的步骤。本指南还介绍了在访问不同资源的各种不同环境中执行此过程时可以使用的策略。

先决条件

要求

思科建议您了解使用文件传输协议（如TFTP [简单文件传输协议]、FTP [文件传输协议]、SCP [安全复制协议]、SFTP [安全文件传输协议]等）在Cisco NX-OS中复制文件的基础知识。 有关此功能的信息，请参阅以下适用文档之一：

- Cisco Nexus 3000系列NX-OS基础配置指南，版本9.3(x)

- Cisco Nexus 3000系列NX-OS基础配置指南，版本9.2(x)

- Cisco Nexus 3000系列NX-OS基础配置指南，版本7.x

- Cisco Nexus 3548交换机NX-OS基础配置指南，版本9.3(x)

- Cisco Nexus 3548交换机NX-OS基础配置指南，版本9.2(x)

- Cisco Nexus 3548交换机NX-OS基础配置指南，版本7.x

使用的组件

本文档中的信息基于本文档适用硬件部分中列出的Cisco Nexus 3000、3100和3500系列交换机。本文档中的设备输出来自运行NX-OS软件版本7.0(3)I7(8)的Nexus 3064PQ-10GE设备。

本文档中的信息在特定实验室环境设备上创建。本文档中使用的所有设备最初均采用原始（默认）配置。如果您使用的是真实网络，请确保您已经了解所有命令的潜在影响。

背景信息

早期型号的Cisco Nexus 3000、3100和3500系列交换机为bootflash分配了1.4至1.6 GB的存储空间。随着时间的推移，NX-OS二进制映像文件的文件大小已稳步增加到超过1 GB。因此，Nexus 3000、3100和3500系列交换机很难同时存储多个完整NX-OS二进制映像。因此，管理员无法遵循Nexus 3000、3100和3500系列交换机上的标准NX-OS软件升级程序，这些交换机用于其他Nexus平台，如Nexus 5000、6000、7000和9000系列交换机。

从NX-OS软件版本7.0(3)I3(1)开始，NX-OS二进制映像文件的文件大小可以通过精简映像程序来减小。这是一个不影响交换机控制平面或转发数据平面流量的无中断过程。在以下情况下，可以对NX-OS二进制映像文件执行此过程：

1. 当NX-OS二进制映像文件位于Nexus设备的bootflash上时。

2. 当NX-OS二进制映像文件位于连接到Nexus设备的USB闪存驱动器上时。

3. 使用安全复制协议(SCP)将NX-OS二进制映像文件复制到Nexus设备的bootflash时。

本文档提供了通过紧凑型映像过程为上述每种场景减小NX-OS二进制映像文件文件大小所用的步骤。

适用硬件

本文档中介绍的过程仅适用于此硬件：

- Nexus 3000设备

- N3K-C3048TP-1GE

- N3K-C3064PQ-10GE

- N3K-C3064PQ-10GX

- N3K-C3064TQ-10GT

- Nexus 3100设备

- N3K-C3132Q-40GE

- N3K-C3132Q-40GX

- N3K-C3164Q-40GE

- N3K-C3172PQ-10GE

- N3K-C3172TQ-10GT

- N3K-C3172TQ-32T

- Nexus 3500设备

- N3K-C3524P-10G

- N3K-C3548P-10G

- N3K-C3524P-10GX

- N3K-C3548P-10GX

注意：此程序不适用于Nexus 3172-XL硬件（即N3K-C3172PQ-XL和N3K-C3172TQ-XL）或3500-XL硬件（即N3Xl）k-C3524P-XL和N3K-C3548P-XL)。 这些设备有足够的引导闪存空间，因此不需要通过精简映像过程压缩NX-OS二进制映像文件。

警告和限制

NX-OS紧凑型映像程序有一些警告和限制，您应该注意。

执行NX-OS压缩映像程序后NX-OS二进制映像文件更改的MD5和SHA512校验和

作为执行NX-OS Compact Image过程的一部分，NX-OS二进制映像文件的文件大小将大大减小。更改文件大小后，压缩的NX-OS二进制映像文件的MD5和SHA512校验和将与思科软件下载网站上发布的MD5和SHA512校验和不匹配。这是预期行为，不表示NX-OS Compact Image程序出现问题。

NX-OS二进制映像文件通过SCP在带内接口上发生故障的精简映像过程

运行以下NX-OS软件版本之一时，在带内接口（例如通过SVI或路由前面板端口）上通过SCP在NX-OS二进制映像文件上执行NX-OS紧凑映像过程时，可能会遇到错误：

- 7.0(3)I5(2)

- 7.0(3)I6(1)

- 7.0(3)I6(2)

- 7.0(3)I7(1)

以下是此错误的示例：

switch# copy scp://username@192.0.2.100/nxos.7.0.3.I7.8.bin bootflash: compact

Enter vrf (If no input, current vrf 'default' is considered):

ssh_exchange_identification: Connection closed by remote host

Scp Compact of /bootflash/nxos.7.0.3.I7.8.bin failed

Error doing scp

Copy failed. Removing file nxos.7.0.3.I7.8.bin

这是由于软件缺陷CSCvg51567，其中通过SCP执行NX-OS紧凑型映像过程的VRF（管理VRF除外）是管理VRF，管理VRF分配给该接口。在上述NX-OS软件版本中，必须通过SCP执行NX-OS紧凑型映像过程，该过程必须在管理VRF中的mgmt0接口上执行。

NX-OS二进制映像文件通过SCP的精简映像程序失败率为29%

在运行7.0(3)之前的NX-OS软件版本时，在NX-OS 9.3(x)主版本(如9.3(1)、9.3(2)、9.3(3)等)中的NX-OS二进制映像文件上通过SCP执行NX-OS紧凑映像过程时，可能会遇到错误)I7(7)(例如7.0(3)I7(3)、7.0(3)I7(4)、7.0(3)I7(5a)等)或9.2(4)(例如9.2(1)、9.2(2)和9.2(3))。 以下是此错误的示例：

switch# copy scp://username@192.0.2.100/nxos.9.3.3.bin bootflash: compact vrf management

Outbound-ReKey for 192.0.2.100:22

Inbound-ReKey for 192.0.2.100:22

username@192.0.2.100's password:

nxos.9.3.3.bin 29% 477MB 4.9MB/s 03:49 ETA

lost connection

Scp Compact of /bootflash/nxos.9.3.3.bin failed

Error doing scp

这是CSCvt11426中记录的已知限制的结果。在NX-OS 9.3(x)主版本(如9.3(1)、9.3(2)、9.3(3))中的NX-OS Compact映像文件上执行NX-OS Compact映像过程等)在NX-OS软件版本7.0(3)I7(7)或9.2(4)之前不受支持。

要解决此问题，您必须先升级到NX-OS软件版本7.0(3)I7(7)或9.2(4)（这可能涉及在这些NX-OS二进制映像文件上执行NX-OS Compact映像程序），然后再尝试升级到9.3(x)主版本（此类）中的NX-OS软件版本9.3(1)、9.3(2)、9.3(3)等。

在9.3(x)主版本中升级到NX-OS软件版本后，Nexus交换机在引导环路中卡住，带紧凑型映像

在执行NX-OS紧凑型映像程序后，Nexus交换机在9.3(x)主版本(如9.3(1)、9.3(2)、9.3(3)等)中升级到NX-OS软件版本后，在交换机重新加载为标准中断性升级的一部分后，可能会持续引导环路。您可能会看到交换机控制台上显示以下错误消息：

Image valid

MD5Sum mismatch

File does not exist, boot failed.

这是CSCvs23686中记录的已知限制的结果。在NX-OS 9.3(x)主版本(如9.3(1)、9.3(2)、9.3(3))中的NX-OS二进制映像文件上执行NX-OS Compact映像程序等)在NX-OS软件版本7.0(3)I7(7)或9.2(4)之前不受支持。

要解决此问题，您必须先升级到NX-OS软件版本7.0(3)I7(7)或9.2(4)（这可能涉及在这些NX-OS二进制映像文件上执行NX-OS Compact映像程序），然后再尝试升级到9.3(x)主版本（此类）中的NX-OS软件版本9.3(1)、9.3(2)、9.3(3)等。

NX-OS紧凑型映像平台组

本文档介绍的NX-OS紧凑型映像程序适用于三个独立的平台组：

- Nexus 3000设备（N3K-C3048、N3K-C3064等）

- Nexus 3100设备（N3K-C3132、N3K-C3172等）

- Nexus 3500设备（N3K-C3524、N3K-C3548等）

压缩的NX-OS二进制映像文件可在同一平台组内的其他设备之间重复使用。但是，不能在属于不同平台组的设备上使用紧凑的NX-OS二进制映像文件。

例如，假设您有四台Nexus 3000设备，这些型号包括：

- N3K-C3048TP-1GE

- N3K-C3064PQ-10GE

- N3K-C3172PQ-40GX

- N3K-C3548P-10G

压缩在N3K-C3048TP-1GE上的NX-OS二进制映像文件可通过您选择的文件传输协议直接传输到N3K-C3064PQ-10GE的bootflash（前提是N3K-C上有足够的空间）当然，3064PQ-10GE)。 此外，使用此紧凑的NX-OS二进制映像文件，可通过支持的方法升级N3K-C3064PQ-10GE。但是，此紧凑的NX-OS二进制映像文件不能用于升级N3K-C3172PQ-40GX和N3K-C3548P-10G设备。NX-OS紧凑型映像程序必须分别在N3K-C3172PQ-40GX和N3K-C3548P-10G设备上执行。

同一平台组内Nexus设备之间的这种兼容性可用于优化大量设备的NX-OS软件升级。例如，如果您有100台N3K-C3048TP-1GE设备，则可以在单台设备上使用NX-OS紧凑型映像程序，然后将紧凑型NX-OS二进制映像文件传输到生成的99台设备。无需在所有100台设备上执行NX-OS紧凑型映像程序。

思科软件下载网站上的紧凑型NX-OS软件映像

从2021年1月18日起，可在思科软件下载网站上下载NX-OS紧凑型软件映像，以供少数NX-OS软件版本下载。这些紧凑型映像具有已发布的MD5/SHA512校验和，可用于验证NX-OS二进制映像文件的完整性。对于以下NX-OS软件版本，可从思科软件下载网站下载紧凑型NX-OS软件映像：

- 9.3(4) 及更高版本

- 9.2(4)

- 7.0(3)I7(8)及更高版本

注意：如果可能，您应从思科软件下载网站下载紧凑型NX-OS软件映像，而不是使用本文档概述的紧凑型映像程序。本文档中概述的紧凑型映像程序仅应用于紧凑型NX-OS软件映像无法在思科软件下载网站下载的场景。

注意：在思科软件下载网站上发布的MD5/SHA512校验和与通过本文档概述的NX-OS紧凑映像程序创建的紧凑映像的MD5/SHA512校验和不匹配。

NX-OS紧凑型映像程序

Bootflash上NX-OS二进制映像文件的精简映像程序

升级到NX-OS软件版本7.0(3)I3(1)或更高版本后，可以使用install all nxos bootflash:{nxos-binary-image-file.bin} compact命令在Nexus设备的bootflash上存储的NX-OS二进制映像文件上执行紧凑映像。这通常在NX-OS二进制映像文件上执行，该文件与Nexus设备本身当前运行的NX-OS软件版本对应。通常，从不支持紧凑型映像程序(如NX-OS 6.0(2)U6(3a))的NX-OS软件版本升级到支持紧凑型映像程序(如NX-OS 7.0(3)I7(8))的映像后，会立即执行此程序。

此处的示例演示了此命令在最近从NX-OS 6.0(2)U6(3a)升级到NX-OS 7.0(3)I7(8)的Nexus 3064PQ-10GE设备上的使用。 即使您正在主动运行NX-OS软件版本7.0(3)I7(8)，也可以在NX-OS 7.0(3)I7(8)二进制映像文件上使用存储在设备Bootflash上的紧凑映像程序。在NX-OS 7.0(3)I3(1)之前，不支持紧凑映像过程，因此在运行NX-OS 6.0(2)U6(3a)时，您无法压缩NX-OS 7.0(3)I7(8)二进制映像文件。

N3K-C3064PQ# show module

<snip>

Mod Ports             Module-Type                       Model          Status

--- ----- ------------------------------------- --------------------- ---------

1    64   48x10GE + 16x10G/4x40G Supervisor     N3K-C3064PQ-10GE      active *

Mod  Sw                Hw     Slot

---  ----------------  ------ ----

1    7.0(3)I7(8)       1.0    NA

N3K-C3064PQ# show system reset-reason

<snip>

----- reset reason for module 1 (from Supervisor in slot 1) ---

1) At 571567 usecs after Mon Jun 15 19:40:15 2020

Reason: Disruptive upgrade

Service:

Version: 6.0(2)U6(3a)

用于6.0(2)U6(3a)的NX-OS启动和系统映像文件仍在bootflash上以及完整的NX-OS 7.0(3)I7(8)二进制映像文件上。

N3K-C3064PQ# dir bootflash:

30261    Apr 03 16:28:46 2017  .n3k_pre_single_img_upd_config

4096    Jun 15 15:05:04 2020  .rpmstore/

4096    Feb 08 16:38:11 2017  .swtam/

362528    Jun 15 19:59:44 2020  20200615_195315_poap_29012_init.log

945    Jun 15 19:11:16 2020  bios_daemon.dbg

0    Jun 15 19:43:24 2020  bootflash_sync_list

4096    Jun 15 19:43:36 2020  logflash/

37853184    Jun 15 19:01:36 2020  n3000-uk9-kickstart.6.0.2.U6.3a.bin

206762702    Jun 15 19:02:43 2020  n3000-uk9.6.0.2.U6.3a.bin

982681088    Jun 15 19:27:34 2020  nxos.7.0.3.I7.8.bin

324    Jun 15 19:51:08 2020  patch_control.log

58    Jun 15 19:51:08 2020  patch_debug.log

0    Jun 15 19:48:16 2020  platform-sdk.cmd

4096    Jun 15 19:53:15 2020  scripts/

1024    Jun 15 19:51:23 2020  sprom_2_0_1

1024    Jun 15 19:51:23 2020  sprom_3_0_0

1024    Jun 15 19:14:08 2020  sprom_cstruct_2_0_0

1024    Jun 15 19:14:40 2020  sprom_cstruct_3_0_0

4096    Jun 15 19:14:22 2020  vdc_2/

4096    Jun 15 19:14:22 2020  vdc_3/

4096    Jun 15 19:14:22 2020  vdc_4/

4096    Mar 30 22:31:55 2017  virt_strg_pool_bf_vdc_1/

4096    Mar 30 22:31:54 2017  virtual-instance/

3568    Jun 15 19:45:19 2020  vlan.dat

Usage for bootflash://sup-local

1324871680 bytes used

323751936 bytes free

1648623616 bytes total

删除6.0(2)U6(3a)的NX-OS启动和系统映像文件后，设备的bootflash上会留下约568 MB的可用空间。

N3K-C3064PQ# delete bootflash:n3000-uk9-kickstart.6.0.2.U6.3a.bin no-prompt

N3K-C3064PQ# delete bootflash:n3000-uk9.6.0.2.U6.3a.bin no-prompt

N3K-C3064PQ# dir bootflash:

30261    Apr 03 16:28:46 2017  .n3k_pre_single_img_upd_config

4096    Jun 15 15:05:04 2020  .rpmstore/

4096    Feb 08 16:38:11 2017  .swtam/

362528    Jun 15 19:59:44 2020  20200615_195315_poap_29012_init.log

945    Jun 15 19:11:16 2020  bios_daemon.dbg

0    Jun 15 19:43:24 2020  bootflash_sync_list

4096    Jun 15 19:43:36 2020  logflash/

982681088    Jun 15 19:27:34 2020  nxos.7.0.3.I7.8.bin

324    Jun 15 19:51:08 2020  patch_control.log

58    Jun 15 19:51:08 2020  patch_debug.log

0    Jun 15 19:48:16 2020  platform-sdk.cmd

4096    Jun 15 19:53:15 2020  scripts/

1024    Jun 15 19:51:23 2020  sprom_2_0_1

1024    Jun 15 19:51:23 2020  sprom_3_0_0

1024    Jun 15 19:14:08 2020  sprom_cstruct_2_0_0

1024    Jun 15 19:14:40 2020  sprom_cstruct_3_0_0

4096    Jun 15 19:14:22 2020  vdc_2/

4096    Jun 15 19:14:22 2020  vdc_3/

4096    Jun 15 19:14:22 2020  vdc_4/

4096    Mar 30 22:31:55 2017  virt_strg_pool_bf_vdc_1/

4096    Mar 30 22:31:54 2017  virtual-instance/

3568    Jun 15 19:45:19 2020  vlan.dat

Usage for bootflash://sup-local

1079996416 bytes used

568627200 bytes free

1648623616 bytes total

仅有568 MB的可用空间，没有足够的可用空间来存储另一个NX-OS二进制映像文件并完成升级过程。使用上述install all nxos bootflash:nxos.7.0.3.I7.8.bin compact命令可以执行紧凑映像过程，以减小NX-OS 7.0(3)I7(8)二进制映像文件的文件大小。

N3K-C3064PQ# install all nxos bootflash:nxos.7.0.3.I7.8.bin compact

Installer will perform compatibility check first. Please wait.

Compacting currently loaded image bootflash:/nxos.7.0.3.I7.8.bin

.......................................

Compact bootflash:/nxos.7.0.3.I7.8.bin done

紧凑型映像程序完成后，NX-OS 7.0(3)I7(8)映像文件大小会显着减小。因此，设备bootflash上的可用空间量已从568 MB变为1.079 GB。

N3K-C3064PQ# dir bootflash:

30261    Apr 03 16:28:46 2017  .n3k_pre_single_img_upd_config

4096    Jun 15 23:21:43 2020  .rpmstore/

4096    Feb 08 16:38:11 2017  .swtam/

362528    Jun 15 19:59:44 2020  20200615_195315_poap_29012_init.log

1890    Jun 15 22:30:33 2020  bios_daemon.dbg

0    Jun 15 19:43:24 2020  bootflash_sync_list

4096    Jun 15 19:43:36 2020  logflash/

4096    Jun 15 23:12:44 2020  lost+found/

471871960    Jun 15 23:32:10 2020  nxos.7.0.3.I7.8.bin

486    Jun 15 23:21:24 2020  patch_control.log

87    Jun 15 23:21:24 2020  patch_debug.log

0    Jun 15 19:48:16 2020  platform-sdk.cmd

4096    Jun 15 19:53:15 2020  scripts/

1024    Jun 15 22:32:48 2020  sprom_2_0_1

1024    Jun 15 22:32:48 2020  sprom_3_0_0

1024    Jun 15 19:14:08 2020  sprom_cstruct_2_0_0

1024    Jun 15 19:14:40 2020  sprom_cstruct_3_0_0

4096    Jun 15 19:14:22 2020  vdc_2/

4096    Jun 15 19:14:22 2020  vdc_3/

4096    Jun 15 19:14:22 2020  vdc_4/

4096    Mar 30 22:31:55 2017  virt_strg_pool_bf_vdc_1/

4096    Mar 30 22:31:54 2017  virtual-instance/

3568    Jun 15 19:45:19 2020  vlan.dat

Usage for bootflash://sup-local

569184256 bytes used

1079439360 bytes free

1648623616 bytes total

USB上NX-OS二进制映像文件的精简映像程序

升级到NX-OS软件版本7.0(3)I3(1)或更高版本后，可以在NX-OS二进制映像文件上执行紧凑映像程序，该文件存储在插入Nexus设备的USB闪存驱动器上。此过程可以使用install all nxos {usb-slot}:{nxos-binary-image-file.bin} compact命令执行。当您同时满足以下两个条件时，通常会执行此过程：

1. bootflash上没有足够的可用空间将完整目标NX-OS二进制映像文件复制到bootflash。

2. 由于某种原因，您无法通过SCP执行压缩映像过程（例如，您没有要使用的SCP服务器，交换机处于隔离环境中等）。

本示例演示了此命令在运行NX-OS 7.0(3)I7(8)的Nexus 3064PQ-10GE设备上的使用，该设备需要升级到NX-OS 9.3(4)。

N3K-C3064PQ# show module

<snip>

Mod Ports             Module-Type                       Model          Status

--- ----- ------------------------------------- --------------------- ---------

1    64   48x10GE + 16x10G/4x40G Supervisor     N3K-C3064PQ-10GE      active *

Mod  Sw                Hw     Slot

---  ----------------  ------ ----

1    7.0(3)I7(8)       1.0    NA

根据本文档Bootflash上NX-OS二进制映像文件的紧凑映像过程部分的说明，现有NX-OS 7.0(3)I7(8)二进制映像文件已经压缩。因此，Nexus设备的bootflash上大约有1.07 GB的可用空间。

N3K-C3064PQ# dir bootflash:

30261    Apr 03 16:28:46 2017  .n3k_pre_single_img_upd_config

4096    Jun 15 23:21:43 2020  .rpmstore/

4096    Feb 08 16:38:11 2017  .swtam/

362528    Jun 15 19:59:44 2020  20200615_195315_poap_29012_init.log

1890    Jun 15 22:30:33 2020  bios_daemon.dbg

0    Jun 15 19:43:24 2020  bootflash_sync_list

4096    Jun 15 19:43:36 2020  logflash/

4096    Jun 15 23:12:44 2020  lost+found/

471871960    Jun 15 23:32:10 2020  nxos.7.0.3.I7.8.bin

486    Jun 15 23:21:24 2020  patch_control.log

87    Jun 15 23:21:24 2020  patch_debug.log

0    Jun 15 19:48:16 2020  platform-sdk.cmd

4096    Jun 15 19:53:15 2020  scripts/

1024    Jun 15 22:32:48 2020  sprom_2_0_1

1024    Jun 15 22:32:48 2020  sprom_3_0_0

1024    Jun 15 19:14:08 2020  sprom_cstruct_2_0_0

1024    Jun 15 19:14:40 2020  sprom_cstruct_3_0_0

4096    Jun 15 19:14:22 2020  vdc_2/

4096    Jun 15 19:14:22 2020  vdc_3/

4096    Jun 15 19:14:22 2020  vdc_4/

4096    Mar 30 22:31:55 2017  virt_strg_pool_bf_vdc_1/

4096    Mar 30 22:31:54 2017  virtual-instance/

3568    Jun 15 19:45:19 2020  vlan.dat

Usage for bootflash://sup-local

569184256 bytes used

1079439360 bytes free

1648623616 bytes total

但是，NX-OS 9.3(4)二进制映像文件的大小约为1.6 GB。因此，您无法将完整的NX-OS 9.3(4)二进制映像复制到此设备的bootflash。

N3K-C3064PQ# copy ftp://administrator@192.0.2.10/nxos.9.3.4.bin bootflash: vrf management

Password:

/bootflash/nxos.9.3.4.bin: Write could not complete, check free space on device

Error during copy

***** Transfer of file aborted *****

Copy failed. Removing file nxos.9.3.4.bin

要解决此问题，必须将完整的NX-OS 9.3(4)二进制映像文件复制到插入Nexus设备的USB闪存驱动器。机箱的USB端口中插入了16 GB的USB闪存驱动器。完整的NX-OS 9.3(4)二进制映像文件通过FTP复制到USB闪存驱动器。

注意：Nexus 3064PQ-10GE设备上的USB端口可位于此。有关特定Nexus 3000、3100或3500设备上USB端口位置的详细信息，请参阅特定Nexus 3000、3100或3500设备的硬件安装指南。

N3K-C3064PQ# copy ftp://administrator@192.0.2.10/nxos.9.3.4.bin usb1: vrf management

Password:

***** Transfer of file Completed Successfully *****

Copy complete, now saving to disk (please wait)...

Copy complete.

确认完整的1.6 GB NX-OS 9.3(4)二进制映像文件已复制到USB闪存驱动器，无问题。

N3K-C3064PQ# dir usb1:

1679871488    Jun 16 00:26:02 2020  nxos.9.3.4.bin

Usage for usb1://sup-local

1679884288 bytes used

13829111808 bytes free

15508996096 bytes total

您可以使用上述install all nxos usb1:nxos.9.3.4.bin compact命令执行压缩映像过程，以减小NX-OS 9.3(4)二进制映像文件的文件大小。

N3K-C3064PQ# install all nxos usb1:nxos.9.3.4.bin compact

Installer will perform compatibility check first. Please wait.

Compacting usb1:/nxos.9.3.4.bin

......................................................

Compact usb1:/nxos.9.3.4.bin done

紧凑型映像过程完成后，NX-OS 9.3(4)二进制映像文件的大小会显着减小（约579 MB）。

N3K-C3064PQ# dir usb1:

579377951    Jun 16 00:12:34 2020  nxos.9.3.4.bin

Usage for usb1://sup-local

579387392 bytes used

14929608704 bytes free

15508996096 bytes total

回想一下，Bootflash有约1.07 GB的可用空间。现在，NX-OS 9.3(4)二进制映像文件大小已减少到579 MB，您可以将NX-OS 9.3(4)二进制映像从USB闪存驱动器复制到Nexus设备的bootflash。

N3K-C3064PQ# copy usb1:nxos.9.3.4.bin bootflash:

Copy progress 100% 579377KB

Copy complete, now saving to disk (please wait)...

Copy complete.

N3K-C3064PQ# dir bootflash:

30261    Apr 03 16:28:46 2017  .n3k_pre_single_img_upd_config

4096    Jun 15 23:21:43 2020  .rpmstore/

4096    Feb 08 16:38:11 2017  .swtam/

362528    Jun 15 19:59:44 2020  20200615_195315_poap_29012_init.log

1890    Jun 15 22:30:33 2020  bios_daemon.dbg

0    Jun 15 19:43:24 2020  bootflash_sync_list

4096    Jun 15 19:43:36 2020  logflash/

4096    Jun 15 23:12:44 2020  lost+found/

471871960    Jun 15 23:32:10 2020  nxos.7.0.3.I7.8.bin

579377951    Jun 16 00:51:35 2020  nxos.9.3.4.bin

486    Jun 15 23:21:24 2020  patch_control.log

87    Jun 15 23:21:24 2020  patch_debug.log

0    Jun 15 19:48:16 2020  platform-sdk.cmd

4096    Jun 15 19:53:15 2020  scripts/

1024    Jun 15 22:32:48 2020  sprom_2_0_1

1024    Jun 15 22:32:48 2020  sprom_3_0_0

1024    Jun 15 19:14:08 2020  sprom_cstruct_2_0_0

1024    Jun 15 19:14:40 2020  sprom_cstruct_3_0_0

4096    Jun 15 19:14:22 2020  vdc_2/

4096    Jun 15 19:14:22 2020  vdc_3/

4096    Jun 15 19:14:22 2020  vdc_4/

4096    Mar 30 22:31:55 2017  virt_strg_pool_bf_vdc_1/

4096    Mar 30 22:31:54 2017  virtual-instance/

3568    Jun 15 19:45:19 2020  vlan.dat

Usage for bootflash://sup-local

1149136896 bytes used

499486720 bytes free

1648623616 bytes total

现在，您可以使用支持的方法继续从NX-OS软件版本7.0(3)I7(8)升级到NX-OS软件版本9.3(4)的NX-OS软件升级。有关支持的升级方法的详细信息，请参阅目标NX-OS软件版本的版本说明(如Cisco Nexus 3000系列NX-OS版本说明，版本9.3(4)文档)。

NX-OS二进制映像文件通过SCP的精简映像过程

升级到NX-OS软件版本7.0(3)I5(2)或更高版本后，可以在NX-OS二进制映像文件上执行紧凑映像程序，该文件正在通过SCP主动复制到Nexus设备的引导闪存或连接的USB闪存驱动器。此过程可以使用复制scp:bootflash:命令。在满足以下条件时，通常会执行此过程：

- bootflash上没有足够的可用空间将完整目标NX-OS二进制映像文件复制到bootflash。

- 由于某种原因，您无法通过USB执行紧凑型映像程序（例如，您需要同时升级多台交换机，您没有对设备的实际访问权限等）。

注意：此过程仅支持SCP文件传输协议。其他文件传输协议（如TFTP、FTP和SFTP）不支持此过程。

将Linux主机用作SCP服务器

默认情况下，任何可通过SSH访问的Linux主机也可充当SCP服务器。如果能够使用您选择的文件传输协议将完整目标NX-OS二进制映像文件传输到您希望升级的Nexus设备也可访问的SSH访问Linux主机，则Nexus可以通过SCP使用精简映像程序，在您将其复制到设备或连接的USB的Bootflash时减小目标NX-OS二进制映像文件的大小闪存驱动器。

构建复制scp时：bootflash:compact命令，用于作为SCP服务器的Linux主机，请将绝对文件路径用于目标NX-OS二进制映像文件的位置。例如，假设服务器具有以下特征：

- 服务器 IP:192.0.2.10

- 服务器用户名：管理员

- NX-OS二进制映像绝对文件路径：/home/administrator/nxos.9.3.4.bin

- VRF:管理

此命令是针对以下特征构建的：

N3K-C3064PQ# copy scp://administrator@192.0.2.10/home/administrator/nxos.9.3.4.bin bootflash:

compact vrf management

将Nexus设备用作SCP服务器

运行现代NX-OS软件版本的Nexus设备可通过feature scp-server全局配置命令配置为充当SCP服务器。您可以使用您选择的文件传输协议将完整的NX-OS二进制映像文件传输到Nexus设备，激活SCP服务器功能，并在将目标NX-OS二进制映像文件传输到要升级的Nexus设备的Bootflash或已连接的USB闪存驱动器时，使用SCP服务器功能和SCP压缩映像过程来减小其文件大小。

此处显示了演示此功能配置的示例：

N3K# configure terminal

N3K(config)# feature scp-server

N3K(config)# end

N3K#

以下表中所列的NX-OS软件版本开头的所有Nexus平台均支持SCP服务器功能。

Nexus平台

NX-OS软件版本

Nexus 3000/3100

6.0(2)U1(1)

Nexus 3524/3548

6.0(2)A1(1)

Nexus 5000/6000

6.0(2)N1(1)

Nexus 7000/7700

5.1(1)

Nexus 9000

6.1(2)I1(1)

此处的示例演示了通过SCP在运行升级到NX-OS 9.3(4)的NX-OS 7.0(3)I7(8)的Nexus 3064PQ-10GE设备上使用紧凑型映像过程。

N3K-C3064PQ# show module

<snip>

Mod Ports             Module-Type                       Model          Status

--- ----- ------------------------------------- --------------------- ---------

1    64   48x10GE + 16x10G/4x40G Supervisor     N3K-C3064PQ-10GE      active *

Mod  Sw                Hw     Slot

---  ----------------  ------ ----

1    7.0(3)I7(8)       1.0    NA

根据本文档Bootflash上NX-OS二进制映像文件的紧凑映像过程部分的说明，现有NX-OS 7.0(3)I7(8)二进制映像文件已经压缩。因此，Nexus设备的bootflash上大约有1.07 GB的可用空间。

N3K-C3064PQ# dir bootflash:

30261    Apr 03 16:28:46 2017  .n3k_pre_single_img_upd_config

4096    Jun 15 23:21:43 2020  .rpmstore/

4096    Feb 08 16:38:11 2017  .swtam/

362528    Jun 15 19:59:44 2020  20200615_195315_poap_29012_init.log

1890    Jun 15 22:30:33 2020  bios_daemon.dbg

0    Jun 15 19:43:24 2020  bootflash_sync_list

4096    Jun 15 19:43:36 2020  logflash/

4096    Jun 15 23:12:44 2020  lost+found/

471871960    Jun 15 23:32:10 2020  nxos.7.0.3.I7.8.bin

486    Jun 15 23:21:24 2020  patch_control.log

87    Jun 15 23:21:24 2020  patch_debug.log

0    Jun 15 19:48:16 2020  platform-sdk.cmd

4096    Jun 15 19:53:15 2020  scripts/

1024    Jun 15 22:32:48 2020  sprom_2_0_1

1024    Jun 15 22:32:48 2020  sprom_3_0_0

1024    Jun 15 19:14:08 2020  sprom_cstruct_2_0_0

1024    Jun 15 19:14:40 2020  sprom_cstruct_3_0_0

4096    Jun 15 19:14:22 2020  vdc_2/

4096    Jun 15 19:14:22 2020  vdc_3/

4096    Jun 15 19:14:22 2020  vdc_4/

4096    Mar 30 22:31:55 2017  virt_strg_pool_bf_vdc_1/

4096    Mar 30 22:31:54 2017  virtual-instance/

3568    Jun 15 19:45:19 2020  vlan.dat

Usage for bootflash://sup-local

569184256 bytes used

1079439360 bytes free

1648623616 bytes total

但是，NX-OS 9.3(4)二进制映像文件的大小约为1.6 GB。因此，您无法将完整的NX-OS 9.3(4)二进制映像复制到此设备的bootflash。

N3K-C3064PQ# copy ftp://administrator@192.0.2.10/nxos.9.3.4.bin bootflash: vrf management

Password:

/bootflash/nxos.9.3.4.bin: Write could not complete, check free space on device

Error during copy

***** Transfer of file aborted *****

Copy failed. Removing file nxos.9.3.4.bin

您可以使用上述复制scp通过SCP执行NX-OS Compact Image过程：bootflash:命令。在此示例中，此命令通过管理VRF从SCP服务器(192.0.2.10)复制NX-OS 9.3(4)二进制映像文件，并使用管理员用户名。此特定SCP服务器是Linux主机，NX-OS 9.3(4)二进制映像文件位于绝对文件路径/home/administrator/nxos.9.3.4.bin。您需要将这些参数（用户名、密码、SCP服务器IP地址/FQDN、绝对文件路径等）替换为与您的环境相关的值。

N3K-C3064PQ# copy scp://administrator@192.0.2.10/home/administrator/nxos.9.3.4.bin bootflash: compact vrf management

administrator@192.0.2.10's password:

Copy complete, now saving to disk (please wait)...

Copy complete.

通过SCP完成紧凑型映像过程后，NX-OS 9.3(4)二进制映像文件大小显着减小（约579兆字节）。

N3K-C3064PQ# dir bootflash:

30261    Apr 03 16:28:46 2017  .n3k_pre_single_img_upd_config

4096    Jun 15 23:21:43 2020  .rpmstore/

4096    Feb 08 16:38:11 2017  .swtam/

362528    Jun 15 19:59:44 2020  20200615_195315_poap_29012_init.log

1890    Jun 15 22:30:33 2020  bios_daemon.dbg

0    Jun 15 19:43:24 2020  bootflash_sync_list

4096    Jun 15 19:43:36 2020  logflash/

4096    Jun 15 23:12:44 2020  lost+found/

471871960    Jun 15 23:32:10 2020  nxos.7.0.3.I7.8.bin

579377951    Jun 22 19:49:10 2020  nxos.9.3.4.bin

486    Jun 15 23:21:24 2020  patch_control.log

87    Jun 15 23:21:24 2020  patch_debug.log

0    Jun 15 19:48:16 2020  platform-sdk.cmd

4096    Jun 15 19:53:15 2020  scripts/

1024    Jun 15 22:32:48 2020  sprom_2_0_1

1024    Jun 15 22:32:48 2020  sprom_3_0_0

1024    Jun 15 19:14:08 2020  sprom_cstruct_2_0_0

1024    Jun 15 19:14:40 2020  sprom_cstruct_3_0_0

4096    Jun 15 19:14:22 2020  vdc_2/

4096    Jun 15 19:14:22 2020  vdc_3/

4096    Jun 15 19:14:22 2020  vdc_4/

4096    Mar 30 22:31:55 2017  virt_strg_pool_bf_vdc_1/

4096    Mar 30 22:31:54 2017  virtual-instance/

3568    Jun 15 19:45:19 2020  vlan.dat

Usage for bootflash://sup-local

1149136896 bytes used

499486720 bytes free

1648623616 bytes total

现在，您可以使用支持的方法继续从NX-OS软件版本7.0(3)I7(8)升级到NX-OS软件版本9.3(4)的NX-OS软件升级。有关支持的升级方法的详细信息，请参阅目标NX-OS软件版本的版本说明(如Cisco Nexus 3000系列NX-OS版本说明，版本9.3(4)文档)。

其他信息

如果您无法使用上述三种方法中的任何一种来执行NX-OS Compact Image程序，请向Cisco TAC提交支持案例以获得其他帮助。

相关信息

- YouTube - Nexus 3000、3100和3500 NX-OS紧凑型映像程序示例

- Cisco Nexus 3000系列交换机安装和升级指南

- Cisco Nexus 3000系列NX-OS软件升级和降级指南，版本9.3(x)

- Cisco Nexus 3000系列NX-OS软件升级和降级指南，版本9.2(x)

- Cisco Nexus 3000系列NX-OS软件升级和降级指南，版本7.x

- Cisco Nexus 3500系列NX-OS软件升级和降级指南，版本9.3(x)

- Cisco Nexus 3500系列NX-OS软件升级和降级指南，版本9.2(x)

- Cisco Nexus 3500系列NX-OS软件升级和降级指南，版本7.x

- Cisco Nexus 3000系列交换机版本说明

- 技术支持和文档 - Cisco Systems