B.2. Archivo lvm.conf de ejemplo
La siguiente es una muestra del archivo de configuración
lvm.conf. Su archivo puede diferir un poco de este.
# Este es un ejemplo de archivo de configuración para el sistema LVM2.
# Contiene los parámetros predeterminados que se usarían si no hubiera
# /etc/lvm/lvm.conf file.
#
# Consulte 'man lvm.conf' para obtener mayor información que incluya la distribución del archivo .
#
# Para colocar este archivo en un directorio diferente y sobrescribir /etc/lvm establezca
# la variable de entorno LVM_SYSTEM_DIR antes de ejecutar las herramientas.
# Esta sección le permite configurar los dispositivos de bloque que deben ser utilizados por
# el sistema de LVM.
dispositivos {
# ¿Dónde desea que los grupos de volumen aparezcan ?
dir = "/dev"
# Un grupo de directorios que contienen los nodos de dispositivos que usted desea
# usar con LVM2.
scan = [ "/dev" ]
# Si varias entradas en los directorios examinados corresponden al mismo dispositivo de bloque
# y las herramientas necesitan mostrar un nombre por dispositivo,
# todos los nombres de ruta coinciden con cada elemento en la siguiente lista
# de expresión regulares a su vez y se utiliza la primera concordancia.
# nombres_preferidos = [ ]
# Trate de evitar el uso de nombres no descriptivos /dev/dm-N names, si está presente.
nombres_preferidos = [ "^/dev/mpath/", "^/dev/mapper/mpath", "^/dev/[hs]d" ]
# Un filtro que dice a LVM2 que únicamente use un conjunto restringido de dispositivos.
# El filtro consta de un conjunto de expresiones regulares. Estas
# expresiones pueden estar delimitadas por un caracter de su elección y
# por un prefijo con una 'a' (para aceptar) o 'r' (para rechazar).
# La primera expresión que concuerde con el nombre de dispositivo determina si
# el dispositivo será aceptado o rechazado (ignorado). Los dispositivos que
# no concuerden con ningún patrón son aceptados.
# Tenga cuidado si no hay enlaces simbólicos o entradas de sistema de archivos múltiples para el mismo dispositivo,
# ya que cada nombre es comparado independientemente
# con la lista de patrones. El efecto es que si algún nombre coincide con algún patrón 'a'
# el dispositivo es aceptado; y si algún nombre coincide con el patrón 'r'
# es rechazado; de lo contrario es aceptado.
# No tenga más de una línea de filtro activa a la vez: solamente se utiliza una.
# Ejecute vgscan después de cambiar este parámetro para asegurarse de que el archivo cache sea regenerado (ver abajo).
# Si no hace lo esperado, revise la salida de 'vgscan -vvvv'.
# De forma predeterminada, aceptamos cada dispositivo de bloque:
filtro = [ "a/.*/" ]
# Excluir la unidad de cdrom
# filtro = [ "r|/dev/cdrom|" ]
# Al probar me gustaría trabajar con dispositivos de bucle de retorno:
# filtro = [ "a/loop/", "r/.*/" ]
# O quizás todos los bucles y unidades ide a excepción de hdc:
# filtro =[ "a|loop|", "r|/dev/hdc|", "a|/dev/ide|", "r|.*|" ]
# Use anclas si desea que sean verdaderamente específicos
# filtro = [ "a|^/dev/hda8$|", "r/.*/" ]
# Los resultados del filtraje se guardan en un disco para evitar
# reescanear dispositivos dud (lo cual puede tardarse mucho tiempo).
# De forma predeterminada esta cache se almacena en el directorio /etc/lvm/cache
# en un archivo llamado '.cache'.
# Se puede borrar el contenido: las herramientas lo regeneran.
# (El antiguo parámetro 'cache' aún se respeta si ninguno de los nuevos está
# presente.)
cache_dir = "/etc/lvm/cache"
cache_file_prefix = ""
# Puede desactivar la escritura de este archivo cache estableciéndolo a 0.
write_cache_state = 1
# Parámetros avanzados.
# Lista de pares de tipos de dispositivos de bloque adicionales aceptables encontrados
# en /proc/devices con un máximo número de particiones (no-cero).
# tipos = [ "fd", 16 ]
# Si se monta sysfs (2.6 kernels) restringe el escaneo de dispositivos a
# los dispositivos de bloque que cree que son válidos.
# 1 habilita; 0 inhabilita.
sysfs_scan = 1
# De forma predeterminada, LVM2 ignorará los dispositivos usados como componente de
# dispositivos RAID (md) de software al buscar superbloques md.
# 1 habilita; 0 inhabilita.
md_component_detection = 1
# De forma predeterminada, si un volumen físico es colocado directamente después de un dispositivo md, LVM2
# alineará sus bloques de datos con el dispositivo de ancho de banda md.
# 1 habilita; 0 inhabilita.
md_chunk_alignment = 1
# La alineación predeterminada del inicio del área de datos en MB. Si se establece a 0,
# se usará un valor de 64KB. Establezca a 1 para 1MiB, 2 para 2MiB, etc.
# default_data_alignment = 1
# De forma predeterminada, el inicio de área de datos de volumen físico será un múltiplo de
# 'minimum_io_size' u 'optimal_io_size' expuesto en sysfs.
# - minimum_io_size - la solicitud mínima que el dispositivo puede realizar
# sin incurrir en una sanción de read-modify-write (por ejemplo, tamaño de trozo de MD)
# - optimal_io_size - la unidad de dispositivo preferida para recibir E/S
# (e.g. MD's stripe width)
# minimum_io_size se utiliza si optimal_io_size es indefinido (0).
# Si md_chunk_alignment está activado, detecta el optimal_io_size.
# Este parámetro tiene prioridad sobre md_chunk_alignment.
# 1 habilita; 0 inhabilita.
data_alignment_detection = 1
# Alineación (en KB) de inicio de área de datos al crear un nuevo volumen físico.
# md_chunk_alignment y data_alignment_detection se desactivan.
# Establecer a 0 para la alineación predeterminada (ver: data_alignment_default)
# o el tamaño de página, si es más grande.
data_alignment = 0
# De forma predeterminada, el inicio de datos alineados de volumen físico se cambiará por
# el 'alignment_offset' expuesto en sysfs. Esta compensación suele ser 0, pero
# puede ser no-cero; por ejemplo.: algunas unidades de sectores de 4KB que compensan el
# particionamiento de windows tendrán un alignment_offset de 3584 bytes
# (sector 7 es el bloque lógico alineado más bajo, los sectores de 4KB inician
# en LBA -1, y como consecuencia el sector 63 se alínea en un límite de 4KB).
# Sin embargo, observe que pvcreate --dataalignmentoffset omitirá esta detección.
# 1 habilita; 0 inhabilita.
data_alignment_offset_detection = 1
# Si, al escanear el sistema para volúmens físicos, LVM2 encuentra un mapeador de dispositivo
# que tiene suspendida su E/S, espera a que sea accesible.
# Establézcalo a 1 para omitir estos dispositivos. Esto solamente será necesario en situaciones de
# recuperación.
ignore_suspended_devices = 0
# Durante cada operación LVM se cuentan los errores recibidos de cada dispositivo.
# Si el contador de un dispositivo particular excede el límite establecido aquí, no
# se enviará más E/S al dispositivo para lo que resta de la operación respectiva.
# Al establecer el parámetro a inhabilita todos los contadores.
disable_after_error_count = 0
# Permitir el uso de pvcreate --uuid sin requerir --restorefile.
require_restorefile_with_uuid = 1
}
# Esta sección le permite configurar la forma en que LVM selecciona
# espacio libre para sus volúmenes lógicos.
#asignación {
# Durante la búsqueda de espacio libre para extender un volumen lógico, la política de asignación "cling"
# eligirá un espacio en los misimos volúmenes físicos como el último segmento del
# volumen lógico existente. Si no hay espacio suficiente y se define aquí una lista de
# etiquetas, revisará si alguna de ellas está conectada al volumen lógico concernientes
# y luego busca concordar esas etiquetas para que coincidan con las etiquetas de volúmenes físicos
# entre las extensiones existentes y las nuevas extensiones.
# Use la etiqueta especial "@*" como comodín para que coincida con cualquier etiqueta de volumen físico.
#
# Ejemplo: Los volúmenes lógicos se copian en espejo entre dos sitios dentro de un único Grupo de Volumen.
# Los volúmenes físicos se etiquetan con @site1 o @site2 para indicar dónde
# están situados.
#
# cling_tag_list = [ "@site1", "@site2" ]
# cling_tag_list = [ "@*" ]
#}
# Esta sección le permite configurar la naturaleza de la informacióon que reporta
# LVM2.
log {
# Controla los mensajes enviados a stdout o stderr.
# Hay tres niveles de verbosidad, 3 siendo el más verboso.
verbose = 0
# ¿Debe enviar mensajes de registro a través de syslog?
# 1 si sí; 0 si no.
syslog = 1
# ¿Debemos registrar mensajes de error o depuración a un archivo?
# No hay archivo de registro predeterminado.
#file = "/var/log/lvm2.log"
# ¿Debemos sobrescribir el archivo de registro cada vez que se ejecute el programa?
# Lo añadimos de forma predeterminada.
overwrite = 0
# ¿Qué nivel de mensajes de registro debemos enviar al archivo de registro y o al syslog?
# Hay 6 niveles syslog-like actualmente en uso - 2 a 7 inclusive.
# 7 es el más verboso (LOG_DEBUG).
level = 0
# Formato de mensajes de salida
# Si o no (1 o 0) los mensajes para marcar los mensajes de acuerdo a su severidad
indent = 1
# Si o no (1 o 0) para mostrar el nombre de comando en cada salida de línea
command_names = 0
# Un prefijo para usar antes del texto del mensaje (pero después del nombre de comandos,
# si se ha seleccionado). El predeterminado es dos espacios, para que usted puede ver/grep la severidad
# de cada mensaje.
prefix = " "
# Para que los mensajes se vean similares a las herramientas LVM originales use:
# indent = 0
# command_names = 1
# prefix = " -- "
# Establézcalo si desea mensajes de registro durante la activación.
# No lo use en situaciones de poca memoria (puede interbloquear).
# activation = 0
}
# Configuración de respaldos de metadatos y archivación. En LVM2 cuando
# hablamos de 'backup' o respaldo significa hacer una copia de los metadatos para el sistema
# *actual* system. El 'archive' contiene configurciones de metadatos antiguas.
# Los respaldos se almacenan en formato de texto de lectura humana.
backup {
# ¿Debemos mantener un respaldo de la configuración de metadatos actual ?
# Use 1 para Sí; 0 para No.
# Piense mucho antes de desactivarlo
backup = 1
# ¿Dónde debemos guardarlo ?
# Recuerde hacer copia de este directorio con regularidad
backup_dir = "/etc/lvm/backup"
# ¿Debemos mantener un archivo de configuraciones de metadatos antiguo?.
# Use 1 para Sí; 0 para No.
# On predeterminado. Piense mucho antes de desactivarlo.
archive = 1
# ¿A dónde deben ir los ficheros archivados ?
# Recuerde hacer copia de este directorio regularmente
archive_dir = "/etc/lvm/archive"
#¿Cuál es el número mínimo de ficheros de archivos que desea mantener ?
retain_min = 10
# ¿Cuál es el tiempo mínimo que usted desea mantener un fichero de archivos ?
retain_days = 30
}
# Parámetros para ejecutar LVM2 en modo shell (readline).
shell {
# Número de líneas de historia a almacenar en ~/.lvm_history
history_size = 100
}
# Varias configuraciones de LVM2 global
global {
# La máscara de creación de archivo para los archivo y directorios creados.
# Se interpreta como octal si el primer dígito es cero.
umask = 077
# Permitir a otros usuario la lectura de archivos
#umask = 022
# Habilitar el modo de prueba significa que no se harán cambios de metadatos en disco
# Equivalente a tener la opción -t en cada
# comando. Se predetermina a apagado.
test = 0
# Valor predeterminado para argumento --units
units = "h"
# Puesto que la versión 2.02.54, las herramientas distinguen entre poderes de
# 1024 bytes (e.g. KiB, MiB, GiB) y poderes de 1000 bytes (e.g.
# KB, MB, GB).
# Si tiene scripts que dependen de la antigua conducta, establézcala a 0
# temporalmente hasta que las actualice.
si_unit_consistency = 1
# Si se comunica o no con el mapeador de dispositivos de kernel.
# Establezca a 0 si desea usar las herramientas para manipular metadatos de LVM
# sin activar ningún volumen lógico.
# Si el controlador de kernel mapeador de dispositivo no está presente en su configuración de
# kernel establecerlo a 0 suprimiría los mensajes de error.
activation = 1
# Si no podemos comunicarnos con el mapeador de dispositivos, ¿deberíamos tratar de ejecutar
# las herramientas de LVM1?
# Esta opción solamente se aplica a kernels 2.4 y se proporciona para ayudarle
# a cambiar entre kernels de mapeador de dispositivo y kernels LVM1.
# Las herramientas LVM1 necesitan ser instaladas con .lvm1
# e.g. vgscan.lvm1 y dejarán de funcionar después de comenzar a usar
# el nuevo formato de metadatos en disco de lvm2.
# El valor predeterminado se establece cuando las herramientas se construyan.
# fallback_to_lvm1 = 0
# El formato de metadatos predeterminado que los comandos deben usar - "lvm1" o "lvm2".
# La línea de comandos sobrescrita es -M1 o -M2.
# Se predetermina a "lvm2".
# formato = "lvm2"
# Ubicación del sistema de archivos proc
proc = "/proc"
# Tipo de cierre a usar. Se predetermina a cierre basado en archivo local (1).
# Desactívelo estableciéndolo a 0 (peligroso: riesgo de dañar metadatos
# si los comandos de LVM2 se ejecutan al mismo tiempo).
# Tipo 2 usa la biblioteca externa compartida locking_library.
# Tipo 3 usa cierre de cluster incorporado.
# Tipo 4 usa cierre de solo lectura, el cual prohibe operaciones que podrían
# cambiar metadatos.
locking_type = 1
# Establezca a 0 para falla cuando una solicitud fail when a lock request cannot be satisfied immediately.
wait_for_locks = 1
# Si el uso de cierre externo falla (tipo 2) y la inicialización falla,
# estableciendo a 1 se hara un intento de usar cierre de agrupamiento
# incorporado.
# Si está usando un locking_library personalizado, establézcalo a 0.
fallback_to_clustered_locking = 1
# Si se intenta inicializar tipo 2 o tipo 3 el cierre falla, quizás debido
# a componentes de cluster tales como clvmd que no se están ejecutando, establecido a
# 1 se hará un intento para usar cierre basado en archivo local (tipo 1).
# Si esto resulta, solamente los grupos de volumen local proseguirán.
# Los Grupos de Volumen marcados como en cluster serán ignorados.
fallback_to_local_locking = 1
# El directorio local non-LV que guarda los cierres basados en archivos mientras los comandos están en progreso
# Un directorio como /tmp puede ser borrado en el reinicio sin problema
locking_dir = "/var/lock/lvm"
# Cuando hay solicitudes de solo lectura y solo escritura compitiendo por
# metadatos de un grupo de volumen, en lugar de siempre otorgar solo lectura
# inmediatamente, los demora para permitir que las solicitudes de lectura-escritura sean
# servidas. Sin esta configuración, el acceso a escritura puede detenerse por un alto
# volumen de solicitudes de solo lectura.
# NB. Esta opción solo afecta cierre basado en locking_type = 1 viz. local file-based
# locking.
prioritise_write_locks = 1
# Otras entradas puede ir aquí para permitirel cargar las bibliotecas compartidas
# e.g. if support for LVM1 metadata was compiled as a shared library use
# format_libraries = "liblvm2format1.so"
# Nombres de ruta completos pueden darse.
# Buscar este directorio primero para bibliotecas compartidas.
# library_dir = "/lib"
# La biblioteca de cierre externo a cargar si locking_type se establece a 2.
# locking_library = "liblvm2clusterlock.so"
# Tratar los errores internos como errores fatales, abortando el proceso que
# encontró el error interno. Por favor solamente habilite para depuración.
abort_on_internal_errors = 0
# Si establece a 1, ninguna operación que cambie en los metadatos de disco será permitida.
# Además, los comandos de solo lectura que encuentren metadatos que necesitan reparación
# aún se les permitirá proceder exactamente como si la reparación se hubiera realizado
# (excepto para el vg_seqno sin modificar).
# El uso inapropiado puede dañar su sistema, por lo tanto busque ayuda primero
metadata_read_only = 0
}
activation {
# Establezca a 0 to desactivar la sincronización udev (si está compilado en los binarios).
# Los procesos no esperarán notificación de udev.
# Continuarán independientemente de cualquier procesamiento udev posible
# en el fondo. Debe usarlo solamente si udev no se está ejecutando
# o tiene reglas que ignoran los dispositivos que crea LVM2.
# El argumento de línea de comandos --nodevsync tiene prioridad sobre esta configuración.
# Si establece a 1 cuando udev no está en ejecución y hay procesos LVM2
# esperando por udev, ejecute en forma manual 'dmsetup udevcomplete_all' para despertarlos.
udev_sync = 1
# Establezca a 0 para desactivar las reglas udev instaladas por LVM2 (si se construye con
# --enable-udev_rules). LVM2 administrará los /dev nodes y symlinks
# para volúmenes lógicos activos directamente.
# N.B. La intervención manual puede requerirse si la configuración se cambia
# cuando alguno de los volúmenes lógicos está activo.
udev_rules = 1
# ¿Cómo llenar las franjas faltantes si se activa un volumen incompleto?
# El uso de "error" hará que partes inaccesibles del dispositivo retornen
# errores de E/S en acceso. Puede en su lugar usar una ruta de dispositivo, en cuyo caso
# ese dispositivo se utilizará en lugar de las franjas faltantes.
# Pero observer que el usar algo que no sea "error" con los volúmenes en espejo
# o en instantáneas es probable que devuelva datos corruptos.
missing_stripe_filler = "error"
# ¿Cuánta cantidad (en KB) reservar para usar mientras los dispositivos están suspendidos?
reserved_stack = 256
# ¿Cuánta memoria (en KB) reservar para usar mientras los dispositivos están suspendidos?
reserved_memory = 8192
# Valor Nice utilizado mientras los dispositivos están suspendidos
process_priority = -18
# Si volume_list está definido, cada LV se activa únicamente si coincide con alguno en la
# lista.
# "vgname" y "vgname/lvname" concuerdan exactamente.
# "@tag" coincide con cualquier etiqueta establecida en LV o VG.
# "@*" coincide si cualquier etiqueta definida en el host tambén se establece en el volumen lógico oo en el Grupo de volumen
#
# volume_list = [ "vg1", "vg2/lvol1", "@tag1", "@*" ]
# Tamaño (en KB) de cada operación de copia al copiar en espejo
mirror_region_size = 512
# Configuración a usar cuando no hay un valor de lectura previa almacenado en los metadatos.
#
# "none" - Desactivar lectura previa.
# "auto" - Usar valor predeteminado elegido por kernel.
readahead = "auto"
# 'mirror_image_fault_policy' y 'mirror_log_fault_policy' definen
# ¿Cómo se maneja una falla de un dispositivo que afecta un espejo?
# Un espejo se compone de imágenes de espejo (copias) y de un registro.
# Un registro de disco garantiza que un espejo no necesite ser resincronizado
# (todas las copias se crean iguales) cada vez que una máquina reinicia o se cae.
#
# En el evento de una falla, la política especifida se utilizará para determinar lo que
# sucede. Esto se aplica a reparaciones automáticas (cuando el espejoestá
# monitorizado por dmeventd) y para lvconvert --repair de forma manual cuando se
# proporciona --use-policies.
#
# "remove" - Simplemente retirar el dispositivo que no sirve y ejecutar sin él. Si
# el dispositivo de registro falla, el espejo se convertiría para usar
# un registro en memoria. Esto significa que el espejo no recordará
# su estatus de sync a través de caídas y reinicios y
# todo el espejo será resincronizado. Si una imagen
# de espejo falla, el espejo se convertirá a
# un dispositivo no- mirrored si solamente queda una copia
# buena.
#
# "allocate" - Retirar el dispositivo que no sirve y tratar de asignar espacio en
# un nuevo dispositivo para que sea un remplazo para el dispositivo dañado.
# El uso de esta política para el registro es rápido y mantiene la
# habilidad de recordar el estado sync a través de daños y reinicios.
# El uso de esta política para un dispositivo de espejo es lento, como lo
# requiere el espejo para resincronizar los dispositivos, pero
# preservará la característica de espejo del dispositivo.
# Esta política actúa como "remove" si no es un dispositivo apropiado y se
# puede asignar espacio para el remplazo.
#
# "allocate_anywhere" - Aún no implementado. Útil para colocar el dispositivo de registro
# temporarlmente en el mismo volumen físico como una de las imágenes de
# espejo. Esta política no se recomienda para dispositivos de espejo
# puesto que rompería la naturaleza redundante del espejo. Esta
# política actúa como "remove" si ningún dispositivo y espacio adecuado puede ser
# asignado para el remplazo.
mirror_log_fault_policy = "allocate"
mirror_image_fault_policy = "remove"
# 'snapshot_autoextend_threshold' y 'snapshot_autoextend_percent' definen
# cómo manejar la extesión de instantánea automática. La anterior define cuándo se
# debe extender la instantánea: cuando su espacio exceda este
# porcentaje. Lo último define cuánto espacio adicional debe asignarse para
# la instantánea, en porcentaje de su tamaño actual.
#
# Por ejemplo, si establece snapshot_autoextend_threshold a 70 y
# snapshot_autoextend_percent a 20, cuando una instantánea excede el uso de 70%,
# se extenderá a otro 20%. Para una instantánea de 1G , que usa hasta 700M provocará
# un cambio a 1.2G. Cuando el uso excede 840M, la instantánea se
# extenderá a 1.44G, y así sucesivamente.
#
# Al configurar snapshot_autoextend_threshold a 100 inhabilita las extensiones
# automáticas. El valor mínimo es 50 (Una configuración por debajo de 50 será tratada
# como de 50).
snapshot_autoextend_threshold = 100
snapshot_autoextend_percent = 20
# Al activar dispositivos, la E/S a dispositivos que están siendo (re)configurados
# se suspende y para prevenir interbloqueos, LVM2 necesita mantener
# la memoria que está usando para que no sea reenviada a otra memoria. Los grupos de páginas que
# se sabe no que son accedidos durante la activación no necesitan mantenerse
# en la memoria. Cada cadena listada en la configuración se compara con
# cada línea en /proc/self/maps, y las páginas que correspondan a cualquiera de las líneas
# coincidentes no serán mantenidas. En algunos sistemas el archivo de indicador regional se
# halló que constituía más del 80% de la memoria utilizada por el proceso.
# mlock_filter = [ "locale/locale-archive", "gconv/gconv-modules.cache" ]
# Establezca a 1 para revertir a la conducta predeterminada anterior a la versión 2.02.62
# que usaba mlockall() para mantener toda la memoria del proceso durante la activación de
# dispositivos.
use_mlockall = 0
# La monitorización se activa de forma predeterminada al activar los volúmenes lógico.
# Establezca a 0 para desactivar la monitorización o use la opción --ignoremonitoring.
monitorización = 1
# Cuando pvmove o lvconvert deben esperar a que el kernel termine
# de sincronizar o fusionar datos, ellos revisan y reportan el progreso
# en intervalos de este número de segundos. El predeterminado es 15 segundos.
# Si se establece a 0 y solamente hay que esperar, no hay
# reportes de progreso, pero el proceso se despierta inmediátamente cuando
# se completa la operación.
polling_interval = 15
}
####################
# Sección avanzada #
####################
# Parámetros de metadatos
#
# metadatos {
# Número predeterminado de copias de metadatos en cada volumen físico, 0, 1 o 2.
# Podría desear sobrescrbirlo desde la línea de comandos con 0
# al ejecutar pvcreate en nuevos volúmenes físicos que se añaden a grandes grupos de volúmenes.
# pvmetadatacopies = 1
# El número predeterminado de copias de metadatos a mantener para cada Grupo de Volumen.
# Si se establece a valor no-cero, LVM automáticamente elige las áreas
# disponibles a usar para cumplir con el número de copias de metadatos de GV solicitado
# Si establece un valor mayor que
# el número total de áreas de metadatos disponibles, los metadatos se
# almacenarán todos en ellos.
# El valor predeterminado de 0 ("no administrado") desactiva esta administración
# automática y le permite controlar las áreas de metadatos
# usadas a nivel de volumen físico individual mediante 'pvchange
# --metadataignore y/n'.
# vgmetadatacopies = 0
# Tamaño predeterminado aproximado de áreas de metadatos en disco en sectores.
# Debe aumentarlo si tiene grandes grupos de volúmenes o
# si desea retener en disco una gran cantidad de historia de sus cambios de metadatos.
# pvmetadatasize = 255
# Lista de directorios que contienen copias vivas de metadatos de formato de texto.
# Estos directorios no deber ser volúmenes lógicos.
# Es posible usar LVM2 con un par de directorios aquí,
# preferiblemente en diferentes sistemas de archivos (non-LV), y con ningún otro
# on-disk metadata (pvmetadatacopies = 0). O puede ser una adición de áreas de
# metadatos en disco.
# La funcionalidad se añadía originalmente para simplificar la prueba y no está
# soportada bajo situaciones de poca memoria - la máquina se podría bloquear.
#
# Nunca modifique a mano archivos en estos directorios a menos que
# usted esté absolutamente seguro de que sabe lo que está haciendo. Use
# la herramienta provista para hacer los cambios (por ejemplo, vgcfgrestore).
# dirs = [ "/etc/lvm/metadata", "/mnt/disk2/lvm/metadata2" ]
#}
# Demonio de eventos
#
dmeventd {
# mirror_library es la biblioteca utilizada al monitorizar un dispositivo de espejo.
#
# "libdevmapper-event-lvm2mirror.so" intenta recuperarse de
# las fallas. Remueve los dispositivos que fallan desde un grupo de volumen y
# reconfigura un espejo cuando es necesario. Si no se proporciona ninguna biblioteca de espejo,
#los espejos no serán monitorizados a través de dmeventd.
mirror_library = "libdevmapper-event-lvm2mirror.so"
# snapshot_library es la biblioteca utilizada para monitorizar un dispositivo de instantánea.
#
# "libdevmapper-event-lvm2snapshot.so" monitoriza el filtraje de
# instantáneas y emite una advertencia a través de syslog cuando el uso de la
# instantánea excede 80%. La advertencia se repite cuando el 85%, 90% y
# 95% de la instantánea se llena.
snapshot_library = "libdevmapper-event-lvm2snapshot.so"
# Ruta completa del binario dmeventd.
#
# ejecutable = "/sbin/dmeventd"
}