0

QEMU を使用して、CentOS.img (どこかでダウンロード) を持ってきました。CentOS.img の起動画面が現在の端末のコンソール セッションを引き継いでいることがわかりました。CentOS の起動プロセスが表示され、ゲスト VM CentOS のログイン画面が表示されます。リモート コンソール マシンから QEMU インスタンスを実行したので、これは非常に役に立ちます。

ここで、iso を使用して新しい RHEL.img を作成し、それを起動しようとすると、(Y) の記号以外は画面に何も表示されませんでした :(

 $>/usr/libexec/qemu-kvm  -hda ./RHEL.img  -bios bios.bin  -nographic  -net nic,model=e1000,macaddr=00:AD:BE:EF:4F:BD -net tap,script=./qemu-ifup -m 1024 -smp 2
 ...Y

調査の結果、RHEL ブートをコンソールにリダイレクトすることで実行できることがわかりました。

  # virt-edit RHEL_VM /boot/grub/grub.conf
   ...
   title rhel (2.6.38.6-26.rc1.fc15.x86_64)
   root (hd0,0)
   kernel /vmlinuz ro [...] console=ttyS0
   ...

しかし、何もうまくいきませんでした。リモート端末から qemu-kvm を呼び出したのと同じコンソールに rhel VM セッションを持ち込もうとしています。前もって感謝します。

注: 物理ホスト マシンで GUI を有効にしていません。

4

1 に答える 1

2

シリアルポートを追加して、そこに出力を送信してみてください。これらの手順を実行するには、少なくとも 1 回は起動できる必要がありますが...

シリアルポートを qemu コマンドラインに追加してから、それに telnet を追加するだけで幸運に恵まれるかもしれません。Linuxがこれを検出し、そこに出力を送信することを願っています

edit /etc/init/ttyS0.conf and add

  respawn
  console none

  start on (local-filesystems)
  stop on [!12345]

  script
  exec start ttyS0
  end script

then

    ln -s /etc/init/ttyS0.conf /etc/rc2.d/S99ttyS0.conf
    ln -s /etc/init/ttyS0.conf /etc/rc0.d/S99ttyS0.conf
    ln -s /etc/init/ttyS0.conf /etc/rc6.d/S99ttyS0.conf

then do this to enable grub

 Edit /etc/default/grub

 1. Edit the GRUB_CMDLINE_DEFAULT="" line to start the console on /dev/ttyS0
 GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,38400n8"

 2. Add a serial console section
 # Serial console
 GRUB_TERMINAL=serial
 GRUB_SERIAL_COMMAND="serial --speed=38400 --unit=0 --word=8 --parity=no --stop=1"

 3. Rebuild the grub.cfg file
 sudo sh
 grub-mkconfig > /boot/grub/grub.cfg
于 2014-03-19T21:05:48.383 に答える