Está en la página 1de 9

DiscosdelInfierno

IntroductinaLVM. Lamayoradelasinstalacionesquerealizamos,usandounaDistrocualquierasea,de ellas,comopuedeserdebian,redhat,TuquitooCondorlinux(1),serealizan,porlo generalutilizandodiscoscommunes. Imaginemosesto,quehacemosunainstalacin,dondeparticionamosdelasiguiente manera. / 10Gb /boot 200mb /var 1Gb Estapuedeserunatabladeparticionadogenrico,nodigoquesealamasptima,essolo paraejemplos. Supongamos,quenuestrodirectorio/var,estalleno,porqueestamosusandoun servidordecorreosendmail(2),ynosquedamossinespacio.Tambinsupongamos,que tenemostodoesteparticionadoenundiscoSerialAta,alqueelsistemalodetectocomo sda,yqueparadarlemasespacioa/var,deberaagregarunnuevodisco,ycopiartodos losdatosde/var/,alnuevodisco,crearlaparticinvafdisk,editarel/etc/fstab,ytodas esascosasqueUds,porsupuestoqueyasaben. Podramoshaberevitadoestodesdeelprincipio,sieneldiseodelaInstalacin Hubiramosoptadoporusar,LVM,oLinuxVolumeManager. VamosaDarunaDefinicindeLvm,peroparanorompernoslacabeza,voyatomar unadefinicindeDanielColetti,ensudocumento
Logical Volume Manager (LVM) . Administrador de Volmenes Lgicos. El LVM es un mdulo que se le agrega al ncleo Linux y genera una abstraccin entre los discos fsicos y los dispositivos para accederlos. Con la ayuda de herramientas de administracin, el administrador puede acceder a los beneficios de utilizar LVM. Bsicamente lo que se logra es tener un nuevo dispositivo que apunta no a un disco o una particin, sino a un grupo de discos y particiones como un todo (manejar muchos espacios de disco como si fuera un nico disco). Es importante aclarar, que si bien se puede migrar un OS, a LVM, lo mas conveniente es el diseo del LVM, antes del Comenzar la instalacin.

Para la siguiente explicacin, Utilizare una Instalacin en vmware, sobre debian etch.

Conceptos a Definir.
(Tambin tomado del mismo texto, de Daniel Coletti). Entrando en detalle vamos a encontrarnos inicialmente con tres nuevos conceptos que utiliza el LVM, Volumen Fsico, Volumen Lgico y Grupo Volumen. Los Volmenes Fsicos (VF) son los discos o particiones de un disco, los Volmenes Lgicos (VL) son dispositivos donde se pueden crear sistemas de archivos y por ltimo, el Grupo Volumen (GV) es un rea donde se juntan los VF y VL.

Una aclaracin fundamental.


Para que el Sistema Operativo trabaje con LVM, deber esto estar soportado en el kernel. Si bien el Kernel que utiliza debian etch, ya trae por defecto el soporte a LVM y a Raid, esta aclaracin es valida por si estamos compilando nuestro propio Kernel. Habilitando el Soporte a Raid y LVM en el Kernel: Multi-device support (RAID and LVM). -> .Logical volumen manager (LVM) support. Luego, lo que debemos hacer, es instalar el soporte a LVM, para eso, lo que debemos hacer, es debian:/#apt-get install lvm2 Vamos, a tomar una medicin de cuanto disco rgido tenemos ocupado en este momento.

debian:/#dfk S.ficherosBloquesde1KUsadoDisponUso%Montadoen /dev/sda32877872881244185044033%/ tmpfs12848401284840%/lib/init/rw udev1024068101721%/dev tmpfs12848401284840%/dev/shm /dev/sda22799992818823735311%/boot /dev/mapper/gv1vl1784557241175270352806%/var

Y luego, en el vmware, agrego un disco virtual, para hacer el sistema Volume Manager. Lo primero que debo hacer con este disco virtual, es formatearlo. debian:~# fdisk /dev/sdc Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel

Building a new DOS disklabel. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content won't be recoverable. The number of cylinders for this disk is set to 1044. 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) Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite) Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-1044, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-1044, default 1044): Using default value 1044 Command (m for help): t Selected partition 1 Hex code (type L to list codes): 8e Changed system type of partition 1 to 8e (Linux LVM) Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.

Loqueharemossobreestaparticincreada,esmontarunVolumenLgico,yluegole asignaremoseldirectorio/var.Luego,unavezqueelVolumenLgicoestecreado,le agregaremosotrodiscomas,de2GBaproximadamente. Loprimeroquehacemos,esgenerar pvcreate/dev/sdc1

Luego, vgcreategv1/dev/sdc1 Luego, lvcreateL7,6GBnvl1gv1

Luego, mkfs.ext3/dev/gv1/vl1 Montamoslaparticindelvolumen,paraverquetodoestemarchandocomoesperamos mount/dev/gv1/vl1/mnt Copiamostodolodel/var/actual,aloquevaaserelnuevo/var,queahoraestaen/mnt Nota: Quizastengasquehacer debian:/#aptgetinstallrsync Luego debian:/#rsyncax/var/./mnt Luego,movemoselactual/var,a/usr(Porejemplo,porsialgofalla).Porultimo, debemoseditarel/etc/fstab,paraquetengaunaaparienciaparecidaaesta.Nota:Entu equiposeguroseradistinto,esdependientealatabladeparticionamiento. debian:~#cat/etc/fstab #/etc/fstab:staticfilesysteminformation. # #<filesystem><mountpoint><type><options><dump><pass> proc/procprocdefaults00 /dev/sda3/ext3defaults,errors=remountro01 /dev/sda2/bootext3defaults02 /dev/sda1noneswapsw00 /dev/hdc/media/cdrom0udf,iso9660user,noauto00 /dev/gv1/vl1/varext3defaults,errors=remountro01 /dev/fd0/media/floppy0autorw,user,noauto00

Unavez,quehacemosesto,booteamoselequipo.Sitodoandabien,alrealizarunmount, veremosalgosimilaraesto. debian:~#mount /dev/sda3on/typeext3(rw,errors=remountro) tmpfson/lib/init/rwtypetmpfs(rw,nosuid,mode=0755) procon/proctypeproc(rw,noexec,nosuid,nodev) sysfson/systypesysfs(rw,noexec,nosuid,nodev) udevon/devtypetmpfs(rw,mode=0755) tmpfson/dev/shmtypetmpfs(rw,nosuid,nodev) devptson/dev/ptstypedevpts(rw,noexec,nosuid,gid=5,mode=620) /dev/sda2on/boottypeext3(rw) /dev/mapper/gv1vl1on/vartypeext3(rw,errors=remountro) Veamoslaltimalnea, /dev/mapper/gv1vl1on/vartypeext3(rw,errors=remountro) Estosignifica,queyatenemosunvolumenlgico,yenel,montadoeldirectorio/var.

Viendolasdiferencias:
Realizandoundf,vemosqueeltamaoocupadoen/,disminuyo,yquesegeneroun volumenlogico. debian:/#df S.ficherosBloquesde1KUsadoDisponUso%Montadoen /dev/sda32877872618312211337223%/ tmpfs12848401284840%/lib/init/rw udev1024068101721%/dev tmpfs12848401284840%/dev/shm /dev/sda22799992818823735311%/boot /dev/mapper/gv1vl1784557241175270352806%/var

AgregandoDiscosalvolumenlogico.
Supongamos,aunqueestenoeselcaso,quenecesitamosagregarundisconuevo,a nuestrovolumenlgico.Paraesto,conectamosundiscomas,quenuestroOS,lovaa detectarcomosdb,yobviamente,loformateamos. debian:/#pvcreate/dev/sdb1 Physicalvolume"/dev/sdb1"successfullycreated debian:/#vgextendgv1/dev/sdb1 Volumegroup"gv1"successfullyextended

debian:/#vgdisplayv Findingallvolumegroups Findingvolumegroup"gv1" Volumegroup VGNamegv1 SystemID Formatlvm2 MetadataAreas2 MetadataSequenceNo3 VGAccessread/write VGStatusresizable MAXLV0 CurLV1 OpenLV1 MaxPV0 CurPV2 ActPV2 VGSize9,99GB PESize4,00MB TotalPE2558 AllocPE/Size1946/7,60GB FreePE/Size612/2,39GB VGUUIDJ3TtQIwo2UIQgpDNvUjsNzlUo6yPjYHW

