Traducción(es): English - Español - Français

(!) ?Discusión


LVM es un Gestor de volúmenes lógicos (Logical Volume Manager) para el sistema operativo Linux.

Presentación

La gestión de volúmenes lógicos proporciona una vista de más alto nivel sobre el almacenamiento de disco en un sistema de computación que la visión tradicional de discos y particiones. Esto da al administrador del sistema mucha mayor flexibilidad en preparar almacenaje para aplicaciones y usuarios.

Los volúmenes de almacenaje creados bajo el control del gestor de volúmenes lógicos pueden ser redimensionados y movidos de lugar a deseo.

Definiciones

Un ejemplo:

||-------------------------------OS---------------------------------||
||-No-LVM-||-------------------------LVM---------------------------||
||  /boot  ||   LV-1 (/)  | LV-2 (swap)|  LV 3 (/home) | LV-4 (/tmp)|| Volúmenes Lógicos(LV)
||         ||------------------------------------------|------------||
||         ||                  VG 1                    |    VG 2    || Grupo de Volúmenes(VG)
||         ||------------------------------------------|------------||
||/dev/sda1|| /dev/sda2 |     /dev/sda3    | /dev/sdb2 | /dev/sdd4  || Volúmenes Físicos(PV)
||---------||-------------------------------------------------------||

Deberías saber

LVM cifrado

Al formatear un volumen LVM, se puede elegir entre LVM cifrado o LVM sin cifrar. Para proteger la confidencialidad de tus valiosos datos, por caso en el suceso de una pérdida o robo de tu computador o almacenamiento, tales como un volumen, un disco de estado sólido, o un disco duro; al formatear un volumen LVM se sugiere que consideres formatearlo usando la opción LVM cifrado (encrypted LVM).

<!> Si eliges la opción LVM cifrado,se sugiere que consideres la creación de un contraseñas de respaldo. Para que la recuperación sea rápida y fácil :) De otro modo en caso de que tu contraseña no esté funcionando, te arriesgas a perder permanentemente todos tus datos de valor. e sorprendentemente frecuente que la gente pierda todos sus datos porque por alguna razón ya no les funcione su contraseña, y no crearon un respaldo de las mismas. El cifrado de LVM es muy fuerte, así que si por algún motivo te has quedado bloqueado fuera, a menos que tengas las contraseñas de respaldo es muy probable que te quedes permanentemente bloqueado :(

Contraseñas de respaldo

Crear contraseñas de respaldo es un proceso en dos partes. Primero añades las contraseñas de respaldo, segundo haces la copia de seguridad de esas contraseñas.

Pasos

  1. Añadir contraseñas de respaldo
    1. Ejecuta en la Terminal como Root

      cryptsetup luksChangeKey <dispositivo> -S <ranura>
      • Notas
        • Donde -S significa que quieres editar una ranura de claves específica. Necesitas cambiar <ranura> por un número entre cero y siete [0-7]. Este número identificará cuál ranura de claves quieres editar. Hay ocho ranuras de claves disponibles en total. En ek rango de cero a siete. Necesitas reemplazar <dispositivo> con la ruta a tu volumen LVM cifrado. Por ejemplo /dev/sda.

    2. Se sugiere crear al menos 3 contraseñas de respaldo. Si quieres añadir una contraseña de respaldo adicional simplemente ejecuta la misma orden, pero cambia el número de la <ranura> al que te plazca. Por ejemplo:

      cryptsetup luksChangeKey /dev/sda -S 2
  2. Haz una copia de seguridad de las contraseñas
    1. Ejecuta la siguiente orden en la Terminal como Root

      cryptsetup luksHeaderBackup <dispositivo> --header-backup-file <fichero>
      • Notas
        • Donde <dispositivo> es la ubicación para guardar tu respaldo, por ejemplo /dev/sda. Y <fichero> es el nombre de tu fichero de respaldo, por ejemplo /media/jenn/2017-05-18_luks_sda_backup. Esta orden hará una copia de seguridad de todas las ocho ranuras de claves.

        • Se sugiere guardar el fichero en una ubicación segura, fuera de línea, y en una ubicación distinta. Tal que en caso de se dañe el computador o fuera robado, aun serías capaz de recuperar y acceder a tus datos respaldados si los hiciste.
        • Documentación wiki de LUKS (eng) original y oficial

Recuperar contraseñas

  1. Recuperar el respaldo de contraseñas
    1. Ejecuta la siguiente orden en la Terminal como Root

      cryptsetup luksHeaderRestore <dispositivo> --header-backup-file <fichero>
      • Notas
        • <!> Este comando eliminará todas las ocho ranuras de contraseñas actuales, luego restaurará todas tus contraseñas de respaldo. Antes de ejecutar esta orden, se sugiere comprobar doblemente que esta orden esta correctamente configurada y que realmente se necesita proceder a hacerlo. No se puede deshacer ;)

        • Necesitas cambiar <dispositivo> por ela ruta a tu volumen LVM cifrado, por ejemplo /dev/sda. Necesitas cambiar <fichero> por la ruta a tu fichero de respaldo, por ejemplo /media/jenn/2017-05-18_luks_sda_backup.

        • Documentación wiki de LUKS original y oficial

Nota: La(s) contraseña(s) de un volumen LVM cifrado se almacenan dentro de su(s) cabecera(s) Configuracion de clave unificada, Linux Unified Key Setup (LUKS). Es importante crear contraseñas de respaldo porque en el futuro si por algún motivo ya no funcionara más tu clave, o si simplemente la olvidaras, o si la recordaras pero sucede algo inesperado como un bug tras una actualización del núcleo y de algún modo ya no funcionase la contraseña, entonces sin contraseñas de respaldo te arriesgas a perder permanentemente todos tus valiosos datos guardados y cifrados en ese almacenamiento LVM cifrado.

Partición cifrada LVM de swap

Cuando se usa una particion LVM cifrada, la clave de cifrado se almacena en memoria (RAM). Puesto que recuperar esta clave permite descifrar los datos, es frecuentemente recomendado evitar dejar una copia de ella que fueraaccesible a un posible ladrón del computador o del volumen, o a un técnico de mantenimiento. Eso es sin embargo algo que puede fácilmente ocurir con un laptop, ya que al hibernar los contenidos de la RAM se almacenan en la partición swap. Si esta partición no está cifrada, el ladrón puede acceder a la clave y usarla para descifrar los datos de las particiones cifradas. Este es el motivo por el cual, cuando uses particiones cifradas, se recomienda también cifrar la partición swap. El instalador de Debian te avisará a ti o a otros usuarios si se intenta crear una partición LVM cifrada y mientras tanto la partición swap no lo estuviera. Fuente.

Etiquetas

Deberiasutilizar etiquetas para la identificación de Volumen Lógico (LV) en /etc/fstab, en vez de UUIDs o de las reglas de nombrado del kernel (/dev/sda) para evitar conflictos con las restauraciones de capturas de Volúmenes (snapshots).

/boot

Ni Grub ni ?LiLo son compatibles con LVM, así que el /boot debería quedar fuera del disco de almacenamienteo gestionado por LVM.

Capturas de LVM2 y udev en Debian

Hay algunos problemas al crear capturas LVM en Debian con udev, véase 343671

Instalación

Todas las herramientas para gestionar un volumen LVM están disponibles en el paquete lvm2

sudo apt-get install lvm2

Luego arranque el servicio lvm:

sudo service lvm2 start

Si es necesario, puedes instalar el paquete system-config-lvm, es una utilidad gráfica para configurar Volúmenes Lógicos gráficamente (necesita bibliotecas de KDE).

sudo apt-get install system-config-lvm

Listado de ordenes de LVM

Volúmenes Físicos (PV)

Crear un PV

Para declarar el /dev/sda2 como un volumen físico disponible para LVM:

sudo pvcreate /dev/sda2

Eliminar un PV

Para eliminar un Volumen Físico (PV) en /dev/sda2 todos los datos deben haber sido movidos fuera de allí. Para hacer eso, asegúrese de que otros volúmenes físicos que contengan el mismo grupo de volúmenes tienen suficiente espacio libre y entonces lance esta orden:

pvmove /dev/sda2

Después de haber movido los datos fuera del disco, elimínelo del grupo de volúmenes (en este caso, del llamado myVirtualGroup1:

sudo vgreduce myVirtualGroup1 /dev/sda2

Y tras estas preparaciones finalmente:

sudo pvremove /dev/sda2

Listado de órdenes de PV

Grupo de Volúmenes (VG)

Crear un grupo de volúmenes de volúmenes físicos

sudo vgcreate myVirtualGroup1 /dev/sda2

Extender un grupo de volúmenes

Declare otro volumen físico:

sudo pvcreate /dev/sda3

Luego añada el nuevo PV al VG que ya existe:

sudo vgextend myVirtualGroup1 /dev/sda3

Verificar la configuración de VG

Simplemente ejecute esta orden:

sudo vgdisplay 

Listado de órdenes de VG

Volúmenes Lógicos (LV)

Crear un LV

<!> No olvides comprobar que tienes espacio suficiente: naturalmente, un LV de 100 GB (Giga Bytes) no entra en un Grupo Virtual VG de 10 GB.

Crea un LV en un VG:

sudo lvcreate -n myLogicalVolume1 -L 10g myVirtualGroup1

Formatea el LV con el sistema de ficheros deseado (ext4,xfs...)

sudo mkfs -t ext4 /dev/myVirtualGroup1/myLogicalVolume1

Puedes probar si funciona:

mkdir /test
sudo mount /dev/myVirtualGroup1/myLogicalVolume1 /test
df -h

También puedes probar tus LVs con:

sudo lvdisplay

Eliminar un LV

Para eliminar un LV, asegurate de que no esta ya en uso. Luego simplemente lance esta orden para eliminar el LV myLogicalVolume1 del VG myVirtualGroup1:

sudo lvremove myVirtualGroup1/myLogicalVolume1

Puede que se tem pregunte si quieres realmente eliminar un LV activo. Si es así, confírmalo.

Listado de órdenes de LV

Véase también: