Вы находитесь на странице: 1из 35

GESTIN

DE UNIDADES DE
ALMACENAIENTO

Ernesto Prez (autor textos 2005-2008)


Ricardo Ortega (redaccin
diseo grfico 2010)

de

textos

http://aula.virtualepn.edu.ec
infovirtual@cec-epn.edu.ec

Capacitacin en Modalidad Virtual


Administracin Linux I, Gestin de unidades de almacenamiento
Ricardo Ortega

Levantamiento de texto 2008: Ernesto Prez


Redaccin de textos 2010: Ricardo Ortega

Registro de derecho autoral: en trmite


ISBN de este volumen: en trmite
Depsito Legal: en trmite
Publicado en http://aula.virtualepn.edu.ec desde Abril 2008

CENTRO DE EDUCACIN CONTINUA


ESCUELA POLITCNICA NACIONAL
DIRECCIN DE CAPACITACIN Y CONSULTORA
CAPACITACIN EN MODALIDAD VIRTUAL
Quito Ecuador

ADMINISTRACIN DE LINUX I
Gestin de unidades de almacenamiento
Material para la modalidad virtual
Master Ricardo B. Ortega O.

www.ricardoortega.com

Objetivos del captulo 5


Entender el uso de utileras para el manejo de unidades de almacenamiento en Linux.
Aprender a distinguir los diferentes tipos de discos
Aprender a montar y desmontar los diferentes dispositivos
Aprender a aadir y eliminar las particiones
Aprender distintas maneras de sacar respaldos en Linux

Prerrequisitos para el captulo 5


Tener instalado y funcionando un computador con Linux CENTOS
Tener instalado y funcionando un software de virtualizacin para practicar el particionamiento o en
su defecto, disponer de un computador con espacio libre para practicar el particionamiento
Conocer los comandos bsicos de Linux
Conocer el uso de un editor de texto

Recursos necesarios para el captulo 5


Un computador con Linux CENTOS instalado y funcionando
Un computador (real o virtual) para practicar el particionamiento
Distintos dispositivos para pruebas (flash memory, floppy, cd, etc.)

Recomendaciones para el captulo 5


LINUX CENTOS Nos limitaremos a explicar el funcionamiento de CENTOS. Las pruebas en otras
distribuciones quedan a su propia cuenta y riesgo.
MODO TEXTO a menos que se indique otra cosa, todos los comandos se deben escribir desde una
sesin de bash desde el usuario root. Si se dice escriba fdisk -l se est diciendo precisamente eso:
desde el bash, escriba ese texto (tal como est escrito) y presione ENTER.
LEA LOS MENSAJES: Observe los mensajes que le aparecen. No pase por alto los mensajes de error.
La mayora de usuarios no lee los mensajes y cuando se le pregunta qu deca el mensaje la
respuesta es no s, nunca leo los mensajes. Por supuesto que esa actitud no es propia de aspirantes
a administradores de redes.

Contenidos del captulo 5


3

OBJETIVOS DEL CAPTULO 5.................................................................................................................................... 3


PRERREQUISITOS PARA EL CAPTULO 5 ............................................................................................................. 3
RECURSOS NECESARIOS PARA EL CAPTULO 5 ................................................................................................ 3
RECOMENDACIONES PARA EL CAPTULO 5 ....................................................................................................... 3
CONTENIDOS DEL CAPTULO 5 ............................................................................................................................... 3
5.1 TIPOS DE ALMACENAMIENTO ........................................................................................................................... 4
5.1.1 ATENCION ........................................................................................................................................................ 4
5.1.2 Conceptos generales .......................................................................................................................................... 5
5.1.3 Tipos de almacenamiento .................................................................................................................................. 5
5.1.4 Discos mecnicos............................................................................................................................................... 5
5.1.5 Dispositivos no mecnicos ................................................................................................................................. 6
5.1.6 Unidades de cinta .............................................................................................................................................. 7
5.1.7 Discos extrables ................................................................................................................................................ 7
5.2 CONOCIENDO LAS UNIDADES ............................................................................................................................ 8
fdisk l......................................................................................................................................................................... 8
mount .......................................................................................................................................................................... 8
archivo /etc/fstab ........................................................................................................................................................ 9
Otros ......................................................................................................................................................................... 10
5.3 MONTAR Y DESMONTAR DISPOSITIVOS ....................................................................................................... 10
5.3.1 Comando mount ............................................................................................................................................... 10
5.4 AADIR/ELIMINAR PARTICIONES .................................................................................................................. 12
5.5 CHEQUEAR EL DISCO.......................................................................................................................................... 18
5.6 COMPRENSIN DE ARCHIVOS ......................................................................................................................... 19
5.7 TRABAJO CON IMGENES Y CD ...................................................................................................................... 21
5.8 RESPALDOS CON TAR Y STAR ........................................................................................................................... 27
5.9 PLANIFICAR Y REALIZAR RESPALDOS ......................................................................................................... 31

5.1 Tipos de almacenamiento


5.1.1 ATENCION
En esta parte del curso aprenderemos a realizar tareas potencialmente destructivas y/o dainas para la
informacin guardada en su disco o en su unidad de almacenamiento. Por ello, debe leer todo con atencin
y realizar cada paso con cautela.
Se recomienda que las labores de prueba no se realicen en el disco duro de la mquina sino en un pendrive
o flash. Se recomienda que las labores de compresin se hagan con archivos y/o directorios creados por
Ud. mismo, para evitar el riesgo de borrar informacin del sistema o de otros usuarios.
Si no se tiene un archivo o directorio para probar, es necesario crearlo. Mediante el open office o el vi se
debe crearse uno o varios archivos para realizar las pruebas; los contenidos no importan en un principio,
sino el hecho de que existan archivos y directorios.
No busque las letras A: B: C: D: etc. en Linux. No existe tal cosa. Los distintos dispositivos se montan y se
desmontan sobre cualquier directorio, aunque generalmente se montan dentro de /mnt o /media. Recuerde
que Linux tiene una sola estructura de rbol. Todas las unidades de almacenamiento estn dentro del rbol
4

raz / y se montan dentro de esta estructura. Montar una unidad significa dejar preparado para el uso del
sistema. Ms detalles a continuacin.

5.1.2 Conceptos generales


El uso de utileras para el manejo de unidades de almacenamiento es algo totalmente necesario a la hora
de trabajar con un servidor Linux.
Esto, sin duda, va ms all de montar particiones o sacar respaldos. De hecho, existen muchsimas utileras
que permiten tambin optimizar los accesos al disco, as como herramientas para particionar o reparticionar
discos, y para chequearlos, formatearlos, etc.
Ahora bien, no solamente se debe pensar en la unidad de almacenamiento como un disco duro; tambin las
unidades de almacenamiento comprenden, por ejemplo, las unidades de floppy, dispositivos USB para
mass storage (de almacenamiento masivo o a gran escala) y, sobre todo, las cintas para realizar respaldos.

5.1.3 Tipos de almacenamiento


Linux puede manejar varios tipos de almacenamiento
Discos mecnicos
Dispositivos no mecnicos
Unidades de cinta
Discos extrables (floppies).
Unidades pticas (CD, DVD, CD-RW, DVD-RAM, DVD-R, etc)

5.1.4 Discos mecnicos


Los discos mecnicos son aquellos que se componen de uno o varios platos metlicos donde se escribe y
se lee la informacin. Estos platos rotan a cierta velocidad y uno o varios brazos mecnicos dotados de
cabezas lectoras/escritoras se ocupan de acceder a los platos rotatorios y leer o escribir la informacin.
Existen varios tipos de discos mecnicos, normalmente conocidos por su controladora y tasa de
transferencia. Entre los ms populares al momento estn:
Discos IDE o PATA (Parallel ATA)
Discos SATA (Serial ATA o Serial Advanced Technology Attachment)
Discos SCSI (Small Computer System Interface Parallel)
Discos SAS (Serial Attached SCSI)
Bsicamente, la tecnologa mecnica subyacente es muy similar, slo que se diferencian por la forma en
que la informacin es transferida del disco hacia el procesador y hacia la memoria.
Los discos SCSI tienen la virtud de ser extremadamente rpidos en trminos de capacidad de rotacin;
adems, la tasa de transferencia es extremadamente alta (actualmente llegan a 6 Gigabits por segundo), lo
que hace que, para aplicaciones que requieren de mucha E/S, estos discos sean extremadamente
apetecidos. Por otro lado, estos discos no consumen tiempo del procesador del sistema porque tienen un
procesador incluido en el disco mismo as que permite que se independicen del uso o no que se est dando
al procesador y acelera todo el proceso. El punto negativo de estos discos es el costo: un disco SCSI vale
lo que rinde, y rinde mucho!
Los discos ms conocidos al momento y ms usados por el mundo en general son los discos SATA (Serial
ATA). Hasta el ao 2007 los discos ms usados eran los discos IDE (o PATA, que significa Parallel ATA).
Los discos SATA tienen tasas de transferencia de entre 33MB/s a 3 Gigabits por segundo. Sin embargo, en
realidad, no todo es la tasa de transferencia; los discos IDE y SATA consumen interrupciones del
procesador por lo que generan cuellos de botella relacionados con el uso de la CPU.

SATA no solamente es ms rpido que los discos ATA, sino que es comparablemente igual de rpido que
los discos SCSI ms comunes y estn sobrepasando a los SCSI ms comunes. Usa una tecnologa que,
tcnicamente, consume mucha menos energa y, sobre todo, el precio es muy cmodo.

SATA I

SATA II SATA III

Frecuencia

1500 MHz 3000 MHz 6000MHz

Bits/clock

Codificacin 8b10b

80%

80%

80%

bits/Byte

Velocidad real

150 MB/s 300 MB/s 600 MB/s

