Re: [PATCH 2/2] Report better error message in remoteGetUNIXSocket

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Nov 29, 2023 at 10:33:34AM +0100, Martin Kletzander wrote:
> On Tue, Nov 28, 2023 at 02:29:20PM +0100, Peter Krempa wrote:
> >On Tue, Nov 28, 2023 at 13:22:47 +0000, Daniel P. Berrangé wrote:
> >>On Tue, Nov 28, 2023 at 01:02:40PM +0100, Martin Kletzander wrote:
> >>> Before this patch users might be confused with the error when no daemon
> >>> nor systemd socket unit is running due to the error message being a bit
> >>> vague when running as root with no URI:
> >>>
> >>>   # virsh list
> >>>   error: failed to connect to the hypervisor
> >>>   error: Operation not supported: Cannot use direct socket mode if no
> >>>   URI is set
> >>>
> >>> Instead of merely suggesting to start any daemon, also give a hint as to
> >>> what socket we have tried looking up:
> >>>
> >>>   # virsh list
> >>>   error: failed to connect to the hypervisor
> >>>   error: Operation not supported: Cannot connect to
> >>>   '/var/run/libvirt/virtqemud-sock' and no URI is set, is any virt
> >>>   daemon or systemd socket unit started?
> >>
> >>As Peter points out, this is a misleading message because it is
> >>arbitrarily reporting the first compiled in driver, which may
> >>be no resemblance to what the user was expecting to run. I think
> >
> >Exactly. E.g. on Fedora and other distros which enable most features
> >you'd get:
> >
> > error: Operation not supported: Cannot connect to '/var/run/libvirt/virtxend-sock' and no URI is set, is any virt daemon or systemd socket unit started?
> >
> >And running xen is not what most users want to do when they install
> >libvirt.
> >
> 
> How do you know when there is no URI set?  Maybe they really want to
> connect to a different host.  We don't say that QEMU is the default for
> some reason.  If there is something most users want, then we could
> rearrange the order of the drivers that were tried.
> 
> What I think is that users who install libvirt and then immediately run
> virsh define or something similar as non-root user probably also do not
> want the session daemon to be started.  I just don't know we can
> accommodate everyone.  But...
> 
> >>we should not include the sock path here, but we could include
> >>the sock *directory*, as that would help diagnose when someone
> >>built with the wrong install prefix, eg
> >>
> >>  "No active daemon socket found in /var/run/libvirt, and no
> >>   URI is set. Is any libvirt daemon or socket unit started ?"
> >
> >This sounds much better. I also don't think we should be putting any
> >command examples here as suggested by Rich as there isn't a good default
> >value we could use because of exactly the same reason.
> >
> 
> ...this looks like a best effort.  If this is fine with everyone, then
> I'll change it to this, including RUNSTATEDIR / libvirt.  Of course that
> might still not work in other situations, e.g. when readonly connection
> is being made, but no readonly socket is there, etc., but that's a very
> corner case situation anyway.
> 
> So let me know if that's fine with you all.

I'd like to try writing a wiki page that we can link in this message,
since I have to explain this problem over and over again to people and
it'd be good to have one place that explains it.

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
nbdkit - Flexible, fast NBD server with plugins
https://gitlab.com/nbdkit/nbdkit
_______________________________________________
Devel mailing list -- devel@xxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxx




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux