6 - COPIAS DE SEGURIDAD
 

[ CONCEPTOS BÁSICOS ] - [ ADMINISTRACION ELEMENTAL ] - [ AUTENTIFICACION DE USUARIOS ] - [ POLITICAS DE SEGURIDAD ] - [ SEGURIDAD EN EL NUCLEO ] -
[ COPIAS DE SEGURIDAD ] - [ BIBLOGRAFIA ]

6.1 - INTRODUCCION
6.2 - DISPOSITIVOS DE ALMACENAMIENTO
6.3 - REALIZACION DE COPIAS DE SEGURIDAD
    6.3.1 - dump/restore
    6.3.2 - LA ORDEN tar
    6.3.3 - LA ORDEN cpio
    6.3.4 - BACKUPS SOBRE CD-ROM


6.1 - INTRODUCCION

Las copias de seguridad son uno de los mecanismos mas utilizados por administradores para restaurar un sistema informatico. La perdida de datos o la inestabilidad del sistema son factores a tener en cuenta a la hora de hacer estas copias de seguridad o backups. Al perderse estos datos tenemos una copia de nuestro sistema en otro dispositivo de almacenamiento masivo que se utilizara para restaurar dichos datos.
Aparte de la necesidad de realizar estas copias de seguridad, es muy necesario la comprobacion de las mismas, es decir, no sirve de nada copiar unos datos a otro sitio si la copia sale defectuosa o el dispositivo esta dañado.
Realizar una politica de copias de seguridad no es relativamente muy dificil ni costoso, por contra la verificacion de esos datos suele ser una faena algo mas costosa. La politica que se adopta en la mayoria de casos es una vez realizado el backup, realizar una verificacion aleatoria de una muestra al azar de datos del backup, si esta verificacion resulta ser positiva consideraremos que la copia de seguridad se a completado con exito.

Si echamos un vistazo a la seguridad que deben tener estas copias de seguridad, se deben remarcar un par de aspectos, por una parte el etiquetado de los mismos y por otra parte el lugar donde sean guardados.
La etiquetacion de una copia de seguridad no es mas que un simple papel junto al dispositivo de almacenamiento que nos permita saber de primera mano el contenido. Ya que de no estar etiquetado el administrador podria pasar un largo periodo de tiempo buscando el dispositivo en cuestion. Es mas, el dispositivo deberia aportar al administrador la mayor informacion posible acerca de su contenido. El problema viene cuando un atacante tiene acceso fisico a tal dispositivo. Primero, ha conseguido entrar en el lugar donde se hallan los backups de un sistema y segundo, con la etiqueta al lado le facilitamos enormemente la tarea de busqueda. Lo que finalmente se propone adoptar es un sistema de etiquetado por codigos, donde el administrador sea al unico que leyendo esos codigos le llege informacion de acerca de lo que contiene el dispositivo y a tales efectos al atacante hacerle un poco la vida imposible en caso de querer hurtar nuestros datos.

El segundo parametro a tener en cuenta es el lugar de almacenamiento de los backups. Por comodidad del administrador las copias se guardan cerca del sistema informatico, lo que constituye un gran error y una gran ventaja para el atacante. En primer lugar, en caso de catastrofe, en el lugar donde se halle el sistema informatico se perderian ademas las copias de seguridad. Y en segundo lugar es un lugar evidente donde el atacante registrara para busqueda de mas datos. Por lo que se aconseja guardar tales copias en un lugar mas alejado, mas seguro y con un acceso fiable por parte del administrador.

Por ultimo, ¿que almacenamos en las copias de seguridad?. La respuesta es firme, solo se deberia hacer copias de seguridad de aquellos archivos vitales que sean unicos en nuestro sistema (/home, /export/home/, /etc/, /usr/local/...).

6.2 - DISPOSITIVOS DE ALMACENAMIENTO