Esto significa que se pueden formar arreglos de discos SATA sin problemas de rendimiento, y a costos muy
convenientes.
Los discos SATA son soportados directamente por el kernel 2.6 y superiores, esto es, toda la serie de
CENTOS 5.x y RHEL 5.x en adelate. Esto es importante ya que muchas personas todava intentan instalar
Red Hat 7, una versin del ao 2002 que tiene un kernel 2.2 que por supuesto, no trabaja con discos SATA.
Un dato importante de recordar es que los discos IDE se identifican con las siglas hd (de hard disk). En el
directorio /dev se encontrarn nombres ya establecidos como hda (Primario Master), hdb (Primario
Esclavo), hdc (Secundario Master) y hdd (Secundario Esclavo), mientras que el resto de discos no IDE se
identifican con las siglas sd (de SCSI disk) ya que el controlador SCSI (el device driver de Linux) es el
encargado de manejar no solo los discos SCSI sino tambin los SATA, USB, SD, etc. Y esto es afortunado,
ya que terminaramos con una gran cantidad de siglas, mientras que ahora nos limitamos a dos: hd para
tecnologas IDE y sd para el resto de tecnologas.
Si los discos IDE tienen sus nombres preestablecidos, no sucede lo mismo con los dems discos, por lo que
en un momento dado su memoria flash ser sdb, pero en otro momento podr ser sdc, sdd, sde, etc.
dependiendo de los dispositivos SCSI, SATA, USB, SD que tenga instalados en el sistema.
El primer dispositivo SCSI, SATA, USB, SD ser entonces sda, el segundo que se conecte ser sdb y as
sucesivamente.
Recuerde que la primera particin del dispositivo ser 1, esto es, sda1. La segunda (si es que existe) ser
sda2, y as sucesivamente.
Recuerde que todo disco duro debe tener al menos una particin, as que siempre habrn dos entradas: sda
para el disco duro completo (todos los sectores, incluyendo el MBR) y sda1 que corresponde a la particin
1, excluyendo el MBR e incluyendo todos los sectores de la primera particin.
Todos los dispositivos de almacenamiento reconocidos por Linux requieren un proceso de montaje y
desmontaje, que se traduce en los comandos mount y umount (ojo, NO es unmount sino umount) y
opcionalmente se describen en el archivo /etc/fstab (file system table) para que se monten automticamente
al arrancar el sistema.
Los RAIDS y LVMS sern estudiados en el siguiente mdulo. En este captulo trataremos de los discos
independientes.

5.1.5 Dispositivos no mecnicos


Estos son nuevas o viejas tcnicas de almacenamiento que se han ido abaratando con el tiempo. Son las
llamadas Compact Flash (CF) que son discos duros que soportan cientos de miles de escrituras sin
daarse, as como, cantidades casi infinitas de lecturas.
6

Estos discos tienen la peculiaridad de que consumen muy baja energa, al no tener motores que muevan
sus partes mviles, adems de que son extremadamente compactos. Adems, al no tener partes mviles,
estos dispositivos no se rompen debido a cadas o fallas en sus mecanismos. Son dispositivos que en
cuanto se empiecen a usar, trabajarn por mucho tiempo mientras sus componentes de grabacin estn en
la capacidad de seguir almacenando nuevos datos.
Los discos CF tienen varios nombres y variantes: SD, Mini SD, micro SD, pendrives, USBdrives, etc. y que
son muy usados en cmaras digitales, pues, son pequeos y almacenan informacin sin depender de
golpes o cadas.
Estos dispositivos tienen una desventaja y es que normalmente son un poco ms caros que sus
contrapartes mecnicas. Adems estn limitados por la velocidad del puerto al cual se conectan,
tpicamente USB (1.1 transmite a 11 Megabits por segundo) mientras que USB 2.0 trasmite a 400 Megabits
por segundo. Esto significa que un disco SATA de 1.5 Gigabits ser casi cuatro veces ms rpido que un
disco USB 2.0
Sin embargo, esta tecnologa no mecnica se usa mucho para sistemas embebidos, que requieren de
partes no mviles y de bajo consumo.
Los sistemas Linux soportan lecturas y escrituras de dispositivos no mecnicos de forma totalmente natural.
Linux ve estos dispositivos como si fueran un dispositivo SCSI y se puede leer y escribir en ellos como se
escribe en cualquier disco mecnico, usando las siglas sd (dentro del directorio /dev).

5.1.6 Unidades de cinta


Es una de las tecnologas ms viejas que existen para almacenar informacin y sigue siendo usada por
muchas empresas. Mayormente, los dispositivos de cinta estn estandarizados y se manejan a travs de un
dispositivo del sistema Linux llamado: /dev/st0
Las unidades de cinta son muy tiles para guardar respaldos, ya que son capaces de almacenar cantidades
realmente grandes de informacin y el costo por GB, asociado con ellas, es ms bajo que mantener un
disco para hacer respaldos. Adems, las cintas pueden cambiarse y moverse de lugar a conveniencia lo
que normalmente permite guardar los respaldos en otros lugares separados de los servidores.
Las unidades de cinta tienen varias desventajas, la mayor de ella es que no mantienen un filesystem; es
decir, los datos se escriben en ellas unos detrs de los otros y normalmente es necesario saber qu se ha
escrito para poderlo recuperar. Adems, son muy lentas comparadas con las escrituras en un disco y
tambin tienden a fallar con el tiempo, as que NO se confe. La vida til de una cinta se mide en meses.

5.1.7 Discos extrables


Son bsicamente los discos floppies; esos antiguos aliados que al momento estn quedando en desuso,
pero tambin podemos ver como discos extrables a sus nuevos hermanos, los discos CDROM y DVD que
permiten almacenar muchsima informacin comparado con los floppies.
Aunque los CDs y DVDs son un medio muy bueno para almacenar la informacin tambin se caracterizan
por ser ms susceptibles a los fallos que los discos mecnicos o no mecnicos, as como que las unidades
de cinta. Sobre todo porque tienen expuesta la informacin directamente a las inclemencias del tiempo (sol,
lluvia, agua, araazos, etc.). Sin embargo se puede afirmar que es una forma confiable de trasladar la
informacin, e incluso, de almacenarla si se toman las debidas precauciones, ya que un CD o DVD tiene en
teora una vida til de 100 aos (bueno, nadie lo ha comprobado, pero eso dice la teora).
Linux tambin es capaz de manejar estos dispositivos extrables. En general, virtualmente, cada dispositivo
de almacenamiento es manejable mediante Linux.

Se debe recordar que Linux no slo maneja mucha variedad de hardware referente a los dispositivos
extrables, sino que tambin entiende los diferentes formatos conque estos pueden estar inicializados, de
forma tal, que desde Linux se pueden leer particiones FAT12, FAT16, FAT32, NTFS, as como una gran
variedad de sistemas existentes en el mercado.

5.2 Conociendo las unidades


fdisk l
Muestra la informacin de discos y particiones

Se puede mirar que el disco sda de 12GB tiene dos particiones, la primera de 100MB (104391 bloques de
1k) y la segunda de 12GB (12474472 bloques de 1k).
Linux maneja los discos duros en bloques de 1Kbyte, es decir dos sectores de 512 bytes, o 1024 bytes.
Otra mquina:

Se puede mirar que el disco sda de 21GB tiene dos particiones, la primera de 100MB (104391 bloques de
1k) y la segunda de 20GB (20860482 bloques de 1k). La segunda particin es un LVM del cual se hablar
en el Mdulo 2.

mount
El comando mount sin argumentos nos permite mirar los puntos de montaje en cada dispositivo

Mire cmo el dispositivo /dev/sda1 est asignado al directorio /boot


Y /dev/sda2 est asignado al directorio raz

En este sistema, /dev/sda1 est asignado a /boot (100MB) y lo que debera ser /dev/sda2 est formando un
LVM en /dev/mapper/VolGroup00-LogVol00 para el directorio raz.

archivo /etc/fstab

Contenido de un archivo fstab en una maquina virtual con vmware.

La estructura de fstab es de 6 columnas separadas por espacios o tabuladores.[1]


<dispositivo> <punto_de_montaje> <sistema_de_archivos> <opciones> <dump-freq> <pass-num>

<dispositivo> es el directorio lgico que hace referencia a una particin o recurso.


<punto_de_montaje> es la carpeta en que se proyectaran los datos del sistema de archivos.
<sistema de archivos> es el algoritmo que se utilizar para interpretarlo.
<opciones> es el lugar donde se especifica los parmetros que mount utilizar para montado el
dispositivo, deben estar separadas por comas. Pueden consultarse aqu.
<dump-freq> es el comando que utiliza dump para hacer respaldos del sistema de archivos, si es
cero no se toma en cuenta ese dispositivo.
<pass-num> indica el orden en que la aplicacin fsck revisar la particin en busca de errores
durante el inicio, si es cero el dispositivo no se revisa.
Luego de defaults se acostumbra agregar ,usrquota,grpquota sin comillas y sin espacios, para activar
cuotas de disco en cada particin.
Luego de defaults se suele poner ,noatime sin comillas para acelerar el rendimiento del computador
cuando no nos interesa que se actualice la fecha y la hora de acceso de cada archivo (un proceso que
consume bastante tiempo).

Otros

Para ver mayor informacin sobre un LVM se puede usar el comando vgs como se indica aqu arriba.

5.3 Montar y desmontar dispositivos


5.3.1 Comando mount
El comando mount permite acceder a un dispositivo (o particin) de almacenamiento. Al no existir el
concepto de unidades (letras A: B: C: D: etc.) en Linux, se debe previamente "montar" el dispositivo antes
de acceder a l. Y desmontarlo (expulsarlo) cuando ya no se lo necesita.
En las versiones modernas de Linux, el proceso de montaje y desmontaje de memorias flash y dispositivos
USB ocurre de forma bastante automtica, gracias a los servicios automount y pcscd. Esto significa que
mientras estn activos esos dos servicios, no necesitar montar los dispositivos, y podr desmontarlos
fcilmente con un clic derecho.

10

Como ejemplo pongamos una memoria flash en el computador. A los pocos momentos todos pudieron ver
una ventana del navegador donde muestra el contenido de la memoria flash.

En efecto, al final se ve como dice: "1.9GB Removable"; esta es la flash que acaban de introducir. A la
derecha (respaldo*, reporteaeci, gparted, dsl) se ven los contenidos de la flash de forma visual.
Se puede verificar mediante el comando mount sin argumentos.
Como se ve, est montada en /media/disk y si se entra en /media/disk se vern los mismos contenidos que
se miran en modo grfico. Tambin, se puede determinar que la flash se llama: /dev/sdcl y est formateada
en tipo vfat
Para poder extraer un dispositivo, primeramente se indic al personal de laboratorios que deba
desmontarlo. Esto se puede hacer va grfica: sobre el nombre del dispositivo se puede dar: Clic derecho y
escoger la opcin que dice: Unmount (Desmontar).
Una vez que hayan escogido desmontar, probaran nuevamente poner: mount:
Todos pudieron verificar que su flash ya no estaba montada.
Adems, se pueden montar y desmontar dispositivos mediante lnea de comando. Por ejemplo, si uno sabe
que su flash es /dev/sdc1 puede montarla manualmente:
Eso, ejecuta: mount /dev/sdc1 /mnt y se mont la flash (/dev/sdc1) en el directorio /mnt
Esto se verifica ejecutando "mount" al finalizar de montar.
Si se quiere desmontar un dispositivo desde la lnea de comando, se puede hacer mediante el nombre del
dispositivo o mediante el directorio donde est montado. Por ejemplo, para desmontar la flash anteriormente
montada se puede usar uno de estos dos comandos:

umount /mnt

umount /dev/sdc1
11

Ser ve que, al desmontar un dispositivo, ya no aparece la informacin.


Recomendaciones:

nunca sacar una flash sin desmontar ya que al desmontar se vacan los buffers de grabacin

no se puede desmontar un dispositivo si est en uso, por ejemplo estamos dentro del directorio del
dispositivo. Es decir, debemos salir del directorio del dispositivo para desmontarlo.

Si no sabemos en qu dispositivo est nuestra flash o disco externo, podemos ejecutar: fdisk -l

Otros dispositivos de inters:

/dev/dvd : dvd

/dev/cdrom : cdrom

/dev/fd0 : floppy

5.4 Aadir/eliminar particiones


Mientras que la mayora de los pasos necesarios para aadir o eliminar unidades de almacenamiento
dependen ms en el hardware del sistema que en el software, hay aspectos del procedimiento que son
especficos a su entorno operativo. En esta seccin los expositores explicaron los pasos necesarios para
aadir o eliminar almacenamientos que son especficos a RHEL (CentOS). Por supuesto, los expositores
puntualizaron que la unidad que est siendo agregada debe estar correctamente instalada a nivel de
hardware.

5.4.1 Aadir almacenamiento


El proceso de aadir almacenamiento a un sistema Linux es relativamente directo. He aqu los pasos:

Particionar

Formatear la particin(es)

Actualizar /etc/fstab

5.4.2 Particionar
Una vez instalado el disco duro, es hora de crear una o ms particiones para hacer el espacio disponible a
Linux.
Hay ms de una forma de hacer esto:

Usando el programa de lnea de comandos fdisk

Usando parted, otro programa utilitario de lnea de comandos

Usando la distribucin GParted

Aunque las herramientas pueden ser diferentes, los pasos bsicos son los mismos. En el ejemplo siguiente,
se incluyen los comandos necesarios para efectuar estos pasos usando fdisk:

Definir a qu unidad de almacenamiento se proceder a particionar. Se puede usar el comando:


12

fdisk -l

Al determinar la unidad de almacenamiento que se quiere particionar se procede a llamar el fdisk


indicndole a qu disco se quiere llegar. En este ejemplo ser: /dev/hda:

fdisk /dev/hda

Revisar la tabla de particiones de la unidad para verificar que la unidad a particionar es, en realidad,
la correcta. En el ejemplo que los expositores pusieron al equipo de "Mentes Libres", fdisk muestra la
tabla de particin usando el comando p:

Command (m for help): p


Disk /dev/hda: 255 heads, 63 sectors, 1244 cylinders Units = cylinders of
16065 1 512 bytes
Device Boot Start End Blocks Id System /dev/hda1 2 1 17
136521 83 Linux /dev/hda2 18 83 530145 82 Linux swap
/dev/hda3 84 475 3148740 83 Linux /dev/hda4 476 1244
6176992+ 83 Linux
Este ejemplo indica que se tienen 4 particiones (hda1 hasta hda4). La primera mide 136MB; la segunda,
530MB; la tercera, 31GB; y la ltima, unos 61GB. Todas menos hda2 son de tipo Linux. hda2 es de tipo
Linux SWAP

Borrar cualquier particin no deseada que pueda existir en la nueva unidad de disco. Esto se hace
usando el comando d en fdisk:
Command (m for help): d Partition number (1-4):
1

El proceso debe repetirse para todas las particiones no deseadas presentes en el disco. En nuestro
ejemplo: hay que borrar todas las particiones.

Crear la(s) nueva(s) particin(es), asegurndose de especificar el tamao deseado y el tipo de


sistemas de archivos. Usando fdisk, esto es un proceso de dos pasos : primero, se crea la particin
(usando el comando n):
Command (m for help): n Command action e
extended
p primary partition (1-4)

1 Es muy importante no cometer errores en este proceso. El fdisk, una vez grabados los cambios, es
destructivo y si uno se equivoca de unidad de almacenamiento los datos se pueden perder.
2 Es muy importante no cometer errores en este proceso. El fdisk, una vez grabados los cambios, es
destructivo y si uno se equivoca de unidad de almacenamiento los datos se pueden perder.

13

p
Partition number (1-4): 1 First cylinder (1767): 1
Last cylinder or +size or +sizeM or +sizeK: +512M

Segundo, se configura el tipo de sistema de archivos (usando el comando t):


Command (m for help): t Partition number (1-4): 1 Hex
code (type L to list codes): 82

El tipo de particin 82 representa una particin Linux swap.

Si no se desea guardar los cambios, se puede salir del programa de particionamiento fdisk con el
comando: q < - - USAR ESTA OPCION PUES ESTAMOS PROBANDO SOLAMENTE.

Si se desea, se puede guardar los cambios y salir del programa de particionamiento. Esto se hace
en fdisk ejecutando w:

Command (m for help): w


5.4.2.2 Formatear la particin
El formateo de particiones bajo Linux se hace usando el programa de utilidades mkfs. Sin embargo, mkfs en
realidad no hace el trabajo de escribir la informacin especfica del sistema de archivos en el disco; lo que
hace es pasar el control a uno de los muchos programas que crean el sistema de archivos.
Los expositores puntualizan que este es el momento de observar la pgina man de mkfs.<fstype> para el
sistema de archivos que se ha seleccionado. Por ejemplo: ver la pgina man de mkfs.ext3 para revisar las
opciones disponibles durante la creacin de un sistema de archivos ext3.
En general, los programas mkfs.<fstype> suministran valores por defecto razonables para la mayora de las
configuraciones; sin embargo, he aqu algunas de las opciones que los administradores de sistemas
cambian ms a menudo y que el personal de laboratorio de "Mentes Libres" debe tener en cuenta:

Configuran una etiqueta de volumen para su uso posterior en /etc/fstab

En discos duros muy grandes, configuran un porcentaje ms pequeo de espacio reservado para el
sper-usuario

Configuran un tamao de bloque no estndar y/o bytes para las configuraciones de inodos, que
deben soportar tamaos de archivos muy grandes o muy pequeos

Verifican por bloques daados antes de formatear

Personalmente, los expositores dijeron que preferan llamar directamente a la utilera de formateo deseada.
Por ejemplo, para formatear una particin con el FS tipo ext3, se debe ejecutar el comando:
mkfs.ext3 /dev/hda3 _______________________________________________________
ATENCION: ESTE COMANDO DESTRUIR TODA LA INFORMACIN CONTENIDA EN LA PARTICIN
/dev/hda3. NO LO USE SI NO QUIERE PERDER
LA INFORMACIN.

14

El comando mkfs.ext3 permite especificar algunos parmetros adicionales (ver la pgina manual para una
lista extensa de opciones). De los cuales los ms usados son:
-m# : Porcentaje del disco reservado para el sper usuario. El valor por defecto es el 5%, es decir, el 5% del
disco se reservar para el sper usuario del sistema y no podr ser usado por ningn otro usuario.
Normalmente se haca para evitar que un disco se llenara y que el sper usuario mientras tanto no pudiera
hacer operaciones de respaldo, copia de informacin etc. Los expositores explicaron que al momento esto
ya no es algo comn. Si un disco se llena, al menos la informacin se puede sacar al vuelo hacia otra
mquina por la red y no se requiere limitar el espacio en disco... pues de esta forma slo el 95% del disco
estara disponible para usarse por todos los usuarios. Normalmente hay que especificar 0, lo que quiere
decir 0% reservado para el sper usuario.
-N#: Nmero de inodos que sern creados para esta particin. Los inodos se calculan normalmente en una
relacin de 1 inodo por cada 4kb de espacio en disco. De forma tal, que un disco de 80GB consumir algo
as como 80 * 1024M *1024K / 4k, o lo que es lo mismo: 83886080 / 4 = unos 21 millones de inodos. Uno de
los asistentes pregunto: "Realmente se usarn 21millones de inodos para mi disco?".
La respuesta de los expositores fue:
"Bueno, esto depende de las caractersticas de nuestro sistema, puede que sean mucho menos, puede que
sean mucho ms. En todo caso, la tabla de inodos tambin consume espacio, lo que hace que, mientras
ms inodos creemos para una particin determinada, menos espacio podremos dedicar a almacenar
informacin. Por ejemplo, si tenemos una flash de 128mb, nuestro Linux formateara la flash con 32768
inodos (128 * 1024k / 4k) guardaremos en esta flash 32768 archivos? Lo dudo realmente. Lo normal es
que una flash guarde digamos 10, 100, 2000 archivos... entonces para qu gastar espacio creando inodos
que nunca usaremos? Es aqu que entra la N, podemos decirle al mkfs que formatee nuestra particin con
1000 inodos por ejemplo. Y todo el resto del espacio en disco lo podemos aprovechar para guardar ms
informacin".
Un ejemplo del uso de switches:
mkfs.ext3 -m0 -N128 /dev/hda1 ______________________________________________
Qu se hizo aqu? Se le indic que no guarde ningn espacio en disco para el sper usuario (es decir todo
el disco lo podrn usar tanto usuarios, como sper usuarios) y que slo cree 128 inodos.
Uno de los asistentes del personal del laboratorio pregunt asombrado:
- "Por qu tan pocos inodos?"
La respuesta de los expositores fue contundente:
- "Pensemos en /boot: la particin que dedicamos a /boot cuntos archivos se guardan en ella?
Cuntenlos: normalmente no pasan de 15... 128 an es un nmero grande para mi /boot, y tengo la
oportunidad de aprovechar hasta el ltimo byte en espacio en disco en vez de desperdiciarlo con inodos que
posiblemente nunca usar".
-c : Manda al sistema a formatear la particin pero le pide que chequee clusters malos y los marque. Es un
proceso muy lento, y normalmente no se usa. Los expositores especificaron que puede tardar de 12 a 48
horas en terminar de chequear realmente contra clusters malos.
mkfs.msdos Permite crear una particin con formato fat16 (til para las flash) y mkfs.vfat permite crear
particiones fat32 que podrn ser ledas por Windows. Es decir, s se puede formatear particiones de DOS
desde Linux sin mayor inconveniente y sin tener que instalar Windows.
Una vez creados los sistemas de archivos en todas las particiones apropiadas, la unidad de disco estar
configurada adecuadamente para su uso.

15

Luego, recalcaron los expositores, siempre es bueno volver a verificar su trabajo manualmente montando la
particin(es) y asegurndose de que est en orden. Una vez que todo est verificado, es el momento de
configurar su sistema Linux para que monte automticamente el nuevo sistema de archivos durante el
arranque.

5.4.2.3 Actualizar /etc/fstab


Como se describi anteriormente, primero hay que aadir las lneas necesarias a /etc/fstab para asegurarse
de que se monte el nuevo sistema de archivos cuando arranque el sistema. Una vez actualizado /etc/fstab,
hay que probar el trabajo ejecutando un comando "incompleto" de mount, especificando solamente el
dispositivo o punto de montaje. El grupo del personal quiso que los expositores aclararan este punto con un
ejemplo. Los expositores les dijeron que es suficiente usar algo similar a alguno de los comandos
siguientes:
mount /home mount /dev/hda3
(Hay que reemplazar /home or /dev/hda3 con el punto de montaje o dispositivo para su situacin
especfica.)
Si la entrada correspondiente en /etc/fstab es correcta, mount obtiene la informacin faltante desde el
archivo y completa la operacin de montaje.
En este punto uno puede estar confiado de que /etc/fstab est configurado correctamente para montar
automticamente el nuevo almacenamiento cada vez que el sistema arranca. Los expositores aconsejaron
que si uno se puede permitir un reinicio rpido, debe hacerlo; puesto que no hace dao: simplemente
permite estar an ms seguros de que todo funciona correctamente.

