El conjunto de documentos para este producto aspira al uso de un lenguaje no discriminatorio. A los fines de esta documentación, "no discriminatorio" se refiere al lenguaje que no implica discriminación por motivos de edad, discapacidad, género, identidad de raza, identidad étnica, orientación sexual, nivel socioeconómico e interseccionalidad. Puede haber excepciones en la documentación debido al lenguaje que se encuentra ya en las interfaces de usuario del software del producto, el lenguaje utilizado en función de la documentación de la RFP o el lenguaje utilizado por un producto de terceros al que se hace referencia. Obtenga más información sobre cómo Cisco utiliza el lenguaje inclusivo.
Cisco ha traducido este documento combinando la traducción automática y los recursos humanos a fin de ofrecer a nuestros usuarios en todo el mundo contenido en su propio idioma. Tenga en cuenta que incluso la mejor traducción automática podría no ser tan precisa como la proporcionada por un traductor profesional. Cisco Systems, Inc. no asume ninguna responsabilidad por la precisión de estas traducciones y recomienda remitirse siempre al documento original escrito en inglés (insertar vínculo URL).
Este documento describe el procedimiento para actualizar el software de un Cisco Iot Extension Module (IXM) usando solamente el puerto de la consola y una unidad USB.
No hay requisitos específicos para este documento.
La información que contiene este documento se basa en las siguientes versiones de software y hardware.
Nota: Las imágenes de firmware se pueden descargar desde CCO: https://software.cisco.com/download/release.html?mdfid=286311296&softwareid=286311234&release=2.0&relind=AVAILABLE&rellifecycle=&reltype=latest
La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). If your network is live, make sure that you understand the potential impact of any command.
Cisco IXM o Interface Module para LoRaWAN puede ejecutarse en dos modos: independiente o virtual. Cuando IXM se ejecuta como virtual, se puede realizar una actualización desde el IR8x9 conectado al IXM. En el modo independiente, la actualización se puede realizar a través de la CLI. En algunos casos no es posible actualizar el firmware (por ejemplo, cuando el IXM está configurado para el modo virtual y no hay disponible ningún IR8x9) o cuando la diferencia en el firmware es demasiado grande en lo que respecta a la compatibilidad de la versión.
La primera parte consiste en preparar las imágenes de firmware necesarias para realizar la actualización.
El objetivo es conseguir estos archivos en el IXM, esto se puede hacer usando una unidad USB o una conexión de red local.
Cuando la imagen del firmware se descarga de CCO, viene como un tar comprimido file: ixm_mdm_i_k9-2.0.tar.gz.
Extraiga el archivo .tar.gz y copie los archivos recovery.itb y release.itb en una unidad USB o servidor HTTP, a los que puede acceder el IXM.
Una vez preparados los archivos para realizar la actualización, debe conectarse a IXM mediante el puerto de la consola. El puerto de la consola se encuentra en el lado derecho del IXM y está cubierto por un tornillo a prueba de agua:

