Windows 10 VM (QEMU-KVM) 用の Virsh コンソール

Windows 10 VM (QEMU-KVM) 用の Virsh コンソール

を使用して Linux ホストから Windows 10 仮想マシンにアクセスしようとしていますvirsh console

しかし、そうすると、他の多くの人が経験したように、空のコンソールが表示されます。

virsh console win10
Connected to domain 'win10'
Escape character is ^] (Ctrl + ])

そして、まったく入力できません。とにかく、Windows の場合に特にこれを可能にするために VM で実行できる構成はありますか? ありがとうございます

答え1

virsh consoleTTYコンソールは、uartVM 内 (別名「COM ポート」)。Windows 10 はこの COM ポートに何かを出力しますか?

Windows は出力に VGA ハードウェアを期待しているので、VM に VNC を設定し、VM と対話するために VNC ビューアーに接続します。これを可能にするには、libvirtxml ドメイン構成で次のように構成します。

    <input type='tablet' bus='usb'/>
    <input type='mouse' bus='ps2'/>
    <graphics type='vnc' port='5901' autoport='no'/>
    <video>
      <model type='cirrus' vram='5120' heads='1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </video>

(このマシンへの VNC には、別の PCI スロット アドレスと TCP ポートを使用する必要がある可能性があります)。

その後再起動します(停止それから始める) VM を作成し、qemu が選択したポートでリッスンしていることを確認します。

vh1 ~ # netstat -lnpt | grep 590
tcp        0      0 127.0.0.1:5900          0.0.0.0:*               LISTEN      1774/qemu-system-x8 
tcp        0      0 127.0.0.1:5901          0.0.0.0:*               LISTEN      13692/qemu-system-x 
tcp        0      0 127.0.0.1:5902          0.0.0.0:*               LISTEN      2526/qemu-system-x8 
tcp        0      0 127.0.0.1:5903          0.0.0.0:*               LISTEN      3755/qemu-system-x8 

私の場合は、ローカルホストセキュリティのためです。

SSH トンネル経由でこれに接続するには、TCP ポート転送を使用します。これは標準の Linux VNC クライアント パッケージに組み込まれています。

vncviewer -via virtualization.host.name localhost:1

(5901 の VNC に接続するには、VNC 画面 1 を使用します)。必要に応じて、SSH 経由で に接続しvirtualization.host.name、ローカル ポートをlocalhost:5901サーバーの に転送します。次に、この転送されたポートに VNC クライアントを接続します。そのため、VNC は SSH で保護されます。

または、任意の IP アドレスでリッスンすることもできます (安全性は低くなります)。または、この TCP トンネルを別の方法で設定することもできます。ただし、ここで紹介した方法の方が便利です。または、私はそれを忘れていました。virt-viewer画面に接続するために使用していましたが、長い間使用していませんでした。

また、Windows Serverは(少なくとも、少し前までは)特別管理コンソール (SAC)COM ポート上で実行され、いくつかの操作 (タスク キルなど) を実行するために使用できます。このコンソールには でアクセスできますvirsh console。ただし、Windows 10 にはそれが備わっているとは思えません。

答え2

virsh consoleVMのシリアルコンソールあれば、それを実行します。Windows の場合全般と同様に、ない場合は何も起こりません。

グラフィカル コンソールを使用して VM を表示するには、を使用する必要があります。virt-viewerさらに良いのは、適切に統合された を使用することですvirt-manager

関連情報