5.4.3 Eliminar Almacenamiento


El proceso de eliminar almacenamiento desde un sistema Linux es relativamente directo. He aqu los pasos
especficos:

Eliminar las particiones de disco desde /etc/fstab

Desmontar las particiones activas del disco

Borrar los contenidos de la unidad de disco

Los expositores anunciaron que las secciones siguientes cubran estos tpicos en ms detalles, paso a
paso. Todos se fueron a tomar un caf y al volver, los expositores repartieron unas hojas en las que cada
punto estaba descrito paso a paso.
5.4.3.1 Eliminar las particiones de disco desde /etc/fstab
Usando el editor de texto de su preferencia, elimine la(s) lnea(s) correspondiente(s) a la(s) particin(es) de
disco desde el archivo /etc/fstab. Puede identificar las lneas correctas por alguno de los mtodos
siguientes:

Haciendo corresponder los puntos de montaje con los directorios en la segunda columna de
/etc/fstab

Haciendo corresponder el nombre del archivo de dispositivo con el nombre de archivo en la primera
columna de /etc/fstab

16

5.4.3.3 Terminar el acceso con umount


Luego, se deben terminar todos los accesos. Para particiones con sistemas de archivos activos en ellas,
esto se hace con el comando umount. Si una particin swap existe en el disco, se debe desactivar con el
comando swapoff o se debe reiniciar el sistema.
Desmontar las particiones con el comando umount requiere que usted especifique el nombre de archivo de
dispositivo, o el punto de montaje.
umount /dev/hda2 umount /home

Solamente se puede desmontar una particin si sta no se encuentra en uso. Si la particin no se puede
desmontar mientras se encuentra en el nivel de ejecucin normal, arranque en modo de rescate y elimine la
entrada de la particin de /etc/fstab.
Cuando utilice swapoff para desactivar el swapping en una particin, debe especificar el nombre de archivo
de dispositivo representando la particin swap:
swapoff /dev/hda4
Si no puede desactivar el swapping usando swapoff, arranque en modo de rescate y elimine la entrada de la
particin desde /etc/fstab.

5.4.4 Borrar los contenidos de la unidad de disco


Borrar los contenidos desde una unidad de disco bajo Linux es un procedimiento directo.

Despus de desmontar todas las particiones del disco, ejecute el comando siguiente (conectado como root):

badblocks -ws <device-name>


Donde <device-name> representa el nombre del archivo de la unidad de disco que desea borrar,
excluyendo el nmero de la particin. Por ejemplo, /dev/hdb para la segunda unidad ATA.
Se muestra la salida siguiente mientras se ejecuta badblocks:
Writing pattern 0xaaaaaaaa: done Reading and
comparing: done Writing pattern 0x55555555: done
Reading and comparing: done Writing pattern 0xffffffff:
done Reading and comparing: done Writing pattern
0x00000000: done Reading and comparing: done
Tenga en mente que badblocks, en realidad, est escribiendo cuatro patrones de datos diferentes a cada
bloque en la unidad de disco. Para las unidades grandes, este proceso puede tomar un largo tiempo a
menudo varias horas.

17

ESTE PROCESO ES DESTRUCTIVO. Precisamente el fin que se persigue es el de destruir totalmente la


informacin del disco con el objetivo de que futuros usuarios no puedan obtener ningn dato potencialmente
sensitivo en l.
El proceso de destruccin nos parece bastante seguro; sin embargo hacemos notar que su empresa o
compaa puede tener otros procesos de destruccin de datos diferentes de los nuestros. El uso de nuestro
proceso no debe, bajo ningn motivo, obviar el procedimiento dictado a seguir para el caso de su empresa o
compaa y el ignorar este proceso por parte de usted le puede traer severas consecuencias.
Los asistentes del personal del laboratorio se miraron mutuamente y se aseguraron de que siempre tendran
mucho cuidado, porque ninguno quera perder su trabajo en "Mentes Libres".
Los expositores explicaron que otra forma de eliminar la informacin en una particin es usando el comando
shred:

shred -n 2 -v /dev/hda
ejecutar dos iteracciones (-n 2) copiando datos aleatorios en toda la particin. De no especificarse -n, se
ejecutarn 25 iteracciones. As que posiblemente, advirtieron los expositores, ni el ms rudo de los
programas de recuperacin har que los datos se recuperen, pues no quedar ni la sombra, ni el ltimo
hlito de vida de los datos al ser concienzudamente sobrescrito todo /dev/hda (en este caso, usar el
dispositivo que se quieren borrar) por varias veces.
shred tambin sirve para eliminar la informacin de un archivo:
shred /root/miarchivo
har lo mismo pero con los datos de "miarchivo"
Un expositor pidi a los asistentes que miraran un ejemplo de la salida de shred sobre un archivo:
[root@eperez ~]# shred -v freetemp1071.zip
shred: freetemp1071.zip: pass 1/25 (random)... shred:
freetemp1071.zip: pass 2/25 (924924)... shred: freetemp1071.zip:
pass 3/25 (222222)... shred: freetemp1071.zip: pass 4/25
(555555)... shred: freetemp1071.zip: pass 5/25 (bbbbbb)... shred:
freetemp1071.zip: pass 6/25 (249249)... shred: freetemp1071.zip:
pass 7/25 (492492)... shred: freetemp1071.zip: pass 8/25
(333333)...
shred: freetemp1071.zip: pass 9/25 (000000)... shred:
freetemp1071.zip: pass 10/25 (ffffff)... shred: freetemp1071.zip: pass
11/25 (6db6db)... shred: freetemp1071.zip: pass 12/25 (b6db6d)...
shred: freetemp1071.zip: pass 13/25 (random)... shred:
freetemp1071.zip: pass 14/25 (666666)... shred: freetemp1071.zip:
pass 15/25 (111111)... shred: freetemp1071.zip: pass 16/25
(eeeeee)... shred: freetemp1071.zip: pass 17/25 (777777)... shred:
freetemp1071.zip: pass 18/25 (cccccc)... shred: freetemp1071.zip:
pass 19/25 (444444)... shred: freetemp1071.zip: pass 20/25
(db6db6)... shred: freetemp1071.zip: pass 21/25 (aaaaaa)... shred:
freetemp1071.zip: pass 22/25 (999999)... shred: freetemp1071.zip:
pass 23/25 (dddddd)... shred: freetemp1071.zip: pass 24/25
(888888)...
shred: freetemp1071.zip: pass 25/25 (random)... ________________________________
"Qu hice aqu?", pregunt el expositor. "Simple, ejecut el shred en 25 pasos, en cada uno sobrescribi
todos los bytes del archivo seleccionado con diferentes patrones, es decir, cambi bsicamente la
estructura del disco duro varias veces de forma tal que en realidad no pueda ser ledo entre lneas (hay
quien lo hace) y no se pueda obtener nada til."

5.5 Chequear el disco


18

Esta de las utileras ms importantes a la hora de la verdad (esa hora en que realmente uno tiene que
ponerse a trabajar y que es cuando el sistema no levanta).

El fsck permite revisar diferentes tipos de particiones con solamente llamarle indicndole a qu particin nos
referimos:
fsck /dev/hda1 ____________________________________________________________

por ejemplo, chequear la particin 1 del disco IDE mster primario (hda)

fsck SIEMPRE debe ser usado en un disco desmontado, de lo contrario daar los contenidos del
disco.
fsck /dev/sdb5 realizar lo mismo pero para la particin 5ta del 2do disco scsi en una cadena SCSI.

fsck normalmente arregla todas las situaciones, pero si alguna situacin no la pudiera arreglar, hay que
considerar que el disco ha muerto y que hay que reformatearlo, fsck normalmente pregunta si se quiere
realizar todos y cada uno de los arreglos. Los expositores sugirieron que SIEMPRE digamos que s a cada
una de sus preguntas.
Si no quisiramos responder y constantemente (a veces son cientos de veces) podemos llamar al fsck con
el switch -y, por ejemplo:
fsck -y /dev/hdb5 __________________________________________________________
esto revisar hdb5 y asumir yes fca todas sus preguntas.

5.6 Comprensin de archivos


En Linux existen varias formas de comprimir la informacin. Estos diferentes comandos se dividen en dos
tipos:
1. Compresin sin prdida: el que hace que la informacin no se pierda entre compresin y
descompresin.
2. Compresin con prdida: el que s pierde informacin al comprimirla.
La compresin con prdida es cualquier procedimiento de codificacin que tenga como objetivo representar
cierta cantidad de informacin utilizando una menor cantidad de la misma, siendo imposible una
reconstruccin exacta de los datos originales.
La compresin con prdida solo es til cuando la reconstruccin exacta no es indispensable para que la
informacin tenga sentido. La informacin reconstruida es solo una aproximacin de la informacin original.
Suele restringirse a informacin analgica que ha sido digitalizada (imgenes, audio, video, etc...), donde la
informacin puede ser parecida, y al mismo tiempo, ser subjetivamente la misma.
Su mayor ventaja reside en las altas razones de compresin que ofrece en contraposicin a un algoritmo de
compresin sin prdida.
19

Para ver ejemplos de sistemas de compresin con prdida (lossy compression), los expositores sugirieron
ver en wikipedia.
Los expositores aclararon que se centraran en el tema de la compresin sin prdida (lossless
compression). En el cual todo dato que se logre comprimir, se puede descomprimirlo y obtener TODA su
informacin original.
Este tipo de compresin es muy til para cuando se realizan respaldos y copias entre sistemas, y es la que
ms preocupa a los expositores, porque quieren que les quede muy claro al personal de "Mentes Libres".
Para esto se puede usar el comando gzip, gzip es uno de los mejores compresores del mercado, superado
por el bzip2, pero gzip es mucho ms rpido que el bzip2, por lo tanto, mucho ms usado.
Ambos estn presentes en Linux. El comando para comprimir un archivo con gzip sera:
gzip archivo ______________________________________________________________
el gzip no conserva el archivo original, es decir, al terminar de comprimir "archivo" lo borrar y en el disco
nos quedar un "archivo.gz" el cual ser una copia comprimida de ste.

Para el bzip2 se puede usar el mismo formato:


bzip2 archivo _____________________________________________________________
en este caso, tampoco se conservara la copia del archivo.
gzip tiene otros switches interesantes que igual pueden aplicarse al bzip2: ____________
gzip -9 archivo ___________________________________________________________
intentar comprimir el archivo con un rbol de compresin de 9 pisos de profundidad, por lo que lograr una
mayor compresin, a un costo de un mayor consumo de recursos y, por lo tanto, tardar en la compresin.
Por defecto gzip comprime con un nivel 6. La diferencia entre 6 y 9 es poco apreciable en el orden de un 1 a
5% ms de compresin de un archivo. Pero el costo de usar 9 en recursos es muy alto, por lo que slo se
debe usar el -9 si se sabe que la mquina dispone de recursos y no ser afectado el proceso.
Uno de los expositores puso este ejemplo: "Uso el -9 para hacer copias permanentes
(de esas que no abrir en muchos meses) pero nunca lo uso para hacer copias diarias de mis respaldos
pues eso demora mucho".
gzip -d archivo.gz _________________________________________________________
Esto abrir un archivo comprimido con gzip. Tambin podemos usar
gunzip archivo.gz
para descomprimir.
gzip -t archivo.gz __________________________________________________________
Probar la integridad (test) de un archivo comprimido para saber si est bien copiado.
Si no se obtiene respuesta al ejecutar -t, esto es que el archivo est bien. Si dice algo
relativo a crc error, el archivo est mal comprimido y no podremos recuperarlo.
cat archivo | gzip -c - > archivo.gz ____________________________________________
Este comando lo que har ser un cat (vaciado de un archivo) y lo pasar a la entrada
estndar del gzip. Este lo tomar de la entrada estndar (-) y lo mandar hacia la
salida estndar (-c) y en la salida estndar lo redirigiremos a un archivo.
Esta es una forma de conservar el archivo original mientras se comprime.

20

TAREA: Comprimamos un archivo con gzip y con bzip2 sin perder el original. Y verifiquemos cul de los
dos comprimidos es mejor. [root@eperez ~]# mkdir t
[root@eperez ~]# cat Deber1.doc | gzip -9c - > tmp/Deber.doc.gz9 [root@eperez ~]# cat
Deber1.doc | gzip -c - > tmp/Deber.doc.gz [root@eperez ~]# cat Deber1.doc | bzip2 -c - >
tmp/Deber.doc.bz2 [root@eperez ~]# cd tmp [root@eperez tmp]# ll total 24
-rw-r--r-- 1 root root 6806 Aug 16 19:19 Deber.doc.bz2 -rw-r--r-- 1 root root
6335 Aug 16 19:19 Deber.doc.gz
-rw-r-r- 1 root root 6273 Aug 16 19:19 Deber.doc.gz9 _____________________________
Al da, siguiente un expositor explic cmo haba hecho l la tarea: "En fin, el que gana en mi caso es el
gzip -9 (era de esperar). El bzip2 no fue bueno porque es un archivo muy pequeo (Deber1.doc realmente
tiene 57k). El algoritmo bzip2 es muy bueno para archivos grandes o medianamente grandes. Pero para
pequeos no se diferencia del gzip."
El expositor aclar que, aunque gzip y bzip2 permiten comprimir varios archivos a la vez, no lo usa
normalmente y, aadi que despus, explicara otra forma ms precisa de comprimir directorios y mltiples
archivos en un slo paquete.

5.7 Trabajo con imgenes y CD


Muchas veces se necesita realizar copias completas de un disco duro, bit por bit. Los objetivos son
variados:

Necesidad de clonar un disco hacia otra mquina

Guardar una imagen de un disco para anlisis fornsico

