
Atualmente estou usando este comando trabalhoso
lvdisplay | awk '/LV Path/ {p=$3} /LV Name/ {n=$3} /VG Name/ {v=$3} /Block device/ {d=$3; sub(".*:", "/dev/dm-", d); printf "%s\t%s\t%s\n", p, "/dev/mapper/"v"-"n, d}'
Gostaria de saber se existe algum método mais curto para obter esse mapeamento de saída combinada (lvpath,/dev/mapper/e/dev/dm/*), possivelmente um único comando.
Responder1
Nas páginas de manual do lvdisplay.
Além do caminho para o dispositivo de bloco, os dados podem ser reportados diretamente do
lvdisplay -C -o "lv_path,lv_dm_path,lv_kernel_minor"
Se você executar
lvdisplay -C -o " "
Então lvdisplay listará todos os campos disponíveis.
Responder2
man lvdisplay diz que "lvs(8) é uma alternativa preferida que mostra as mesmas informações e muito mais, usando um formato de saída mais compacto e configurável."
Por isso:
lvs -o "lv_path,lv_dm_path,lv_kernel_minor"