all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#31365: libvirt/virt-manager: Embeds full path to qemu-system in saved .xml files
@ 2018-05-05  0:01 Vagrant Cascadian
  2018-05-05  1:24 ` Mike Gerwitz
  2019-09-11 11:21 ` 宋文武
  0 siblings, 2 replies; 3+ messages in thread
From: Vagrant Cascadian @ 2018-05-05  0:01 UTC (permalink / raw)
  To: 31365

[-- Attachment #1: Type: text/plain, Size: 1205 bytes --]

When i create a new libvirt instance with virt-manager, it embeds the
full path to the qemu binary used at the time. For the machine named
"networkboot":

  # grep qemu-system /etc/libvirt/qemu/networkboot.xml
  <emulator>/gnu/store/0rzb7rjri2kb258j58asndw2pnp0xv9p-qemu-2.11.1/bin/qemu-system-x86_64:</emulator>

If I later run "guix gc" and it happens to remove this particular qemu
version, the system no longer runs, of course:

  # virsh start networkboot
  error: Failed to start domain networkboot
  error: Cannot check QEMU binary
      /gnu/store/0rzb7rjri2kb258j58asndw2pnp0xv9p-qemu-2.11.1/bin/qemu-system-x86_64:
      No such file or directory

It also means each virtual machine may be running on an older version of
qemu, for better or worse.

Manaully replacing the emulator entry in the .xml file with
/run/current-system/profie/bin/qemu-system-x86_64 works around the
issue, and might be the easiest fix.

It wouldn't take advantage of a qemu install done in the user's
profile. I'm not sure if libvirtd can be run as a user-installed
profile, so maybe it has to use the system path anyways. I believe
libvirtd is normally run as it's own user, with it's own PATH.

live well,
  vagrant

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#31365: libvirt/virt-manager: Embeds full path to qemu-system in saved .xml files
  2018-05-05  0:01 bug#31365: libvirt/virt-manager: Embeds full path to qemu-system in saved .xml files Vagrant Cascadian
@ 2018-05-05  1:24 ` Mike Gerwitz
  2019-09-11 11:21 ` 宋文武
  1 sibling, 0 replies; 3+ messages in thread
From: Mike Gerwitz @ 2018-05-05  1:24 UTC (permalink / raw)
  To: Vagrant Cascadian; +Cc: 31365

[-- Attachment #1: Type: text/plain, Size: 1337 bytes --]

On Fri, May 04, 2018 at 17:01:03 -0700, Vagrant Cascadian wrote:
> When i create a new libvirt instance with virt-manager, it embeds the
> full path to the qemu binary used at the time. For the machine named
> "networkboot":
>
>   # grep qemu-system /etc/libvirt/qemu/networkboot.xml
>   <emulator>/gnu/store/0rzb7rjri2kb258j58asndw2pnp0xv9p-qemu-2.11.1/bin/qemu-system-x86_64:</emulator>
>
> If I later run "guix gc" and it happens to remove this particular qemu
> version, the system no longer runs, of course:
>
>   # virsh start networkboot
>   error: Failed to start domain networkboot
>   error: Cannot check QEMU binary
>       /gnu/store/0rzb7rjri2kb258j58asndw2pnp0xv9p-qemu-2.11.1/bin/qemu-system-x86_64:
>       No such file or directory

Thanks for looking into this; I hit this problem last night but hadn't
had the time to research.

I encountered this issue the same way (after a `guix gc').

> It also means each virtual machine may be running on an older version of
> qemu, for better or worse.

Yes, I was concerned by that as well. :X  VMs would not benefit from
security fixes, which is to me is the more important issue here.

-- 
Mike Gerwitz
Free Software Hacker+Activist | GNU Maintainer & Volunteer
GPG: D6E9 B930 028A 6C38 F43B  2388 FEF6 3574 5E6F 6D05
https://mikegerwitz.com

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 818 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#31365: libvirt/virt-manager: Embeds full path to qemu-system in saved .xml files
  2018-05-05  0:01 bug#31365: libvirt/virt-manager: Embeds full path to qemu-system in saved .xml files Vagrant Cascadian
  2018-05-05  1:24 ` Mike Gerwitz
@ 2019-09-11 11:21 ` 宋文武
  1 sibling, 0 replies; 3+ messages in thread
From: 宋文武 @ 2019-09-11 11:21 UTC (permalink / raw)
  To: Vagrant Cascadian; +Cc: 31365-done

Vagrant Cascadian <vagrant@debian.org> writes:

> When i create a new libvirt instance with virt-manager, it embeds the
> full path to the qemu binary used at the time. For the machine named
> "networkboot":
>
>   # grep qemu-system /etc/libvirt/qemu/networkboot.xml
>   <emulator>/gnu/store/0rzb7rjri2kb258j58asndw2pnp0xv9p-qemu-2.11.1/bin/qemu-system-x86_64:</emulator>
>
> If I later run "guix gc" and it happens to remove this particular qemu
> version, the system no longer runs, of course:
>
>   # virsh start networkboot
>   error: Failed to start domain networkboot
>   error: Cannot check QEMU binary
>       /gnu/store/0rzb7rjri2kb258j58asndw2pnp0xv9p-qemu-2.11.1/bin/qemu-system-x86_64:
>       No such file or directory
>
> It also means each virtual machine may be running on an older version of
> qemu, for better or worse.
>
> Manaully replacing the emulator entry in the .xml file with
> /run/current-system/profie/bin/qemu-system-x86_64 works around the
> issue, and might be the easiest fix.
>

Hello, I believe my commit 'ef640db2f509f51ebfe3a6a66ba837ef3103bbb7'
fix this, now it use '/run/current-system/profie/bin/qemu-system-x86_64'
in the xml files.  Close now..  Thank you!

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-09-11 11:22 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-05  0:01 bug#31365: libvirt/virt-manager: Embeds full path to qemu-system in saved .xml files Vagrant Cascadian
2018-05-05  1:24 ` Mike Gerwitz
2019-09-11 11:21 ` 宋文武

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.