Siguiente: Políticas de copias de
Subir: Algunas órdenes para realizar
Anterior: La orden cpio
Índice General
Backups sobre CD-ROM
Como antes hemos dicho, cada vez es más común 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: aquí vamos a comentar las nociones
más básicas para poder crear backups sobre este medio.
Para poder grabar una copia de seguridad en un CD-ROM necesitamos en primer
lugar que el núcleo del sistema operativo reconozca nuestra grabadora como
tal; si se trata
de una IDE, y dependiendo del clon de Unix utilizado, quizás sea necesario
modificar el kernel, ya que el acceso que los diferentes programas
realizan al dispositivo se efectua a través de un interfaz SCSI del núcleo.
Es necesario consultar la documentación y la lista de compatibilidad hardware para cada Unix particular.
Si asumimos que el reconocimiento del dispositivo es correcto, lo que
necesitamos a continuación es software capaz de grabar un CD-ROM. Por
un lado es necesario un programa para crear imágenes ISO, el `molde' de lo
que será el futuro CD-ROM; el más conocido es sin duda mkisofs.
Además necesitaremos un programa para realizar lo que es la grabación en
sí, como cdrecord. De esta forma lo primero que generaremos es una
imagen de los ficheros a grabar, imagen que a continuación pasaremos al
CD-ROM; 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:
anita:~# mkisofs -a -R -l -o /mnt/imagen.iso /export/home/
Con esta orden hemos creado una imagen ISO denominada /mnt/imagen.iso y
que contiene toda la estructura de directorios por debajo de /export/home/; con las diferentes opciones hemos indicado que se almacenen
todos los ficheros, que se sigan los enlaces simbólicos y que se registre
además información sobre los permisos de cada archivo. Una vez que tenemos
esta imagen (que en los Unices con soporte para sistemas de ficheros loop
podremos montar como si se tratara de una partición, para añadir, borrar,
modificar...ficheros antes de la grabación) hemos de pasarla a un CD-ROM,
por ejemplo mediante cdrecord:
anita:~# cdrecord dev=0,1,0 fs=16m /mnt/imagen.iso
Con esta orden le hemos indicado al sistema la ubicación de nuestra grabadora,
así como un buffer de grabación de 16MB y también la ubicación
de la imagen ISO.
Algo muy interesante es la posibilidad de grabar sin necesidad de crear
primero imágenes con los ficheros que queremos meter en un CD-ROM; esto nos
ahorrará tiempo (y sobre todo, espacio en disco) a la hora de realizar
copias de seguridad, además de permitir una mayor automatización del
proceso. Para ello, debemos calcular con mkisofs el espacio que ocupan los
ficheros a grabar (con la opción `-print-size'), y posteriormente
pasarle este valor a cdrecord; podemos hacerlo de forma automática,
por ejemplo tal y como muestra el siguiente programa:
anita:~# cat `which graba-cd`
#!/bin/sh
# Vuelca el directorio pasado como parametro, y todos sus descendientes,
# en un CD-ROM
MKISOFS=/usr/local/bin/mkisofs
CDRECORD=/usr/local/bin/cdrecord
if (test $# -lt 1); then
echo "Usage: $0 /files"
exit
fi
size=`$MKISOFS -r -J -l -print-size -f $1 2>&1|tail -1|awk '{print $8}'`
nice --20 $MKISOFS -r -J -l -f $1 | nice --20 $CDRECORD dev=0,1,0 fs=16m\
tsize=$size*2048 -eject -
anita:~#
Como vemos, se asigna el tamaño de los datos a grabar a la variable `size', y después se pasa este número a cdrecord; de esta forma,
para
realizar una copia de seguridad de un directorio como /export/home/toni/,
no tenemos más que ejecutar el shellscript pasándole el nombre de
este directorio como parámetro.
Siguiente: Políticas de copias de
Subir: Algunas órdenes para realizar
Anterior: La orden cpio
Índice General
2003-08-08