Good afternoon,

I'm following the instructions here in order to get console access from libvirt

The problem I'm having is the domain.xml does not accept the new changes. I have also done the following:

vi /etc/libvirt/qemu/domain.xml  # made my changes
virsh define /etc/libvirt/qemu/domain.xml

I have already added the "--console=ttyS0" to the end of my /etc/defaults/grub file and run

grub2-mkconfig -o /boot/grub2/grub.cfg

The end result is if I try

virsh console domain

I do not get a login prompt. I just get the typical

"escape character is ^]"

My question: What do I need to do in order continue and work on my virtual server? Once I am in this realm, where / how can I proceed?

I need to administer my virtual servers and this is preventing me from doing so. Any help you can provide would be very much appreciated.

  • Press ENTER on your keyboard. – Michael Hampton Mar 28 '18 at 19:19
  • I wish it were that easy. – Paul Mar 28 '18 at 19:25
  • Maybe it is. You should try it and note the results. – Michael Hampton Mar 28 '18 at 19:27
  • Yep, hit "enter" several times, still at "Escape character is ^]" – Paul Mar 28 '18 at 19:28

Taken from from actual CentOS 7 VM:

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

Also in grub there is:

GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"
GRUB_CMDLINE_LINUX="rd.lvm.lv=vg_00/swap vconsole.font=latarcyrheb-sun16 rd.lvm.lv=vg_00/root crashkernel=auto  vconsole.keymap=us rhgb quiet elevator=deadline audit=1 console=tty0 console=ttyS0,115200n8 transparent_hugepage=never"

Do not copy paste the grub config literally as your vg is probably with different name.
This config enables terminal on both video output and serial console (tty0 and ttyS0)

After edit regenerate the grub.cfg:

grub2-mkconfig -o /boot/grub2/grub.cfg

Save the xml, shutdown the vm and power it on again (virsh no always presents new devices with just a reboot).
If after that there is still no console try to start it manually via SSH/video:

systemctl start serial-getty@ttyS0.service
| improve this answer | |
  • Thanks, that's exactly what I'm doing. The problem I'm having is w/ your CentOS VM domain.xml configurations: I do these and the changes do not stick. I do virsh edit domain and all of my changes are gone. – Paul Mar 28 '18 at 21:44
  • 1
    If your xml is wrong virsh usually won't let you save the config, try the following: export EDITOR=nano virsh edit vmname And paste the above XML blocks right after the end of <interface> e.g after line </interface> that is in the <devices></devices> section. *if you prefer other editor replace nano with the name of your favorite – Daniel Mar 29 '18 at 6:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.