Matériel utilisé : switch cisco série 2960
On utilisera de préférence la commande archive. Les commandes présentées ci-dessous sont indiquées uniquement pour information.
Les IOS cisco se trouve sous deux formes : .bin et .tar. L’archive tar contient, en plus de l’IOS, l’interface web. Nous utilisons ici le fichier .bin. Il ne sera donc pas possible de configurer le switch via une interface web.
Nous avons donc besoin d’un IOS disponible sur le site de cisco. On vérifiera, suite au téléchargement, la somme de contrôle md5 (utiliser par exemple md5summer). Nous avons également besoin d’un serveur tftp pour stocker l’image (par exemple tftpd32).
Il est recommandé avant la mise à jour de lire les « release notes » et de faire une sauvegarde de l’ancien IOS.
Vérification préalable à la mise à jour
On vérifie la version de l’IOS existant ainsi que la variable de boot.
switch#sh version
Switch Ports Model SW Version SW Image
------ ----- ----- ---------- ----------
* 1 24 WS-C2960-24TC-L 12.2(50)SE5 C2960-LANBASEK9-M
switch#show boot
BOOT path-list : flash:/c2960-lanbasek9-mz.122-50.SE5/c2960-lanbasek9-mz.122-50.SE5.bin
La commande suivante affiche le contenu de la mémoire flash. On remarque l’espace disponible sur cette mémoire. Si la taille de l’IOS à installer est supérieur à l’espace libre, il faudra supprimer au moins un ancien IOS avant le téléchargement.
switch#dir flash:
Directory of flash:/
2 drwx 192 Mar 1 1993 01:08:28 +01:00 c2960-lanbasek9-mz.122-50.SE5
557 -rwx 107 Mar 1 1993 01:08:29 +01:00 info
558 -rwx 2064 Dec 7 2012 14:59:07 +01:00 vlan.dat
559 -rwx 3096 Mar 1 1993 01:00:59 +01:00 multiple-fs
560 -rwx 1912 Jan 15 2013 16:48:12 +01:00 private-config.text
563 -rwx 3405 Jan 15 2013 16:48:12 +01:00 config.text
32514048 bytes total (20948965 bytes free)
switch#
Mise à jour de l’IOS
Dans l’exemple, l’adresse du serveur tftp est 192.168.1.15. L’IOS est copié sur le switch à partir du serveur tftp.
switch#copy tftp: flash:
Address or name of remote host []? 192.168.1.15
Source filename []? c2960-lanbasek9-mz.122-58.SE2.bin
Destination filename [c2960-lanbasek9-mz.122-58.SE2.bin]?
Accessing tftp://192.168.1.15/c2960-lanbasek9-mz.122-58.SE2.bin...
Loading c2960-lanbasek9-mz.122-58.SE2.bin from 172.16.100.13 (via Vlan1): !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[OK - 11660773 bytes]
11660773 bytes copied in 107.701 secs (108270 bytes/sec)
switch#
Le fichier est maintenant copié sur la flash. On vérifie à nouveau la somme de contrôle md5 pour s’assurer que le fichier n’est pas endommagé.
switch#verify /md5 flash:c2960-lanbasek9-mz.122-58.SE2.bin
................................................................................
verify /md5 (flash:c2960-lanbasek9-mz.122-58.SE2.bin) = 66d7a45d874ebea1aa2b0ff40dbdc7a0
On peux maintenant fixer la variable de boot vers le nouvel IOS.
switch#conf t
Enter configuration commands, one per line. End with CNTL/Z.
switch(config)#boot system flash:c2960-lanbasek9-mz.122-58.SE2.bin
switch(config)#
Vérification:
switch#sh boot
BOOT path-list : flash:c2960-lanbasek9-mz.122-58.SE2.bin
Config file : flash:/config.text
Enregistrons la nouvelle configuration puis redémarrons le switch.
switch#wr
Building configuration...
[OK]
switch#reload
Etape de vérification
Suite au redémarrage du switch, on affiche la nouvelle version de l’IOS.
switch#sh version
Cisco IOS Software, C2960 Software (C2960-LANBASEK9-M), Version 12.2(58)SE2, RELEASE SOFTWARE (fc1)
Switch Ports Model SW Version SW Image
------ ----- ----- ---------- ----------
* 1 24 WS-C2960-24TC-L 12.2(58)SE2 C2960-LANBASEK9-M
Bonus Suppression de l’ancien IOS et des fichiers http.
switch#delete /force /recursive flash:c2960-lanbasek9-mz.122-50
Autre commande intéressante: archive
switch#archive ?
config Archive the running config
download-sw Download a new copy of software from a server
log Manage archive log
tar List or extract files in a tar image
upload-sw Upload an existing copy of the software to a server
switch#
Cas des switchs stackables (utiliser la commande archive)
Dans le cas de switch empilé, il faut s’assurer que l’IOS est téléchargé sur tous les switchs (dir flash1: dir flash2: …).
On fixera également la variable de boot pour chaque switch (le switch 2 pour la commande suivante).
switch(config)#boot system switch 2 flash:c2960s-universalk9-mz.122-58.SE2.bin
Vérifier ensuite avec un show boot.