JunOS EX2200 Firmware Upgrade

Since I have a EX2200, I thought I should at least upgrade its firmware. But JunOS firmware upgrade didn’t go as user-friendly as I thought. Anyways, this is what I did to upgrade from 11.1R3.5 to 12.3R12.4

Key Notes:

  • Don’t use the Web Interface to upgrade. It is slow and does not seem to work.
  • Upload the firmware to a web server that allows direct linking.
  • The reboot process takes more than 15 minutes. Do not be alarmed if the switch seems to be dead during the process.

Steps via Cli

root@JunSwitch:RE:0% cli
root@JunSwitch> request system software add "Web Link here"
Fetching package...
/var/tmp/incoming-package.tgz                          748 kB  748 kBps
WARNING: A reboot is required to install the software
WARNING:     Use the 'request system reboot' command immediately
root@JunSwitch> request system reboot
Reboot the system ? [yes,no] (no) yes

Shutdown NOW!
root@JunSwitch> show version
fpc0:
--------------------------------------------------------------------------
Hostname: JunSwitch
Model: ex2200-24t-4g
JUNOS Base OS boot [12.3R12.4]
JUNOS Base OS Software Suite [12.3R12.4]
JUNOS Kernel Software Suite [12.3R12.4]
JUNOS Crypto Software Suite [12.3R12.4]
JUNOS Online Documentation [12.3R12.4]
JUNOS Enterprise Software Suite [12.3R12.4]
JUNOS Packet Forwarding Engine Enterprise Software Suite [12.3R12.4]
JUNOS Routing Software Suite [12.3R12.4]
JUNOS Web Management [12.3R12.4]
JUNOS FIPS mode utilities [12.3R12.4]

{master:0}

References:

PetaLinux 2019.2 Installation Steps on Ubuntu 18.04 64-bit

Xilinx’s PetaLinux installation guide doesn’t give a simple one liner to install all of its dependencies. So I wrote down what I did.

Tried and tested on Ubuntu 18.04 LTS 64-bit (under non-root user)

Key Notes:

  1. Installation takes about 15 minutes on a ssd due to the extraction and copying of data
  2. Takes up about 5 GB of space.
  3. Remember to use a non root user or else the installer will not continue and you have to restart from scratch

Dependencies:

sudo apt-get install gcc-multilib build-essential libsdl1.2-dev libglib2.0-dev python2.7 tofrodos gawk xvfb gcc-4.8 g++-4.8 git make net-tools libncurses5-dev tftpd zlib1g-dev libssl-dev flex bison libselinux1 gpg wget diffstat chrpath socat xterm autoconf libtool tar unzip texinfo zlib1g:i386 libsdl1.2-dev libglib2.0-dev

Installation:

mkdir -p /opt/pkg/petalinux/2019.2
sudo chmod 755 -R /opt
sudo chown user:user -R /opt
./petalinux-v2019.1-final-installer.run /opt/pkg/petalinux/2019.2
export PATH="/opt/pkg/petalinux/2019.2/tools/common/petalinux/bin/:$PATH"
source /opt/pkg/petalinux/2019.2/settings.sh

References: