Como posso mapear nomes de dispositivos iostat para nomes LVM / dev / mapper / XXX?

16

mount mostra dispositivos de montagem como:

/dev/mapper/VolGroup01-LogVol00 on /var type ext3 (rw)

ou

/dev/mapper/VolGrp_backups-backups on /mnt/backups type ext3 (rw)

mas

O iostat usa a notação dm. como dm-0, dm-1e assim por diante.

Onde posso encontrar uma maneira de saber qual é qual?


fonte
De alguma forma, pensei que havia uma maneira de dizer ao iostat para "apenas fazer isso", mas não há uma (que eu possa encontrar). +1 para uma ótima pergunta que obteve uma resposta que também me ajudou.
Tim Post

Respostas:

21

ls -l /dev/mapper/*, o número menor do dispositivo (campo 6 de quais ls -lsaídas) corresponde ao número em dm-\d+.

mulher
fonte
11

Dependendo da versão do iostat, você tem a -Nopção de fazer isso por você:

-N Exibe os nomes registrados no mapeador de dispositivos para qualquer dispositivo mapeador. Útil para visualizar estatísticas LVM2.

Edit: versões> = 7.1.4 do systat (que inclui o iostat) tem essa opção.

29/04/2007: Versão 7.1.4 - Sebastien Godard (sysstat wanadoo.fr) * Opção -N adicionada ao iostat. Esta opção permite que o usuário consulte qualquer dispositivo mapeador de dispositivos em busca do nome do dispositivo registrado [bugzilla # 177540].

Mark Wagner
fonte
uma resposta mais precisa para a pergunta.
Felipe Alvarez
4

você pode tentar o lsblkcomando que mostra o volume lógico usado pelo respectivo dev-mapper.

# lsblk
NAME                       MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                          8:0    0    8G  0 disk
├─sda1                       8:1    0  500M  0 part /boot
└─sda2                       8:2    0  7.5G  0 part
  ├─vg_root-lv_root (dm-0) 253:0    0  5.6G  0 lvm  /
  └─vg_root-lv_swap (dm-1) 253:1    0    2G  0 lvm  [SWAP]
sdb                          8:16   0  200M  0 disk
sdc                          8:32   0  1.5G  0 disk
sdd                          8:48   0  512M  0 disk
sde                          8:64   0    4G  0 disk
└─vg_root-lv_data (dm-2)   253:2    0  3.5G  0 lvm  /data1
Faiz Sayed
fonte
1

Por favor, tente este comando na versão em iostatque não existe a opção -N para listar os LVs.

lvdisplay | awk '/LV Name/{blockdev=$3} /Block device/{bdid=$3; sub("[0-9]*:","dm-",bdid); print bdid,blockdev;}'

user202677
fonte
0

Você pode usar um simples lvdisplaycom awk, assim.

lvdisplay | awk '/LV Name/{n=$3} /Block device/{d=$3; sub(".*:","dm-",d); print d,n;}'
Diego Roberto Dos Santos
fonte
0

A maneira correta e mais fácil de fazer isso é usar o seguinte comando:

iostat -Nd

Na página de manual do iostat, a opção -Njá exibe os nomes registrados do mapeador de dispositivos.

user3801989
fonte
11
O que essa resposta acrescenta à resposta de Mark Wagner de 2011?
Womble
0

Saída mais limpa e simples :ls -lrt /dev/mapper

Gaia
fonte