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コンソールを機能させるには何をする必要がありますか?
シリアルコンソールを使用するようにゲストを構成する必要があると確信しています。これを機能させるには、次の3つのことが必要です。
ゲストにタイプpty
の仮想シリアルデバイスを提供します(たとえば、virt-manager
vm情報ページにデバイスを追加します)
serial=tty0 console=ttyS0,115200n8
のようなブートパラメータをGRUB_CMDLINE_LINUX
の/etc/default/grub
に追加することにより、カーネルを出力に使用するように指示します。次にSudo update-grub
を実行します
(オプション) ttyS0にgettyを置く ログインプロンプトを取得する
詳しくは http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=50765 をご覧ください。
私はこれに出くわしました。
ホストの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つの可能性は、仮想マシンにシリアルコンソールが構成されていないことです。
virsh dumpxml guest1
シリアルコンソールが構成されているかどうかが表示されます。似たようなものがあるはずです
<serial type='pty'>
<target port='0'/>
</serial>