GNOME Bugzilla – Bug 362601
DBus error on Mandriva Cooker
Last modified: 2006-11-15 14:04:33 UTC
This is on Mandriva Cooker with either f-spot 0.2.2 or today's CVS: [goetz@n5 src]$ ./f-spot --uninstalled *** Running uninstalled f-spot *** Unhandled Exception: System.IO.FileNotFoundException: No such file or directory ----> Mono.Unix.UnixIOException: No such file or directory [ENOENT]. at Mono.Unix.UnixMarshal.ThrowExceptionForLastError () [0x00000] at Mono.Unix.UnixMarshal.ThrowExceptionForLastErrorIf (Int32 retval) [0x00000] at NDesk.DBus.Transports.UnixSocket.Connect (System.Byte[] remote_end) [0x00000] at NDesk.DBus.Transports.UnixNativeTransport.OpenUnix (System.String path) [0x00000] at NDesk.DBus.Transports.UnixNativeTransport..ctor (System.String path, Boolean abstract) [0x00000] at NDesk.DBus.Connection.Open (System.String path, Boolean abstr) [0x00000] at NDesk.DBus.Connection.OpenPrivate (System.String address) [0x00000] at NDesk.DBus.Connection..ctor (System.String address) [0x00000] at NDesk.DBus.Bus..ctor (System.String address) [0x00000] at NDesk.DBus.Bus.Open (System.String address) [0x00000] at NDesk.DBus.Bus.get_System () [0x00000] at NDesk.DBus.BusG.Init () [0x00000] at FSpot.Driver.Main (System.String[] args) [0x00000]
You can't connect to the dbus. can you provide the following informations: - is dbus running ? - is it better if you launch f-spot with this command: 'dbus-launch f-spot' ? - what's the result of 'export | grep DBUS' ?
changed version to 0.2.2
maybe this one is related to bug 362180 ? http://bugzilla.gnome.org/show_bug.cgi?id=362180
The error message is the same whether dbus is running or not. But it is running: [goetz@n5 dbus-sharp]$ ps x|fgrep bus 4845 ? SNs 0:00 /usr/bin/dbus-daemon --fork --print-pid 4 --print-address 6 --session 5413 pts/16 S+ 0:00 grep -F bus [goetz@n5 src]$ export |fgrep DB declare -x DBUS_SESSION_BUS_ADDRESS="unix:abstract=/tmp/dbus-vYc0nmqRZx,guid=f79d3345aafd3375c50227368f502400" declare -x DBUS_SESSION_BUS_PID="2602" [goetz@n5 src]$ ./f-spot --uninstalled *** Running uninstalled f-spot *** Unhandled Exception: System.IO.FileNotFoundException: No such file or directory ----> Mono.Unix.UnixIOException: No such file or directory [ENOENT]. at Mono.Unix.UnixMarshal.ThrowExceptionForLastError () [0x00000] at Mono.Unix.UnixMarshal.ThrowExceptionForLastErrorIf (Int32 retval) [0x00000] at NDesk.DBus.Transports.UnixSocket.Connect (System.Byte[] remote_end) [0x00000] at NDesk.DBus.Transports.UnixNativeTransport.OpenUnix (System.String path) [0x00000] at NDesk.DBus.Transports.UnixNativeTransport..ctor (System.String path, Boolean abstract) [0x00000] at NDesk.DBus.Connection.Open (System.String path, Boolean abstr) [0x00000] at NDesk.DBus.Connection.OpenPrivate (System.String address) [0x00000] at NDesk.DBus.Connection..ctor (System.String address) [0x00000] at NDesk.DBus.Bus..ctor (System.String address) [0x00000] at NDesk.DBus.Bus.Open (System.String address) [0x00000] at NDesk.DBus.Bus.get_System () [0x00000] at NDesk.DBus.BusG.Init () [0x00000] at FSpot.Driver.Main (System.String[] args) [0x00000] Running it with dbus-launch makes no difference.
Thomas (comment #3): yes, it's strongly related, but I'm still not sure that's a dup. Götz: you're not running a gnome session ? did you try 'dbus-launch f-spot' on the same line ?
Yes, in that case it was without a gnome session on Mandriva's build machine. But I have tried it on my desktop, with dbus-launch f-spot, same result.
Gnome session running : [qa@cooker ~]$ ps ax | grep gnome 6251 ? Ss 0:00 gnome-session 6351 ? S 0:00 /usr/bin/gnome-keyring-daemon 6353 ? Sl 0:00 /usr/lib/gnome-settings-daemon 6372 ? Ss 0:01 gnome-panel --sm-client-id default1 6381 ? S 0:00 /usr/lib/gnome-vfs-daemon 6384 ? Ss 0:00 gnome-volume-manager 6416 ? Sl 0:00 gnome-terminal 6418 ? S 0:00 gnome-pty-helper 6460 ? Ss 0:00 gnome-screensaver And same problem: [qa@cooker ~]$ dbus-launch f-spot Unhandled Exception: System.IO.FileNotFoundException: Aucun fichier ou répertoire de ce type ----> Mono.Unix.UnixIOException: Aucun fichier ou répertoire de ce type [ENOENT]. at Mono.Unix.UnixMarshal.ThrowExceptionForLastError () [0x00000] at Mono.Unix.UnixMarshal.ThrowExceptionForLastErrorIf (Int32 retval) [0x00000] at NDesk.DBus.Transports.UnixSocket.Connect (System.Byte[] remote_end) [0x00000] at NDesk.DBus.Transports.UnixNativeTransport.OpenUnix (System.String path) [0x00000] at NDesk.DBus.Transports.UnixNativeTransport..ctor (System.String path, Boolean abstract) [0x00000] at NDesk.DBus.Connection.Open (System.String path, Boolean abstr) [0x00000] at NDesk.DBus.Connection.OpenPrivate (System.String address) [0x00000] at NDesk.DBus.Connection..ctor (System.String address) [0x00000] at NDesk.DBus.Bus..ctor (System.String address) [0x00000] at NDesk.DBus.Bus.Open (System.String address) [0x00000] at NDesk.DBus.Bus.get_System () [0x00000] at NDesk.DBus.BusG.Init () [0x00000] at FSpot.Driver.Main (System.String[] args) [0x00000]
Can I get the output of "ps aux | grep dbus" and "export | grep DBUS" from Mandriva Cooker users? This seems to be a recent regression in their "cooker" development branch.
[goetz@abgrund tmp]$ ps x|fgrep dbus 6390 ? S 0:00 /usr/bin/dbus-launch --exit-with-session --sh-syntax 6391 ? Ss 0:02 /usr/bin/dbus-daemon --fork --print-pid 8 --print-address 6 --session 6394 ? S 0:00 /usr/bin/bluez-pin --dbus 16922 pts/1 R+ 0:00 /bin/sh /bin/fgrep dbus [goetz@abgrund tmp]$ export|fgrep DBUS declare -x DBUS_SESSION_BUS_ADDRESS="unix:abstract=/tmp/dbus-qlvMCYQgrU,guid=0ba833454d5abe7fbfb67daebc9bb100"
changing bug name to reflect the situation
Götz: You don't have a system message bus running at all. It would look something like this in ps: $ ps aux | grep dbus 104 5483 0.0 0.0 2328 932 ? Ss Oct16 0:00 /usr/bin/dbus-daemon --system A correct D-Bus installation should provide this by default. It may be sensible to improve the error message in managed dbus to make the problem more clear though.
Götz: Actually, it seems you just provided the output of "ps x", which is not relevant. Like I said in my request for information, I need the full output of "ps aux | grep dbus" and "export | grep DBUS" to diagnose the problem. If it turns out you do indeed have a system bus running, it then needs to determined why your /var/run/dbus/system_bus_socket doesn't exist, as this location is explicitly required by the D-Bus specification. Developers can work around this problem by setting the DBUS_SYSTEM_BUS_ADDRESS variable but this should absolutely not be done on production installations where the distributor is expected to get it right.
Oh, I'm sorry. I have the dbus service running: [goetz@abgrund ~]$ ps aux|fgrep dbus 77 2317 0.0 0.1 2668 1168 ? Ss 07:13 0:00 dbus-daemon --system goetz 6800 0.0 0.0 2704 648 ? S 07:19 0:00 /usr/bin/dbus-launch --exit-with-session --sh-syntax goetz 6801 0.0 0.1 2672 1244 ? Ss 07:19 0:00 /usr/bin/dbus-daemon --fork --print-pid 8 --print-address 6 --session goetz 6804 0.0 0.4 13640 4436 ? S 07:19 0:00 /usr/bin/bluez-pin --dbus goetz 7641 0.0 0.0 2068 652 pts/1 R+ 07:25 0:00 grep -F dbus [goetz@abgrund ~]$ ls /var/run/dbus/system_dbus_socket -l srwxrwxrwx 1 root root 0 Okt 17 07:13 /var/run/dbus/system_dbus_socket=
It is no surprise to me that the latest banshee 0.11.1 that includes NDesk.DBus as well crashes with this error: [goetz@abgrund Musik]$ banshee Datei oder Verzeichnis nicht gefunden System.IO.FileNotFoundException: Datei oder Verzeichnis nicht gefunden ---> Mono.Unix.UnixIOException: Datei oder Verzeichnis nicht gefunden [ENOENT]. at Mono.Unix.UnixMarshal.ThrowExceptionForLastError () [0x00000] at Mono.Unix.UnixMarshal.ThrowExceptionForLastErrorIf (Int32 retval) [0x00000] at NDesk.DBus.Transports.UnixSocket.Connect (System.Byte[] remote_end) [0x00000] at NDesk.DBus.Transports.UnixNativeTransport.OpenUnix (System.String path) [0x00000] at NDesk.DBus.Transports.UnixNativeTransport..ctor (System.String path, Boolean abstract) [0x00000] at NDesk.DBus.Connection.Open (System.String path, Boolean abstr) [0x00000] at NDesk.DBus.Connection.OpenPrivate (System.String address) [0x00000] at NDesk.DBus.Connection..ctor (System.String address) [0x00000] at NDesk.DBus.Bus..ctor (System.String address) [0x00000] at NDesk.DBus.Bus.Open (System.String address) [0x00000] at NDesk.DBus.Bus.get_System () [0x00000] at NDesk.DBus.BusG.Init () [0x00000] at Banshee.BansheeEntry.Startup (System.String[] args) [0x00000] at (wrapper delegate-invoke) System.MulticastDelegate:invoke_void_string[] (string[]) at Banshee.Gui.CleanRoomStartup.Startup (Banshee.Gui.StartupInvocationHandler startup, System.String[] args) [0x00000] Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object at Banshee.Base.Branding.get_ApplicationIconName () [0x00000] at Banshee.Base.IconThemeUtils.SetWindowIcon (Gtk.Window window) [0x00000] at Banshee.Gui.Dialogs.ExceptionDialog..ctor (System.Exception e) [0x00000] at Banshee.Gui.CleanRoomStartup.Startup (Banshee.Gui.StartupInvocationHandler startup, System.String[] args) [0x00000] at Banshee.BansheeEntry.Main (System.String[] args) [0x00000]
The socket file should be named "/var/run/dbus/system_bus_socket" and not "/var/run/dbus/system_dbus_socket". Other Cooker users have now also confirmed the issue while it does not appear to be present in libdbus, so it's OK to close this bug and pass the buck to Mandriva.
I can confirm that changing the name of that socket has fixed the bug. Sorry for the trouble but thanks for your help.
Götz, for the records, once you have reported that issue to mandriva, can you paste the link to the ticket here ?
Comment #15 & Comment #17: Thanks. Buck passed to Mandriva : https://qa.mandriva.com/show_bug.cgi?id=26615
(In reply to comment #15) > The socket file should be named "/var/run/dbus/system_bus_socket" and not > "/var/run/dbus/system_dbus_socket". Other Cooker users have now also confirmed > the issue while it does not appear to be present in libdbus, so it's OK to > close this bug and pass the buck to Mandriva. > Hi, Slackware 10.2 has a similar issue - the socket is in /var/lib/dbus creating a link in /var/run/dbus solved the problem. Rich
For the record, we are issuing a bugfix upgrade for Mandriva 2007.0 (se bug http://qa.mandriva.com/show_bug.cgi?id=27160 ). It will probably available widely next week.