web-dev-qa-db-ja.com

「virsh -c qemu:/// system console guest1」からのコンソール出力を妨げる理由は何ですか?

Ubuntu 10.04ホストでKVMを実行しています。ゲストOSもUbuntu 10.04です。

「console」コマンドを使用してゲストに接続しようとしています。接続を確立できるようですが、出力はありません。

$ Sudo virsh -c qemu:///system console guest1
Connected to domain guest1
Escape character is ^]
(NOTHING HERE)
^]
$

「シリアル」デバイスは構成されていませんが、これらの「コンソール」デバイスはあります。

<console type='pty' tty='/dev/pts/2'>
  <source path='/dev/pts/2'/>
  <target port='0'/>
</console>
<console type='pty' tty='/dev/pts/2'>
  <source path='/dev/pts/2'/>
  <target port='0'/>
</console>

これらはコンソールに十分ですか、それともシリアルデバイスも必要ですか?

KVMコンソールを機能させるには何をする必要がありますか?

9

シリアルコンソールを使用するようにゲストを構成する必要があると確信しています。これを機能させるには、次の3つのことが必要です。

  1. ゲストにタイプptyの仮想シリアルデバイスを提供します(たとえば、virt-manager vm情報ページにデバイスを追加します)

  2. serial=tty0 console=ttyS0,115200n8のようなブートパラメータをGRUB_CMDLINE_LINUX/etc/default/grubに追加することにより、カーネルを出力に使用するように指示します。次にSudo update-grubを実行します

  3. (オプション) ttyS0にgettyを置く ログインプロンプトを取得する

詳しくは http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=50765 をご覧ください。

7
poolie

私はこれに出くわしました。

ホストのXML構成にあるもの(KVMを実行)は次のとおりです。

<serial type='pty'>
  <source path='/dev/pts/0'/>
  <target port='0'/>
</serial>
<console type='pty' tty='/dev/pts/0'>
  <source path='/dev/pts/0'/>
  <target port='0'/>
</console>

また、VMの/etc/default/grub.confに以下を追加する必要がありました(「カーネル」コマンドに追加)。

kernel ..... serial=tty0 console=ttyS0,115200n8

最後に、「/ etc/securetty」を追加してttyS0を保護し、ここからルートログインできるようにしました

vi /etc/securetty
ttyS0

(他の回答で説明されているように)getty設定をいじる必要があるかもしれません

お役に立てれば

1
shreddd

ここでは非常によく説明されています:

buntuサーバー10.04 KVMゲストのシリアルコンソール

1
user9784

1つの可能性は、仮想マシンにシリアルコンソールが構成されていないことです。

virsh dumpxml guest1

シリアルコンソールが構成されているかどうかが表示されます。似たようなものがあるはずです

<serial type='pty'>
<target port='0'/>
</serial>
1
txwikinger