jueves, noviembre 20, 2003

Usando LVM para particionar tus discos 

¿Qué es LVM?

LVM son las siglas de Logical Volume Manager. Te permite combinar los discos físicos en volúmenes lógicos fáciles de administrar y escalables. En resumen, ¿estas cansado de tener que reparticionar el disco cada vez que se te queda pequeña una partición o te das cuenta de que te sobran 4/5 partes de otra? ¿Te gustaría poder "unir" discos en particiones? ¿Quieres aumentar el rendimiento de tus discos de una manera sencilla y cómoda?

Si es así, sigue leyendo :)

Empecemos por el kernel

Para poder usar LVM debemos activar el soporte en el kernel, en las distribuciones actuales, este soporte ya viene activado, pero si hemos personalizado un kernel, debemos saber que opciones deben ser activadas. Al personalizar un kernel activaremos las opciones:

#
# Multi-device support (RAID and LVM)
#
CONFIG_MD=y
# CONFIG_BLK_DEV_MD is not set
# CONFIG_MD_LINEAR is not set
# CONFIG_MD_RAID0 is not set
# CONFIG_MD_RAID1 is not set
#
CONFIG_MD_RAID5 is not set
# CONFIG_MD_MULTIPATH is not set
CONFIG_BLK_DEV_LVM=y

Y recompilaremos el kernel como es habitual.

Instalar software de usuario

Ahora necesitaremos instalar las utilidades de usuario del LVM. Nos las podemos bajar de Sistina. Este paquete contiene todo el software necesario para configurar/administrar nuestras particiones gestionadas por LVM.

Particionamiento del disco duro

Como es habitual, tenemos que particionar el disco duro, por ejemplo con el fdisk, pero con la diferencia de que crearemos una única (lo contrario no tendría mucho sentido) partición y le asignaremos Linux LVM (8e) como tipo de partición.

RiGoDoN lvm-user # fdisk /dev/sda

The number of cylinders for this disk is set to 2233.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)

Command (m for help): p

Disk /dev/sda: 18.3 GB, 18373349376 bytes
255 heads, 63 sectors/track, 2233 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 1 13 104391 83 Linux
/dev/sda2 14 136 987997+ 82 Linux swap
/dev/sda3 137 386 2008125 83 Linux
/dev/sda4 387 2233 14836027+ 8e Linux LVM

Command (m for help):

Si es necesario, haremos lo mismo en nuestros otros discos duros que queramos manejar con LVM.

Definir los volúmenes físicos

En el apartado de volúmenes físicos tenemos principalmente los siguientes comandos:

pvcreate
Para crear nuevos volúmenes físicos.
pvscan
Para mostrar los volúmenes físicos creados.
pvdisplay
Para mostrar las características de un volúmen físico.
pvchange
Para cambiar atributos de un volúmen físico.
pvmove
Para mover los datos a otro volúmen físico.

Crearemos un volúmen lógico en la partición que hemos creado anteriormente:

RiGoDoN lvm-user # pvcreate /dev/sda4
pvcreate -- physical volume "/dev/sda4" sucessfully created

Ahora podemos comprobar que la hemos creado:

RiGoDoN root # pvscan
pvscan -- reading all physical volumes (this may take a while...)
pvscan -- ACTIVE PV "/dev/scsi/host0/bus0/target0/lun0/part4" in no VG [14.09 GB / 14.09 GB free]
pvscan -- total: 1 [14.09 GB] / in use: 0 [0]/ in no VG: 1 [14.09 GB]

Definir los volúmenes de grupo

Un volúmen de grupo (volum group) es la unión de uno o varios volúmenes fisicos en un volúmen administrativo. Para hacernos una idea, seria un disco duro virtual que puede estar formado por uno o varios discos duros físicos.

Aquí tenemos los siguientes comandos (los más usados):

vgcreate
Para crear nuevos volúmenes de grupo.
vgscan
Para mostrar los volúmenes de grupo creados.
vgdisplay
Para mostrar las características de un volúmen de grupo.
vgremove
Para eliminar un volúmen de grupo.
vgreduce
Para eliminar volúmenes físicos de un volúmen de grupo.
vgexpand
Para añadir volúmenes físicos de un volúmen de grupo.

Crearemos un volúmen de grupo con el volúmen físico que hemos creado anteriormente:

RiGoDoN root # vgcreate data /dev/sda4
vgcreate -- INFO: using default physical extent size 4 MB
vgcreate -- INFO: maximum logical volume size is 14.09 Gigabyte
vgcreate -- doing automatic backup of volume group "data"
vgcreate -- volume group "data" successfully created and activated

Ahora podemos comprobar que la hemos creado:

RiGoDoN root # vgscan
vgscan -- reading all physical volumes (this may take a while...)
vgscan -- found active volume group "data"
vgscan -- "/etc/lvmtab" and "/etc/lvmtab.d" successfully created
vgscan -- WARNING: This program does not do a VGDA backup of your volume groups

