Junos软件升级方法详解
JUNOS升级方法有很多种,主要包括U盘升级、FTP升级、TFTP升级、JWEB升级。在升级过程中我们强烈建议每三个版本作为一个过渡版本进行升级。在初次设备进行安装调试时,强烈建议使用TAC推荐的软件版本或特殊行业集团总部要求的软件版本。对于部分设备需要升级Jloader,比如EX系统交换机在JNUNOS10.4R3.0之后要求升级11.X及以上,需要升级Jloader,具体的推荐软件版本,请访问Juniper官方网站:http://www.juniper.net,在技术支持中心会有详细说明。下面就各种升级方法作详细说明。
一、 通过U盘升级
通过U盘升级方便灵活,建议U盘容量在2G以内,U盘格式化成【exfat/fat32】格式。
通过U盘升级分两种情况:在设备开机启动时进入Loader模式升级和设备正常启动以后通过request命令升级。
A、 设备正常启动后通过U盘升级过程:
1.通过【star shell user root】命令进入Shell模式
Password:
root@EX2200:RE:0%
root@EX2200:RE:0%
2.将要升级的软件版本copy到U盘,并将U盘插入设备USB接口,在超级终端上将会提示相应盘符,本例中为da1
login: rooumass1: Kingston DT 101 G2, rev 2.00/1.00, addr 4
tda1 at umass-sim1 bus 1 target 0 lun 0
da1:
da1: 40.000MB/s transfers
da1: 7640MB (15646720 512 byte sectors: 255H 63S/T 973C)
若未提示,可通过在Shell模式使用【ls /dev/】确定盘符,da0一般为内置存储。
3.挂载U盘,并创建文件目录
挂载后通过【ls /mnt】确认U盘挂载情况。
root@EX2200:RE:0% mount_msdosfs /dev/da1 /mnt
root@EX2200:RE:0% mount_msdosfs /dev/da1s1 /mnt
root@EX2200:RE:0% mount_msdosfs /dev/da1 /mnt
root@:RE:0% cd /mnt/
root@:RE:0% ls
EX2300 and EX3400 Series-junos-arm-32-18.4R3.3.tgz
junos-arm-32-18.4R3.3.tgz
4.从U盘Copy相对应的升级软件版本到指定的文件目录
root@:RE:0% cd /mnt/
root@:RE:0% cp jinstall-ex-2200-10.4R8.5-domestic-signed.tgz /var/tmp/
root@:RE:0% cp junos-arm-32-18.4R3.3.tgz /var/tmp/
root@:RE:0% ls /var/tmp/
gres-tp-tomcat stable
junos-arm-32-18.4R3.3.tgz
version_ex.xml
krt_rpf_filter.txt
5.进入设备用户模式,使用request命令升级软件版本
建议先验证镜像,在进行镜像的添加安装操作。
镜像验证
user@host>request system software validate /var/tmp/junos-install-mx-x86-32-17.3R1.10.tgz
安装映像
user@host> _request system software add no-validate unlink /var/tmp/_image-name.tgz
no-validate 不验证你的配置。
unlink 安装结束后,解压缩的安装包会被清除,节省存储空间。
重启设备
root@EX2200>request system reboot
如果出现配置不兼容,升级前请确认是否备份配置。
备份配置
_user@host# _save config20210317 交换机上备份一个
user@host> file list detail 配置保存在home目录下面,/var/home/Juniper
恢复配置
_user@host# _load override 后面跟你保存的文件的名称就可以了
request system software add /var/tmp/junos-arm-32-20.2R3-S2.5.tgz no-copy no-validate unlink force
request system storage cleanup
show system storage
show system storage member
- 运行request system storage cleanup命令。这将删除所有不必要的文件,但保持所有内容/root完好无损:
root@juniper> request system storage cleanup
2. 运行request system snapshot delete snap命令。这将删除系统上存储的所有现有恢复快照。
root@juniper> 请求系统快照删除快照
root@EX2200:RE:0%cli
root@EX2200>request system software add /var /tmp/jinstall-ex-4200-10.4R8.5-domestic-signed.tgz
等待验证
NOTICE: Validating configuration against EX23-3400_junos-arm-32-18.2R3.4.tgz.
NOTICE: Use the ‘no-validate’ option to skip this if desired.
注意:根据EX23-3400_junos-arm-32-18.2R3.4.tgz验证配置。
注意:如果需要,请使用“ no-validate”选项跳过此选项。
……
……
……
B、 设备在启动时通过U盘升级过程
1、插入U盘:
{master:0}
lab@EX4200-2>
{master:0}
lab@EX4200-2> umass1: Netac OnlyDisk, rev 2.00/1.10, addr 3
da1 at umass-sim1 bus 1 target 0 lun 0
da1:
da1: 40.000MB/s transfers
da1: 3822MB (7827456 512 byte sectors: 255H 63S/T 487C)
{master:0}
2、重启设备:
lab@EX4200-2> request system reboot
Reboot the system ? [yes,no] (no) yes
FINAL System shutdown message from lab@EX4200-2
System going down IMMEDIATELY
Shutdown NOW!
[pid 1879]
{master:0}
lab@EX4200-2>
WARNING: cli has been replaced by an updated version:
CLI release 10.2R1.8 built by builder on 2010-05-27 19:46:08 UTC
Restart cli using the new version ? [yes,no] (yes) JWaiting (max 60 seconds) for system process vnlru' to stop...done<br />Waiting (max 60 seconds) for system process
vnlru_mem’ to stop…done
Waiting (max 60 seconds) for system process bufdaemon' to stop...done<br />Waiting (max 60 seconds) for system process
syncer’ to stop…
Syncing disks, vnodes remaining…2 2 2 0 1 1 0 0 0 done
syncing disks… All buffers synced.
Uptime: 2d1h23m20s
recorded reboot as normal shutdown
Rebooting…
U-Boot 1.1.6 (Feb 6 2008 - 11:27:42)
Board: EX4200-24T 2.16
EPLD: Version 6.0 (0x85)
DRAM: Initializing (1024 MB)
FLASH: 8 MB
USB: scanning bus for devices… 3 USB Device(s) found
scanning bus for storage devices… 2 Storage Device(s) found
Consoles: U-Boot console
Found compatible API, ver. 7
FreeBSD/PowerPC U-Boot bootstrap loader, Revision 2.1
(marcelm@apg-bbuild01.juniper.net, Wed Feb 6 11:23:55 PST 2008)
Memory: 1024MB
Loading /boot/defaults/loader.conf
/kernel data=0x8511a0+0x8dbd0 syms=[0x4+0x72d50+0x4+0xa1efd]
3、点击SPACE键盘进入Loader模式:
Hit [Enter] to boot immediately, or space bar for command prompt.
Type ‘?’ for a list of commands, ‘help’ for more detailed help.
loader>
4、升级软件版本:
loader> install file:///jinstall-ex-4200-10.1R2.8-domestic-signed.tgz
Package /jinstall-ex-4200-10.1R2.8-domestic-signed.tgz is signed…
/kernel data=0x503ffc+0x51dfc syms=[0x4+0x4ea50+0x4+0x71a52]
Kernel entry at 0xa00000e0 …
GDB: no debug ports present
KDB: debugger backends: ddb
KDB: current backend: ddb
Copyright (c) 1996-2010, Juniper Networks, Inc.
All rights reserved.
Copyright (c) 1992-2006 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
JUNOS 10.1R2.8 #0: 2010-05-11 02:48:00 UTC
builder@queth.juniper.net:/volume/build/junos/10.1/release/10.1R2.8/obj-powerpc/bsd/sys/compile/INSTALL-EX
Timecounter “decrementer” frequency 50000000 Hz quality 0
cpu0: Freescale e500v2 core revision 2.2
cpu0: HID0 80004080
real memory = 1043333120 (995 MB)
avail memory = 1021726720 (974 MB)
ETHERNET SOCKET BRIDGE initialising
Initializing EXSERIES platform properties …
nexus0:
ocpbus0:
openpic0:
i2c0:
i2c1:
uart0: <16550 or compatible> iomem 0xfef04500-0xfef0450f irq 58 on ocpbus0
uart0: console (9600,n,8,1)
uart1: <16550 or compatible> iomem 0xfef04600-0xfef0460f irq 58 on ocpbus0
lbc0:
cfi0:
syspld0 iomem 0xff000000-0xff00ffff on lbc0
tsec0:
tsec0: hardware MAC address 00:23:9c:11:2b:bf
miibus0:
e1000phy0:
e1000phy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseTX-FDX, auto
pcib0:
pci0:
pci0:
ehci0:
usb0: EHCI version 1.0
usb0:
usb0: USB revision 2.0
uhub0: Philips EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
umass0: STMicroelectronics ST72682 High Speed Mode, rev 2.00/2.10, addr 2
umass1: Netac OnlyDisk, rev 2.00/1.10, addr 3
pcib1:
pci1:
pcib2:
pci2:
pci2:
pcib3:
pci3:
pcib4:
pci4:
pci4:
Timecounters tick every 10.000 msec
md0: Preloaded image 10668032 bytes at 0xa06162a4
da1 at umass-sim1 bus 1 target 0 lun 0
da1:
da1: 40.000MB/s transfers
da1: 3822MB (7827456 512 byte sectors: 255H 63S/T 487C)
da0 at umass-sim0 bus 0 target 0 lun 0
da0:
da0: 40.000MB/s transfers
da0: 1000MB (2048000 512 byte sectors: 64H 32S/T 1000C)
Trying to mount root from cd9660:/dev/md0
FILE SYSTEM CLEAN; SKIPPING CHECKS
clean, 160932 free (28 frags, 20113 blocks, 0.0% fragmentation)
tunefs: soft updates remains unchanged as disabled
FILE SYSTEM CLEAN; SKIPPING CHECKS
clean, 28153 free (33 frags, 3515 blocks, 0.1% fragmentation)
/dev/da0s2a: 187.2MB (383352 sectors) block size 16384, fragment size 2048
using 4 cylinder groups of 46.80MB, 2995 blks, 6016 inodes.
with soft updates
super-block backups (for fsck -b #) at:
32, 95872, 191712, 287552
/dev/da0s2f: 124.8MB (255584 sectors) block size 16384, fragment size 2048
using 4 cylinder groups of 31.20MB, 1997 blks, 4096 inodes.
with soft updates
super-block backups (for fsck -b #) at:
32, 63936, 127840, 191744
Installing disk1:/jinstall-ex-4200-10.1R2.8-domestic-signed.tgz
/dev/da0s3d: 319.6MB (654524 sectors) block size 16384, fragment size 2048
using 4 cylinder groups of 79.91MB, 5114 blks, 10240 inodes.
super-block backups (for fsck -b #) at:
32, 163680, 327328, 490976
date: connect: Can’t assign requested address
Checking package integrity…
Verified SHA1 checksum of jbase-ex-10.1R2.8.tgz
Verified SHA1 checksum of jboot-ex-10.1R2.8.tgz
Verified SHA1 checksum of jcrypto-ex-10.1R2.8.tgz
Verified SHA1 checksum of jdocs-ex-10.1R2.8.tgz
Verified SHA1 checksum of jkernel-ex-10.1R2.8.tgz
Verified SHA1 checksum of jpfe-ex42x-10.1R2.8.tgz
Verified SHA1 checksum of jroute-ex-10.1R2.8.tgz
Verified SHA1 checksum of jswitch-ex-10.1R2.8.tgz
Verified SHA1 checksum of jweb-ex-10.1R2.8.tgz
Running requirements check first for jbundle-ex-4200-10.1R2.8-domestic…
Running pre-install for jbundle-ex-4200-10.1R2.8-domestic…
Installing jbundle-ex-4200-10.1R2.8-domestic in /tmp/pa2379.25/jbundle-ex-4200-10.1R2.8-domestic.x2379…
Running post-install for jbundle-ex-4200-10.1R2.8-domestic…
Adding jkernel-ex…
Adding jcrypto-ex…
Adding jdocs-ex…
Adding jswitch-ex…
Adding jpfe-ex42x…
Adding jroute-ex…
Adding jweb-ex…
Saving home directories
Rebooting to complete the installation. Please wait…
Waiting (max 60 seconds) for system process vnlru_mem' to stop...done<br />Waiting (max 60 seconds) for system process
vnlru’ to stop…done
Waiting (max 60 seconds) for system process bufdaemon' to stop...done<br />Waiting (max 60 seconds) for system process
syncer’ to stop…
Syncing disks, vnodes remaining…0 0 0 0 0 0 0 0 done
syncing disks… All buffers synced.
Uptime: 3m22s
Rebooting…
U-Boot 1.1.6 (Feb 6 2008 - 11:27:42)
Board: EX4200-24T 2.16
EPLD: Version 6.0 (0x85)
DRAM: Initializing (1024 MB)
FLASH: 8 MB
USB: scanning bus for devices… 3 USB Device(s) found
scanning bus for storage devices… 2 Storage Device(s) found
Consoles: U-Boot console
Found compatible API, ver. 7
FreeBSD/PowerPC U-Boot bootstrap loader, Revision 2.1
(marcelm@apg-bbuild01.juniper.net, Wed Feb 6 11:23:55 PST 2008)
Memory: 1024MB
Loading /boot/defaults/loader.conf
/kernel text=0x7dfb3c data=0x41414+0x88134 syms=[0x4+0x703a0+0x4+0x9dbdc]
Hit [Enter] to boot immediately, or space bar for command prompt.
Booting [/kernel]…
Kernel entry at 0xa00000e0 …
GDB: no debug ports present
KDB: debugger backends: ddb
KDB: current backend: ddb
Copyright (c) 1996-2010, Juniper Networks, Inc.
All rights reserved.
Copyright (c) 1992-2006 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
JUNOS 10.1R2.8 #0: 2010-05-11 04:08:08 UTC
builder@queth.juniper.net:/volume/build/junos/10.1/release/10.1R2.8/obj-powerpc/bsd/sys/compile/JUNIPER-EX
Timecounter “decrementer” frequency 50000000 Hz quality 0
cpu0: Freescale e500v2 core revision 2.2
cpu0: HID0 80004080
real memory = 1050673152 (1002 MB)
avail memory = 1029046272 (981 MB)
ETHERNET SOCKET BRIDGE initialising
Initializing EXSERIES platform properties …
nexus0:
ocpbus0:
openpic0:
i2c0:
i2c1:
uart0: <16550 or compatible> iomem 0xfef04500-0xfef0450f irq 58 on ocpbus0
uart0: console (9600,n,8,1)
uart1: <16550 or compatible> iomem 0xfef04600-0xfef0460f irq 58 on ocpbus0
lbc0:
cfi0:
syspld0 iomem 0xff000000-0xff00ffff on lbc0
tsec0:
tsec0: hardware MAC address 00:23:9c:11:2b:bf
miibus0:
e1000phy0:
e1000phy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseTX-FDX, auto
pcib0:
pci0:
pci0:
ehci0:
usb0: EHCI version 1.0
usb0:
usb0: USB revision 2.0
uhub0: Philips EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
umass0: STMicroelectronics ST72682 High Speed Mode, rev 2.00/2.10, addr 2
umass1: Netac OnlyDisk, rev 2.00/1.10, addr 3
pcib1:
pci1:
pcib2:
pci2:
mpfe0:
pcib3:
pci3:
pcib4:
pci4:
mpfe1:
idma0:
Initializing product: 41 ..
bme0:Virtual BME driver initializing
Timecounters tick every 1.000 msec
Loading the NETPFE picpeer module
IPsec: Initialized Security Association Processing.
da1 at umass-sim1 bus 1 target 0 lun 0
da1:
da1: 40.000MB/s transfers
da1: 3822MB (7827456 512 byte sectors: 255H 63S/T 487C)
da0 at umass-sim0 bus 0 target 0 lun 0
da0:
da0: 40.000MB/s transfers
da0: 1000MB (2048000 512 byte sectors: 64H 32S/T 1000C)
if_pfe_open: listener socket opened, listening on …
Trying to mount root from ufs:/dev/da0s2a
Attaching /packages/jbase via /dev/mdctl…
Mounted jbase package on /dev/md0…
Mounted jcrypto-ex package on /dev/md1…
Mounted jdocs-ex package on /dev/md2…
Mounted jkernel-ex package on /dev/md3…
Mounted jpfe-ex42x package on /dev/md4…
Mounted jroute-ex package on /dev/md5…
Mounted jswitch-ex package on /dev/md6…
Mounted jweb-ex package on /dev/md7…
Executing /packages/mnt/jweb-ex-10.1R2.8/mount.post..
Automatic reboot in progress…
FILE SYSTEM CLEAN; SKIPPING CHECKS
clean, 37854 free (30 frags, 4728 blocks, 0.0% fragmentation)
FILE SYSTEM CLEAN; SKIPPING CHECKS
clean, 28153 free (33 frags, 3515 blocks, 0.1% fragmentation)
FILE SYSTEM CLEAN; SKIPPING CHECKS
clean, 62738 free (26 frags, 7839 blocks, 0.0% fragmentation)
FILE SYSTEM CLEAN; SKIPPING CHECKS
clean, 160986 free (26 frags, 20120 blocks, 0.0% fragmentation)
FILE SYSTEM CLEAN; SKIPPING CHECKS
clean, 160986 free (26 frags, 20120 blocks, 0.0% fragmentation)
Creating initial configuration…mgd: commit complete
Setting initial options: debugger_on_panic=NO debugger_on_break=NO.
Starting optional daemons: OK: extracted home directories.
.
Doing initial network setup:.
Initial interface configuration:
additional daemons:.
Additional routing options:kern.module_path: /boLoading the NETPFE ethernet module
ot//kernel;/boot/modules -> /booLoading common multilink module.
t//kernel;/boot/Loading the EX-series platform NETPFE module
modules;/modules
grat_arp_on_ifup=YES: net.link.ether.inet.grat_arp_on_ifup: 1 -> 1
kld netpfe drv: ifpfed_eth ifpfed_ml_cmnkld platform: ex_ifpfe if_vcpkern.module_path: /boot//kernel;/boot/modules;/modules -> /boot//kernel;/boot/modules;/modules;/modules/peertype
kld peertype: peertype_hcm peertype_pfem peertype_sfi peertype_slavere ipsec kld.
Doing additional network setup:.
Starting final network daemons:.
setting ldconfig path: /usr/lib /opt/lib
starting standard daemons: cron.
Local package initialization:.
starting local daemons:.
Tue May 11 06:02:43 UTC 2010
EX4200-2 (ttyu0)
二、 通过ftp升级
file copy ftp://lab:lab123@10.8.18.41/jinstall-ex-3200-12.3R3.4-domestic-signed.tgz /var/tmp/jinstall-ex-3200-12.3R3.4-domestic-signed.tgz从PC上传到防火墙
file copy ftp://lab:lab123@10.8.18.41/jloader-ex-3242-11.3I20110326_0802_hmerge-signed.tgz /var/tmp/jloader-ex-3242-11.3I20110326_0802_hmerge-signed.tgz
file copy /var/tmp/jinstall-ex-2200-10.3R2.11-domestic-signed.tgz ftp://user:user123@192.168.0.100/jinstall-ex-2200-10.3R2.11-domestic-signed.tgz 从防火墙下载到PC
三、 通过TFTP升级
说明:192.168.100.2交换机IP
192.168.100.1PC的IP
一、按下面set开始的输进去,IP可以自已定义
loader> set ipaddr=192.168.100.2
loader> set netmask=255.255.255.0
loader> set serverip=192.168.100.1
二、打开TFTP软件
loader> install tftp://192.168.100.1/jinstall-ex-2200-10.3R2.11-domestic-signed.tgz
TFTP:
1.Connect a terminal to the EX switch console port and power on the switch.
2.When you see the “loading /boot/defaults/loader.conf” display, hit ENTER. You will be prompted with:
Hit [Enter] to boot immediately, or space bar for command prompt.
3.Press the space bar to enter the manual loader. The loader> prompt displays.
4.Set the EX Switch management IP address and netmask:
loader> set ipaddr=192.168.100.2
loader> set netmask=255.255.255.0
loader> set serverip=192.168.100.1
5.Issue the install command with the format option to install the Junos image via TFTP:
loader> install —format tftp://
For example:
loader> install —format tftp://192.168.100.1/jinstall-ex-4200-10.4R2.6-domestic-signed.tgz
USB:
1.To perform this recovery installation, the USB Drive should be formatted to FAT-32 & should be empty.
2.Copy the Junos package to USB flash drive.
3.Power off the EX switch
4.Put the USB flash drive in the EX switch.
5.Power on the EX switch.
6.After the ‘Loading getting /boot/default/loader.conf’ displays, hit space bar for the loader> prompt.
7.Issue the install command with the format option:
loader> install —format file:///
For example:
loader> install —format file:///jinstall-ex-4200-10.4R2.6-domestic-signed.tgz