dimanche 28 avril 2013

Cisco - Quand tout est perdu, il y a le ROMmon !

  • Introduction:

Pour une raison ou une autre vous avez "trifouillé" un peu trop votre équipement Cisco mais voilà qu'au redémarrage, celui-ci ne démarre plus ou plutôt qu'il reste bloqué dans un mod de secours appelé ROMmon.
Enfaite, ceci peut notamment arriver dans le cas où l'image iOS n'es plus présente dans la mémoire flash. Au passage, attention à la commande "delete"....pratique pour vider la base des vlans sur un commutateur via la commande "delete flash:/vlan.dat" mais ne faite surtout pas de delete flash:/ sinon c'est un erase complet et là, il n'y a plus rien ! Idem pour un upgrade de l'iOS, il faut être très vigilent et c'est que qui arrive lorsque l'on fait ce genre de mise à jour sans consulter la documentation constructeur... On oublie la commande indiquant au matériel le nom de la nouvelle image où il doit démarrer; et au prochain redémarrage c'est le crash assuré !




  • Satané prompt, je fais quoi maintenant ?

Tout d'abord nous devons renseigner les variables environnement afin de pouvoir charger un iOS dessus via une liaison RJ45. Il est également possible de réaliser la même opération par le lien série (port console) mais dans ce cas il va falloir être patient, très patient: compter environ 2h....
Pour les novices, seules les commandes en vertes sont à saisir. Il faut bien sûr les adapter en fonction ( adresses IP, nom de l'iOS à charger).

rommon 1 > IP_ADDRESS=192.168.1.1        //adresse IP de l'équipement
rommon 2 > IP_SUBNET_MASK=255.255.255.0        //masque de réseau
rommon 3 > TFTP_SERVER=192.168.1.10        //adresse IP du serveur TFTP hébergeant l'iOS, typiquement le PC
rommon 4 > TFTP_FILE=c2960s-universalk9.150-2.bin        //nom de l'iOS situé sur le serveur TFTP
rommon 5 > set        //affiche les variables environnement (permet de s'assurer que toutes les informations saisies ont été correctement saisies)
rommon 6 > tftpdnld        //lance la procédure de download, répondre par "Y" pour confirmer le téléchargement de l'IOS
rommon 7 > boot        //boot sur l'iOS

On patiente encore quelques instants le temps que l'iOS se décompresse, boot et c'est gagné ! Pour terminer, il faut lui indiquer que ce sera désormais cette image qu'il devra utiliser pour démarrer. Pour cela, lorsque l'équipement est totalement démarré; passer en mode de configuration globale (configure terminal) et saisir la commande "boot system flash:/monIOS.bin". Ci-dessous, un exemple...


Switch> enable
Switch# configure terminal
Switch(config)# no boot system flash
Switch(config)# boot system flash:/c2960s-universalk9.150-2.bin
Switch(config)# exit
Switch# write
Switch# reload


Procédure officielle de récupération à cette adresse : > ICI <




  • BONUS n°1: Backup de l'IOS :
Faire une copie de tous les fichiers de la flash vers un serveur TFTP:
Switch> archive tar /create tftp://192.168.1.1/backupios.tar flash:



  • BONUS n°2: Mise à jour de l'IOS :
Pour la mise à jour c'est quasiment la même chose mais en plus simple... Il faut supprimer l'ancien iOS via la commande delete, puis supprimer l'ancienne référence pour le boot avant de saisir la nouvelle. On enregistre les modifications et on termine l'opération par un redémarrage l'équipement pour booter sur le nouvel iOS.

Switch> enable
Switch> delete flash:/c2960s-universalk9.120-1.bin
Switch> copy tftp://192.168.1.10/c2960s-universalk9.150-2.bin c2960s-universalk9.150-2.bin
Switch# configure terminal
Switch(config)# no boot system flash
Switch(config)# boot system flash:/c2960s-universalk9.150-2.bin
Switch(config)# exit
Switch# write
Switch# reload

1 commentaire:

Anthony a dit…

=== Petit complément d'information ===

Sur les petits IPBX destinés aux PME de la gamme UC5xx, la procédure est un poil différente (ajout de la commande "checksum"). La procédure suivante fonctionne parfaitement pour l'UC540.


=> Sur le PC:

IP Address: 192.168.1.100
Netmask: 255.255.255.0
Default Gateway: 192.168.1.200


=> Sur l'UC540:

IP_ADDRESS=192.168.1.200 //adresse IP de l'équipement
IP_SUBNET_MASK=255.255.255.0 //masque de réseau
TFTP_SERVER=192.168.1.100 //adresse IP du serveur TFTP
TFTP_FILE=uc500-advipservicesk9-mz.124-20.T2 //nom de l'iOS situé sur le serveur TFTP
TFTP_CHECKSUM=0
tftpdnld //lance la procédure de download
reset //redémarre l'UC

Enregistrer un commentaire