How to Upgrade Firmware on a Juniper Switch Virtual Chassis via USB

Upgrading the Junos OS on a Juniper Switch Virtual Chassis can be tricky due to limited space on the root (/) partition. This guide provides a direct, foolproof workflow using a FAT32 USB drive to successfully stage and install the firmware.

Prerequisites & Requirements

ADVERTISEMENT
  • A FAT32-formatted USB drive (USB 2.0 recommended for best compatibility with EX4300 hardware).
  • The signed Junos OS installation package (e.g., jinstall-ex-4300-21.4R3.15-signed.tgz) loaded onto the root of the USB drive.
  • Console or SSH access to the switch using an account with root/administrator privileges.
  • Maintenance Window: This process requires a system reboot, causing 10–15 minutes of network downtime. Perform this outside of business hours.

Step 1: Insert and Mount the USB Drive

  1. Insert the USB drive into one of the USB ports on the Master switch.
  2. Log in to the switch and drop into the FreeBSD shell as the root user:start shell su root
  3. Create a mount point directory in /var/tmp/:file make-directory /var/tmp/usb
  4. Mount the FAT32 USB partition:mount -t msdosfs /dev/da1s1 /var/tmp/usb (Note: If /dev/da1s1 is not recognized, run ls /dev/da* to check whether the USB drive was registered as da1 or da2).
  5. Verify that the firmware file is accessible:ls -la /var/tmp/usb (Ensure your .tgz package is visible in the directory listing).

Step 2: Return to the Junos CLI

Exit the shell environment to return to the operational Junos prompt (>):

exit
exit

(Verify your prompt changes back to username@switch-name>).

Step 3: Execute the Firmware Upgrade

Run the installation command across all Virtual Chassis members using specific flags to bypass root storage constraints:

request system software add /var/tmp/usb/<firmware-filename>.tgz unlink force-host-install set

Replace <firmware-filename>.tgz with your exact file name (e.g., jinstall-ex-4300-21.4R3.15-signed.tgz).

Key Flags Explained:

  • unlink: Automatically deletes the installation package after uncompressing it to save critical disk space.
  • force-host-install: Required for EX4300 architecture to ensure host OS compatibility.
  • set: Installs the software package across all members of the Virtual Chassis simultaneously.

Step 4: Reboot the Virtual Chassis

Once the package validation finishes and the CLI prompt returns, reboot all member switches to apply the upgrade:

request system reboot all-members

Confirm with yes when prompted.

Step 5: Post-Upgrade Verification

After waiting 10–15 minutes for the Virtual Chassis to complete its boot sequence, log back in and verify that the new Junos version is active across all switches:

show version

Finally, unmount and remove the USB drive via the shell if necessary:

start shell
su -
umount /var/tmp/usb

Scroll to Top