Comment mettre à jour son IOS depuis la ligne de commande ?

Me voici de retour pour une astuce rapide qui vous évitera comment upgrader l’OS sur les switchs/routeurs Cisco via la CLI. J’utilise dès que je peux le Cisco Network Assistant(aka CNA, petit logiciel gratuit utile pour configurer les paramètres de base,  regarder la topologie depuis une GUI, supprimer des fichiers sur la flash etc…) qui vous permet d’upgrader l’IOS via un glisser/déposer. Malheureusement l’outil peut rencontrer des problèmes. Exemple:

command /overwrite /http not available <– message approximatif

Du coup il reste la bonne vieille méthode, on lance un serveur Tftp (celui de windows ou le très bon tftpd32) qu’on configure sur la bonne interface. On met le package de mise à jour (*.tar ou *.bin) dans le dossier partagé du serveur tftp.

On se connecte sur le switch (via telnet/ssh/console par exemple) et ensuite, au lieu de télécharger la nouvelle image, via tftp (copy tftp: flash: ) puis changer la valeur de BOOT (en mode config, boot system <chemin_vers_bin>), on va utiliser la commande archive qui va lancer des vérifications supplémentaires et éviter de se retrouver avec un switch sans ios (ha les joies de Xmodem !):

archive download-sw /allow-feature-upgrade /reload tftp://10.4.1.16/c3560-ipbasek9-tar.150-1.SE1.tar

Le /allow-feature-upgrade permet d’outrepasser le message suivant qui survient si l’on passe d’une image IP-BASED à IP-ADVANCED par exemple:

Error: The image in the archive which would be used to upgrade
Error: system number 1 does not support the same feature set.

/reload permet de redémarrer automatiquement l’équipement si le nouvel ios a bien été installé.

Si jamais la flash est trop petite…

Error: There is insufficient space in flash: to install the required
Error: image.  Clean up some old images, and try again.

On peut ajouter le paramètre /imageonly pour extraire du tar le .bin uniquement (ou bien faire du ménage sur la flash avec delete). On peut également utiliser /overwrite pour supprimer l’ancienne image, l’option /safe permet de s’assurer que le switch redémarre correctement avec le nouvel ios avant de supprimer l’ancienne version.

A noter que l’on peut détarer un .tar directement depuis le switch avec la commande:

archive tar /xtract <source> <destination>

1 Response to “Comment mettre à jour son IOS depuis la ligne de commande ?”


Laisser un commentaire