Hyper-Vネタです。
今回は、PowerShellを使って仮想システムの情報を取得してみます。
1)まずはやってみましょ
Get-WmiObject -Namespace rootvirtualization -ComputerName “.” -Class Msvm_Computersystem
PS C:> Get-WmiObject -Namespace rootvirtualization -ComputerName “.” -Class Msvm_Computersystem
__GENUS : 2
__CLASS : Msvm_ComputerSystem
__SUPERCLASS : CIM_ComputerSystem
__DYNASTY : CIM_ManagedElement
__RELPATH : Msvm_ComputerSystem.CreationClassName=“Msvm_ComputerSystem“,Name=“Hogehoge“
__PROPERTY_COUNT : 29
__DERIVATION : {CIM_ComputerSystem, CIM_System, CIM_EnabledLogicalElement, CIM_LogicalElement...}
__SERVER : Hogehoge
__NAMESPACE : rootvirtualization
__PATH : \Hogehogerootvirtualization:Msvm_ComputerSystem.CreationClassName=“Msvm_ComputerSystem“,Name=“Hogehoge“
AssignedNumaNodeList :
Caption : ホスト コンピューター システム
CreationClassName : Msvm_ComputerSystem
Dedicated :
Description : Microsoft ホスト コンピューター システム
ElementName : Hogehoge
EnabledDefault : 2
EnabledState : 2
HealthState : 5
IdentifyingDescriptions :
InstallDate :
Name : Hogehoge
NameFormat :
OnTimeInMilliseconds :
OperationalStatus : {2}
OtherDedicatedDescriptions :
OtherEnabledState :
OtherIdentifyingInfo :
PowerManagementCapabilities :
PrimaryOwnerContact :
PrimaryOwnerName :
ProcessID :
RequestedState : 12
ResetCapability : 1
Roles :
Status :
StatusDescriptions : {OK}
TimeOfLastConfigurationChange :
TimeOfLastStateChange :
__GENUS : 2
__CLASS : Msvm_ComputerSystem
__SUPERCLASS : CIM_ComputerSystem
__DYNASTY : CIM_ManagedElement
__RELPATH : Msvm_ComputerSystem.CreationClassName=“Msvm_ComputerSystem“,Name=“03DC23B0-****-4281-BE**-33369646E8E2“
__PROPERTY_COUNT : 29
__DERIVATION : {CIM_ComputerSystem, CIM_System, CIM_EnabledLogicalElement, CIM_LogicalElement...}
__SERVER : Hogehoge
__NAMESPACE : rootvirtualization
__PATH : \Hogehogerootvirtualization:Msvm_ComputerSystem.CreationClassName=“Msvm_ComputerSystem“,Name=“03DC23B0-5389-4281-****-33369646E8E2“
AssignedNumaNodeList : {0}
Caption : 仮想マシン
CreationClassName : Msvm_ComputerSystem
Dedicated :
Description : Microsoft Virtual Machine
ElementName : Win7
EnabledDefault : 2
EnabledState : 2
HealthState : 5
IdentifyingDescriptions :
InstallDate : 20090718035145.000000-000
Name : 03DC23B0-5389-4281-****-33369646E8E2
NameFormat :
OnTimeInMilliseconds : 332464281
OperationalStatus : {2}
OtherDedicatedDescriptions :
OtherEnabledState :
OtherIdentifyingInfo :
PowerManagementCapabilities :
PrimaryOwnerContact :
PrimaryOwnerName :
ProcessID : 1348
RequestedState : 12
ResetCapability : 1
Roles :
Status :
StatusDescriptions : {正常稼働中}
TimeOfLastConfigurationChange : 20100104093738.593750-000
TimeOfLastStateChange : 20100104093733.000000-000
・
・
・
これだと情報が多すぎて分からないですね・・・
2)ほしい情報だけを抜き出す
Hyper-Vサーバ ・・・・・・・・Hogehoge
仮想マシン名・・・・・・・・・・・ElementName
仮想マシン・・・・・・・・・・・・・Caption
仮想マシンのステータス・・・StatusDescriptions
仮想マシンのGUID・・・・・・Name
を取得してみる。
Get-WmiObject -Namespace rootvirtualization -ComputerName “Hogehoge” -Class Msvm_Computersystem | Select-Object ElementName,Caption,StatusDescriptions,Name| Format-List *
PS C:> Get-WmiObject -Namespace rootvirtualization -ComputerName “Hogehoge“ -Class Msvm_Computersystem|Select-Object ElementName,Caption,StatusDescriptions,Name| Format-List *
ElementName : Hogehoge
Caption : ホスト コンピューター システム
StatusDescriptions : {OK}
Name : Hogehoge
ElementName : Win7
Caption : 仮想マシン
StatusDescriptions : {正常稼働中}
Name : 03DC23B0-5389-4281-****-33369646E8E2
・
・
・
取得できましたか??
これを使って、仮想マシン接続のショートカットを作ります。
こうご期待。
仮想マシンへのショートカット
PowerShell難しい。。