Cisco Catalyst 9200L Upgrade: Fixing “Super Package Already Added”

During an IOS XE upgrade on a standalone Catalyst 9200L, the combined install command stopped with:

Super package already added. Add operation not allowed.

An earlier Add operation had already extracted the packages onto the switch, so another Add attempt was rejected. The message alone did not establish that the image was corrupt. The upgrade continued with install activate, checks after reload, and install commit. The target release was running in Install mode, with final state C (Activated and Committed).

If you need to confirm why this workflow uses packages.conf and install commands, see Cisco Catalyst 9200 Install Mode vs Bundle Mode Explained.

Environment

  • Platform: Cisco Catalyst C9200L-24P-4G
  • Topology: Standalone switch
  • Starting release: Cisco IOS XE 17.9.4a
  • Target release: Cisco IOS XE 17.18.4
  • Boot mode: Install mode
  • Image transfer method: TFTP to local flash

Hostnames, IP addresses, MAC addresses, serial numbers, and site-specific timestamps have been omitted or generalized.

Before the upgrade

The starting software state was checked with:

show install summary

The running 17.9.4a release showed state C:

State (St): I - Inactive, U - Activated & Uncommitted,
            C - Activated & Committed, D - Deactivated & Uncommitted

Type  St  Filename/Version
IMG   C   17.09.04a...

The original release was therefore committed before maintenance began. Other pre-upgrade checks include:

show version
show boot
dir flash:
show install summary

Flash space: guidance and the observed result

Cisco's Catalyst 9200 upgrade instructions recommend removing inactive files and having at least 1 GB of free flash to expand the new image. With the target BIN on flash and inactive-file cleanup complete, the switch reported:

805228544 bytes free

This is approximately 768 MiB, described during maintenance as about 800 MB. The upgrade completed with that space available. Use Cisco's 1 GB guidance for planning. The 800 MB observation applies to this standalone C9200L and image combination; it does not establish a lower minimum. Space requirements vary with the platform, image, stack size, retained packages, and other files.

Copying the IOS XE image

The target image was copied from a TFTP server to local flash:

copy tftp: flash:

The image was:

cat9k_lite_iosxe.17.18.04.SPA.bin

Check that the expected file is present and has a reasonable size:

dir flash:

For production maintenance, compare its hash with Cisco's published value for the exact downloaded file.

The combined install command

The combined Install-mode command runs Add, Activate, and Commit:

install add file flash:cat9k_lite_iosxe.17.18.04.SPA.bin activate commit

The combined operation:

  1. Adds and validates the image.
  2. Extracts the BIN file into package files.
  3. Activates the new package set.
  4. Reloads the switch.
  5. Commits the new software state.
Install mode stages Add, Activate, Reload, Verify, and Commit, with Add already complete in this case
The earlier Add operation had completed. The next action depended on the reported install state.

The already-added error

In this upgrade, that command returned:

FAILED: Super package already added. Add operation not allowed.
install remove inactive can be used to discard added packages.

The already added message referred to the 17.18.4 packages already on flash from an earlier Add operation. Check the install state before deleting files or repeating the command.

Check the install state

Use these read-only checks to identify whether the image is inactive, activated, uncommitted, or committed:

show install summary
show install inactive
show install log
dir flash:

Choose the next step from the reported state:

  • If the target image is present as an added or inactive package, activation may be the next stage.
  • If the target image is activated but state U, it still requires commit verification and normally an install commit.
  • If the added package must be discarded and restarted, review the files selected by install remove inactive before approving deletion.
  • If the install state is unclear or another operation is running, inspect the install log before changing anything.
Decision checks for an already-added image, an uncommitted active image, or an unclear install state
Inspect the package state before continuing, committing, or restarting the install workflow.

Continuing with activation

With Add complete, the next command was:

install activate

Without an image filename, the switch selected the added 17.18.4 package set and listed the packages for activation. It then warned:

This operation may require a reload of the system.
Do you want to proceed? [y/n]

After confirmation, activation proceeded and the switch reloaded. The standalone switch reload interrupts traffic: its ports go down until it returns to service. Run activation during an approved maintenance window with console or recovery access available.

Verification and commit after reload

The post-reload checks covered the running version, boot mode, boot variable, and install state:

show version
show boot
show install summary
dir flash:

Once the target release was running correctly, it was committed with:

install commit

The final checks showed:

  • Running software: IOS XE 17.18.4
  • Mode: INSTALL
  • Boot variable for the next reload: flash:packages.conf
  • Final image state: C
  • Auto abort timer: inactive

The install summary had this state:

Type  St  Filename/Version
IMG   C   17.18.04...

Auto abort timer: inactive

Confirming the committed state

Cisco defines the states as:

  • I - Inactive
  • U - Activated and Uncommitted
  • C - Activated and Committed
  • D - Deactivated and Uncommitted

The operator ran install activate and install commit separately. The maintenance PDF does not show the commit command; the operator confirmed running it. The final show install summary showed C and an inactive auto-abort timer, confirming the committed state. Cisco supports separate Activate and Commit stages. If activation leaves state U, validate the release and complete the commit:

install commit

Use the resulting show install summary state to confirm completion.

Post-reload checks for the target release, Install mode, packages.conf boot variable, and committed state C
Verify the running release, boot settings, committed state, and service health before cleanup.

Cleanup after the upgrade

Free flash was approximately 300 MB immediately after the upgrade. After validation, inactive installation files were removed:

install remove inactive

Free space then increased to approximately 1.2 GB. Cleanup can remove unused packages and BIN images. Review the deletion list and the recovery requirements before confirming it, after version, boot-variable, install-state, and operational checks have passed.

Upgrade checklist

  1. Confirm the current IOS XE version, boot mode, boot variable, and committed state.
  2. Check flash contents and available space.
  3. Verify the target image file and its hash.
  4. Review inactive-file cleanup output before approving deletion.
  5. Run the standard one-shot install command when the image has not already been added.
  6. If Super package already added appears, stop repeating the Add operation.
  7. Use show install summary, show install inactive, and show install log to identify the current stage.
  8. Activate only when the package has already been added and the observed state supports that action.
  9. After reload, verify the running version, Install mode, packages.conf, and operational health.
  10. Run install commit, then verify state C and confirm that the auto-abort timer is inactive.
  11. Remove inactive files only after the new release is confirmed stable.

Upgrade result

When Super package already added appears, inspect the package state before deciding whether to continue the upgrade or discard the added files. The sequence in this case was:

stop repeating Add
→ inspect the install state
→ continue from the completed stage
→ verify the new release after reload
→ install commit and verify C
→ clean up only after validation

The standalone switch finished the upgrade from IOS XE 17.9.4a to 17.18.4 with the new release committed and its final state verified.

References

This case is based on an actual maintenance record with device identifiers and internal network details removed. Activation, reload, and inactive-file deletion can interrupt service or remove recovery files. Check the exact platform, release notes, image, package state, and maintenance plan before using these commands.

If SSH access stops working after upgrading to a newer IOS XE release, see Cisco Catalyst SSH Fails After IOS XE 17.18 Upgrade: No Matching KEX Algorithm .

Comments

Popular posts from this blog

Alteon Sessions Show Established, but HTTPS Authentication Fails Intermittently

Cisco Catalyst 9300 HQoS and Static BFD: Configuration Order and Verification