Dispositivos de almacenamientos los hay en gran cantidad, desde nuestros floppy's de siempre, discos duros, CD-ROM, DVD, etc....Cada uno, claro esta, con sus ventajas e inconvenientes. La propiedad que deberian cumplir todos los dispositivos de almacenamiento destinados a realizar backups es la de ser estandar. Se puede presumir de tener una unidad de almacenamiento de ultima generacion con una capacidad de almacenamiento inmensa, una tasa de transferencia a la velocidad del rayo y diferentes caracteristicas. Si este tipo de unidad por lo cual es poco comun, no nos solucionara la vida a la hora de recuperar datos en el caso de que nuestra unidad lectora caiga dañada. Por ejemplo, tenemos un dispositivo de almacenamiento poco estandar, y nuestro sistema informatico, incluida la lectora de este sistema de almacenamiento, es destruido. Bien, tenemos nuestra copia de seguridad en un disco, pero no tenemos lectora, y da la casualidad que ese tipo de lectoras son dificiles de encontrar, por lo que tardariamos mucho mas tiempo en restaurar nuestros datos. En cambio, si hubieramos optado por una solucion estandar como un disco compacto, la restauracion hubiera sido inmediata, por que es un medio de almacenamiento extendido, muy manejable y estandar.

Los dispositivos analizados seran:
 
Discos Flexibles (floppy) Discos Duros (HD) Cintas magneticas CD-ROM's

Posiblemente el medio de almacenamiento mas extendido en el mundo. Y aunque cada dia se utilice menos, aun esta presente en los campos de la informatica contemporanea dada su portabilidad. Todo no puede ser tan bonito, la verdad es que posee mas inconvenientes que ventajas. Su fiabilidad es muy baja, basta solo con acercar al floppy cualquier emanador de radiacion para que los datos acaben defectuosos. La segunda desventaja importante es su escasa capacidad para las necesidades actuales. Poco mas de un megabyte de capacidad puede causar risa a mas de uno, y es que se queda muy limitado a la hora de hacer backups, restringuiendose exclusivamente a su uso en copias de seguridad de algunos ficheros.
Una de sus utilidades es montar en el un sistema de ficheros. Aunque su utilidad mas extendida no es la de montar sistemas de ficheros sobre el, sino accediendo directamente al dispositivo, pudiendo hacer backups de datos de nuestro sistema de forma eficiente. Por ejemplo, haremos un backup de nuestro fichero "passwd":


 

Los discos duros son las unidades de almacenamiento masivo por antonomasia en cualquier computador, estableciendo unos parametros de almacenamiento gigantesco, rapidez de acceso a los datos, precio relativamente asequible y buena fiabilidad a la hora de almacenar datos.
Tambien estos dispositivos se podrian utilizar para realizar copias de seguridad, que al igual que los floppy's, podemos montar un sistema de ficheros sobre una unidad o particion correspondiente, montar la unidad y copiar los archivos que queramos. Aunque no es usual utilizar este tipo de backups para soluciones caseras si que se pueden implementar en sistemas de gama media/alta.
Algo muy interesante en algunas situaciones es utilizar como dispositivo de copia un disco duro identico al que esta instalado en nuestro sistema. Imaginemos que /dev/hda y dev/hdb son dos discos identicos, y queremos realizar una copia de seguridad de unos sobre el otro, realizaremos la siguiente operacion en la consola de linux:
dd if=/dev/hda of=/dev/hdc bs=2048
(este ejemplo no lo ilustrare con una foto de mi ordenador por la simple razon de que no poseo dos discos duros en mi sistema)
  Las cintas magneticas han sido y siguen siendo el dispositivo de almacenamiento de copias de seguridad por excelencia. Comentare los cuatro tipos de cintas magneticas mas importantes desde que se inventaron: las cintas de nueve pistas, las cintas QIC, las cintas de 8mm y las cintas de 4mm (DAT).
Las cintas de nueve pistas fueron las pioneras en estos dispositivos, se utilizaron durante mucho tiempo. Hoy en dia han caido en desuso por su poca capacidad y su desfasada arquitectura. Sin embargo, en aquella epoca ofrecieron una alta fiabilidad, asi como rapidez durante el trabajo, claro que sus escasos 300 megabytes de capacidad las han relegado al museo informatico.
Las QIC surgieron como uno una extension de las de 9 pistas, una especie de mejora, donde destacaba su aumento de capacidad (no llegaba el Giga de capacidad) y flojeaba en su lentitud de trabajo. Fueron una continuacion de las de nueve pistas, y pese a que estaban mejor protegidas y su coste de fabricacion era menor, la evolucion tambien las dejo atras tras la aparicion de las 8mm.
Este tipo de cintas del tamaño de un cassete de audio en principio fue diseñado para almacenar video. Puesto que se vio con capacidad de almacenar datos se ha convertido en una de las cintas de uso contemporaneo para el uso de backups. Su capacidad oscila sobre los 5 gigabytes y son muy portables y faciles de usar. El problema surge cuando estudiamos la arquitectura de este dispositivo, debido a que en sus origenes fue construido para almacenar video, la perdida de unos pocos bytes de informacion no producia problema alguno sobre el usuario. ya que la imagen permanecia igual frente al ojo humano, es decir, la perdida de tan poca informacion en video no suponia ningun problema, pero aplicado a datos informaticos, la perdida de tal cantidad de informacion puede ser vital para la restauracion de un sistema. Por ello se crearon las cintas DAT o cintas de 4 mm. Estas fueron especialmente diseñadas para almacenar datos y frecuentemente utilizadas hoy dia. Siguen teniendo una capacidad similar o inlcuso superior a las 8mm y algunos fabricantes mediante compresion hardware llegar a traspasar la barrera de los 14 GB. Actualmente se llegan a capacidades dantescas, pero siempre hay que tener en cuenta que un dispositivo que no sea estandar por mas capacidad que tenga, de nada nos servira el dia no tengamos recursos de lectura.
  En mi opinion, uno de los mejores, por no decir el mejor, dispositivo de almacenamiento masivo. El CD-ROM es un dispositivo optico de una capacidad que oscila entre los 650 MB y los 700 MB. El dispositivo no es mas que una oblea de plastico de forma circular y de unos 12 cm de diametro. Para su lectura se utilizar un haz de laser que detecta los "surcos" que se encuentran quemados sobre la superficie del disco y los interpreta como informacion binaria. Debido a que es un haz de luz, su lectura no produce desgaste, por lo que su longitud de vida puede oscilar entre los 25 y los 50 años. Por si fuera poco, su coste de fabricacion es infimo, a la vez que se a impuesto sobre otros dispositivos de almacenamiento situandose en el podium de dispositivos estandar.
Los tipos de informacion que puede almacenar y sus diversas utilidades lo convierten en un dispositivo casi perfecto, ademas su actual bajo coste en las unidades de grabacion lo han impulsado a ser un mecanismo de backup frecuentemente utilizado en diversas estaciones Linux. Lo unico que flojea, es actualmente en su capacidad, ya que dentro de unos años sera con toda seguridad superado por su "hermano mayor", el DVD, el cual se esta implantando a pasos agigantados.

A continuacion muestro una tabla coparativa con los diferentes dispositivos analizados:
 
 
 
Dispositivo Fiabilidad Capacidad Coste / MB
Floppy Baja Baja Alto
CD-ROM Media Media Bajo
Disco duro Alta Media / Alta Media
Cinta 8mm Media Alta Media
Cinta DAT Alta Alta Media

(esta tabla la he copiado de un libro, ya que he probado los 3 primeros dispositivos, en mi opinion, la fiabilidad de un CD-ROM deberia ser Alta, al igual que un disco duro o mas)

6.3 - REALIZACION DE COPIAS DE SEGURIDAD

