Red Hat Training

A Red Hat training course is available for RHEL 8

9.2. Campos de exibição de objetos LVM

Esta seção fornece uma série de tabelas que listam as informações que você pode exibir sobre os objetos LVM com os comandos pvs, vgs, e lvs.

Por conveniência, um prefixo de nome de campo pode ser descartado se corresponder ao padrão para o comando. Por exemplo, com o comando pvs, name significa pv_name, mas com o comando vgs, name é interpretado como vg_name.

Executar o seguinte comando é o equivalente a executar pvs -o pv_free.

# pvs -o free
  PFree
  17.14G
  17.09G
  17.14G
Nota

O número de caracteres nos campos de atributos em pvs, vgs, e lvs pode aumentar em lançamentos posteriores. Os campos de caracteres existentes não mudarão de posição, mas novos campos podem ser adicionados ao final. Você deve levar isto em consideração ao escrever scripts que buscam caracteres de atributo específicos, buscando o caractere com base em sua posição relativa até o início do campo, mas não por sua posição relativa até o final do campo. Por exemplo, para pesquisar o caractere p no nono bit do campo lv_attr, você poderia pesquisar a string "^/........p/", mas não deve pesquisar a string "/*p$/".

Tabela 9.1, “Os campos de exibição do comando pvs” lista os argumentos de exibição do comando pvs, juntamente com o nome do campo como aparece na exibição do cabeçalho e uma descrição do campo.

Tabela 9.1. Os campos de exibição do comando pvs

ArgumentoCabeçalhoDescrição

dev_size

DevSize

O tamanho do dispositivo subjacente sobre o qual o volume físico foi criado

pe_start

1º PE

Offset até o início da primeira extensão física no dispositivo subjacente

pv_attr

Attr

Status do volume físico: (a)llocalizável ou e(x)portado.

pv_fmt

Fmt

O formato dos metadados do volume físico (lvm2 ou lvm1)

pv_free

PFree

O espaço livre restante no volume físico

pv_name

PV

O nome do volume físico

pv_pe_alloc_count

Atribuir

Número de extensões físicas utilizadas

pv_pe_count

PE

Número de extensões físicas

pvseg_size

SSize

O tamanho do segmento do volume físico

pvseg_start

Início

A extensão física inicial do segmento de volume físico

pv_size

PSize

O tamanho do volume físico

pv_tags

Etiquetas PV

Etiquetas LVM anexadas ao volume físico

pv_used

Usado

A quantidade de espaço atualmente utilizada no volume físico

pv_uuid

UUID PV

A UUID do volume físico

O comando pvs exibe os seguintes campos por padrão: pv_name, vg_name, pv_fmt, pv_attr, pv_size, pv_free. A exibição é ordenada por pv_name.

# pvs
  PV         VG     Fmt  Attr PSize  PFree
  /dev/sdb1  new_vg lvm2 a-   17.14G 17.14G
  /dev/sdc1  new_vg lvm2 a-   17.14G 17.09G
  /dev/sdd1  new_vg lvm2 a-   17.14G 17.13G

Usando o argumento -v com o comando pvs adiciona os seguintes campos à exibição padrão: dev_size, pv_uuid.

# pvs -v
    Scanning for physical volume names
  PV         VG     Fmt  Attr PSize  PFree  DevSize PV UUID
  /dev/sdb1  new_vg lvm2 a-   17.14G 17.14G  17.14G onFF2w-1fLC-ughJ-D9eB-M7iv-6XqA-dqGeXY
  /dev/sdc1  new_vg lvm2 a-   17.14G 17.09G  17.14G Joqlch-yWSj-kuEn-IdwM-01S9-XO8M-mcpsVe
  /dev/sdd1  new_vg lvm2 a-   17.14G 17.13G  17.14G yvfvZK-Cf31-j75k-dECm-0RZ3-0dGW-tUqkCS

Você pode usar o argumento --segments do comando pvs para exibir informações sobre cada segmento de volume físico. Um segmento é um grupo de extensões. A visualização de um segmento pode ser útil se você quiser ver se seu volume lógico está fragmentado.

