Khi bạn thực hiện nâng cấp NX-OS trên nexus có lỗi xảy ra, hoặc khi bạn xóa config mà không cập nhật boot dẫn tới lỗi như sau, sau khi reload thiết bị nó sẽ đưa bạn vào mode loader> như dưới.
...Loader Version pr-1.3
loader>
Switch đã không khởi động vào image, vậy làm như nào để boot vào image.
1. Trường hợp trong có image trong bootflash.
Đầu tiên hãy xem qua một số lệnh trong mode loader>
loader> ?
? Print the command list
boot Boot an image
bootmode set bootmode
dir List the directory contents or specific file
help Print the command list or the specific command usage
reboot Reboot the system
resetbioscmos Reset bios info to factory defaults
resetcmos Reset CMOS to factory defaults
serial Serial console settings
set Set network configuration
show Show loader configuration
Mình sử dụng lênh dir để list các file có trong bootflash, ở đây mình nhìn thấy có file image tên là nxos.7.0.3.I7.3.bin, mình sử dụng file này để boot vào os.
loader> dir
bootflash:
logflash
sprom_3_0_0
sprom_2_0_1
license_FOC1552R0JU_16.lic
eem_snapshots
scripts
poap_retry_debugs.log
virtual-instance
platform-sdk.cmd
nxos.7.0.3.I7.3.bin
n3000-uk9-kickstart.6.0.2.U6.3ab.bin
bios_daemon.dbg
sprom_cstruct_2_0_0
sprom_cstruct_3_0_0
loader>
Hãy sử dụng lệnh boot bootflash:<image_name> để boot vào os mà bạn muốn.
loader> boot bootflash:nxos.7.0.3.I7.3.bin
Booting kickstart image: bootflash:nxos.7.0.3.I7.3.bin
CardIndex = 11060
Image valid
graphics_set_kernel_params enter:
Installing klm_card_index
done
INIT: version 2.88 booting
Skipping ata_piix install for n3k.
Unsquashing rootfs ...
Removing libcrdcfgdata and linking libcrdcfgdata3nk
Installing isan procfs ... done.
Installing SSE module with card index 11060 ... done.
Creating SSE device node 246 ... done.
Loading I2C driver ... done.
Installing CCTRL driver for card_type 30 without NEED_GEM ... done.
9.67: Interrupt throttling disabled. No cctrl irq detected.
Loading IGB driver ... done.
Sau khi vào được OS, bạn hãy show boot lên và bạn thấy rõ nguyên nhân không boot được vào OS là do phần NXOS variable not set tức là chưa có image nào được cài đặt khi khởi động.
StorageCA-SW01# show boot
Current Boot Variables:
sup-1
NXOS variable not set
Boot POAP Disabled
Boot Variables on next reload:
sup-1
NXOS variable not set
Boot POAP Disabled
Hãy show các file có trong bootflash, mình thấy có image nxos.7.0.3.I7.3.bin mà lúc nãy mình vừa boot xong.
StorageCA-SW01# dir bootflash:
945 Nov 15 13:41:09 2022 bios_daemon.dbg
4096 Nov 01 10:30:05 2022 eem_snapshots/
640 Apr 30 21:34:37 2012 license_FOC1552R0JU_16.lic
4096 Nov 15 11:53:34 2022 logflash/
37853184 Nov 15 13:31:47 2022 n3000-uk9-kickstart.6.0.2.U6.3ab.bin
206762702 Nov 15 13:32:44 2022 n3000-uk9.6.0.2.U6.3a.bin
962771456 Nov 15 11:50:58 2022 nxos.7.0.3.I7.3.bin
4131 Nov 15 06:42:34 2022 patch_debug.log
0 Nov 14 03:08:23 2022 platform-sdk.cmd
4096 Nov 14 02:58:42 2022 scripts/
1024 Nov 16 02:38:47 2022 sprom_2_0_1
1024 Nov 16 02:38:47 2022 sprom_3_0_0
1024 Nov 15 13:43:59 2022 sprom_cstruct_2_0_0
1024 Nov 15 13:44:33 2022 sprom_cstruct_3_0_0
4096 Oct 07 17:10:56 2021 virtual-instance/
Usage for bootflash://sup-local
1270349824 bytes used
378273792 bytes free
1648623616 bytes total
Hãy dùng lệnh dưới để cài đặt boot cho image này nhé.
StorageCA-SW01(config)# boot nxos bootflash:/nxos.7.0.3.I7.3.bin
Performing image verification and compatibility check, please wait....
Và đây là kết quả khi show boot, phần NXOS variable đã được cài đặt boot vào image nxos.7.0.3.I7.3.bin.
StorageCA-SW01(config)# show boot
Current Boot Variables:
sup-1
NXOS variable = bootflash:/nxos.7.0.3.I7.3.bin
Boot POAP Disabled
Boot Variables on next reload:
sup-1
NXOS variable not set
Boot POAP Disabled
2. Trường hợp boot os từ thiết bị ngoài.
Trường hợp bạn muốn boot os từ thiết bị ngoài từ mode loader ví dụ như usb thì bạn làm như sau.
Hãy cắm usb vào thiết bị và show các file có trong usb, ví dụ của mình đang là usb1. Mình thấy file image tên là nxos.7.0.3.I7.3.bin, mình sẽ boot vào thiết bị bằng image này.
loader> dir usb1:
usb1:
System Volume Information
nxos.7.0.3.I7.3.bin
n3000-uk9-kickstart.6.0.2.U6.3ab.bin
n3000-uk9.6.0.2.U6.7.bin
n3000-uk9-kickstart.6.0.2.U6.7.bin
n3000-uk9.6.0.2.U6.3a.bin
bootflash_sync_list
license_FOC1722R0ZG_4_1.lic
n3000-uk9-kickstart.6.0.2.U6.3a.bin
patch_control.log
patch_debug.log
platform-sdk.cmd
sprom_2_0_1
sprom_3_0_0
Hãy gõ lệnh dưới và chờ đợi quá trình load vào os. Sau ít phút sau khi load xong os bạn sẽ thấy màn hình đăng nhập như dưới.
loader> boot usb1:/nxos.7.0.3.I7.3.bin
Booting kickstart image: usb1:/nxos.7.0.3.I7.3.bin
CardIndex = 11060
Image valid
graphics_set_kernel_params enter:
Installing klm_card_index
done
umount: /torissusda5: not mounted
INIT: version 2.88 booting
Skipping ata_piix install for n3k.
Unsquashing rootfs ...
Removing libcrdcfgdata and linking libcrdcfgdata3nk
Installing isan procfs ... done.
Installing SSE module with card index 11060 ... done.
Creating SSE device node 246 ... done.
Loading I2C driver ... done.
Installing CCTRL driver for card_type 30 without NEED_GEM ... done.
14.09: Interrupt throttling disabled. No cctrl irq detected.
Loading IGB driver ... done.
Checking for eUSB firmware upgrade..
eUSB firmware upgrade not required
Checking all filesystems.External drive attached, setting sdb as boot disk.
Current boot disk sdb3..
Installing SPROM driver ... IS_N3K done.
Skipping installing default sprom values for N3k...
Installing pfmsvcs module with SPROM card index 11060 ... done.
Installing nvram module ... done.
Installing if_index module with port mode 1 ... done.
Installing fcfwd stub
Installing RNI lcnd ... done
Installing LC netdev ... done
Installing psdev module ... done.
Installing veobc module ... done.
Inserting OBFL module ... done.
Making OBFL character devices
Mounting OBFL pstore for mtd
invalid group file entry
delete line 'aaa-db-operator:508:'? No
grpck: no changes
exit code: 1
Starting OpenBSD Secure Shell server: sshd ... done.
Trim files after extracting TOR files ...
tune2fs 1.42.1 (17-Feb-2012)
Setting reserved blocks percentage to 0% (0 blocks)
Starting portmap daemon...
creating NFS state directory: done
starting 8 nfsd kernel threads: done
starting mountd: done
starting statd: done
Saving image for img-sync ...
Loading system software
Installing local RPMS
Patch Repository Setup completed successfully
Creating /dev/mcelog
Starting mcelog daemon
Removing dme lib
Moving N3K specific syslog config file
INIT: Entering runlevel: 3
Running S93thirdparty-script...
Populating conf files for hybrid sysmgr ...
Removing bios-imgs and /lcimages
Starting hybrid sysmgr ...
inserting /isan/lib/modules/klm_cisco_nb.o ... done
Executing Prune clis.
StorageCA-SW02 login: admin
Password:
Sau khi vào tới đây bạn hãy thực hiện copy flash từ usb1 sang bootflash nếu trong bootflash không tồn tại image nào.
copy usb1:/nxos.7.0.3.I7.3.bin bootflash:
Sau khi copy xong bạn có thể cài đặt boot bình thường như ở phần trên.
3. Boot cisco từ kickstart NX-OS.
Chú ý: kickstart file chỉ tồn tại trên NX-OS version < 7.0 với version > 7.0 bỏ qua bước này
Để khắc phục trước hết cần tìm file kickstart xem có tồn tại hay không, (NX-OS version thấp hơn 7.0 sẽ có file kickstart, đối với switch NX-OS version cao hơn sẽ boot trực tiếp vào image)
loader> dir
bootflash:
lost+found
assoc_mgr_cnv.log
mts.log
vfc_cnv.log
vlan.dat
admin.rc.cli
n5000-uk9.5.0.2.N2.1.bin
n5000-uk9-kickstart.5.0.2.N2.1.bin
Sử dụng lệnh dưới để boot vào os.
loader> boot n5000-uk9-kickstart.5.0.2.N2.1.bin
Booting kickstart image: n5000-uk9-kickstart.5.0.2.N2.1.bin....
...............................................................................
...Image verification OK
Starting kernel...
Usage: init 0123456SsQqAaBbCcUu
INIT: version 2.85 booting
platform_type cmdline parameter not found. Asssuming Oregon.
I2C - Mezz absent
sprom_drv_init_platform: nuova_i2c_register_get_card_index
blogger: /var/log/isan.log: No such file or directory (2).
Starting Nexus5010 POST...
Executing Mod 1 1 SEEPROM Test......done
Executing Mod 1 1 GigE Port Test.......^@done
Executing Mod 1 1 Inband GigE Test.....done
Executing Mod 1 1 NVRAM Test....done
Executing Mod 1 1 PCIE Test...............................done
Mod 1 1 Post Completed Successfully
POST is completed
autoneg unmodified, ignoring
autoneg unmodified, ignoring
Checking all filesystems..... done.
.
Loading system software
No system exporting directories for NFS kernel daemon...done.
INIT: Sending processes the KILL signal
Cisco Nexus Operating System (NX-OS) Software
TAC support: http://www.cisco.com/tac
Copyright (c) 2002-2010, Cisco Systems, Inc. All rights reserved.
The copyrights to certain works contained in this software are
owned by other third parties and used and distributed under
license. Certain components of this software are licensed under
the GNU General Public License (GPL) version 2.0 or the GNU
Lesser General Public License (LGPL) Version 2.1. A copy of each
such license is available at
http://www.opensource.org/licenses/gpl-2.0.php and
http://www.opensource.org/licenses/lgpl-2.1.php
switch(boot)#
Sau khi boot xong bạn hãy tìm file system image boot từ boot disk.
switch(boot)# dir
47 Nov 03 2010 15:21:20 ..tmp-kickstart
37 Nov 03 2010 15:21:21 ..tmp-system
20816384 Nov 03 2010 15:21:20 .tmp-kickstart
182863950 Nov 03 2010 15:21:21 .tmp-system
0 Nov 11 2010 10:44:25 admin.rc.cli
362 Mar 08 2011 16:09:26 assoc_mgr_cnv.log
49152 Mar 08 2011 15:15:41 lost+found/
7986 Mar 16 2011 13:59:36 mts.log
25164288 Dec 30 2010 11:42:38 n5000-uk9-kickstart.5.0.2.N2.1.bin
156932426 Dec 30 2010 11:41:52 n5000-uk9.5.0.2.N2.1.bin
362 Dec 30 2010 12:18:25 vfc_cnv.log
508 Jun 05 2011 13:24:58 vlan.dat
Usage for bootflash: filesystem
450199552 bytes total used
433152000 bytes free
883351552 bytes available
File ở trên là : n5000-uk9.5.0.2.N2.1.bin
switch(boot)# load bootflash:n5000-uk9.5.0.2.N2.1.bin
Uncompressing system image: bootflash:/n5000-uk9.5.0.2.N2.1.bin
...
System booting up.
Sau khi boot xong quý khách có thể truy cập được os như bình thường
Tiếp theo quý khách cần thêm cấu hình vào startup để khi reboot lại sẽ không bị lỗi
switch# configure terminal
switch(config)# boot kickstart bootflash:/n5000-uk9-kickstart.5.0.2.N2.1.bin
switch(config)# boot system bootflash:/n5000-uk9.5.0.2.N2.1.bin
switch(config)# copy running-config startup-config
Trong trường hợp các file trên không tồn tại bạn có thể download file và boot từ usb, hoặc tftp.