Numerosas son las herramientas para la realizacion de copias de seguridad, y estas varian segun el clon de UNIX utilizado, bien sea, AIX, HP-UX, IRIX, SCO Unix, Solaris, etc...
Lo malo de estas aplicaciones es que se trata de software propietario. Por ejemplo, realizamos una copia de seguridad desde una maquina Silicon Graphics corriendo bajo IRIX con la herramienta "bru". Una vez tenemos la copia de seguridad hecha, el ordenador se quema. Ahora necesitaremos otra maquina corriendo bajo IRIX para poder restaurar nuestra copia de seguridad, mientras que si se hubiera hecho la copia de seguridad con shellscript utilizando ordenes como tar o cpio, ahora podriamos restaurar nuestro backup en una maquina SPARC corriendo bajo Solaris, por ejemplo.

6.3.1 - dump/restore

La utilidad dump realiza un volcado de un sistema de ficheros completos a otro dispositivo. Por otro lado, restore se encarga de restaurar la copia de seguridad realizada con dump. Ambas son dos utilidades clasicas y muy potentes. Ademas son estandar, es decir, son compatibles con el resto de clones UNIX.
La sintaxis general de la orden dump es:

dump opciones argumentos fs

donde 'opciones' son las opciones de la copia de seguridad, 'argumentos' son los argumentos de dichas opciones, y 'fs' es el sistema de ficheros a salvaguardar. Los comandos mas utilizados son:
 
Opcion
Accion realizada
Argumento
0-9
Nivel de la copia de seguridad
NO
u
Actualiza /etc/dumpdates al finalizar el backup
NO
f
Indica una cinta diferente de la usada por defecto
SI
b
Tamaño de bloque
SI
c
Indica que la cinta destino es un cartucho
NO
W
Ignora todas las opciones excepto el nivel del backup
NO

El proceso contrario a la realizacion de backups con dump, es la utilizacion de la herramienta restore. Esta herramienta es capaz de extraer ficheros individuales, directorios o sistemas de archivos completos. La sintaxis de esta orden es:

restore opciones argumentos archivos

donde 'opciones' y 'argumentos' tienen una forma similar a 'dump' y 'archivos' evidentemente representa una lista de directorios y ficheros para restaurar. Las ordenes mas utilizadas con la herramienta restore son:
Opcion
Accion realizada
Argumento
r
Restaura la cinta completa
NO
f
Indica el dispositivo o archivo donde esta el backup
SI
i
Modo interactivo
NO
x
Extrae los archivos y directorios desde el directorio actual
NO
t
Imprime los nombres de los archivos de la cinta
NO

6.3.2 - tar

La utilidad tar (Tape Archiver) es una herramienta de facil manejo disponible en todas las versiones de Unix que permite volcar ficheros individuales o directorios completos en un unico fichero; inicialmente fue diseñada para crear archivos de cinta, aunque en la actualidad, casi todas sus versiones pueden utilizarse para copiar a cualquier dispositivo o fichero, denominado 'contenedor'. Su principal desventaja es que, bajo ciertas condiciones, si falla una porcion del medio, se puede perder toda la copia de seguridad; ademas, tar no es capaz de realizar por si mismo mas que copias de seguridad completas, por lo que hace falta un poco de programacion shellscripts para realizar copias progresivas o diferenciales.
Las opciones mas importantes son:
Opcion
Accion realizada
c
Crea un contenedor
x
Extrae archivos de un contenedor
t
Testea los archivos almacenados en un contenedor
r
Añade archivos al final de un contenedor
v
Modo verbose
f
Especifica el nombre del contenedor
Z
Comprime o descomprime mediante compress / uncompress
z
Comprime o descomprime mediante gzip
p
Conserva los permisos de los ficheros

Por ejemplo, imaginemos que deseamos volcar todo el directorio '/export/home/' a la unidad de cinta '/dev/rmt/0'. Esto lo conseguimos con la siguiente orden:
# tar cvf /dev/rmt/0 /export/home/
Si lo que queremos es recuperar ficheros guardados en un contenedor utilizaremos las opciones 'xvf'. Podemos indicar el archivo o archivos que queremos extraer; si no lo hacemos, se extraeran todos:
# tar xvf /tmp/backup.tar etc/passwd

6.3.3 - cpio

