Informacje o adapterach VIO bezpośrednio z LPARa

Czasami potrzebujesz znaleźć informacje na temat serwerów VIO i adapterów używanych przez Twojego LPARa, ale nie masz dostępu bezpośrednio do VIO. Na szczeście jest szybki sposób wykorzystujący kdb, który pozwoli Ci szybko zdobyć te informacje. Wystarczy, że skorzystasz z poniższych skrytpów.

1) Dla wirtualnych adapterów FC

#!/usr/bin/ksh 
VFCS_LIST=$(lsdev -Cc adapter | awk '/Available .* Virtual Fibre Channel Client Adapter/ { print $1 }')
for f in ${VFCS_LIST}; do 
		echo vfcs $f | kdb | awk ' 
				/^adapter: / { 
						adapter = $2 
						lpar_id = $4 
						lpar_name = $6 
						next 
				} 
				/^host_name: / { 
						vios_host_name = $2 
						vios_host_device_name = $4 
						next 
				} 
				/^num_cmd_elems: / { 
						location_code = $4 
						next 
				} 
				/^portName: / { 
						wwpn = $2 
						next 
				} 
				END { 
						printf( "%-10s %-20s %-20s %s\n", 
								adapter, 
								vios_host_name, 
								vios_host_device_name, 
								wwpn ) 
				} 
				' 
done

2) Dla wirtualnych adapterów SCSI

#!/bin/ksh 
VSCSI_LIST=$(lsdev -Cc adapter | awk '/Available .* Virtual SCSI Client Adapter/ { print $1 }') 
for s in ${VSCSI_LIST}; do 
		echo cvai $s | kdb | awk -v adapter=$s ' 
				/:blank:+host_name: / { 
						vios_host_device_name = $6 
						next 
				} 
				/host part_number: / { 
						vios_host_id = $3 
						vios_host_name = $8 
						next 
				} 
				END { 
						printf( "%-10s %-20s %-20s\n", 
								adapter, 
								vios_host_name, 
								vios_host_device_name ) 
				} 
				' 
done