O comando pvs --segments exibe os seguintes campos por padrão: pv_name, vg_name, pv_fmt, pv_attr, pv_size, pv_free, pvseg_start, pvseg_size. A exibição é ordenada por pv_name e pvseg_size dentro do volume físico.

# pvs --segments
  PV         VG         Fmt  Attr PSize  PFree  Start SSize
  /dev/hda2  VolGroup00 lvm2 a-   37.16G 32.00M     0  1172
  /dev/hda2  VolGroup00 lvm2 a-   37.16G 32.00M  1172    16
  /dev/hda2  VolGroup00 lvm2 a-   37.16G 32.00M  1188     1
  /dev/sda1  vg         lvm2 a-   17.14G 16.75G     0    26
  /dev/sda1  vg         lvm2 a-   17.14G 16.75G    26    24
  /dev/sda1  vg         lvm2 a-   17.14G 16.75G    50    26
  /dev/sda1  vg         lvm2 a-   17.14G 16.75G    76    24
  /dev/sda1  vg         lvm2 a-   17.14G 16.75G   100    26
  /dev/sda1  vg         lvm2 a-   17.14G 16.75G   126    24
  /dev/sda1  vg         lvm2 a-   17.14G 16.75G   150    22
  /dev/sda1  vg         lvm2 a-   17.14G 16.75G   172  4217
  /dev/sdb1  vg         lvm2 a-   17.14G 17.14G     0  4389
  /dev/sdc1  vg         lvm2 a-   17.14G 17.14G     0  4389
  /dev/sdd1  vg         lvm2 a-   17.14G 17.14G     0  4389
  /dev/sde1  vg         lvm2 a-   17.14G 17.14G     0  4389
  /dev/sdf1  vg         lvm2 a-   17.14G 17.14G     0  4389
  /dev/sdg1  vg         lvm2 a-   17.14G 17.14G     0  4389

Você pode usar o comando pvs -a para ver dispositivos detectados pela LVM que não foram inicializados como volumes físicos da LVM.

# pvs -a
  PV                             VG     Fmt  Attr PSize  PFree
  /dev/VolGroup00/LogVol01                   --       0      0
  /dev/new_vg/lvol0                          --       0      0
  /dev/ram                                   --       0      0
  /dev/ram0                                  --       0      0
  /dev/ram2                                  --       0      0
  /dev/ram3                                  --       0      0
  /dev/ram4                                  --       0      0
  /dev/ram5                                  --       0      0
  /dev/ram6                                  --       0      0
  /dev/root                                  --       0      0
  /dev/sda                                   --       0      0
  /dev/sdb                                   --       0      0
  /dev/sdb1                      new_vg lvm2 a-   17.14G 17.14G
  /dev/sdc                                   --       0      0
  /dev/sdc1                      new_vg lvm2 a-   17.14G 17.09G
  /dev/sdd                                   --       0      0
  /dev/sdd1                      new_vg lvm2 a-   17.14G 17.14G

Tabela 9.2, “campos de exibição vgs” lista os argumentos de exibição do comando vgs, juntamente com o nome do campo como aparece na exibição do cabeçalho e uma descrição do campo.

Tabela 9.2. campos de exibição vgs

ArgumentoCabeçalhoDescrição

lv_count

#LV

O número de volumes lógicos que o grupo de volumes contém

max_lv

MaxLV

O número máximo de volumes lógicos permitidos no grupo de volume (0 se ilimitado)

max_pv

MaxPV

O número máximo de volumes físicos permitidos no grupo de volume (0 se ilimitado)

pv_count

#PV

O número de volumes físicos que definem o grupo de volumes

snap_count

#SN

O número de instantâneos que o grupo de volume contém

vg_attr

Attr

Status do grupo de volume: (w)riteable, (r)eadonly, resi(z)eable, e(x)portted, (p)artial e (c)lustered.

vg_extent_count

#Extremo

O número de extensões físicas no grupo de volume

vg_extent_size

Ext

O tamanho das extensões físicas no grupo de volume

vg_fmt

Fmt

O formato dos metadados do grupo de volume (lvm2 ou lvm1)

vg_free

VFree

Tamanho do espaço livre restante no grupo de volume