cpio (copy in/out) es una utilidad que permite copiar archivos a o desde un contenedor cpio, que no es mas que un fichero que almacena otros archivos e informacion sobre ellos. Este contenedor puede ser un disco, otro archivo, una cinta o incluso una tuberia, mientras que los ficheros a copiar pueden ser archivos normales, pero tambien dispositivos o sistemas de ficheros completos. La tabla de ordenes mas utilizadas con esta herramienta es la siguiente:
 
Opcion Accion realizada
o Copiar 'fuera' (out)
i Copiar 'dentro' (in)
m Conserva fecha y hora de los ficheros
t Crea tabla de contenidos
A Añade ficheros a un contenedor existente
v Modo verbose

Por ejemplo, si quisieramos copiar los archivos de /export/home/ en el fichero contenedor /tmp/backup.cpio podemos utilizar la siguiente sintaxis:
# find /export/home/    | cpio -o > /tmp/backup.cpio

Una vez creado el fichero contenedor quizas resulte interesante chequear su contenido, con la opcion 't'. Por ejemplo, la siguiente orden mostrara en pantalla el contenido de /tmp/backup.cpio:
# cpio -t < /tmp/backup.cpio
Igual que para almacenar ficheros en un contenedor hemos de pasarle a cpio la ruta de los mismos, para extraerlos hemos de hacer lo mismo; si no indicamos lo contrario, cpio -i extraera todos los archivos de un contenedor, pero si solo nos interesan algunos de ellos podemos especificar su nombre de la siguiente forma:
# echo "/export/home/toni/hola.tex"   | cpio -i </tmp/backup.cpio

6.3.4 - BACKUPS SOBRE CD-ROM

Como antes hemos dicho, cada vez es mas comun que se realicen copias de seguridad sobre discos compactos; en estos casos no se suelen utilizar las aplicaciones vistas hasta ahora (tar o cpio), sino que se necesita un software dedicado.
Para poder grabar una copia de seguridad en un CD-ROM necesitamos en primer lugar que el nucleo del sistema operativo reconozca nuestra grabadora como tal; si se trata de una IDE, y dependiendo del clon de Unix utilizado, quizas sea necesario modificar el kernel, ya que el acceso que los diferentes programas realizan al dispositivo se efectua a traves de un interfaz SCSI del nucleo. Es necesario consultar la documentacion y la lista de compatibilidad harware para cada sistema unix.

Partiendo que el reconocimiento de nuestro hardware es correcto, necesitaremos software para grabar los cd's. Para ello utilizaremos el mkisofs  y el cdrecord. El primero nos sirve para realizar imagenes ISO de nuestro cd y el segundo para grabar esas imagenes al disco compacto.
De esta forma lo primero que generaremos es una imagen de los ficheros a grabar, imagen que a continuacion pasaremos al cd; por ejemplo, si queremos hacer un backup de /export/home/, en primer lugar utilizaremos mkisofs para crear una imagen con todos los ficheros y subdirectorios de los usuarios:
# mkisofs -a -R -l -o /mnt/imagen.iso /export/home/

Con esta orden hemos creado una imagen ISO denominada /mnt/imagen.iso  que contiene toda la estructura de directorios por debajo de /export/home/; con las diferencias opciones hemos indicado que se almacenen todos los ficheros, que se sigan los enlacen simbolicos y que se registre ademas informacion sobre los permisos de cada archivo. Una vez que tenemos esta imagen hemos de pasarla a un cd:
# cdrecord dev=0,1,0 fs=16m /mnt/imagen.iso
Con esta orden le hemos indicado al sistema la ubicacion de nuestra grabadora, asi como un buffer de grabacion de 16MB y tambien la ubicacion de la imagen ISO.


[ CONCEPTOS BÁSICOS ] - [ ADMINISTRACION ELEMENTAL ] - [ AUTENTIFICACION DE USUARIOS ] - [ POLITICAS DE SEGURIDAD ] - [ SEGURIDAD EN EL NUCLEO ] -
[ COPIAS DE SEGURIDAD ] - [ BIBLOGRAFIA ]