|
|||||||||||||
| Registrarse | FAQ/Ayuda | Posts de hoy | Tags | ||||||||||
|
| |||
| Tags: Ninguna | |||
|
|
|
LinkBack (19) | Herramientas |
|
|
#1
|
|
pingüino mal genio
|
[GUIA] manejo básico de lvm
Intro.
Qué es LVM? LVM es el acrónimo de Logical Volume Manager, es una capa de software que nos permite manejar particiones. Qué gracia tiene? Nos permite agrandar particiones en caliente, o sea mientras la partición está en uso, también nos permite achicar particiones (no en caliente), agregar/sacar discos de un volumen, etc. etc. LAVADO DE MANOS: Algunos de los procedimientos descritos en esta guía son peligrosos, chw.net, OrangeBOX y Yakko no son responsables por posibles perdidas de datos. pueden continuar leyendo sin miedo ![]() Vamos al hueso. Esto se puede hacer durante la instalación de tu distro favorita (exepto en *buntu que no tiene soporte )ya que en cada distro se hace de distinta forma vamos a configurar un lvm desde cero con la distro ya instalada. voy a instalar un nuevo disco ide en mi máquina imaginaria ( soy un ñoño de elite este nuevo disco será /dev/hdb de 80gb. 1) Necesitamos hacer una partición para el lvm, para eso usaremos FDISK (nada de mariconadas como partition magic )-Para acceder al disco con fdisk usamos el siguiente comando: Code:
#fdisk /dev/hdb devería verse algo así: Code:
Command action a toggle a bootable flag b edit bsd disklabel c toggle the dos compatibility flag d delete a partition l list known partition types m print this menu n add a new partition o create a new empty DOS partition table p print the partition table q quit without saving changes s create a new empty Sun disklabel t change a partition's system id u change display/entry units v verify the partition table w write table to disk and exit x extra functionality (experts only) -Seleccionamos la opción "n" (nueva partición) Code:
e extended p primary partition (1-4) Code:
Partition number (1-4): Code:
First cylinder (1-4161, default 1): Code:
Last cylinder or +size or +sizeM or +sizeK (1-4161, default 4161): Code:
+40960M esto nos devolverá al "menú central" del fdisk, solo nos falta un detalle y podrémos guardar los cambios. debemos cambiar el ID de la partición para usar LVM. -Usamos la opción "t" y presionamos enter. -Luego presionamos "L" para ver la lista de IDs disponibles Code:
0 Empty 1e Hidden W95 FAT1 80 Old Minix be Solaris boot 1 FAT12 24 NEC DOS 81 Minix / old Lin bf Solaris 2 XENIX root 39 Plan 9 82 Linux swap / So c1 DRDOS/sec (FAT- 3 XENIX usr 3c PartitionMagic 83 Linux c4 DRDOS/sec (FAT- 4 FAT16 <32M 40 Venix 80286 84 OS/2 hidden C: c6 DRDOS/sec (FAT- 5 Extended 41 PPC PReP Boot 85 Linux extended c7 Syrinx 6 FAT16 42 SFS 86 NTFS volume set da Non-FS data 7 HPFS/NTFS 4d QNX4.x 87 NTFS volume set db CP/M / CTOS / . 8 AIX 4e QNX4.x 2nd part 88 Linux plaintext de Dell Utility 9 AIX bootable 4f QNX4.x 3rd part 8e Linux LVM df BootIt a OS/2 Boot Manag 50 ******* DM 93 Amoeba e1 DOS access b W95 FAT32 51 ******* DM6 Aux 94 Amoeba BBT e3 DOS R/O c W95 FAT32 (LBA) 52 CP/M 9f BSD/OS e4 SpeedStor e W95 FAT16 (LBA) 53 ******* DM6 Aux a0 IBM Thinkpad hi eb BeOS fs f W95 Ext'd (LBA) 54 *******DM6 a5 FreeBSD ee EFI GPT 10 OPUS 55 EZ-Drive a6 OpenBSD ef EFI (FAT-12/16/ 11 Hidden FAT12 56 Golden Bow a7 NeXTSTEP f0 Linux/PA-RISC b 12 Compaq diagnost 5c Priam Edisk a8 Darwin UFS f1 SpeedStor 14 Hidden FAT16 <3 61 SpeedStor a9 NetBSD f4 SpeedStor 16 Hidden FAT16 63 GNU HURD or Sys ab Darwin boot f2 DOS secondary 17 Hidden HPFS/NTF 64 Novell Netware b7 BSDI fs fd Linux raid auto 18 AST SmartSleep 65 Novell Netware b8 BSDI swap fe LANstep 1b Hidden W95 FAT3 70 DiskSecure Mult bb Boot Wizard hid ff BBT 1c Hidden W95 FAT3 75 PC/IX ![]() El código de lvm es "8e" -Escribimos "8e" y presionamos enter (sin las comillas) deberíamos ver algo como esto: Code:
Hex code (type L to list codes): 8e Changed system type of partition 1 to 8e (Linux LVM) NOTA: en algunos casos la tabla de particiones no se puede leer re inmediato, en algunos sistemas operativos de juguete (MS ) es necesario reiniciar, en linux no vamos a reiniciar -Para releer la tabla de particiones ejecutamos: Code:
#partprobe Ya está creada la partición y podemos verla con fdisk, debe verse así: Code:
#fdisk -l Disk /dev/hdb: 80GB, 883738muchos bytes 16 heads, 63 sectors/track, 4161 cylinders Units = cylinders of 1008 * 512 = 516096 bytes Device Boot Start End Blocks Id System /dev/hdb1 1 4161 2097112+ 8e Linux LVM esto es muy fácil, solo ejecutamos lo siguiente en nuestra nueva partición hdb1 Code:
#pvcreate /dev/hdb1 Physical volume "/dev/hdb1" successfully created 3) ahora ya podemos crear nuestro VG (volume group). el VG es como nuestro disco duro desde ahora en adelante, dentro de este vamos a crear las particiones o "LVMs". para crear nuestro VG usamos el siguiente comando Code:
#vgcreate narf /dev/hdb1 Volume group "narf" successfully created ya podemos ver que nuestro VG está creado y sus características con: Code:
#vgdisplay --- Volume group --- VG Name narf System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 1 VG Access read/write VG Status resizable MAX LV 0 Cur LV 0 Open LV 0 Max PV 0 Cur PV 1 Act PV 1 VG Size 80.00 GB PE Size 4.00 MB Total PE 511 Alloc PE / Size 0 / 0 Free PE / Size 511 / 80.00 GB VG UUID zudzpN-E5Ff-2pG2-k55o-UItJ-LnXq-PMpYN3 NOTA: un VG SIEMPRE debe tener espacio libre, si no tiene espacio libre casi no tiene sentido usar LVM. 4) ya podemos crear nuestros LVMs (particiones) para esto el comando es el siguiente: Code:
#lvcreate -n respaldo -L10G narf Logical volume "respaldo" created -L tamaño, puede ser en M (megas) G (gigas) T (teras) "narf" es el VG al cual va a pertenecer (puedes tener muchos VGs) NOTA: tanto para los VG como para los LVM es importante ponerles un nombre acorde a lo que se va a hacer en el, solo por una cosa de orden y recuperación de desastres, por ejemplo el lvm que se usará para "respaldo" que se llame "respaldo" ya podemos ver info sobre los LVMs que hay en la máquina: Code:
#lvdisplay --- Logical volume --- LV Name /dev/narf/respaldo VG Name narf LV UUID Rm6udU-Bhno-g23F-JkSV-WhI1-ygsW-AChfS5 LV Write Access read/write LV Status available # open 0 LV Size 10.00 GB Current LE 256 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:2 A) /dev/nombredelVG/nombredelLVM en mi caso /dev/narf/respaldo B) /dev/mapper/nombredelVG-nombredelLVM en mi caso /dev/mapper/narf-respaldo A es un link simbólico a B. NOTA: todos los comandos de lvm deben usar el tipo A, para las llamadas de sistema, montajes, clonaciones etc etc, se pueden usar los 2 tipos. 5) Nos falta formatearla OJO!!!: linux no es como los SO para niñitas, el formateo no pregunta si estás seguro o no, primero formatea y después te avisa. Code:
#mkfs.ext3 /dev/narf/respaldo Code:
#mount /dev/narf/respaldo /mnt Code:
#df -hT
Filesystem Type Size Used Avail Use% Mounted on
dev/mapper/narf-respaldo
ext3 10G 34M 10G 0% /mnt
Code:
#mount /dev/mapper/narf-respaldo on /mnt type ext3 (rw) el sistema está listo para producción .....algunos meses después..... ....emergencia!!!!! partición de respaldo llena de porn ![]() ya no nos queda espacio en el servidor Esto es realmente crítico cuando pasa en "/var", en "/tmp" y en "/" muchos servicios dejan de funcionar, si "/var" está lleno no se pueden escribir logs ni PIDs, esto es un desastre ![]() Code:
#df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/narf-respaldo
ext3 10G 10G 0M 100% /mnt
la partición está llena ![]() LVM al rescate. lo primero que debemos hacer es ver cuando espacio tenemos libre en nuestro VG. Code:
#vgdisplay --- Volume group --- VG Name narf System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 1 VG Access read/write VG Status resizable MAX LV 0 Cur LV 0 Open LV 0 Max PV 0 Cur PV 1 Act PV 1 VG Size 80.00 GB PE Size 4.00 MB Total PE 511 Alloc PE / Size 0 / 0 Free PE / Size 511 / 60.00 GB VG UUID zudzpN-E5Ff-2pG2-k55o-UItJ-LnXq-PMpYN3 (Free PE / Size 511 / 60.00 GB) vamos a agrandar el LVM "respaldo" usando parte de estos 60GB libres. le vamos a sumar 15GB a los 10GB que ya tiene asignados para eso usamos el comando LVRESIZE Code:
#lvresize /dev/narf/respaldo -L+15G Extending logical volume respaldo to 25GB Logical volume respaldo successfully resized pero si revisamos de nuevo el espacio usado... Code:
#df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/narf-respaldo
ext3 10G 10G 0M 100% /mnt
sigue igual!!!!claro, agrandamos el LVM (partición) pero no agrandamos el sistema de archivos. para eso usamos el comando RESIZE2FS. Code:
#resize2fs /dev/narf/respaldo resize2fs 1.39 (29-May-2006) Filesystem at /dev/narf/respaldo is mounted on /mnt; on-line resizing required Performing an on-line resize of /dev/narf/respaldo to 3901asdf3443 (4k) blocks. The filesystem on /dev/narf/respaldo is now 390134asdf44 blocks long. En el caso de SuSe que usa por defecto REISERFS el comando para el "resize-online" es RESIZE_REISERFS. En versiones antiguas no es posible hacer el resize-online (hay que desmontar) y si revisamos ahora el espacio? Code:
#df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/narf-respaldo
ext3 25G 10G 15G 40% /mnt
![]() así de fácil es agrandar una partición usando LVM. ![]() Pero que pasa si no hay espacio disponible en el VG, esto es realmente un problema y es bastante delicado revisamos el espacio del VG Code:
#vgdisplay --- Volume group --- VG Name narf System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 1 VG Access read/write VG Status resizable MAX LV 0 Cur LV 0 Open LV 0 Max PV 0 Cur PV 1 Act PV 1 VG Size 80.00 GB PE Size 4.00 MB Total PE 511 Alloc PE / Size 0 / 0 Free PE / Size 511 / 0.00 GB VG UUID zudzpN-E5Ff-2pG2-k55o-UItJ-LnXq-PMpYN3 no hay espacio para reasignar.que hacemos, vemos alguno de los LVM que tiene espacio de sobra y lo vamos a achicar... para esta prueba también voy a usar el LVM "respaldo" Comenzamos... OJO!!!!: esto es sumamente delicado, si algo falla en el proceso TODOS los datos de la partición se perderán, no hagan esto sin un backup o sin vaselina. SE DEBEN SEGUIR LOS SIGUIENTES PASOS EN ORDEN Y SIN SALTARSE NINGUNO. 1) Lo primero que hay que hacer es ver cuanto espacio tiene usado la partición que vamos a achicar (claro, no podemos achicarla más de lo que tiene usado :dirturbed ) Code:
#df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/narf-respaldo
ext3 25G 10G 15G 40% /mnt
2) Desmontamos la partición. (aun no se puede hacer esto en caliente Code:
umount /dev/narf/respaldo Code:
#fsck -f /dev/narf/respaldo fsck 1.39 (29-May-2006) e2fsck 1.39 (29-May-2006) Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information /dev/narf/respaldo: 22/196608 files (4.5% non-contiguous), 17730/390144 blocks NOTA: el FSCK SOLO debe correrse con la particion desmontada, de lo contrario puede causar daños graves a la partición, entre ellos la perdida de todos los datos. Ahora, al revés del procedimiento de agrandar, debemos achicar primero el file-system y después achicamos el LVM. 4) Achicando el file-system a 15GB (era de 25GB) Code:
# resize2fs /dev/narf/respaldo 15G resize2fs 1.39 (29-May-2006) Resizing the filesystem on /dev/narf/respaldo to 262144 (4k) blocks. The filesystem on /dev/narf/respaldo is now 262144 blocks long. 5) Ahora achicamos el LVM... PERO!! nunca al mismo tamaño que el file-system, debe ser un poco más (por seguridad) Code:
# lvresize /dev/narf/respaldo -L16G /dev/cdrom: open failed: Read-only file system WARNING: Reducing active logical volume to 16 GB THIS MAY DESTROY YOUR DATA (filesystem etc.) Do you really want to reduce respaldo? [y/n]: ![]() Le decimos si ("y" Code:
Do you really want to reduce respaldo? [y/n]: y Reducing logical volume respaldo to 16 GB Logical volume respaldo successfully resized Code:
#mount /dev/narf/respaldo /mnt Si dice "bad super-block" o algo similar... actualicen su CV ![]() Revisamos el espacio libre con: Code:
#df -hT Code:
#vgdisplay ![]() Lo recuperamos fácilmente corriendo: Code:
#resize2fs /dev/narf/respaldo resize2fs 1.39 (29-May-2006) Filesystem at /dev/narf/respaldo is mounted on /mnt; on-line resizing required Performing an on-line resize of /dev/narf/respaldo to 307200 (4k) blocks. The filesystem on /dev/narf/respaldo is now 307200 blocks long. Si siguieron todos los pasos la partición habrá sobrevivido y ahora tienen espacio libre. Adicional: -Para remover un LVM (más fácil si necesitas espacio y tienes un LVM que no usas) Code:
#lvremove /dev/narf/respaldo Do you really want to remove active logical volume "respaldo"? [y/n]: y Logical volume "respaldo" successfully removed -Para remover un VG sin uso. Code:
vgremove narf Volume group "narf" successfully removed -Para remover un PV sin uso (sacar un disco del LVM) Code:
pvremove /dev/hdb1 Labels on physical volume "/dev/hdb1" successfully wiped Espero que les sea útil a todos PD1: esta guía fue hecha a petición de Rotten PD2: propiedad intelectual de yakko e OrangeBOX SA. Editado por yakko en 13-dic-2010 a las 18:41. |
|
|
|
|
|
#2 |
|
Fuck the Police!!!
Moderador
![]() |
Re: [GUIA] manejo básico de lvm
maravillozo ahora la pregunta del millon, para nosotros los mortales. Como para agrandar una particion, debo achicar otra... ¿Como achico.?
|
|
|
|
|
|
#3 |
|
The Omen Fanboy
![]() |
Re: [GUIA] manejo básico de lvm
LVM ftw!!!!!
... a meter mano mier!!! saludos y gracias por la guia yakko... |
|
|
|
|
|
#4 |
|
pingüino mal genio
|
Re: [GUIA] manejo básico de lvm
|
|
|
|
|
|
#5 | |
|
Castigado
Registrado: septiembre-2004
Ubicación: > Temuco
Posts: 8.475
![]() |
Re: [GUIA] manejo básico de lvm
Quote:
excelente.Muy buena guia, se agradece el material |
|
|
|
|
|
|
#6 |
|
RHCE V6
|
Re: [GUIA] manejo básico de lvm
Excelente aporte yakko, pregunta ... estay con Insomnio ??.
|
|
|
|
|
|
#7 | |
|
pingüino mal genio
|
Re: [GUIA] manejo básico de lvm
Quote:
al menos fue productiva la noche ![]() |
|
|
|
|
|
|
#8 |
|
RHCE V6
|
Re: [GUIA] manejo básico de lvm
|
|
|
|
|
|
#9 |
|
pingüino mal genio
|
Re: [GUIA] manejo básico de lvm
yo hice 3 guías al hilo anoche
![]() me voy a dormir. saludos. |
|
|
|
|
|
#10 |
|
Designer in progress
![]() |
Re: [GUIA] manejo básico de lvm
yakko!ademas esta re entretenida, no la leo detenidamente ahora porque ando estudiando, pero puta que me cague de la risa con la redaccion ![]() Saludos, y gracias por el aportazo! |
|
|
|
|
|
#11 |
|
fondo de botella user
![]() |
Re: [GUIA] manejo básico de lvm
wena guia
---- pregunta. como es el impacto en rendimiento de los lvm en un sistema? como no he tenido nunca que instalar uno Editado por neoyagami en 30-sep-2008 a las 17:20. Razón: Post unidos |
|
|
|
|
|
#12 | |
|
pingüino mal genio
|
Re: [GUIA] manejo básico de lvm
Quote:
en un pc con uso normal tampoco se nota. si lo pones en un server con muchísima carga i/o y tienes una controladora de juguete, se nota un poco. deberías haberlo usado |
|
|
|
|
|
|
#13 |
|
GΣΣK
![]() |
Re: [GUIA] manejo básico de lvm
Que buena guia yakko
![]() se ve bastante simple, creo que haré la prueba cuando haga una mini red en mi casa saludos |
|
|
|
|
|
#14 | |
|
fondo de botella user
![]() |
Re: [GUIA] manejo básico de lvm
Quote:
eh verda ![]() nunca lo he usado/instalado/configurado. ya que el sistema de particionado que usan donde trabajo por lo general no genera problemas de tamaño ahora plz. oz recuerdo que lo pokito que casho ha sido netamente por necesidad mas que por un standard de servicios asi que aunke aun tengo el cargo hay gente que me supera saludos |
|
|
|
|
|
|
#15 |
|
Usuario
![]() Registrado: julio-2006
Posts: 461
![]() |
Re: [GUIA] manejo básico de lvm
Gracias por la guia!, gran trabajo, en SLED 10 hay un bonito asistente para esto, en OpenSuse no tengo idea.
Saludos! |
|
|
|
|
|
#16 | |
|
pingüino mal genio
|
Re: [GUIA] manejo básico de lvm
Quote:
en suse está yast en redhat based está "system-config-lvm" etc etc etc pero todos se usan de distinta manera, por la consola se usa igual en todas las distros |
|
|
|
|
|
|
#17 |
![]() |
Re: [GUIA] manejo básico de lvm
Gran guia, y la redacción esta muy buena, es muy entretenido leer una gua asi
|
|
|
|
|
|
#18 |
|
IBMer
![]() |
Re: [GUIA] manejo básico de lvm
Mi perra... No me contestas en skype pero me haces arreglar las tonteras igual... demasiado wena la guía!!!
|
|
|
|
|
|
#19 |
|
Registrado: agosto-2008
Posts: 215
![]() |
Re: [GUIA] manejo básico de lvm
Le puse unos valores, cuando ponía vgdisplay y el otro comando me salían otros valores na' que ver.... en fin, me resultó un completo desastre.
Code:
fdisk -l Disco /dev/sda: 8589 MB, 8589934592 bytes 255 heads, 63 sectors/track, 1044 cylinders Units = cilindros of 16065 * 512 = 8225280 bytes Disk identifier: 0x000bbe8c Disposit. Inicio Comienzo Fin Bloques Id Sistema /dev/sda1 * 1 25 200781 83 Linux /dev/sda2 26 1044 8185117+ 8e Linux LVM Code:
df -h
S.ficheros Tamaño Usado Disp Uso% Montado en
/dev/mapper/VolGroup00-LogVol00
6,9G 3,6G 3,0G 55% /
/dev/sda1 190M 14M 167M 8% /boot
tmpfs 196M 76K 196M 1% /dev/shm
![]() ![]() . Si me pasa una tragedia no importa, porque estoy en un Fedora 10 instalado en una máquina virtual. Si a alguien le pasó lo mismo. podría compartir la experiencia. Saludos. |
|
|
|
|
|
#20 |
|
Experimentado
![]() |
Re: [GUIA] manejo básico de lvm
Este buena la guia, ahora solo falta la parte de rescatar los datos cuando el sistema no bootea de forma normal y debes iniciar con el CD en modo rescue
ahi tienes para hacer otra guia mas corta pero con mucho power saludos |
|
|
|
|
| Herramientas | |
|
|
|||||