Definir los volúmenes lógicos

Un volúmen lógico es el equivalente a una partición en un disco duro, y a nuestro uso, sera prácticamente lo mismo.

Los comandos mas usados son:

lvcreate
Para crear nuevos volúmenes lógicos.
lvscan
Para mostrar los volúmenes lógicos creados.
lvdisplay
Para mostrar las características de un volúmen lógico.
lvremove
Para eliminar un volúmen de lógico.
lvreduce
Para reducir el tamaño del volúmen lógico.
lvexpand
Para aumentar el tamaño del volúmen lógico.
lvrename
Para renombrar el tamaó del volúmen lógico.

Para ver las opciones de cada comando, recordar el man i el '-h' Crearemos una partición (las demás serían iguales):

RiGoDoN root # lvcreate -L1G -n musica /dev/data/
lvcreate -- rounding size up to physical extent boundary
lvcreate -- doing automatic backup of "data"
lvcreate -- logical volume "/dev/data/musica" successfully created

Ahora podemos listar todas nuestros volúmenes lógicos:

RiGoDoN etc # lvscan
lvscan -- ACTIVE "/dev/data/musica" [10 GB]
lvscan -- ACTIVE "/dev/data/opt" [1 GB]
lvscan -- ACTIVE "/dev/data/robert" [10 GB]
lvscan -- ACTIVE "/dev/system/distfiles" [10 GB]
lvscan -- ACTIVE "/dev/system/src" [1 GB]
lvscan -- ACTIVE "/dev/system/share" [1 GB]
lvscan -- ACTIVE "/dev/system/kde" [1 GB]
lvscan -- ACTIVE "/dev/system/libs" [512 MB]
lvscan -- 8 logical volumes with 34.50 GB total in 2 volume groups
lvscan -- 8 active logical volumes

Dar formato a los volúmenes lógicos

Ahora, ya podemos dar formato a nuestros volúmenes lógicos. Se trabaja con ellos exactamente igual que con una partición física, pero el dispositivo sera /dev/volume_group_name/logical_volum_name, en nuestro ejemplo, si quisieramos usar ext3 y montarlo en /home/musica, haríamos:

RiGoDoN etc # mke2fs -j /dev/data/musica
(...)
RiGoDoN etc # mount /dev/data/musica /home/musica
(...)

Y lo añadiríamos en el fstab.

Modificar el tamaño de tus volúmenes lógicos

Puede ser que en un momento dado nos interese aumentar o reducir el tamaño de alguna partición.

Primero de todo desmontaremos la particion (normalmente con el umount.

Tenemos dos opciones, o decirle el tamaño final de la partición:

RiGoDoN etc # lvextend -L10G /dev/data/musica
RiGoDoN etc # lvreduce -L1G /dev/data/musica

O bien decirle el tamaño a aumentar/reducir:

RiGoDoN etc # lvextend -L+1G /dev/data/musica
RiGoDoN etc # lvreduce -L-1G /dev/data/musica

Ahora, como usamos ext3, usaremos la herramienta resize2fs (del paquete e2fsprogs 1.19 o posteriores) para darle formato a la particion:

# resize2fs /dev/data/musica

Y volveremos a montar la partición, normalmente, con el mount.

Añadir particiones físicas a tus grupos de volúmenes

Puede ser que en algún momento nos quedemos sin espacio libre en un grupo de volúmenes, así que lo que haremos es añadir más volúmenes físicos al grupo:

RiGoDoN etc # pvcreate /dev/hdc1
RiGoDoN etc # vgextend data /dev/hdc1

Con la cual cosa ya podemos crear/aumentar las particiones lógicas.

Activando el LVM en el arranque

Para activar el Volum Manager en el arranque hay que colocar en un script de incio lo siguiente:


echo "Activando LVM..."
/sbin/vgchange -a y

¿Quieres sabes más?

Visita la web de los desarrolladores:
http://www.sistina.com
O bien leete el How-to completo:
http://www.mc.man.ac.uk/LDP/HOWTO/LVM-HOWTO/

Sacado de badopi.org




Mplayer como salvapantallas. 

En este articulo cuento como configurar mplayer y xscreensaver para que como salvapantallas salga un video.
Se supone que el xscreensaver está instalado y funcionando.

Hay que hacerse con las fuentes de mplayer y de xscreensaver y descomprimirlas

en el directorio resultante de desempaquetar mplayer se ejecuta:
./configure
que genera un fichero config.h

se busca en el directorio xscreensaver/utils/ el archivo vroot.h
y se copia al directorio de mplayer.

Se edita el fichero config.h
y al inicio se incluye:
#include "vroot.h"
se guardan los cambios y se ejecuta make y como root make install.

Despues se edita el fichero .xscreensaver del home y se añade:
"Mplayer" mplayer -rootwin -fs -loop 0 pelicula.avi &>/dev/null \n\
en la seccion de programas.




Get Firefox!

This page is powered by Blogger. Isn't yours?

GeoURL