Support Support Downloads Knowledge Base Case Manager My Juniper Community

Knowledge Base

Search our Knowledge Base sites to find answers to your questions.

Ask All Knowledge Base Sites All Knowledge Base Sites JunosE Defect (KA)Knowledge BaseSecurity AdvisoriesTechnical BulletinsTechnotes Sign in to display secure content and recently viewed articles

Fix Device is not booting up with 'can't load kernel' error on EX3400/EX2300 Devices

2

1

Article ID: KB33842 KB Last Updated: 24 Mar 2019Version: 1.0
Summary:

The EX2300/EX3400 is not booting up and it is displaying the loader prompt after returning 'can't load kernel' error

Symptoms:

EX2300/EX3400 is not booting up showing the following error:

DRAM: 2048MB
Number of U-Boot devices: 2
U-Boot env: loaderdev not set, will probe all devices.
Found U-Boot device: disk
Probing all disk devices...
Checking unit=0 slice=<auto> partition=<auto>... good.
-
can't load 'kernel'

Type '?' for a list of commands, 'help' for more detailed help.
loader> 
Solution:
  1. Download the install media image https://support.juniper.net/support/downloads/ (make sure is .img package)

  2. Make a bootable USB by either using the dd command in shell (or other Linux system), or you can also use various GUI software for cloning images.

  3. Once the USB is ready, it can be plugged into the switch after which the switch needs to be rebooted:

    USB0:   USB EHCI 1.00
    scanning bus 0 for devices... 3 USB Device(s) found
           scanning usb for storage devices... 1 Storage Device(s) found
    SF: Detected MX25L6405D with page size 256 Bytes, erase size 64 KiB, total 8 MiB, mapped at 00000088
    ## Starting application at 0x00000074 ...
    Consoles: U-Boot console
    
    FreeBSD/armv6 U-Boot loader, Revision 1.2
    (fbsd-builder@svl-bsdx-05.juniper.net, Wed May 18 12:32:06 PDT 2016)
    
    DRAM: 2048MB
    Number of U-Boot devices: 2
    U-Boot env: loaderdev not set, will probe all devices.
    Found U-Boot device: disk
      Probing all disk devices...
      Checking unit=0 slice=<auto> partition=<auto>... good.
    -
    can't load 'kernel'
    
    Type '?' for a list of commands, 'help' for more detailed help.
    loader>
  4. Once on loader prompt, select USB manually,

    set currdev="disk1s1a"
  5. Confirm 'loader.rc'is on the USB (to make sure the bootable USB was properly created):

    loader> ls /boot  
    /boot
    loader.conf
    load-dtb.4th
    platform-load-dtb.4th
    platform-loader.4th
    d  dtb
    loader.rc
    support.4th
    kernel
    contents.iso
  6. Manually boot from USB:

    loader> include /boot/loader.rc
  7. You will see the following after which the device will boot up with the new version:

    /boot/kernel data=0xe48000 syms=[0x4+0x5cdb0+0x4+0x81971]
    /boot/dtb/ex3400.dtb size=0x1f25
    /boot/contents.iso size=0x171e800
    
    Wed Aug  2 15:12:56 UTC 2017
    
    FreeBSD/arm (Amnesiac) (ttyu0)
    
    login: root
Comment on this article > Affected Products Browse the Knowledge Base for more articles related to these product categories. Select a category to begin.

Getting Up and Running with Junos

Getting Up and Running with Junos Security Alerts and Vulnerabilities Product Alerts and Software Release Notices Problem Report (PR) Search Tool EOL Notices and Bulletins JTAC User Guide Customer Care User Guide Pathfinder SRX High Availability Configurator SRX VPN Configurator Training Courses and Videos End User Licence Agreement Global Search