Logicalvolume LVName/dev/gv1/vl1 VGNamegv1 LVUUIDcqX3IWN1Gqxo75NQDJhFyZp6Ia0nVah6 LVWriteAccessread/write LVStatusavailable #open1 LVSize7,60GB CurrentLE1946 Segments1 Allocationinherit Readaheadsectors0 Blockdevice253:0 Physicalvolumes PVName/dev/sdc1 PVUUIDgMTq2tH27D7X1avRARBJfo56KWoCR02x PVStatusallocatable TotalPE/FreePE2047/101 PVName/dev/sdb1 PVUUIDQ4FSVyIzHdGZHxbj0JsW6j7aJBo1HW80 PVStatusallocatable TotalPE/FreePE511/511

debian:/#lvextendL+1,6G/dev/gv1/vl1 Roundingupsizetofullphysicalextent1,60GB Extendinglogicalvolumevl1to9,20GB Logicalvolumevl1successfullyresized

debian:/#resize2fsp/dev/gv1/vl1 resize2fs1.40WIP(14Nov2006) Filesystemat/dev/gv1/vl1ismountedon/var;onlineresizingrequired olddesc_blocks=1,new_desc_blocks=1 Performinganonlineresizeof/dev/gv1/vl1to2412544(4k)blocks. Thefilesystemon/dev/gv1/vl1isnow2412544blockslong. Ahora,realizaremosundfk,paraverlanuevaasignaciondeespacio.

debian:/#df S.ficherosBloquesde1KUsadoDisponUso%Montadoen /dev/sda32877872618316211336823%/ tmpfs12848401284840%/lib/init/rw udev1024068101721%/dev tmpfs12848401284840%/dev/shm /dev/sda22799992818823735311%/boot /dev/mapper/gv1vl1949825641175686052405%/var Yvemos,conenlaultimalinea,disponemosdemayorespacioenvar.Conesto, podemosimaginarnosunmontndeutilidades. Porultimo,voyadejar,uncompendiodecomandosquetambinvoyasacardel excelenteapuntedeDanielColetti,
Comandos de volmenes fsicos pvchangeCambia los atributos de un volumen fsico pvcreateCrea un volumen fsico pvdataMuestra informacin de depuracin sobre un volumen fsico pvdisplayMuestra informacin sobre un volumen fsico pvmoveMueve extensiones fsicas de un volumen fsico a otro. pvscanLocaliza y enumera todos los volmenes fsicos

Comandos de Grupo Volumen vgcfgbackupHace una copia del rea del descriptor de grupo volumen vgcfgrestoreRecupera el rea del descriptor de grupo volumen al disco vgchangeCambia los atributos de un grupo volumen vgckComprueba la consistencia del rea del descriptor de grupo volumen vgcreateCrea un grupo volumen a partir de volmenes fsicos vgdisplayMuestra los atributos de un grupo volumen vgexportExporta un grupo volumen del sistema vgextendAade volmenes fsicos a un grupo volumen vgimportImporta un grupo volumen al sistema vgmergeCombina dos grupos volumen vgmknodesCombina un directorio y los archivos especiales de un grupo volumen vgreduceElimina volmenes fsicos de un grupo volumen vgremoveElimina un grupo volumen vgrenameRenombra un grupo volumen vgscanLocaliza y enumera todos los grupos volumen del sistema vgsplitDivide un grupo volumen

ComandosdeVolumenLgico
lvchangeCambia los atributos de un volumen lgico lvcreateCrea un volumen lgico

lvdisplayMuestra los atributos de un volumen lgico lvextendIncrementa el tamao de un volumen lgico lvreduceReduce el tamao de un volumen lgico lvremoveElimina un volumen lgico lvrenameRenombra un volumen lgico lvscanLocaliza y enumera todos los volmenes lgicos, creando /etc/lvmtab y

/etc/lvmtab.d/*

Comandos de Administracin de Volmenes Lgicos


lvmchangeCambia los atributos del sistema LVM lvmdiskscanLocaliza y enumera todos los discos disponibles, los dispositivos

mltiples y las particiones lvmsadcRecoge informacin sobre la actividad de LVM lvmsarMuestra informacin sobre la actividad de LVM

Referencias: DanielColetti:AdministradordeVolmenesLgicosenLinux. MarcosRuso:Ayudaparaentenderlamagia.

También podría gustarte