vg_free_count

Grátis

Número de extensões físicas livres no grupo de volume

vg_name

VG

O nome do grupo de volume

vg_seqno

Seq

Número que representa a revisão do grupo de volume

vg_size

VSize

O tamanho do grupo de volume

vg_sysid

SYS ID

LVM1 ID do sistema

vg_tags

Tags VG

Etiquetas LVM anexadas ao grupo de volume

vg_uuid

VG UUID

A UUID do grupo de volume

O comando vgs exibe os seguintes campos por padrão: vg_name, pv_count, lv_count, snap_count, vg_attr, vg_size, vg_free. A exibição é ordenada por vg_name.

# vgs
  VG     #PV #LV #SN Attr   VSize  VFree
  new_vg   3   1   1 wz--n- 51.42G 51.36G

Usando o argumento -v com o comando vgs adiciona os seguintes campos à exibição padrão: vg_extent_size, vg_uuid.

# vgs -v
    Finding all volume groups
    Finding volume group "new_vg"
  VG     Attr   Ext   #PV #LV #SN VSize  VFree  VG UUID
  new_vg wz--n- 4.00M   3   1   1 51.42G 51.36G jxQJ0a-ZKk0-OpMO-0118-nlwO-wwqd-fD5D32

Tabela 9.3, “campos de exibição de lvs” lista os argumentos de exibição do comando lvs, juntamente com o nome do campo como aparece na exibição do cabeçalho e uma descrição do campo.

Nota

Em versões posteriores do Red Hat Enterprise Linux, a saída do comando lvs pode ser diferente, com campos adicionais na saída. A ordem dos campos, entretanto, permanecerá a mesma e quaisquer campos adicionais aparecerão no final da exibição.

Tabela 9.3. campos de exibição de lvs

ArgumentoCabeçalhoDescrição

* chunksize

* chunk_size

Pedaço

Tamanho da unidade em um volume instantâneo

copy_percent

Cópia%

A porcentagem de sincronização de um volume lógico espelhado; também usada quando os extensões físicas estão sendo movidos com o comando pv_move

devices

Dispositivos

Os dispositivos subjacentes que compõem o volume lógico: os volumes físicos, os volumes lógicos e os extensões físicas e lógicas iniciais

lv_ancestors

Ancestrais

Para fotos de piscinas finas, os antepassados do volume lógico

lv_descendants

Descendentes

Para fotos de piscinas finas, os descendentes do volume lógico

lv_attr

Attr

O status do volume lógico. Os bits do atributo volume lógico são os seguintes:

* Bit 1: Tipo de volume: (m)irritado, (M)irritado sem sincronia inicial, (o)rigin, (O)rigin com foto de fusão, (r)aid, ®aid sem sincronia inicial, (s)napshot, (S)napshot, (p)vmove, (v)irtual, espelho ou raid (i)mage, espelho ou raid (I)mage out-of-sync, espelho (l)og dispositivo, sob (c)onversion, thin (V)olume, (t)hin pool, (T)hin pool data, raid ou thin pool m(e)tadata ou pool metadata spare,

* Bit 2: Permissões: (w)riteable, (r)ead-only, ®ead-only activation of non-read-only volume

* Bit 3: Política de alocação: (a)nywhere, (c)ontiguous, (i)nherited, c(l)ing, (n)ormal. Isto é capitalizado se o volume estiver atualmente bloqueado contra mudanças de alocação, por exemplo, durante a execução do comando pvmove.

* Bit 4: fixo (m)inor

* Bit 5: Estado: (a)ctive, (s)uspended, (I)nvalid snapshot, invalid (S)uspended snapshot, snapshot (m)erge failed, suspended snapshot (M)erge failed, mapped (d)evice present without tables, mapped device present with (i)nactive table

* Bit 6: dispositivo (o)caneta

* Bit 7: Tipo de alvo: (m)irritor, (r)aid, (s)napshot, (t)hin, (u)nknown, (v)irtual. Isto agrupa volumes lógicos relacionados com o mesmo alvo central. Assim, por exemplo, imagens de espelho, logs de espelho assim como os próprios espelhos aparecem como (m) se eles usarem o driver do kernel do dispositivo original, enquanto que os equivalentes de raid usando o driver do kernel do md raid aparecem todos como (r). Instantâneos usando o driver do dispositivo original aparecem como (s), enquanto que instantâneos de volumes finos usando o driver de provisionamento fino aparecem como (t).

* Bit 8: Os blocos de dados recém-alocados são sobrescritos com blocos de (z)eroes antes do uso.

* Bit 9: Volume Saúde: (p)artial, (r)efresh needed, (m)ismatches exist, (w)ritemostly. (p)artial significa que um ou mais dos Volumes Físicos que este Volume Lógico utiliza está faltando no sistema. (r)efresh significa que um ou mais dos Volumes Físicos que este Volume Lógico RAID utiliza sofreu um erro de escrita. O erro de escrita pode ser devido a uma falha temporária desse Volume Físico ou a uma indicação de que ele está falhando. O dispositivo deve ser atualizado ou substituído. (m)ismatches significa que o volume lógico RAID tem partes da matriz que não são coerentes. Inconsistências são descobertas ao iniciar uma operação em check em um volume lógico RAID. (As operações de scrubbing, check e repair, podem ser realizadas em um volume lógico RAID por meio do comando lvchange ) (w)ritemostly significa os dispositivos em um volume lógico RAID 1 que foram marcados como sendo os mais gravados.

* Bit 10: ativação s(k)ip: este volume é sinalizado para ser pulado durante a ativação.

lv_kernel_major

KMaj

Número real do dispositivo principal do volume lógico (-1 se inativo)

lv_kernel_minor

KMIN

Número real do dispositivo menor do volume lógico (-1 se inativo)

lv_major

Maj

O número do dispositivo principal persistente do volume lógico (-1 se não especificado)

lv_minor

Min

O número de dispositivo menor persistente do volume lógico (-1 se não especificado)

lv_name

LV

O nome do volume lógico

lv_size

LSize

O tamanho do volume lógico

lv_tags

Tags LV

Etiquetas LVM anexadas ao volume lógico

lv_uuid

UUID LV

A UUID do volume lógico.

mirror_log

Log

Dispositivo sobre o qual reside o registro espelho

modules

Módulos

Objetivo correspondente do gerador de dispositivos do núcleo, necessário para usar este volume lógico

move_pv

Mudança

Fonte volume físico de um volume lógico temporário criado com o comando pvmove

origin

Origem

O dispositivo de origem de um volume instantâneo

* regionsize

* region_size

Região

O tamanho da unidade de um volume lógico espelhado

seg_count

#Seg

O número de segmentos no volume lógico

seg_size

SSize

O tamanho dos segmentos no volume lógico

seg_start

Início

Deslocamento do segmento no volume lógico

seg_tags

Etiquetas de segmento

Etiquetas LVM anexadas aos segmentos do volume lógico

segtype

Tipo

O tipo de segmento de um volume lógico (por exemplo: espelho, listrado, linear)

snap_percent

Snap%

Porcentagem atual de um volume de instantâneo que está em uso

stripes

#Str

Número de listras ou espelhos em um volume lógico

* stripesize

* stripe_size

Listra

Tamanho da unidade da listra em um volume lógico listrado

O comando lvs fornece a seguinte exibição por padrão. A exibição padrão é ordenada por vg_name e lv_name dentro do grupo de volume.

# lvs
  LV     VG              Attr       LSize    Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  origin VG              owi-a-s---    1.00g
  snap   VG              swi-a-s---  100.00m      origin 0.00

Um uso comum do comando lvs é anexar devices ao comando para exibir os dispositivos subjacentes que compõem o volume lógico. Este exemplo também especifica a opção -a para exibir os volumes internos que são componentes dos volumes lógicos, tais como espelhos RAID, entre parênteses. Este exemplo inclui um volume RAID, um volume listrado, e um volume ligeiramente polarizado.

# lvs -a -o +devices
  LV               VG            Attr       LSize   Pool   Origin Data%  Meta%  Move Log Cpy%Sync Convert Devices
  raid1            VG            rwi-a-r---   1.00g                                      100.00           raid1_rimage_0(0),raid1_rimage_1(0)
  [raid1_rimage_0] VG            iwi-aor---   1.00g                                                       /dev/sde1(7041)
  [raid1_rimage_1] VG            iwi-aor---   1.00g                                                       /dev/sdf1(7041)
  [raid1_rmeta_0]  VG            ewi-aor---   4.00m                                                       /dev/sde1(7040)
  [raid1_rmeta_1]  VG            ewi-aor---   4.00m                                                       /dev/sdf1(7040)
  stripe1          VG            -wi-a-----  99.95g                                                       /dev/sde1(0),/dev/sdf1(0)
  stripe1          VG            -wi-a-----  99.95g                                                       /dev/sdd1(0)
  stripe1          VG            -wi-a-----  99.95g                                                       /dev/sdc1(0)
  [lvol0_pmspare]  rhel_host-083 ewi-------   4.00m                                                       /dev/vda2(0)
  pool00           rhel_host-083 twi-aotz--  <4.79g               72.90  54.69                            pool00_tdata(0)
  [pool00_tdata]   rhel_host-083 Twi-ao----  <4.79g                                                       /dev/vda2(1)
  [pool00_tmeta]   rhel_host-083 ewi-ao----   4.00m                                                       /dev/vda2(1226)
  root             rhel_host-083 Vwi-aotz--  <4.79g pool00        72.90
  swap             rhel_host-083 -wi-ao---- 820.00m                                                       /dev/vda2(1227)

Usando o argumento -v com o comando lvs adiciona os seguintes campos à exibição padrão: seg_count, lv_major, lv_minor, lv_kernel_major, lv_kernel_minor, lv_uuid.

# lvs -v
    Finding all logical volumes
  LV         VG     #Seg Attr   LSize  Maj Min KMaj KMin Origin Snap%  Move Copy%  Log Convert LV UUID
  lvol0      new_vg    1 owi-a- 52.00M  -1  -1 253  3                                          LBy1Tz-sr23-OjsI-LT03-nHLC-y8XW-EhCl78
  newvgsnap1 new_vg    1 swi-a-  8.00M  -1  -1 253  5    lvol0    0.20                         1ye1OU-1cIu-o79k-20h2-ZGF0-qCJm-CfbsIx

Você pode usar o argumento --segments do comando lvs para exibir informações com colunas padrão que enfatizam as informações do segmento. Quando você usa o argumento segments, o prefixo seg é opcional. O comando lvs --segments exibe os seguintes campos por padrão: lv_name, vg_name, lv_attr, stripes, segtype, seg_size. A exibição padrão é ordenada por vg_name, lv_name dentro do grupo de volume, e seg_start dentro do volume lógico. Se os volumes lógicos estivessem fragmentados, a saída deste comando mostraria isso.

# lvs --segments
  LV       VG         Attr   #Str Type   SSize
  LogVol00 VolGroup00 -wi-ao    1 linear  36.62G
  LogVol01 VolGroup00 -wi-ao    1 linear 512.00M
  lv       vg         -wi-a-    1 linear 104.00M
  lv       vg         -wi-a-    1 linear 104.00M
  lv       vg         -wi-a-    1 linear 104.00M
  lv       vg         -wi-a-    1 linear  88.00M

Usando o argumento -v com o comando lvs --segments adiciona os seguintes campos à exibição padrão: seg_start, stripesize, chunksize.

# lvs -v --segments
    Finding all logical volumes
  LV         VG     Attr   Start SSize  #Str Type   Stripe Chunk
  lvol0      new_vg owi-a-    0  52.00M    1 linear     0     0
  newvgsnap1 new_vg swi-a-    0   8.00M    1 linear     0  8.00K

O exemplo a seguir mostra a saída padrão do comando lvs em um sistema com um volume lógico configurado, seguido pela saída padrão do comando lvs com o argumento segments especificado.

# lvs
  LV    VG     Attr   LSize  Origin Snap%  Move Log Copy%
  lvol0 new_vg -wi-a- 52.00M
# lvs --segments
  LV    VG     Attr   #Str Type   SSize
  lvol0 new_vg -wi-a-    1 linear 52.00M