Logical Volume Manager (LVM) es un sistema de gestión de volumen de datos muy potente para Linux. Le permite crear volúmenes lógicos sobre particiones físicas (o incluso discos duros no particionados), que en el propio sistema serán visibles como dispositivos de bloque ordinarios con datos (es decir, como particiones ordinarias). Las principales ventajas de LVM son que, en primer lugar, se puede crear un grupo de volúmenes lógicos sobre cualquier cantidad de particiones físicas y, en segundo lugar, el tamaño de los volúmenes lógicos se puede cambiar fácilmente durante la operación. Además, LVM admite el mecanismo de instantáneas, la copia de particiones sobre la marcha y la duplicación similar a RAID-1.
Si planea trabajar mucho con LVM, puede ejecutar un "shell" especial con el comando sudo lvm. El comando de ayuda mostrará una lista de comandos.
Como ya se señaló, LVM está construido sobre la base de particiones. disco duro y/o entero unidades de disco duro. En cada uno de los discos/particiones se debe crear volumen físico(volumen físico). Por ejemplo, usamos un disco para LVM sda y sección sdb2:
pvcreate /dev/sda pvcreate /dev/sdb2
Sobre estos volúmenes físicos creamos grupo de volumen, que se llamará, digamos, vg1:
Vgcreate -s 32M vg1 /dev/sda /dev/sdb2
Veamos la información sobre nuestro grupo de volumen:
vg pantalla vg1
Puede crear varios grupos, cada uno con su propio conjunto de volúmenes. Pero por lo general esto no es necesario.
Ahora en el grupo de volumen puedes crear volúmenes lógicos lv1 Y lv2 20 GB y 30 GB respectivamente:
Lvcreate -n lv1 -L 20G vg1 lvcreate -n lv2 -L 30G vg1
Ahora tenemos dispositivos de bloque /dev/vg1/lv1 Y /dev/vg1/lv2.
Queda por crear un sistema de archivos en ellos. No hay diferencias con las secciones habituales:
mkfs.ext4 /dev/vg1/lv1 mkfs.reiserfs /dev/vg1/lv2
La eliminación de LVM (o partes individuales de él, como volúmenes lógicos o grupos de volúmenes) se produce en orden inverso- primero debe desmontar las particiones, luego eliminar los volúmenes lógicos (lvremove), luego puede eliminar los grupos de volúmenes (vgremove) y los volúmenes físicos innecesarios (pvremove).
Para agregar nuevo disco duro sdc en un grupo de volúmenes, cree un volumen físico:
pvcreate /dev/sdc
Y añádelo a nuestro grupo:
Vgextend vg1 /dev/sdc
Ahora puede crear otro disco lógico (lvcreate) o aumentar el tamaño del existente (lvresize).
Para eliminar un disco duro de un grupo de volúmenes en ejecución sda Primero, transferiremos todos los datos de él a otros discos:
pvmove /dev/sda
Luego elimínelo del grupo de volúmenes:
Vgreduce vg1 /dev/sda
Y finalmente, elimine el volumen físico:
Pvremove /dev/sda
En realidad, el último comando simplemente elimina la marca de que el disco es miembro de lvm y no brinda muchos beneficios. Después de la eliminación de LVM, el disco tendrá que volver a particionarse/formatearse para su uso posterior.
LVM facilita el cambio de tamaño de los volúmenes lógicos. Para hacer esto, primero debe cambiar el volumen lógico en sí:
Lvresize -L 40G vg1/lv2
y luego el sistema de archivos en él:
resize2fs /dev/vg1/lv2 resize_reiserfs /dev/vg1/lv2
Redimensionar un volumen físico es una tarea muy compleja y no se suele utilizar. Es más razonable y seguro eliminar el volumen físico, cambiar el tamaño de la partición y volver a crear el volumen.
Si LVM no se instala para un uso posterior, sino para "mirar", los discos y las particiones se pueden reemplazar con archivos. No se necesitan discos ni máquinas virtuales adicionales. Crearemos unidades virtuales y trabajaremos con ellas. Por ejemplo, puede crear 4 discos de 1 GB cada uno, pero puede crear otra cantidad de tamaños más grandes o más pequeños a su gusto. Creamos los archivos nosotros mismos, simulando dispositivos:
Mkdir /mnt/sdc1/lvm cd /mnt/sdc1/lvm dd if=/dev/cero de=./d01 cuenta=1 bs=1G dd if=/dev/cero de=./d02 cuenta=1 bs=1G dd si=/dev/cero de=./d03 cuenta=1 bs=1G dd si=/dev/cero de=./d04 cuenta=1 bs=1G
Cree dispositivos de bucle invertido a partir de archivos:
Losetup -f --show ./d01 losetup -f --show ./d02 losetup -f --show ./d03 losetup -f --show ./d04
pvcreate /dev/loop0 pvcreate /dev/loop1 pvcreate /dev/loop2 pvcreate /dev/loop3 vgcreate -s 32M vg /dev/loop0 /dev/loop1 /dev/loop2 /dev/loop3 lvcreate -n primero -L 2G vg lvcreate -n segundo -L 400M vg ...
Una de las características más importantes de LVM es el soporte para el mecanismo de instantáneas. Las instantáneas le permiten instantáneo una instantánea del volumen lógico y utilizarlo más tarde para trabajar con datos.
LVM se usa activamente cuando se necesita un mecanismo de instantáneas. Por ejemplo, este mecanismo es extremadamente importante cuando se realizan copias de seguridad de archivos que cambian constantemente. LVM le permite congelar un cierto estado del sistema de archivos y copiar todos los datos necesarios de él, mientras que no necesita detener la grabación en el sistema de archivos original.
Las instantáneas también se pueden usar para organizar el soporte. servidor de archivos con el mecanismo Samba para copias de archivo, sobre esto en el artículo correspondiente:
Si necesita trabajar con LVM desde Ubuntu LiveCD, deberá realizar algunos pasos adicionales, ya que no hay utilidades para trabajar con LVM de forma predeterminada.
Primero necesitas instalar estas utilidades:
sudo vgscan sudo vgdisplay TU NOMBRE_VG
Sudo vgchange -ay
Este comando debería informar que todos sus volúmenes lógicos están activados. Ahora puedes trabajar con ellos de la forma habitual.
Las secciones clásicas en las que se divide con mayor frecuencia. disco duro para la instalación del sistema y el almacenamiento de datos, tengo una serie de inconvenientes importantes. Su tamaño es muy difícil de cambiar, están en secuencia estricta y solo tomando una pieza de la primera sección y agregando a la última no funcionará si hay más secciones entre ellas. Por lo tanto, muy a menudo, durante la partición inicial de un disco duro, los usuarios se preguntan cuánto espacio asignar para una partición en particular. Y casi siempre en el proceso de usar el sistema llegan a la conclusión de que tomaron la decisión equivocada.
La tecnología LVM puede resolver la mayoría de estos problemas. Crea una abstracción adicional: volúmenes lógicos que son visibles en el sistema como particiones ordinarias, pero no lo son. Tiene una serie de ventajas:
Los volúmenes lógicos LVM ya no están vinculados a una ubicación física. Dentro de LVM, no existe el orden de volumen lógico en absoluto.
El tamaño de los volúmenes lógicos se puede aumentar sobre la marcha, y los volúmenes desmontados también se pueden reducir fácilmente en tamaño sin salir del sistema.
Si es necesario, puede repartir volúmenes lógicos en varios unidades de disco duro aumentando así el espacio disponible. En este caso, el sistema seguirá viendo solo un volumen lógico, aunque su tamaño superará los tamaños disponibles de los discos duros. También puede hacer lo contrario quitando el disco duro de LVM, liberándolo así para otros usos.
LVM admite el mecanismo de instantáneas: copias instantáneas del sistema de archivos del volumen. Esto puede ser muy útil para crear copias de seguridad.
Hay muchas más ventajas que puedes leer en artículos especializados sobre LVM.
Ubuntu es totalmente compatible con LVM, sin embargo, desde la versión de escritorio disco de instalación Se han eliminado las utilidades necesarias para trabajar con LVM. Además, el instalador de la versión de escritorio no sabe cómo modificar los volúmenes LVM. Entonces, si desea usar LVM, tendrá que instalar el sistema desde un disco alternativo o hacer un poco de trampa con un LiveCD normal. La instalación con Alternate es inconveniente y causa incomodidad para muchos, y además, la mayoría de las veces el disco Alternate no está disponible, así que consideremos la opción LiveCD.
Tenga en cuenta que LVM se gestiona a través del terminal, por lo que para no romper nada, primero debe aprender a trabajar con mayor o menor comodidad con él. Además, familiarícese con los principios de funcionamiento y los conceptos básicos de LVM para comprender de qué se trata. El artículo no está destinado a principiantes, sino a aquellos que ya conocen los conceptos básicos de Ubuntu.
Debe iniciar el sistema desde el LiveCD y conectar su computadora a Internet. A continuación, abra el terminal e instale las utilidades necesarias directamente en la sesión de LiveCD con el comando:
sudo apt-get install lvm2Todo, ahora puedes empezar a trabajar con LVM. Pero primero, debemos asignar un lugar donde crearemos LVM. Para hacer esto, necesitará el editor de particiones Gparted, que se encuentra en el menú Sistema → Administración (Sistema → Administración).
Debido a las características Cargador de arranque GRUB es mejor hacer una pequeña partición separada para /boot cuando se usa LVM. Digamos que 200Mb debería ser suficiente.
Crear con Gparted / partición de arranque y la partición sobre la que implementará LVM. Si está listo para asignar bajo LVM todo disco duro, recuerde que la partición /boot de su Ubuntu debe estar en una partición que no sea LVM. Por lo tanto, necesitará dos particiones: 200 Mb en /boot y todo lo demás en LVM. No seleccione ningún sistema de archivos para Partición LVM- solo una sección vacía (sin formato). No olvide que para aplicar todos los cambios que realizó a través de Gparted, debe hacer clic en la marca de verificación verde en la barra superior o seleccionar Aplicar en el menú Editar.
Una vez que los cambios en el marcado se hayan realizado con éxito, deberá cambiar el tipo de la sección que necesita LVM de Linux. Para hacer esto, haga clic derecho en la sección y seleccione "Administrar banderas". En la ventana que se abre, marque la casilla con el nombre lvm, espere hasta que se apliquen todos los cambios y cierre Gparted. En esta etapa preparatoria se completa.
Ahora es el momento de comenzar a crear LVM directamente. Por ejemplo, supondremos que estamos creando LVM encima de la partición /dev/sda1. En este caso, primero debe inicializar la partición física con el comando:
sudo pvcreate /dev/sda1 sudo vgcreate local /dev/sda1Y finalmente, cree los volúmenes lógicos que necesita. Vale la pena señalar aquí que dado que es fácil aumentar el tamaño de los volúmenes LVM directamente en un sistema en ejecución, es mejor asignar el tamaño mínimo requerido para los volúmenes lógicos. No tenga miedo de que quede un gran volumen sin asignar dentro del grupo de volúmenes, no se perderá. Tan pronto como necesite espacio adicional, puede agregarlo fácilmente a cualquier volumen lógico. Pero reducir el tamaño de un volumen lógico es mucho más difícil.
Por lo general, la instalación de un sistema requiere una partición raíz, una partición /home, una partición de intercambio y, a veces, una partición de datos. Puede crear volúmenes lógicos para estas cuatro tareas con los comandos:
sudo lvcreate -L 7G -n raíz local sudo lvcreate -L 5G -n inicio local sudo lvcreate -L 3G -n intercambio local sudo lvcreate -L 10G -n datos localEl parámetro -n, si aún no lo ha entendido, establece el nombre del volumen lógico, -L - su tamaño.
Ahora necesita crear sistemas de archivos en los volúmenes lógicos creados.
en moderno versiones de Ubuntu necesita crear sistemas de archivos manualmente antes de la instalación. De lo contrario, el instalador querrá crear una tabla de particiones MBR encima de cada volumen LVM, lo cual es altamente indeseable.
Puedes hacer esto con los siguientes comandos:
sudo mkfs.ext4 / dev/ local/ root sudo mkfs.ext4 / dev/ local/ home sudo mkswap -f / dev/ local/ swap sudo mkfs.ext4 / dev/ local/ dataTenga en cuenta que los nombres de los volúmenes lógicos LVM en el sistema se parecen a /dev/(volume_group_name)/(volume_name) .
Además, el sistema de archivos ext4 reserva algo de espacio para los datos del sistema de forma predeterminada. Dado que nunca habrá datos del sistema en /home , y más aún en la partición con archivos de usuario, es mejor cancelar esta reserva para liberar espacio desperdiciado. Los comandos son útiles para esto.
sudo tune2fs -r 0 / dev/ local/ inicio sudo tune2fs -r 0 / dev/ local/ datosEn ningún caso, no cancele la reserva para la partición raíz, de lo contrario, ¡el sistema puede dejar de funcionar por completo!
Finalmente, es posible que desee dar a la partición de datos una etiqueta adecuada para que se muestre bien en el sistema instalado. Puedes hacer esto con el siguiente comando:
sudo tune2fs -L Datos /dev/local/datosAhora puede proceder directamente a la instalación en los volúmenes lógicos que creamos.
En realidad, la instalación en sí es estándar, pero cuando se le pida que elija un método para particionar el disco, seleccione modo manual. En la ventana que se abre, verá todos los volúmenes LVM que ha creado. Especifique el punto de montaje apropiado para cada uno, pero no marque la casilla de formato. Para la partición de datos, puede especificar el punto de montaje /media/data . No olvide la pequeña partición /boot. Necesita especificar el punto de montaje apropiado y puede establecerse como ext2 FS, además, debe formatearse.
Espere a que se complete la instalación, pero no reinicies tu computadora!
Si reinicia su computadora después de la instalación, su nuevo sistema No comenzará. En este caso, deberá volver al LiveCD, instalar las utilidades para trabajar con LVM y luego ejecutar comando sudo vgchange -ay
Luego siga las instrucciones a continuación.
Instaló el sistema, pero hubo un pequeño problema: en ubuntu instalado no hay utilidades para trabajar con LVM, lo que significa que simplemente no se iniciará. Esto es bastante fácil de arreglar.
Para comenzar, sin salir del LiveCD, monte el volumen lógico que seleccionó como raíz en la carpeta /mnt. Esto se puede hacer con el comando
sudo mount /dev/local/raíz/mntLuego monte la partición /boot en su lugar (en el siguiente ejemplo es /dev/sda1):
sudo mount /dev/sda1 /mnt/bootAhora tendrás que iniciar sesión sistema instalado usando chroot, pero primero necesita conectar temporalmente algunos recursos importantes del sistema. Para hacer esto, ejecute los comandos
sudo mount --bind / dev / mnt/ dev sudo mount --bind / proc / mnt/ proc sudo mount --bind / sys / mnt/ sysSi de repente tiene /var u otros directorios del sistema en particiones que no sean la partición raíz en su sistema recién instalado, no olvide montarlos en sus lugares en /mnt.
Ahora ve al sistema instalado con el comando
sudo chroot / mnt / bin / bashE instale las utilidades necesarias con el comando
apt-get install lvm2Todo, la instalación está completa. Cierre la terminal, presione Alt + Ctrl + Supr y reinicie su computadora. No olvide quitar el LiveCD de la unidad. La computadora debe iniciarse en el sistema recién instalado.
Digamos que en algún momento ya no tiene suficientes 5 gigabytes que asignó para la partición /home. Ningún problema. Vea cuánto espacio sin usar queda en el grupo de volúmenes con el comando
sudo vgdisplaylocalAhora aumente el tamaño del volumen lógico /dev/local/home al tamaño deseado con el comando
sudo lvresize -L 15G /dev/local/inicioTenga en cuenta que cuando se usa de esta manera, la opción -L especifica el tamaño total deseado, no un incremento. El incremento se puede especificar usando el símbolo "+":
sudo lvresize -L +5G /dev/local/inicioDespués de aumentar el tamaño del volumen lógico, todo lo que queda es expandir el sistema de archivos a todo el nuevo volumen. Esto se puede hacer con el comando
sudo resize2fs /dev/local/inicioEso es todo, se ha aumentado el tamaño del volumen lógico.
Además de aumentar el tamaño de los volúmenes lógicos sobre la marcha, LVM puede hacer muchas otras cosas útiles. Por ejemplo, cree instantáneas instantáneas. Sin embargo, puedes leer sobre todos los entresijos de trabajar con esta tecnología en artículos especializados.
Administracion del sistemaEn mi servidor doméstico Disco Linux instalado en 250 GB. Acabo de comprar una nueva unidad SATA de 250 GB y quiero agregar una nueva unidad a mi volumen existente LVM para aumentar su tamaño a 500 GB. Cómo agregar un disco a LVM y expandir el volumen de LVM en Sistema operativo linux?
Linux Volume Management (LVM) crea una capa fácil de usar sobre los discos físicos. Puede combinar varios discos y crear volúmenes de almacenamiento lógico. Esto proporciona beneficios específicos tales como:
Paso 1: obtenga información sobre los LVM existentesAtención: Tenga cuidado con lvm / mkfs.ext4 y otros comandos, así como con los nombres de los dispositivos, ya que si el nombre del dispositivo se configura incorrectamente, puede destruir todos los datos. Tenga cuidado y mantenga siempre copias de seguridad completas.
La gestión de almacenamiento LVM se divide en tres partes:
Cómo mostrar información sobre volúmenes físicos (pv)
Ingrese el siguiente comando pvs para ver información sobre volúmenes físicos:
Entonces, actualmente mi LVM incluye un volumen físico (disco real) llamado /dev/vda5 . Para ver información detallada sobre las propiedades, escriba:
$ sudo pvdisplay
Ejemplos de posibles salidas de datos:Está claro a partir de la salida anterior que nuestro grupo de volúmenes llamado ubuntu-box-1-vg está hecho de un volumen físico llamado /dev/vda5 .
Cómo mostrar información sobre el grupo de volúmenes LVM (vg)
Escriba cualquiera de los siguientes comandos vgs/vgdisplay vgs para ver información sobre los grupos de volúmenes y sus propiedades:
$ sudo vgdisplay
Ejemplos de posibles salidas de datos:Cómo mostrar información sobre el volumen lógico LVM (lv)
Escriba cualquiera de los siguientes comandos lvs / lvdisplay para ver información sobre los grupos de volúmenes y sus propiedades:
$ sudo lvdisplay
Ejemplos de posibles salidas de datos:Mi grupo de volúmenes ubuntu-box-1-vg se divide en dos volúmenes lógicos:
Paso 2: Obtenga información sobre el nuevo disco
Debe agregar una nueva unidad a su servidor. En este ejemplo, con fines de demostración, he agregado una nueva unidad que tiene un tamaño de 5 GiB. Para conocer información sobre el lanzamiento de nuevos discos:
$ sudo fdisk -l
$ sudo fdisk -l | grep "^Disco /dev/"
Ejemplos de posibles salidas de datos:Otra opción es escanear todo dispositivos visibles para LVM2:
$ sudo lvmdiskscan
Ejemplos de posibles salidas de datos:/dev/ram0 [ 64,00 MiB] /dev/ubuntu-box-1-vg/root [ 37,49 GiB] /dev/ram1 [ 64,00 MiB] /dev/ubuntu-box-1-vg/swap_1 [ 2,00 GiB] /dev /vda1 [ 487.00 MiB] /dev/ram2 [ 64.00 MiB] /dev/ram3 [ 64.00 MiB] /dev/ram4 [ 64.00 MiB] /dev/ram5 [ 64.00 MiB] /dev/vda5 [ 39.52 GiB] Volumen físico LVM / dev/ram6 [ 64,00 MiB] /dev/ram7 [ 64,00 MiB] /dev/ram8 [ 64,00 MiB] /dev/ram9 [ 64,00 MiB] /dev/ram10 [ 64,00 MiB] /dev/ram11 [ 64,00 MiB] /dev/ ram12 [ 64,00 MiB] /dev/ram13 [ 64,00 MiB] /dev/ram14 [ 64,00 MiB] /dev/ram15 [ 64,00 MiB] /dev/vdb [ 5,00 GiB] 2 discos 18 particiones 0 LVM volumen físico discos enteros 1 LVM físico volumen
Paso 3: cree volúmenes físicos (pv) en una nueva unidad llamada /dev/vdbIntroduzca el siguiente comando:
$ sudo pvcreate /dev/vdb
Ejemplos de posibles salidas de datos:Volumen físico "/dev/vdb" creado con éxito
Ahora ejecute el siguiente comando para verificar:
$ sudo lvmdiskscan -l
Ejemplos de posibles salidas de datos:ADVERTENCIA: solo considerando dispositivos LVM /dev/vda5 [ 39.52 GiB] Volumen físico LVM /dev/vdb [ 5.00 GiB] Volumen físico LVM 1 Volumen físico LVM todo el disco 1 Volumen físico LVM
Paso 4: agregar un volumen físico recién creado (pv) llamado /dev/vdb a un volumen lógico existente (lv)Ingrese el siguiente comando para agregar el volumen físico /dev/vdb al grupo de volúmenes "ubuntu-box-1-vg":
$ sudo vgextend ubuntu-box-1-vg /dev/vdb
Ejemplos de posibles salidas de datos: