Volúmenes lógicos a bajo nivel con dmsetup

El comando dmsetup es una herramienta de línea de comandos para la comunicación con el mapeador de dispositivos o utilizando el término inglés “Device Mapper” Se utiliza para obtener información general del sistema sobre los dispositivos LVM. Lo podemos utilizar en combinación con ‘info’, ‘ls’ , ‘status’ o ‘deps’, entre otros parámetros.

La idea del artículo ha surgido a raíz de unas nuevas gráficas en la plataforma Cacti, que he tenido que elaborar para un cliente. Resulta que para obtener información de los volúmenes lógicos, he utilizado la herramienta de la que trata este artículo.

Sobre el comando dmsetup

Tal y como hemos comentado nos suministra información resumida sobre los dispositivos mapeados. Si no especificamos un nombre de dispositivo, utilizando ‘dmsetup info’ se nos muestra información de todos los dispositivos configurados. Si especificamos un dispositivo, sólo veremos su información.

Veamos un ejemplo, mostrando la información de un dispositivo:

  1. [root@servcentos1 ~]# dmsetup info centos_servcentos1-swap
  2. Name:              centos_servcentos1-swap
  3. State:             ACTIVE
  4. Read Ahead:        8192
  5. Tables present:    LIVE
  6. Open count:        2
  7. Event number:      0
  8. Major, minor:      253, 1
  9. Number of targets: 1
  10. UUID: LVM-lu7VNl0MnbKaUcXZGC1xtlgBKKDaYPDeXL9cYgJMJdZ6odnTOBbhmjUGFRhXIQgr

Veamos un poco más al detalle que información se nos ha mostrado:

  • Name : Muestra el nombre de dispositivo. El nombre del dispositivo LVM se muestra como el nombre del grupo de volúmenes y el nombre de volumen lógico, separados por un guión. En el caso anterior ‘rhel’ es el nombre del VG y ‘opt’ el nombre del LV
  • State: Lista los posibles estados del dispositivo, que son, SUSPENDED, ACTIVE y READ-ONLY Hay que tener en cuenta que cuando un dispositivo está suspendido, todas las operaciones de E / S para el dispositivo se detienen. Con el comando ‘dmsetup resume’, se vuelve al estado activo del dispositivo.
  • Read Ahead (leer por adelantado) : La cantidad de bloques de datos que el sistema lee adelante, para cualquier archivo abierto en el que las operaciones de lectura están en curso. Por defecto, el kernel elige un valor adecuado automáticamente. Podemos cambiar este valor con la opción “—readahead”
  • Tables present (tablas presentes) : Las dos posibles estados son LIVE o INACTIVE El estado inactivo indica que se ha cargado una tabla que se intercambiará cuando el comando “dmsetup resume” restablece el estado de un dispositivo a ACTIVO, momento en que el estado de la tabla pasará a LIVE
  • Open Count: Nos indica cuantas veces se abre el dispositivo o cuantas veces está montado.
  • Event Number: Es el número actual de eventos recibidos.
  • Major, Minor: Número de dispositivos mayor y menos.
  • Number of targets: Número de partes que componen un dispositivo.

Laboratorio de pruebas con dmsetup

Primero de todo, vamos a listar los dispositivos asignados, utilizando ‘dmsetup ls’ También podemos enumerar dispositivos que tienen al menos un destino de un tipo especificado con el comando ‘dmsetup ls –target target_type

  1. [root@servcentos1 ~]# dmsetup ls
  2. centos_servcentos1-swap (253:1)
  3. centos_servcentos1-root (253:0)

Con ‘dmsetup status’, proporciona información de estado para cada objetivo, escribiendo ‘dmsetup status dispositivo’ Si no especificamos un nombre de dispositivo, el resultado será la información de todos los dispositivos. Podemos listar el estado de dispositivos que tienen al menos un destino de un tipo especificado “dmsetup –targe target_type

Veamos un ejemplo:

  1. [root@servcentos1 ~]# dmsetup status
  2. centos_servcentos1-swap: 0 1679360 linear
  3. centos_servcentos1-root: 0 12992512 linear

Por último, que no menos importante, el comando ‘dmsetup deps’ , muestra una lista de pares, tanto principales como secundarios, para los dispositivos a los que hace referencia. Si no especificamos el nombre de dispositivo, nos dará la información de todos los dispositivos mapeados.

  1. [root@servcentos1 ~]# dmsetup deps
  2. centos_servcentos1-swap: 1 dependencies : (8, 2)
  3. centos_servcentos1-root: 1 dependencies : (8, 2

Espero que el artículo os sea de utilidad en algún momento. Nos vamos leyendo ^.^

Fuentes consultadas:

Linux.diet.net – dmsetup

Redhat.com – The dmsetup command

Los derechos de la imagen de portada del disco duro:

Pixabay.com – Imagen disco duro