
В настоящее время я использую эту трудоемкую команду
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}'
Хотелось бы узнать, есть ли более короткий метод для получения этого отображения объединенного вывода (lvpath,/dev/картогенератор/и/dev/дм/*), возможно, одна команда.
решение1
Из страниц руководства по lvdisplay.
Помимо пути к блочному устройству данные могут быть переданы напрямую
lvdisplay -C -o "lv_path,lv_dm_path,lv_kernel_minor"
Если вы выполните
lvdisplay -C -o " "
Затем lvdisplay выведет список всех доступных полей.
решение2
man lvdisplay говорит: «lvs(8) — предпочтительная альтернатива, которая показывает ту же информацию и даже больше, используя более компактный и настраиваемый формат вывода».
Следовательно:
lvs -o "lv_path,lv_dm_path,lv_kernel_minor"