19 de febrero de 2006

Sistema de archivos del Cisco IOS

El sistema de archivos del Cisco IOS (IOS File System - IFS) proporciona una interfaz unificada para la administración de todos los archivos utilizados en los dispositivos que implementan Cisco IOS:


  • Sistema de archivos en la memoria Flash
  • Sistema de archivos en servicios de la red a través de servidores ftp o tftp
  • Sistema de archivos en otros medios de almacenamiento como la NVRAM, RAM, ROOM, etc.

IFS utiliza la convención de URL para especificar la localización de archivos en la red, según el siguiente esquema:

//[localización]/[directorio]/[nombre del archivo]

IFS proporciona una serie de comandos para la manipulación de archivos en el entorno Cisco IOS cuyos usos más frecuentes son:

  • Hacer copias de resguardo de la imagen del Cisco IOS antes de realizar un upgrade de IOS.
  • Realizar un upgrade.
  • Hacer copia de seguridad del archivo de configuración antes de realizar cambios.
  • Visualizar archivos de texto como el archivo de configuración.
  • Realizar tareas de recuperación de la imagen del Cisco IOS o el archivo de configuración.

Los comandos IFS más frecuentemente utilizados son los siguientes:

dir

El comando dir permite ver los archivos almacenados en un directorio. El directorio por defecto usualmente es el sistema de archivos en la memoria flash.

También se puede especificar cuál es el directorio que se desea visualizar, o se puede utilizar la opción all-filesystems.

Un ejemplo:

Router# dir
Directory of flash:/

1 -rw- 15183868 c2600-ik9o3s3-mz.122-15.T9.bin

16777216 bytes total (1592488 bytes free)
Router#

copy

El comando copy permite hacer algunas cosas más que simplemente copiar archivos de un sitio al otra de un router o switch. Es un comando esencial para poder copiar archivos desde y hacia el router.

Al utilizar el comando copy se puede emplear el formato URL estándar para identificar el origen y destino del proceso.

Este es un ejemplo de la ruta URL:

tftp:[[//location]/directory]/filename
ftp:[[//[username[:password]@]location]/directory]/filename

El siguiente es un ejemplo que usa una ruta URL para el sistema de archivos local, para copiar el archivo de configuración de respaldo a un directorio del servidor tftp que tiene dirección IP 10.10.10.10

copy nvram:startup-config tftp://10.10.10.10/router/startup-backup-2-8-2006

show file

El comando show file muestra información referida a un archivo específico o un sistema de archivos.
Las opciones más empleada de este comando son:

  • show file information
    permite visualizar información referida a un archivo específico
  • show file systems
    muestra información referida al sistema de archivos.

Router#sh file systems
File Systems:

Size(b) Free(b) Type Flags Prefixes
- - opaque rw null:
- - opaque rw system:
- - network rw tftp:
262144 262144 nvram rw nvram:
- - network rw rcp:
- - network rw ftp:
* 8128000 2438144 flash rw flash:

more

El comando more muestra archivos de texto. Este comando opera del mismo modo que en Linux, permitiendo ver un archivo de texto (como el archivo de configuración).

Router#more system:running-config

delete

Este comando permite eliminar archivos. Este comando no tiene ninguna característica especial salvo que, en algunos dispositivos, al borrar el archivo no se libera el espacio que ese archivo estaba utilizando; es estos casos el comando delete debe ser completado con el comando squeeze.

erase o format

Dependiendo del tipo de memoria de que se dispone, se pueden utilizar los comandos erase o format para limpiar o despejar la memoria flash. El comando erase es el más común.

¡Atención! Cuando se encuentra copiando archivos a la memoria flash se debe ser muy cuidadoso pues en algunos dispositivos Cisco IOS pregunta si desea borrar la memoria flash antes de realizar la copia. Como la opción por defecto es confirmar, si se da un se borrará la imagen del IOS que está almacenada en la flash.

Un ejemplo:

Router# copy running-config flash:test
Destination filename [test]?
Erase flash: before copying? [confirm]

cd y pwd

Se puede utilizar el comando cd para cambiar de directorio, del mismo modo que se utiliza en DOS o Linux. Este comando permite dirigirse a cualquier directorio que se especifique.

También puede utilizarse el comando pwd de Linux para ver en pantalla en que directorio se encuentra. Recuerde que por defecto, el directorio de trabajo es flash:, al cambiar de directorio no se modifica el prompt, por lo que se necesita de este comando para verificar en qué directorio se encuentra trabajando.

Un ejemplo:


Router#cd nvram:
Router#pwd
nvram:/
Router#dir
Directory of nvram:/

1 -rw- 1022 startup-config
2 ---- 5 private-config

262144 bytes total (261122 bytes free)

mkdir y rmdir

Algunos routers y switches ofrecen la posibilidad de crear y borrar directorios en su memoria flash. Se puede utilizar el comando medir para crear un directorio, y rmdir para remover un directorio específico. Los comandos cd y pwd permiten ingresar y salir de esos directorios.

Un ejemplo:

Router#cd flash:
Router#pwd
flash:/
Router#mkdir prueba
Create directory filename [prueba]?
Created dir flash:prueba
Router#dir
Directory of flash:/

2 -rwx 1051 Mar 01 1993 00:38:29 n
3 ---x 5687080 Mar 01 1993 00:05:43 mc3810-a2js-mz-ch
4 -rwx 1022 Mar 03 1993 10:31:24 test
5 drwx 0 Mar 03 1993 10:45:46 prueba

8128000 bytes total (2437120 bytes free)
Router#rmdir prueba
Remove directory filename [prueba]?
Delete flash:prueba? [confirm]
Removed dir flash:prueba
Router#dir
Directory of flash:/

2 -rwx 1051 Mar 01 1993 00:38:29 n
3 ---x 5687080 Mar 01 1993 00:05:43 mc3810-a2js-mz-ch
4 -rwx 1022 Mar 03 1993 10:31:24 test

8128000 bytes total (2437120 bytes free)
Router#


Para profundizar en el sistema de archivos de Cisco IOS:
Documento técnico oficial de Cisco


¿Tenés algún tip para aportar en este tema....?
Perfecto!!!! agregá un comentario con el detalle.
Muchas gracias.
Oscar Gerometta

15 comentarios:

  1. Hola, tengo en mi poder un ASA 5510, cometi el error de correr el comando erase flash. No tengo un respaldo del IOS. Como puedo hacer para conseguir una imagen y copiarla? Muy agradecido.

    ResponderEliminar
  2. Estimado.
    Para conseguir una nueva imagen de sistema operativo debés ponerte en contacto con el Cisco Partner que te corresponde.

    ResponderEliminar
  3. Hola amigo,por la oportunidad que he tenido de leer lo que hay en tu blog,es muy valioso y de gran ayuda.Sin embargo me gustaría saber como actualizo un ios de un router a otro router sin usar servidor tftp,ni ftp.Me he tomado regular tiempo en buscar en internet y no hay respuetas tan satisfactorias que digamos,he visto por ahi,mediante rcp,snmp...pero para serle sincero no lo entiendo casi.Estaré muy agradecido de antemano.
    saludos.

    ResponderEliminar
  4. Hola amigo,por la oportunidad que he tenido de leer lo que hay en tu blog,es muy valioso y de gran ayuda.Sin embargo me gustaría saber como actualizo un ios de un router a otro router sin usar servidor tftp,ni ftp.Me he tomado regular tiempo en buscar en internet y no hay respuetas tan satisfactorias que digamos,he visto por ahi,mediante rcp,snmp...pero para serle sincero no lo entiendo casi.Estaré muy agradecido de antemano.
    saludos.

    ResponderEliminar
  5. Amigo.
    Para hacer una copia de router a router debés establecer una sesión TCP/IP. Los protocolos típicos para esta tarea son ftp y tftp. Para hacer esto el mismo router puede actuar con servidor, sin necesidad de insertar un dispositivo externo.

    ResponderEliminar
  6. Que tal, una pregunta, hay alguna manera de respaldar toda la memoria flash de mi ruteador por tftp sin la necesidad de ir archivo por archivo ? Es una flash memory de un CCME te imaginaras que cantidad de archivos se encuentran alojados,,alrededor de 100 !

    ResponderEliminar
  7. No tengo información al respecto. Esta nota está referida a IOS.
    Supongo que deberías revisar las guías de operación del CCME para verificar cuál es el mecanismo previsto para tener copia de respaldo de todos los archivos.

    ResponderEliminar
  8. tengo un UC500 y cuando paso los archivos de configuracion por ftp, despues no puedo verlos con: Show flash. Como puedo arreglarlo? Gracias.

    ResponderEliminar
  9. Estimado.
    La UC500 es una central integrada compleja, que utiliza múltiples instancias de software para diferentes features soportados. No todo es IOS, por lo que es muy posible que estén intentando ver archivos de configuración (p.e. los de los IP phones) que no podés acceder desde IOS.
    Sugiero que revises con cuidado las guías de configuración, de acuerdo a lo que estés intentando hacer.

    ResponderEliminar
  10. Buenas tardes Sr. Oscar,

    Le escribo de Caracas - Venezuela, he enviado varios correos para saber el costo de su libro Guía de preparación para el CCNA 4.1 y aun no he recibido respuesta, será que ya no esta a la venta?

    ResponderEliminar
  11. Estimado.
    Consultada la Editorial me indican que tiene solo unos pocos correos aún sin responder, y que los responderán en el día de mañana. En el entretiempo te sugiero revises la dirección a la que estás escribiendo: libros.networking@gmail.com

    ResponderEliminar
  12. Buenas, he estado mirando información acerca de los sistemas de archivos y no me queda muy claro. Las diferentes clases se sistemas de archivos(A, B y C) para memorias flash que se utilizan solo para versiones de IOS posteriores a la 12.2 o son independientes de la version de IOS?Es que en la página de Cisco solo encontré información sobre las clases en una guia de de la IOS 12.2 y en un documento de PCMCIA ¿Estas clases solo se diferencian en los comandos empleados para borrar, eliminar y recuperar la imagen? ¿para que sirve tener una imagen como deleted si esta no libera el espacio?

    Gracias.

    ResponderEliminar
    Respuestas
    1. IOS inicialmente sólo soportaba almacenamiento en la memoria flash del dispositivo. Progresivamente se incorporaron memorias flash removibles y memorias USB, por lo que su implementación requiere determinadas versiones de IOS (no las más antiguas).
      Por otra parte, la eliminación de un archivo de un sistema de memoria (como ocurre en todos los sistemas operativos), no implica su efectiva eliminación en el soporte físico, sino sólo que se borran los punteros que permiten accederlo. La eliminación efectiva de un archivo supone no el uso del comando "delete", sino el formateo de la memoria. Mientras no haya sido eliminado completamente, el archivo puede ser recuperado.

      Eliminar
  13. Oscar buen día un gusto saludarte, te escribe Andrés Alejandro y tengo varias dudas con este tema.

    1. ¿ Cual es la diferencia entre los archivos config.txt y private-config.text ?

    2. Al momento de hacer de hacer un backup de los dispositivos, uno normalmente hace el respaldo de los archivos vlan.dat y la configuración del startup-config y mi pregunta seria ¿ También es necesario resguardar los archivos config.txt y private-config.text ?

    ResponderEliminar
    Respuestas
    1. Andrés.
      Los dispositivos actualmente son provistos de fábrica con una configuración por defecto que permite realizar una instalación rápida por interfaz gráfica. Esta instalación inicial requiere de un servicio DHCP, la activación de una interfaz para gestión y la definición de un usuario y clave por defectos. Esta configuración es la que está de fábrica en los archivos que referís y la que se invoca cuando se hace un factory default (que no es lo mismo que un password recovery o que borrar todo en la flash).
      Estos archivos, lo mismo que el vlan-dat, no se guardan cuando haces un copy tradicional. No es necesario resguardarlos a menos que quieras conservar la posibilidad de hacer un factory default.

      Eliminar

Gracias por tu comentario.
En este blog los comentarios están moderados, por lo que su publicación está pendiente hasta la revisión del mismo.