如何生成虚拟机块存储信息表

第一步: 列出块设备属性

blkid | awk '{ print $1","$2 }' | sed 's#:##' | tee /tmp/disk_info_1.csv

第二步: 列出SCSI Controller及其磁盘信息

ls -d /sys/block/sd*/device/scsi_device/* |awk -F '[/]' '{print $4,"- SCSI",$7}' | awk '{ print $3"_"$4",/dev/"$1"1" }' | tee /tmp/disk_info_2.csv

最后合并以上两个表, 生成包含SCSI|Partions|UUID/TYPE信息

awk -F"," 'NR==FNR { a[$1]=$2; next } { print $0","a[$2] }' /tmp/disk_info_1.csv /tmp/disk_info_2.csv | tee /tmp/$(hostname)_DiskPartitions_$(date +%F).csv

Options

awk -F"," 'NR==FNR { a[$1]=$2; next } { print $0","a[$2] }' /tmp/disk_info_1.csv /tmp/disk_info_2.csv