Connectrix : Le commutateur DS-6620B série B ne démarre pas vers le nouveau firmware lors de la mise à niveau du firmware, en raison d’un paramètre de démarrage incorrect
Summary: Connectrix B-Series : Le commutateur DS-6620B n’a pas démarré avec le nouveau firmware lors de la mise à niveau du firmware, en raison d’un paramètre d’argument de démarrage incorrect.
Symptoms
Mise à niveau de Fabric OS 8.1.0a vers Fabric OS 8.1.2f.
Impact:
Le commutateur n’est pas en mesure de mettre à niveau vers le nouveau firmware.
Environnement:
Matériel EMC : Logiciel Brocade Connectrix DS-6620B
: Logiciel Brocade Fabric OS 8.1.0a
: Fabric OS 8.1.2f
Problème :
la mise à niveau du firmware a échoué.
La mise à niveau du firmware a été lancée à l’aide de la procédure de téléchargement du firmware par défaut.
Pendant le téléchargement du firmware, le nouveau code est téléchargé sur la partition secondaire, mais lorsque le redémarrage automatique se produit, pour permuter les partitions, le commutateur démarre avec l’ancienne version du firmware à la place.
Exemple :
sortie Firmwareshow :
DS6620B:root> firmwareshow
Appl Primary/Secondary Versions
------------------------------------------
FOS v8.1.0a
v8.1.2f
WARNING: Firmwaredownload is in progress.
DS6620B:FID1:root>
La commande firmwaredownloadstatus indique que le firmware a été téléchargé sur la partition secondaire du commutateur, mais rien d’autre.
Exemple:
DS6620B:FID1:root> firmwaredownloadstatus
[1]: Fri Nov 30 18:18:26 2018
Firmware is being downloaded to the switch. This step may take up to 30 minutes.
[2]: Fri Nov 30 18:30:25 2018
Firmware has been downloaded to the secondary partition of the switch.
DS6620B:FID1:root>
Et si la commande firmwarecommit est exécutée dans cet état, elle renvoie l’erreur Impossible de démarrer la validation du firmware, car le firmware téléchargé n’est pas activé. et la commande firmwaredownloadstatus indique que Firmwarecommit a échoué. (0x1a).
Exemple:
DS6620B:FID1:root> firmwarecommit
Cannot start firmwarecommit because the downloaded firmware is not activated.
DS6620B:FID1:root>
DS6620B:FID1:root> firmwaredownloadstatus
[1]: Fri Nov 30 18:18:26 2018
Firmware is being downloaded to the switch. This step may take up to 30 minutes.
[2]: Fri Nov 30 18:30:25 2018
Firmware has been downloaded to the secondary partition of the switch.
[3]: Fri Nov 30 19:44:40 2018
The firmware commit operation has started. This may take up to 10 minutes.
[4]: Fri Nov 30 19:44:40 2018
Firmware commit failed - Firmwarecommit failed. (0x1a)
DS6620B:FID1:root>
Cause
Sur ce commutateur où la mise à niveau n’a pas démarré vers la nouvelle version du firmware après le téléchargement du firmware, un paramètre du chargeur de démarrage (bootargs) a été modifié pour démarrer à partir d’une partition spécifique.
(root=/dev/sda1) au lieu de (root=/dev/sda$prt)
Exemple :
bootargs=root=/dev/sda1 rootfstype=ext4 quiet console=ttyS0,9600
Normalement, au cours du processus de mise à niveau, le firmware est initialement téléchargé sur la partition secondaire tandis que le firmware de la partition principale reste inchangé jusqu’après le redémarrage.
Les partitions principale et secondaire sont permutées et le commutateur démarre normalement sur la partition avec le nouveau firmware.
Mais comme le paramètre bootargs a été précédemment modifié pour démarrer à partir d’une partition spécifique (root=/dev/sda1) au lieu de (root=/dev/sda$prt), le commutateur a continué à démarrer à partir de la partition avec l’ancien firmware.
Par conséquent, la version active du firmware est restée v8.1.0a au lieu de la version v8.1.2f attendue au démarrage après la mise à niveau.
La cause de la valeur bootargs incorrecte dans la configuration du chargeur de démarrage était due à une procédure de récupération de mot de passe où la valeur a été définie par inadvertance.
Notez que le résultat du paramètre bootargs affiche /dev/sda1 au lieu de /dev/sda$prt après l’exécution de la commande ci-dessus.
Exemple tiré du port série :
=> setenv bootargs "root=/dev/sda$prt rootfstype=ext4 console=ttyS0,9600 quiet"
=> saveenv
Saving Environment to NVRAM...
=>
=> printenv
bootargs=root=/dev/sda1 rootfstype=ext4 console=ttyS0,9600 quiet
=>
Resolution
Résolution : Pour restaurer, rétablissez les paramètres par défaut des bootargs.
Méthode #1 :
- Connectez-vous pour passer en tant qu’utilisateur root et utilisez la commande bootenv .
bootenv bootargs 'root=/dev/sda$prt rootfstype=ext4 console=ttyS0,9600 quiet'
hareboot
Méthode #2 :
- Connectez-vous via la console série et entrez dans le shell de commande du chargeur de démarrage .
setenv bootargs 'root=/dev/sda$prt rootfstype=ext4 console=ttyS0,9600 quiet'
saveenv
boot
Une fois que la méthode #1 ou #2 a été suivie, le commutateur doit démarrer avec le nouveau firmware et terminer le processus de téléchargement du firmware.
Additional Information
bootargs=root=/dev/sda$prt rootfstype=ext4 console=ttyS0,9600 quiet