Replicaciones en masa del mismo sistema (Un expositor dijo lo siguiente para aclarar este punto:
"Supongamos que estamos vendiendo 500 mquinas con Linux y que queremos ponerle la misma
informacin a todas. Aparte de que sera sumamente egosta de su parte el no invitarme a participar
en esta licitacin tan grande, sera muy lento el proceso de instalar cientos o decenas de mquinas
con Linux".)

Necesidad de realizar una copia exacta de un CD, para quemarlo posteriormente.

Necesidad de realizar una copia exacta de un floppy pues se requiere usar un floppy y este, que
contiene un sistema muy especial, es el nico que tenemos para formatear.

Los expositores preguntaron: "En todos esto casos... Qu comando podemos usar? Bueno, Linux tiene un
comando que se ocupa de realizar copias en crudo (raw) de discos completos o particiones. Se llama dd"

dd
El dd requiere bsicamente de dos parmetros, uno es el dispositivo o archivo de
entrada y otro es el dispositivo o archivo de salida.
Por ejemplo, cmo se realiza una copia exacta de la particin /dev/hda1:
dd if=/dev/hda1 of=/root/imagenhda1.img ______________________________________
Por supuesto, /root no debe estar en /dev/hda1 sino se caera en un ciclo infinito. No hay que olvidar que, if
y of (que se leen como input file, output file) siempre deben estar en particiones diferentes.
21

El dd en este caso tardar un poco, dependiendo de la cantidad de informacin que tenga hda1 y de la
velocidad de lectura y escritura del sistema.
El archivo imagenhda1.img quedar con una copia exacta de hda1 en el momento que se tom. Se puede
borrar con confianza hda1, tambin producir errores en hda1, o lo que se quiera, y ue exite una copia.
Uno de los del grupo del personal de laboratios pregunt: "Podemos reponer esa copia cuando queramos,
cmo se repone la info?
Los expositores pusieron lo siguiente en el pizarrn y explicaron:
dd if=/root/imagenhda1.img of=/dev/hda1 ______________________________________
"Aqu estamos trayendo la imagen que anteriormente sacamos hacia la particin
hda1.
Las imgenes las podemos comprimir para ahorrar espacio en disco, de esta forma la podremos guardar en
menor espacio y slo abrirlas si las necesitramos.
Ahora, al crear una imagen, puede que la particin de destino no tenga el espacio suficiente, qu podemos
hacer?
Podemos intentar comprimir los datos que saca dd, de forma tal que lo que escribamos a disco vaya
comprimido y ahorremos espacio.
[root@eperez ~]# dd if=/dev/hda1 | gzip -c - > boot.img.gz 208782+0 records in
208782+0 records out ______________________________________________________
dd if=/dev/hda1 : hazte una imagen de /dev/hda1. Como no especificamos of,
entonces el dd sacar los datos de la imagen por la salida estndar. Con el comando
| capturamos esta salida y se la pasamos a:
gzip -c - > boot.img.gz : comprime lo que recibas de la entrada estndar (-) y mndalo (>) hacia un archivo
llamado boot.img.gz
Para crear una particin partiendo de una imagen comprimida se puede usar:
gzip -dc boot.img.gz | dd of=/dev/hda1_________________________________________
Tarea: Comparemos la compresin con bzip2 y gzip2
[root@eperez ~]# dd if=/dev/hda1 | gzip -9c - > boot.img.gz [root@eperez ~]# dd if=/dev/hda1 | bzip2 -c - >
boot.img.bz2 [root@eperez ~]# ll boot*
-rw-r--r-- 1 root root 72863762 Aug 16 19:48 boot.img.bz2
-rw-r--r-- 1 root root 72984867 Aug 16 19:46 boot.img.gz
Un expositor cont lo siguiente "En mi caso el bzip2 se demor mucho ms que el gzip. y s comprimi un
poquito mejor (unos 100kb menor) que el gzip."

Adems los expositores explicaron que cualquier archivo de imagen que se haya creado con dd, desde una
particin, es posible montarlo as mismo desde la imagen. Esto se puede hacer por medio de un artilugio
que existe en Linux llamado loop (lazos). Mediante los lazos se puede montar imgenes hechas con dd y
leer desde ellas. Como ejemplo, lo expositores dieron los siguientes pasos:
Primero se hace una imagen:
22

[root@eperez ~]# dd if=/dev/hda1 of=boot.img 208782+0 records in


208782+0 records out

Despus se crea un directorio donde se montar esta imagen (en este caso se har en /mnt/loop) y
posteriormente se montar la imagen en este directorio. [root@eperez ~]# mkdir /mnt/loop
[root@eperez ~]# mount -o loop ./boot.img /mnt/loop/
Como se ve, se ha llamado al comando mount pero con una opcin llamada loop
(lazo). Loop es la que permite montar imgenes en directorios.
Si se entra en /mnt/loop y se crea un directorio, no habr ningn problema, porque es una imagen creada de
un disco y permitir que se cambie.
[root@eperez ~]# cd /mnt/loop/
[root@eperez loop]# ll total 2587
-rw-r--r-- 1 root root 48299 Jun 8 17:39 config-2.6.9-11.EL
drwxr-xr-x 2 root root 1024 Aug 15 22:58 grub
-rw-r--r-- 1 root root 395477 Jul 22 17:21 initrd-2.6.9-11.EL.img
drwx- 2 root root 12288 Jul 21 11:28 lost+found
-rw-r--r-- 1 root root 10213 Feb 26 12:39 message -rw-r--r-- 1 root root 10213
Feb 26 12:39 message.ja -rw-r--r-- 1 root root 715755 Jun 8 17:39 System.map2.6.9-11.EL -rw-r--r-- 1 root root 1435513 Jun 8 17:39 vmlinuz-2.6.9-11.EL
[root@eperez loop]# mkdir t [root@eperez loop]# ll total 2588
-rw-r--r-- 1 root root 48299 Jun 8 17:39 config-2.6.9-11.EL drwxr-xr-x 2 root
root 1024 Aug 15 22:58 grub -rw-r--r-- 1 root root 395477 Jul 22 17:21 initrd2.6.9-11.EL.img
drwx- 2 root root 12288 Jul 21 11:28 lost+found
-rw-r--r-1
root
root
10213
Feb
-rw-r--r-- 1 root root 10213 Feb 26 12:39 message.ja

26

12:39

message

-rw-r~r~ 1 root root 715755 Jun 8 17:39 System.map-2.6.9-11.EL

drwxr-xr-x 2 root root 1024 Aug 16 19:57 t


-rw-r~r~ 1 root root 1435513 Jun 8 17:39 vmlinuz-2.6.9-11.EL
[root@eperez loop]# cd
[root@eperez ~]# umount /mnt/loop
Y de qu sirve usar loops?"

Pues que podemos ver los contenidos de un CD sin tener que quemarlo (usando imgenes),

Podemos ver los contenidos de una imagen de una particin sin tener que quemarla.
23

Podemos analizar los contenidos de una imagen para realizar un anlisis fornsico, sin tener que
ejecutar los contenidos de esta particin y, adems, podemos ya tener activo el disco sobre el que
sacamos la imagen, disminuyendo el downtime.

Podemos realizar cambios en la imagen para entonces s quemarla (digamos que crear un directorio
o agregar archivos, etc.).

5.7.1 Clonacin de floppies:


Los expositores dijeron: "Supongamos que queremos guardar una imagen de un floppy para poder usar el
medio fsico. Despus podramos recuperar la informacin de la imagen en otro medio cuando nos haga
falta.
dd if=/dev/fd0 of=floppy.img _________________________________________________
Esto sacara una imagen del floppy. Tambin la podemos montar con un loop, e,
igual, posteriormente podramos crear una copia exacta del floppy:
dd if=floppy.img of=/dev/fd0 _________________________________________________
As podemos mantener copias exactas de nuestros floppies y recuperarlas cuando
deseemos hacia cualquier otro floppy."

5.7.2 Clonacin de CDs


Lo mismo se puede hacer para clonar un CD dd if=/dev/cdrom of=cdrom.img

Lo expositores aclararon: "cuando clonemos los CDs tambin podremos montarlos con loop, pero los CDs
usan un formato llamado iso9660 que no permite escrituras, por lo que slo podramos leer desde el loop,
mas no escribir".

5.7.3 Creacin de CDs propios


Y cmo podemos crear nuestros propios CDs?, pregunt un asistente del grupo de "Mentes Libres"
Los expositores le respondieron que para eso se puede usar un comando llamado mkisofs, que toma los
datos de un directorio indicado por nosotros, y crea un archivo .img que igualmente se puede montar o
quemar. Para ello hay que tener en cuenta lo siguiente:
-J : Crear en formato Joliet (usado normalmente para los CDs de windows)
-v : Ser verbose (hablador), dar bastante informacin de lo que hace
-o archivo : Crear la imagen con este nombre rh9.img (por ejemplo) y especificar el
directorio de donde crear la imagen (por ejmplo: rh9/, tomar de este directorio
todos los archivos y directorios de donde crear la imagen)
[root@eperez ~]# mkisofs -J -v -o rh9.img rh9/ Warning: creating filesystem with
(nonstandard) Joliet extensions but without (standard) Rock Ridge extensions. It is
highly recommended to add Rock Ridge INFO: UTF-8 character encoding detected by
locale settings. Assuming UTF-8 encoded filenames on source filesystem, use -inputcharset to override. mkisofs 2.01 (i686-pc-Linux-gnu) Scanning rh9/
Unknown file type (unallocated) rh9/.. - ignoring and continuing.
Using KERNE000.RPM;1 for /kernel-smp-2.4.20-31.9.i686.rpm (kernel-source-2.4.2043.9.legacy.i386.rpm)
Using KERNE001.RPM;1 for /kernel-source-2.4.20-43.9.legacy.i386.rpm (kernelsmp-2.4.20-43.9.legacy.i686.rpm)
24

Writing: Initial Padblock Start Block 0


Done with: Initial Padblock Block(s) 16
Writing: Primary Volume Descriptor Start Block 16
Done with: Primary Volume Descriptor Block(s) 1
Writing: Joliet Volume Descriptor Start Block 17
Done with: Joliet Volume Descriptor Block(s) 1
Writing: End Volume Descriptor Start Block 18
Done with: End Volume Descriptor Block(s) 1
Writing: Version block Start Block 19
Done with: Version block Block(s) 1
Writing: Path table Start Block 20
Done with: Path table Block(s) 4 Writing: Joliet path table Start Block 24 Done with: Joliet path table Block(s)
4 Writing: Directory tree Start Block 28 Done with: Directory tree Block(s) 1 Writing: Joliet directory tree Start
Block 29 Done with: Joliet directory tree Block(s) 1 Writing: Directory tree cleanup Start Block 30 Done with:
Directory tree cleanup Block(s) 0 Writing: The File(s) Start Block 30 15.00% done, estimate finish Tue Aug
16 18:20:55 2005 29.99% done, estimate finish Tue Aug 16 18:20:52 2005 44.95% done, estimate finish Tue
Aug 16 18:20:53 2005 59.96% done, estimate finish Tue Aug 16 18:20:54 2005 74.92% done, estimate
finish Tue Aug 16 18:20:53 2005 89.91% done, estimate finish Tue Aug 16 18:20:53 2005 Total translation
table size: 0 Total rockridge attributes bytes: 0 Total directory bytes: 212 Path table size(bytes): 10 Done
with: The File(s) Block(s) 33193 Writing: Ending Padblock Start Block 33223 Done with: Ending Padblock
Block(s) 150 Max brk space used 0
33373 extents written (65 MB)
Hasta el momento lo que se habr hecho ser crear una imagen iso9660, que se
podr quemar en un CD.

Ahora hay que montar esta imagen que se acaba de quemar para verificarla:
[root@eperez ~]# mount -o loop ./rh9.img /mnt/loop/ ____________________________
Se listan los contenidos:
[root@eperez ~]# ls /mnt/loop/ kernel-smp-2.4.20-31.9.i686.rpm kernel-smp-2.4.20-43.9.legacy.i686.rpm
kernel-source-2.4.20-43.9.legacy.i386.rpm
Y se obtiene EXACTAMENTE lo que haba en el directorio rh9/ (que es directorio
creado como ejemplo).
Para que todo quedara ms claro, lo expositores propusieron lo siguiente: "Intentemos crear un directorio (t)
dentro de esa imagen: [root@eperez ~]# mkdir /mnt/loop/t
mkdir: cannot create directory 7media/loop/t': Read-only file system
Correcto, nos dice que no; pues la imagen es del tipo iso9660 y es de slo lectura.
Desmontmosla,
pues
no
debemos
[root@eperez ~]# umount /mnt/loop/

tener

montadas

las

imgenes

por

gusto":

TAREA: Crear una imagen iso9660

25

Para proceder a quemar, hay que usar el comando cdrecord. Este comando quema en un CD. Los switches
son variados, pero estos generalmente funcionan: -v : verbose, hablador, decir todo lo que va haciendo
speed=4 : Quemar a una velocidad de 4x, si se desea ms velocidad poner el valor adecuado (8, 16, etc.)
./rh9.img : Es la imagen que se cre en el paso anterior (con mkisofs). Por supuesto, puede tener cualquier
nombre.
[root@eperez ~]# cdrecord -v speed=4 ./rh9.img cdrecord: No write
mode specified. cdrecord: Asuming -tao mode.
cdrecord: Future versions of cdrecord may have different drive dependent defaults. cdrecord: Continuing in 5
seconds...
Cdrecord-Clone 2.01-dvd (i686-pc-Linux-gnu) Copyright (C) 1995-2004 Jrg Schilling Note: This version is
an unofficial (modified) version with DVD support Note: and therefore may have bugs that are not present in
the original. Note: Please send bug reports or support requests to http://bugzilla.redhat.com/bugzilla
Note: The author of cdrecord should not be bothered with problems in this version.
TOC Type: 1 = CD-ROM
scsidev: '/dev/cdrom'
devname: '/dev/cdrom'
scsibus: -2 target: -2 lun: -2
Linux sg driver version: 3.5.27
Using libscg version 'schily-0.8'.
cdrecord:
Warning: using inofficial libscg transport code version (schily - Red Hat-scsi-Linux-sg.c-1.83RH '@(#)scsi-Linux-sg.c 1.83 04/05/20 Copyright 1997 J. Schilling'). Driveropts: 'burnfree'
SCSI buffer size: 64512 atapi: 1
Device type : Removable CD-ROM Version : 0
Response Format: 1 Vendor_info : 'ATAPI ' Identifikation
: 'CD-R/RW 40X12 ' Revision : '1.HB'
Device seems to be: Generic mmc CD-RW.
Using generic SCSI-3/mmc CD-R/CD-RW driver (mmc_cdr).
Driver flags : MMC-2 SWABAUDIO BURNFREE
Supported modes: TAO PACKET SAO RAW/R16 RAW/R96R
Drive buf size : 1630208 = 1592 KB
FIFO size : 4194304 = 4096 KB
Track 01: data 65 MB
Total size: 74 MB (07:25.00) = 33375 sectors Lout start: 75 MB
(07:27/00) = 33375 sectors Current Secsize: 2048
ATIP info from disk:
Indicated writing power: 5 Is not unrestricted Is not erasable
Disk sub type: Medium Type B, low Beta category ( (4)
ATIP start of lead in: -11607 (97:27/18)
ATIP start of lead out: 359849 (79:59/74)
Disk type: Short strategy type (Phthalocyanine or similar)
Manuf. index: 18
Manufacturer: Plasmon Data systems Ltd.
Blocks total: 359849 Blocks current: 359849 Blocks remaining: 326474 Speed set to 706 KB/s
Starting to write CD/DVD at speed 4.0 in real TAO mode for single session.
Last chance to quit, starting real write 0 seconds. Operation starts.
Waiting for reader process to fill input buffer ... input buffer ready.
trackno=0
26

BURN-Free is ON.
Performing OPC...
Starting new track at sector: 0
Track 01: 65 of 65 MB written (fifo 100%) [buf 98%] 4.7x.
Track 01: Total bytes read/written: 68347904/68347904 (33373 sectors).
Writing time: 122.900s
Average write speed 3.6x.
Min drive buffer fill was 89%
Fixating...
Fixating time: 70.034s
cdrecord: fifo had 1077 puts and 1077 gets.
cdrecord: fifo was 0 times empty and 592 times full, min fill was 92%.
Listo. Con esto se habr creado una compilacin (imagen, mkisofs) y se habr
quemado con cdrecord.

5.8 RESPALDOS CON TAR y STAR


5.8.1 tar
La forma ms comn de hacer respaldos, ya sea a cinta o a disco o a cualquier medio de almacenamiento,
es mediante el comando tar. En realidad es un comando antiguo, muy probado, por lo que casi siempre
funciona para hacer respaldos.
tar permite realizar copias exactas, manteniendo intactos los permisos y caractersticas de los archivos. tar
devuelve un archivo que contendr, a su vez, toda la informacin del directorio o conjunto de directorios que
hayamos respaldado. tar devuelve un slo archivo por la simple razn de que se usaba y se usa para
escribir en cinta. Como las unidades de cinta no mantienen un filesystem, se hace un poco complicado el
almacenar archivos y directorios pues estos tendran que conocer de antemano dnde estaran localizados,
etc.
El tar se ocupa de guardar el orden y posicin exactos de cada uno de los archivos y directorios
almacenados en este archivo.tar que se crea y, por lo tanto, fcilmente se puede extraer este archivo y
tomar de ah el orden en que fueron almacenados.

El tar es muy fcil de usar. Algunos switches que se pueden usar con el tar son:

v - La v siempre viene de verbose (ser hablador), permite que el tar hable bastante sobre lo que est
haciendo

f - Indica el archivo tar que se va a crear o a extraer

c - create, crear un archivo (c o x, no ambas)

x - eXtract, extraer un archivo (c o x, no ambas)

z - comprimir el tar que se est creando con gzip (z o j, no ambas)


27

j - comprimir el tar que se est creando con bzip2 (z o j, no ambas)

Ejemplos del tar para crear un archivo:


tar -cf /root/etc.tar /etc
Los expositores explicaron: Esto es, crea (c) un archivo .tar hacia (f) /root/etc.tar con
todos los contenidos del directorio /etc. El tar actuar calladito pues no tenemos el v
puesto.

Este tar quedar del mismo tamao prcticamente que el directorio /etc, pues no lo hemos comprimido slo
lo creamos (c) hacia un archivo (f) llamado /root/etc.tar
Los expositores pidieron que lo asistentes hicieran preguntas, y fueron respondiendo una a una:
Cmo hacer para crear un archivo comprimido? Tenemos dos
opciones, la j y la z (bzip2: j, gzip:z): tar -zcvf /root/etcyvar.tar.gz /etc
/var
Qu hicimos aqu?: Creamos un tar (c) comprimido (z) con gzip, le pedimos al tar que dijera (v, verbose) lo
que fuera realizando y que el archivo creado (f) lo pusiera en /root/etcyvar.tar.gz, tambin le indicamos DOS
directorios a poner dentro del tar (/etc y /var). Esto crear un slo archivo (root/etcyvar.tar.gz) conteniendo
ambos directorios (/etc y /var).

Cmo extraer los contenidos de tar? Simple: tar -zxvf /root/etcyvar.tar.gz


|
Este comando extraer (x) un archivo tar comprimido con gzip (z), le pedir al tar
que hable bastante (v) y el archivo desde donde proceder a extraer (f) es
/root/etcyvar.tar.gz
Al extraer, el tar no respeta el /, es decir, el tar ignora, por seguridad ese / de etc y var, a fin de que no
sobrescriba nuestro propio /etc y /var. El tar extraer pensando que el lugar donde proceder a extraer los
contenidos es el directorio donde estemos parados. As podemos recuperar respaldos hacia cualquier
directorio y decidir con calma qu hacer con lo que hemos recuperado.

Cmo podemos recuperar una parte de lo que guardamos en tar? A veces tenemos un archivo tar muy,
muy grande, de digamos 50GB, y slo queremos recuperar, por ejemplo, el archivo /etc/passwd. Indicamos
precisamente el directorio y nombre de archivo a recuperar. Pensemos en el archivo etcyvar.tar.gz que
creamos anteriormente:
tar -zxvf etcyvar.tar.gz etc/passwd ____________________________________________
Le hemos indicado que queremos extraer (x) informacin comprimida (z) en un
archivo tar (f) llamado etcyvar.tar.gz y que lo que queremos extraer es un archivo
llamado passwd que est dentro de etc (etc/passwd). Fjense que quit el / del etc.,
porque el tar no guarda / por seguridad; as, al extraer algo no tenemos que
preocuparnos que nos sobrescriba archivos o directorios de dentro de la raz.

Lo mismo aplica si queremos extraer un directorio entero:


tar -zxvf etcyvar.tar.gz etc/ __________________________________________________
extraera TODOS los contenidos del directorio etc, pero no extraera los de var
28

(recuerden que este etcyvar.tar.gz lo creamos con los contenidos de /etc y /ver). Cmo hacemos para
guardar los contenidos en una cinta?
La cinta es un dispositivo de bloques de e/s que como ya dijimos no tiene formato especficamente, lo que
hace que tengamos que referirnos a ella sin montarla, es decir, hablar directamente con el dispositivo.

La cinta se atiende mediante dos posibles dispositivos:


/dev/st0 es el que recomendamos que siempre se use. Este dispositivo permite leer y escribir en la cinta,
pero adems al terminar de leer/escribir, este dispositivo rebobina la cinta hacia el inicio.
/dev/nst0 este no lo recomendamos, pero en todo caso, hace lo mismo que /dev/st0 slo que no rebobina la
cinta al terminar. Esto con el fin de que, el que quiera complicarse la vida, pueda tener varios archivos tar en
una misma cinta.
Entonces para escribir un tar hacia una cinta, nos aseguramos que tenemos un dispositivo de cinta
instalado en nuestro servidor Linux as como que tenemos una cinta puesta en el dispositivo y ponemos:

Itar -cvf /dev/st0 /etc /var

Esto crear un tar (c) e indicar al tar que hable (v) hacia el dispositivo (f) /dev/st0 y en ese tar incluir /etc
y /var ya tenemos una forma de hacer respaldos!

Y por qu no comprimo?
Bueno, no somos expertos en cintas, pero la enorme mayora de las cintas tienen sistemas de compresin
de datos al vuelo incluidos en su hardware. Esto es, nosotros le pasaremos el tar sin comprimir (sin z ni j) a
la cinta (/dev/st0) y el sistema de la cinta se ocupar de comprimir estos datos. As logramos no gastar
tiempo realizando la compresin nosotros (gastando ciclos de cpu) y le pasamos ese trabajo a la cinta que
lo har transparentemente.
Si nuestra cinta no realizara compresin al vuelo, entonces no est de ms el ponerle z al comando tar para
de una vez comprimir nosotros, y que la cinta tambin guarde los datos.
Comparando bzip2 con gzip nuevamente:

Los expositotres pidieron que se analizara el nivel de compresin de /etc con bz2 y con gz:
[root@eperez ~]# tar -zcf etc.tar.gz /etc [root@eperez ~]#
tar -jcf etc.tar.bz2 /etc [root@eperez ~]# ll etc*
-rw-r--r-- 1 root root 4828393 Aug 19 11:00 etc.tar.bz2
-rw-r~r~ 1 root root 6731130 Aug 19 10:58 etc.tar.gz
En este caso, /etc es un directorio lleno de archivos de texto mayormente, por lo que bzip2 tiene muchas
ms opciones para comprimir. Como se puede ver, bzip2 comprimi a unos 4.8MB mientras gzip slo logr
6.7MB de compresin.
En resumen realizando comparaciones, el bzip2 es bueno para grandes cantidades de informacin de texto
pero es muy lento, mientras que gzip es muy rpido y acta muy bien para bajos niveles de compresin.

5.8.2 star
Ahora, el comando tar tiene ciertas dificultades que ya se han probado previamente. Los expositores
contaron que al realizar respaldos muy grandes, tiende a dejar de responder y a veces hasta es capaz de
echar la mquina al piso.
29

Al ver la cara de asombro del personal de laboratorio un expositor puntualiz: "Cuando decimos respaldos
muy grandes, estamos hablando de aproximadamente 50 GB en informacin sumamente fraccionada
(mayormente compuesta por archivos menores a 5kb) que hay que respaldar en una mquina intel dual
Xeon con 2.4GHz de velocidad y 6GB de memoria as como un arreglo de discos SCSI de 570GB."
Por eso es necesario ver otro comando ms moderno llamado star.

Definitivamente se ha comprobado que es, posiblemente, un 25% ms rpido que el antiguo tar. El star es
ms eficiente en el manejo de memoria y procesador, por lo que se han logrado controlar los problemas en
mquinas que demoraban un mundo o fallaban haciendo un respaldo con tar.

Al momento la utilidad star es la ms rpida conocida que imita al tar. Se ha comprobado que puede
trabajar a velocidades superiores a 14mbit/s y que ofrece una tecnologa de doble buffering que mantiene la
unidad de cinta alimentada con datos constantemente.
El star comenz a implementarse por el ao 1982 y sigue siendo un trabajo en progreso. Es muy eficiente
adems con respaldos mayores a 1GB y es capaz de manejar una enorme cantidad de archivos (inodos) sin
mayor uso de memoria (este es un grave problema del tar: cuando hay millones de archivos, tiende a crear
grandes zonas de memoria con todo el rbol de directorio y, eventualmente, la mquina puede colapsar).
El star tiene cierta compatibilidad con el tar; por ello, es capaz de abrir archivos hechos en tar.
Definitivamente por todas estas razones y muchas ms, es necesario aprender el procedimiento para usar
el star.
Primero, hay que verificar que se tenga el comando star en la mquina, en redhat y clones de redhat. Est
en un paquete aparte que se llama star. Hay que buscar este rpm e instalarlo si es que no est instalado ya
en el sistema. Este paquete no sobrescribe al tar; por eso, siguen siendo dos comandos apartes e
independientes.
Seguidamente, hay que hacer el respaldo; se puede comenzar con el ms simple:
star -cv f=/dev/st0 /etc /var
Con este comando se hace un respaldo (c) hablador (v) hacia el dispositivo (f) de cinta (/dev/st0).
Si se lo quiere comprimir, hay que usar adems la z: star -zcv f=/dev/st0 /etc
/var
Esto lo comprimira con gzip. Los expositores sealaron que no conocan de compresin va bzip2 de forma
directa. Es decir, el star no sabe usar bzip2 para comprimir.
Si se quiere usar un archivo en vez de cinta se puede hacer lo siguiente: star -cv f=/backup/respaldo.tar /etc
/var
y listo, creara (c) el tar en un archivo (f) llamado /backup/respaldo.tar dentro de un directorio. No lo creara
comprimido (no se us la z).
Los expositores precisaron que existen otras herramientas como cpio, pero que no las analizaran pues
redundaran en el tema y realmente a su entender el tar es mucho ms potente.
30

Cmo se abre un archivo star? star -xv f=/dev/st0


abriran (x) todos los contenidos de la cinta (f).
Si se desea solamente un directorio o archivo en especfico, hay que especificarlo con el nombre al lado, sin
/ inicial:
star -xv f=/dev/st0 etc/passwd
este sacara slo /etc/passwd y nada ms de todo el respaldo, lo que permitira recuperar cierto archivo si
conoce su nombre o directorio.
Los expositores concluyeron que, el star es definitivamente el recomendado para manejar grandes
cantidades de archivos dispersos o respaldos mayores a 1GB. Es mucho ms rpido en estas
circunstancias y seguro dar menos problemas de performance.

5.9 Planificar y realizar respaldos


Realizar respaldos es una de las tareas ms penosas de preparar y una de las pocas consideradas por los
administradores. Los expositores sealaron que pocos administradores se preocupan por mantener
respaldos actualizados de sus sistemas, y menos an se ocupan de revisar si los respaldos funcionan, y a
la hora de la verdad, cuando el sistema deja de responder, ah vienen las quejas y los lamentos.
Por esto una de las primeras tareas que todo administrador debe realizar es, precisamente, preparar algn
tipo de sistema de respaldos, de ser posibles automticos.
Los respaldos son la ltima lnea de defensa en la seguridad. Los expositores recalcaron que en el tema de
seguridad conviene ser bastantes repetitivos: "ya vern durante el curso cmo tomamos muchas
precauciones sobre cmo seguir asegurando nuestro sistema, esto por el hecho de que nunca hay
seguridad de ms y la seguridad es en capas".
Los respaldos, en realidad, se usan cuando las otras medidas de seguridad han fallado, cuando ya no
quede ms que volver a empezar desde cero y comenzar a reponer datos de nuestros respaldos.
Los respaldos tambin sirven para ayudar cuando un usuario o cliente de nuestro servidor ha perdido algn
dato valioso y desea que le busquemos en los respaldos una copia anterior de este.

Pasos para realizar los respaldos:

El primer paso para realizar los respaldos es definir hacia dnde se escribirn:

1. Hacia otro disco: Es una forma rpida y fcil; tiene de bueno el que podemos recuperar un
respaldo sin tener que perder mucho tiempo pues el disco est puesto en la misma mquina o en
una mquina contigua. Tiene de inconveniente que cuando el sistema se daa, existe la posibilidad
de que tambin se dae ese disco.
2. Hacia una unidad de cinta: Es el proceso ms recomendado para empresas serias y tiene de
inconveniente que las cintas son un poco lentas, tanto para respaldar, como para recuperar.
Adems, de vez en cuando, hay que revisar que estn guardando correctamente la informacin
pues tienden a daarse.
31

3. Hacia un CD: Tiene de inconveniente que posteriormente al respaldo hacia un directorio en el disco,
hay que preparar un iso con mkisofs y quemar ese ISO con cdrecord. Pero es una variante factible.

El segundo paso ser definir cada cunto tiempo realizaremos los respaldos.

Esto depender mucho de las polticas de la empresa donde se trabaje y del tiempo que demoran los
respaldos. Hay muchas empresas que realizan respaldos diarios y guardan copias de al menos 7 o 15 das
de los respaldos, para poder buscar informacin.
Otras empresas no pueden realizar respaldos diarios, pues estos demoran mucho tiempo (digamos 12
horas) y consumira muchos recursos el realizar respaldos cada da. Por eso, algunas empresas prefieren
realizar respaldos semanales o an quincenales o mensuales. Estos dos ltimos se realizan, sobre todo,
cuando el sistema no cambia en mucho tiempo.
Algunos sistemas son sencillamente inmutables en el tiempo; esto es, una vez instalados no reciben ni
guardan en disco informacin que cambie en el tiempo, por lo que crear una sola vez un respaldo con la
configuracin del sistema normalmente es suficiente para ellos. Estos sistemas son mayormente sistemas
de firewall o proxy que no varan sus datos de configuracin ni de uso durante el tiempo y que, en caso de
una rotura que requiera de restablecer un respaldo, slo con la configuracin del sistema bastara.
El tercer paso sera definir qu directorios y archivos se desean respaldar.
Esto depende mucho del tipo de sistema en que se est trabajando. Como ejemplo, los expositores
tabularon diferentes tipos de sistemas y qu consideraron apropiado respaldar en cada uno de ellos. Para
hacer todo ms fcil repartieron una hoja con estos datos, en el que, en primer lugar haba una advertencia
que el equipo del personal de laboratorio ley con cuidado:

Hemos de advertir que esto no debe tomarse como una receta, y si ustedes o su empresa tienen
otras polticas o requieren de otros sistemas a respaldarse, deben respaldarlos de la forma ms
conveniente a sus necesidades.

Tipo de sistema
Mailserver

Proxy y/o firewall


Web server

Qu sugerimos respaldar?
/etc
/var/spool
/var/log
/home
/root
/etc
/etc
/var/www
/home
/root

BD

DNS

/etc /home
/directoriodelaBD
dump (vaciado) de las BD
/etc
/home
/var/named

En Linux, normalmente, no se respaldan los binarios, si nos fijamos en la tabla anterior, siempre hemos
escogido los directorios donde se conservan datos valiosos e irrecuperables para nuestra empresa. Los
32

binarios y libreras del sistema siempre se reinstalan al reinstalar el sistema, por lo tanto, son recuperables;
pero no son recuperables, sin un respaldo, datos como nombres de usuarios, pginas web, bases de datos,
en fin, todo tipo de informacin especfica para nuestra empresa que no est presente en un sistema Linux
por defecto.
Si nos fijamos bien, uno de los directorios que siempre est presente es /etc, pues es aqu donde siempre
se almacenan las claves y datos esenciales de configuracin del sistema y siempre, a ojos cerrados,
debemos siempre incluir /etc en nuestros respaldos para mantener una copia de toda la info esencial del
sistema. Otro directorio que nunca hay que olvidar respaldar, as sea necesario o no, es /home, para
mantener de una vez los directorios de los usuarios ya sean miles o sean unos 2 3. As poder realizar una
recuperacin rpida sin tener que crear estos directorios.

5.9.1 Definir cmo respaldar


Es algo ms que importante y es qu utilera se usar para respaldar. Cualquiera de las dos anteriormente
descritas (tar y star) son buenas, igual si se tiene la oportunidad o el inters se puede echar a andar el rsync
que permite sincronizar directorios entre dos servidores.

Una forma cmoda sera por ejemplo respaldar a otro directorio usando tar:
tar -zcf /otrodiscomontadoaqui/respaldo.tar.gz /etc /home /var/spool /var/log ___________
Este ejemplo realizara un respaldo en un disco montado en un directorio (llamado en nuestro caso:
/otrodiscomontadoaqui) de los directorios /etc /home /var/spool y /var/log
Al hacer respaldos no se debe usar v porque puede resultar una cantidad de informacin tediosa de leer,
confusa y puede conducir a que no se noten las diferentes advertencias que el tar quiera comunicar.

5.9.2 Verificar respaldos


Una vez finalizado de realizar los respaldos, se debe verificar que estos se estn creando correctamente. La
forma ms usual es probando que est correctamente comprimido o guardado el respaldo (usando -t en el
gzip o abriendo totalmente el respaldo) y, sobre todo, verificando que todos los contenidos de nuestros
directorios respaldados estn intactos.
Para eso, bsicamente, los expositores sugirieron que hay que abrir el paquete y verificarlo todo.
Esta labor debe realizarse de vez en cuando. Siempre es bueno, al realizar respaldos, hacer
comprobaciones de restauraciones (restores) de vez en cuando. Esto permite estar seguros de que nada ha
afectado la poltica de realizacin de respaldos y poder reaccionar prontamente ante una falla por algn
cambio en el sistema.

5.9.3 Cmo realizar una recuperacin?


Supongamos que pas lo peor de lo peor y tenemos que reinstalar el sistema. Cmo recuperamos los
respaldos?
Aqu algunos pasos comunes a seguir para recuperar la informacin:
1. Tratar, antes de reinstalar, de guardar una imagen de nuestro sistema daado actual. Esto lo
podemos hacer con dd posiblemente o con un tar. Bsicamente con esto logramos guardar el
estado actual del sistema para posterior anlisis y hasta logramos tener un respaldo del ltimo
instante en que el sistema estuvo funcionando.
33

2. Reinstalar normalmente el sistema Linux: asegurarlo, optimizarlo, actualizarlo y realizar todas las
tareas previas e inmediatas posteriores a una instalacin. Por supuesto, la instalacin debe incluir
todos los paquetes que nosotros sabemos que requeriremos para nuestro trabajo normal con el
sistema.
3. Traer de otro disco o de la cinta o del CDrom los tar con los respaldos
4. Abrir estos respaldos hacia un directorio temporal (normalmente se abren en /home/tmp o en
/root/tmp, en la particin que tenga ms espacio), para esto hay que cambiarse primero al directorio
donde se abrirn los respaldos (cd /home/tmp por ejemplo) y despus abrirlos para tenerlos todos
ah.
5.
Los directorios: /home, /var/spool y /var/www normalmente se pueden copiar
hacia sus destinos de forma inmediata. Es decir, una vez abiertos en
/home/tmp/var/spool, se puede, por ejemplo:
cp -a /home/tmp/var/spool/* /var/spool/
pues estos directorios no afectan en nada el funcionamiento actual de nuestro nuevo sistema.
6. Del directorio /etc, como sugerencia, solamente trabajeromos con /etc/passwd, /etc/shadow y
/etc/group. Por supuesto, si se quiere la copia antigua de nuestro servidor web, trabajaramos con el
directorio de configuracin web (/etc/httpd/) y lo mismo con cada demonio que requiramos
(/etc/squid para el squid, /etc/named* para el named). La idea con /etc es solamente tomar del
directorio recuperado los archivos que necesitemos y de ser posible no sobrescribamos los archivos
recin instalados sino que los unamos o manualmente editemos (El etc recuperado deber estar en
/home/tmp/etc pues recuerden. siempre nos debemos cambiar al directorio /home/tmp para abrir los
respaldos)
7. Recuperar y poner en su lugar todos los archivos que necesitemos segn el caso.

La recuperacin en Linux es un proceso que no es difcil. Aqu no trabajamos con registros ni ningn tipo de
informacin complicada, sino que sencillamente trabajamos con archivos de texto que son muy fciles de
reemplazar o de editar para agregar la nueva informacin.
Por ejemplo, para recuperar los usuarios se puede:
editar el archivo passwd que estar en /home/tmp/etc y borrar todos los usuarios privilegiados (esos que el
UID sea menor a 500), de forma tal que quedar un archivo passwd solamente con los usuarios propios de
mi empresa (los que hemos creado y su UID es igual o mayor que 500). Una vez guardado ese passwd
podemos proceder a unirlo:

Icat /home/tmp/etc/passwd >> /etc/passwd

Aqu lo que habremos hecho ser agregar (>>) al archivo /etc/passwd, los contenidos de
/home/tmp/etc/passwd, que es el archivo al que hemos eliminado los usuarios privilegiados (esos ya estn
presentes en /etc/passwd al instalarlo nuevo). De esta forma nos queda original y adaptado a nuestro
sistema.

Lo mismo debemos hacer con group y con shadow (eliminar los usuarios propios del sistema y solamente
dejar los usuarios que hemos creado nosotros, los usuarios con UID mayor de 500)
34

Y listo! ya pasamos el problema mayor. Ahora, por supuesto, pasaremos por algunos otros problemas, pues
siempre ocurren al realizar una recuperacin, lo normal es que se nos olvide instalar algn paquete que s
usbamos antes, o que se nos olvide activar o reconfigurar algn servicio. Poco a poco, con el transcurso
de los minutos nos iremos dando cuenta, gracias a nuestras propias averiguaciones o a los usuarios
mismos, que vendrn a quejarse.

Un detalle a considerar: siempre es importante, antes de sobrescribir un archivo de los recin instalados (por
ejemplo /etc/passwd o /etc/group o cualquier otro), realizar una copia de seguridad de este. Se puede hacer
copiando el archivo con la extensin .bak:
cp /etc/passwd /etc/passwd.bak
As, si algo fallara en nuestro nuevo sistema, podemos, al menos, recuperar el archivo original que recin
habamos instalado y proceder a tomar otra variante para reconfigurarlo.

5.9.4 mt
mt es una utilera para trabajo con cintas. Aunque no es requerido usarlo al realizar respaldos, s es importante
conocer qu ayudas puede brindar.

mt se debe invocar con el nombre del dispositivo de cinta al que nos estamos refiriendo (normalmente /dev/st0)
y un comando que le deseamos enviar a la cinta.

El comando mt puede demorarse en dar una respuesta y no se debe detener si notamos que no est
respondiendo, pues, a veces, tarda horas.

mt -f /dev/st0 status

mt -f /dev/st0 eject mt -f /dev/st0 retension mt -f


/dev/st0 erase mt -f /dev/st0 rewind
Fin del captulo.

35

Вам также может понравиться