Conecte el cable de la consola al puerto RJ45 en el IXM y al puerto serie de su PC y abra un terminal con estos parámetros: 8/N/1/115200
Si todo va bien, debería ver un mensaje con:
[root@lorawan ~]#
Opcionalmente, la IXM solicita que inicie sesión con la cuenta raíz.
Cuando utilice la unidad USB, conéctela al puerto USB del IXM (debajo del puerto de la consola). El acceso al puerto USB puede ser difícil ya que la entrada es bastante estrecha, un cable de extensión USB puede ayudarle aquí.
Una vez conectada la unidad USB, aparece en la pantalla:
root@lorawan ~]# usb 4-1.2: new high-speed USB device number 4 using xhci-hcd usb 4-1.2: New USB device found, idVendor=058f, idProduct=6387 usb 4-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3 usb 4-1.2: Product: USB Flash Drive usb 4-1.2: SerialNumber: BE087588 usb-storage 4-1.2:1.0: USB Mass Storage device detected scsi3 : usb-storage 4-1.2:1.0 scsi 3:0:0:0: Direct-Access USB Flash Drive 8.07 PQ: 0 ANSI: 2 sd 3:0:0:0: [sdb] 15564800 512-byte logical blocks: (7.96 GB/7.42 GiB) sd 3:0:0:0: [sdb] Write Protect is off sd 3:0:0:0: [sdb] No Caching mode page found sd 3:0:0:0: [sdb] Assuming drive cache: write through sd 3:0:0:0: [sdb] No Caching mode page found sd 3:0:0:0: [sdb] Assuming drive cache: write through sdb: sdb1 sd 3:0:0:0: [sdb] No Caching mode page found sd 3:0:0:0: [sdb] Assuming drive cache: write through sd 3:0:0:0: [sdb] Attached SCSI removable disk
Ahora, monte la unidad USB y copie los archivos recovery.itb y release.itb en /tmp en el IXM:
[root@lorawan ~]# mount /dev/sdb1 /mnt/ [root@lorawan ~]# cp /mnt/*.itb /tmp
Cuando copie los archivos en la red, conecte el puerto de red del IXM directamente o a través de un switch a su computadora y configure una dirección de red que sea accesible.
Para configurar una dirección de red en el IXM para copiar los archivos, se puede utilizar un comando regular ifconfig:
[root@lorawan ~]# ifconfig eth0 10.48.43.200
Una vez que el dispositivo esté accesible, puede descargar los archivos del servidor HTTP preparado en el paso 1:
[root@lorawan ~]# cd /tmp [root@lorawan tmp]# wget http://10.48.43.201:1000/recovery.itb Connecting to 10.48.43.201:1000 (10.48.43.201:1000) recovery.itb 100% |*******************************| 23684k 0:00:00 ETA [root@lorawan tmp]# wget http://10.48.43.201:1000/release.itb Connecting to 10.48.43.201:1000 (10.48.43.201:1000) release.itb 100% |*******************************| 44794k 0:00:00 ETA [root@lorawan tmp]#
broot@lorawan ~]# /opt/script/reimage.sh -n /tmp/release.itb -f /tmp/recovery.it
Calling latest reimage.sh...
Could not find out the version. May be using dev builds. Mode update skipped
Writing factory mode image...
47368+1 records in
47368+1 records out
24252422 bytes (23.1MB) copied, 1.318204 seconds, 17.5MB/s
Writing normal mode image1...
89589+1 records in
89589+1 records out
45869754 bytes (43.7MB) copied, 2.453597 seconds, 17.8MB/s
Writing normal mode image2...
89589+1 records in
89589+1 records out
45869754 bytes (43.7MB) copied, 2.458087 seconds, 17.8MB/s
Updating u-boot boot parameters...
Stop lxc container...
Stopping default lxc container...
umount: /mnt/container/rootfs/run: mountpoint not found
umount: /mnt/container/rootfs/var/run: mountpoint not found
lxcbr0: port 1(vethPFLXN1) entered disabled state
umount: /mnt/container/rootfs: mountpoint not found
device vethPFLXN1 left promiscuous mode
lxcbr0: port 1(vethPFLXN1) entered disabled state
Stop logging service...
Stopping syslog-ng daemon: OK
Stop logging signal received
umount: /var/log/: target is busy
(In some cases useful info about processes that
use the device is found by lsof(8) or fuser(1).)
Try to umount log directory again...
2244
Stop mdev...
umount: /data/uflash: mountpoint not found
Repartion internal SD...
Welcome to fdisk (util-linux 2.26.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): Created a new DOS disklabel with disk identifier 0x676d0d95.
Command (m for help): Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): Partition number (1-4, default 1): First sector (2048-7618559, default 2048): Last sector, +sectors or +size{K,M,G,T,P} (786432-7618559, default 7618559):
Created a new partition 1 of type 'Linux' and of size 640 MiB.
Command (m for help): Partition type
p primary (1 primary, 0 extended, 3 free)
e extended (container for logical partitions)
Select (default p): Partition number (2-4, default 2): First sector (2048-7618559, default 2048): Last sector, +sectors or +size{K,M,G,T,P} (2097152-7618559, default 7618559):
Created a new partition 2 of type 'Linux' and of size 2.6 GiB.
Command (m for help): The partition table has been altered.
Calling ioctl() to re-read partition table.
Re-reading the partition table failed.: Device or resource busy
The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8).
Recreate filesystem...
Creating filesystem for system data...
/tmp/_reimage.sh: line 322: cryptkey: command not found
/tmp/_reimage.sh: line 323: cryptsetup: command not found
/tmp/_reimage.sh: line 324: cryptsetup: command not found
/tmp/_reimage.sh: line 325: cryptsetup: command not found
mke2fs 1.42.12 (29-Aug-2014)
The file /dev/mapper/cryptroot does not exist and no size was specified.
Creating filesystem for user data...
mke2fs 1.42.12 (29-Aug-2014)
/dev/sda2 contains a ext3 file system labelled 'APP'
last mounted on Thu Jan 1 00:00:06 1970
/dev/sda2 is mounted; will not make a filesystem here!
Restart mdev...
Starting mdev...
Restart logging service...
Mounting log directory...
Starting syslog-ng daemon: OK
[root@lorawan ~]#
Simplemente reinicie el IXM para completar la actualización:
[root@lorawan ~]# reboot [root@lorawan ~]# watchdog watchdog0: watchdog did not stop! Stopping cron jobs... Stopping default lxc container... lab is not running umount: /tmp/lxc: not mounted Stopping sshd: OK Stopping ntpd: OK Stop lora HAL... Stopping Network Interface Plugging Daemon: eth0. Stopping network...ifdown: interface eth0 not configured Saving random seed... done. Clear kernel parameters... Stopping system config... Stop checking PID... Save clock... killall: watchdog: no process killed Stopping syslog-ng daemon: OK Stop logging signal received No handlers could be found for logger "mdm" The system is going down NOW!
A través de esto puede verificar si la actualización fue exitosa:
Ejemplo de una versión anterior:
[root@lorawan ~]# cat /etc/cisco_version VERSION=1.0.06 BRANCH=warbler_1_0_throttle VIEW=nburra-warbler_1_0_throttle.warbler_1_0_throttle_nightly_12052016 FREEZE TIME=05-Dec-2016.21:40:46UTC-08:00
Ejemplo después de la actualización:
[root@lorawan ~]# cat /etc/cisco_version VERSION=2.0 BRANCH=corsica_2_0_throttle VIEW=nburra-corsica_2_0_throttle.corsica_2_0_throttle_NIGHTLY_2.0_05272017_203603 FREEZE TIME=26-May-2017.15:50:34UTC-07:00
Actualmente, no hay información específica de troubleshooting disponible para esta configuración.
Comentarios