目次
Hyper-V (はいぱ~ヴぅぃ) - ハイパーバイザベース仮想化
Hyper-V の有効化
PowerShell で Hyper-V を操作する方法
現時点 (2020/09/15 時点) のバージョン構成では、Scoop - Windows 用のコマンドラインインストーラ でインストールした sudo - 管理者実行コマンド で普通に sudo Get-VM
を管理者実行すると上手く行きません。
Having troubles with Get-VM using sudo · Issue #39 · lukesampson/psutils ここに問題として報告されています。
$ Get-Host
Name : ConsoleHost Version : 7.0.3 InstanceId : b0934a72-f912-46b2-8d4a-f29f08c5b6b4 UI : System.Management.Automation.Internal.Host.InternalHostUserInterface CurrentCulture : ja-JP CurrentUICulture : ja-JP PrivateData : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy DebuggerEnabled : True IsRunspacePushed : False Runspace : System.Management.Automation.Runspaces.LocalRunspace
$ scoop list sudo
Installed apps matching 'sudo':
sudo 0.2020.01.26
Hyper-V 仮想マシン情報を取得
$ sudo Get-VM
としたいところですが… 応答がありません🤤
しかし、これは上手く動作します。
$ sudo pwsh -c 'Get-VM'
Name State CPUUsage(%) MemoryAssigned(M) Uptime Status Version ---- ----- ----------- ----------------- ------ ------ ------- Android x86 Off 0 0 00:00:00 正常稼働中 9.0 Fedora Off 0 0 00:00:00 正常稼働中 9.0
Hyper-V 関連のコマンドは管理者実行が必要
管理者以外で実行すると、アクセス許可がないと言われる。
$ Get-VM
Get-VM: このタスクを完了するために必要なアクセス許可がありません。このコンピューター 'CMON' の承認ポリシーの管理者に問い合わせてください。
そのため、PowerShell を管理者実行した方が速いと思います。
$ sudo pwsh
PowerShell 7.0.3 Copyright (c) Microsoft Corporation. All rights reserved. https://aka.ms/powershell Type 'help' to get help. Loading personal and system profiles took 2061ms.
仮想マシンの実行
$ Start-VM -Name 'Fedora' $ Get-VM
Name State CPUUsage(%) MemoryAssigned(M) Uptime Status Version ---- ----- ----------- ----------------- ------ ------ ------- Android x86 Off 0 0 00:00:00 正常稼働中 9.0 Fedora Running 2 2048 00:00:06.5280000 正常稼働中 9.0
仮想マシンの終了
$ Stop-VM -Name 'Fedora' $ Get-VM
Name State CPUUsage(%) MemoryAssigned(M) Uptime Status Version ---- ----- ----------- ----------------- ------ ------ ------- Android x86 Off 0 0 00:00:00 正常稼働中 9.0 Fedora Off 0 0 00:00:00 正常稼働中 9.0
チェックポイントの作成/取得
$ Checkpoint-VM -Name 'Fedora' -SnapshotName 'Setup後' $ Get-VMSnapshot -VMName 'Fedora'
VMName Name SnapshotType CreationTime ParentSnapshotName ------ ---- ------------ ------------ ------------------ Fedora Setup後 Standard 2020/09/15 14:55:02
チェックポイントの削除
$ Remove-VMSnapshot -VMName 'Fedora' -Name 'Setup後' $ Get-VMSnapshot -VMName 'Fedora'
チェックポイントが存在しない場合は何も取得されない。
仮想マシンの一時停止/再開... 再会💕
一時停止する場合
$ Suspend-VM -Name 'Fedora' $ Get-VM
Name State CPUUsage(%) MemoryAssigned(M) Uptime Status Version ---- ----- ----------- ----------------- ------ ------ ------- Android x86 Off 0 0 00:00:00 正常稼働中 9.0 Fedora Paused 0 775 00:10:21.1060000 正常稼働中 9.0
再開する場合
$ Resume-VM -Name 'Fedora' $ Get-VM
Name State CPUUsage(%) MemoryAssigned(M) Uptime Status Version ---- ----- ----------- ----------------- ------ ------ ------- Android x86 Off 0 0 00:00:00 正常稼働中 9.0 Fedora Running 0 775 00:10:27.0510000 正常稼働中 9.0