Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

tl;dr

The errors are definitely DBUS security related and related to the active session but beyond that I'm a bit stuck.

  • Is there a bridge package I need to register logins with loginctl?
    (I have tried using both kdm and lightdm, neither worked)

  • Is there a way to force NetworkManager to follow policykit and accept any user?

  • Is there a way to manually register an active login with loginctl?

  • Is there a way to force NetworkManager to use consolekit to register users?

Details:

Since upgrading to 13.10 (via apt-get dist-upgrade from 12.04), I've had the following problems:

1) suspend wouldn't work

I found that upower -d would only list suspend and hibernate when running as root and ignored the fact that polkit said any active users could suspend, so I manually edited all the files in /usr/share/polkit-1/actions/ and replaced allow_active with allow_any, this then worked.

2) NM doesn't work as user

The above modified the policies so any users active or not should be able to modify the active connection, however it didn't. After digging deeper with the help of dcbw in #nm, it looks like NetworkManager is asking systemd who is currently logged in.

ldd /usr/sbin/NetworkManager | grep systemd
    libsystemd-login.so.0 => /lib/x86_64-linux-gnu/libsystemd-login.so.0 (0x00007f7baf9d5000)

according to console-kit I am logged in

ck-list-sessions 
Session1:
    unix-user = '1000'
    realname = 'RiotingPacifist'
    seat = 'Seat1'
    session-type = ''
    active = TRUE
    x11-display = ':0'
    x11-display-device = '/dev/tty8'
    display-device = ''
    remote-host-name = ''
    is-local = TRUE
    on-since = '2014-01-04T05:10:26.102104Z'
    login-session-id = '4294967295'

however according to loginctl list-sessions I am not

   SESSION        UID USER             SEAT            

0 sessions listed.

I've used loginctl enable-linger RiotingPacifist to enable myself as a user

loginctl list-users 
   UID USER            
  1000 RiotingPacifist            

1 users listed.

however, this doesn't fix the issue just gives me different errors.

$ nmcli c list

** (process:30223): WARNING **: Could not initialize NMClient /org/freedesktop/NetworkManager: Rejected send message, 3 matched rules; type="method_call", sender=":1.105" (uid=1000 pid=30223 comm="nmcli c list ") interface="org.freedesktop.DBus.Properties" member="GetAll" error name="(unset)" requested_reply="0" destination="org.freedesktop.NetworkManager" (uid=0 pid=6529 comm="NetworkManager ")
Error: nmcli (0.9.8.0) and NetworkManager (unknown) versions don't match. Force execution using --nocheck, but the results are unpredictable.
$ nmcli --nocheck c list

** (process:30225): WARNING **: Could not initialize NMClient /org/freedesktop/NetworkManager: Rejected send message, 3 matched rules; type="method_call", sender=":1.106" (uid=1000 pid=30225 comm="nmcli --nocheck c list ") interface="org.freedesktop.DBus.Properties" member="GetAll" error name="(unset)" requested_reply="0" destination="org.freedesktop.NetworkManager" (uid=0 pid=6529 comm="NetworkManager ")

** (process:30225): WARNING **: _nm_remote_settings_ensure_inited: (NMRemoteSettings) error initializing: Rejected send message, 3 matched rules; type="method_call", sender=":1.106" (uid=1000 pid=30225 comm="nmcli --nocheck c list ") interface="org.freedesktop.DBus.Properties" member="GetAll" error name="(unset)" requested_reply="0" destination="org.freedesktop.NetworkManager" (uid=0 pid=6529 comm="NetworkManager ")

NAME                      UUID                                   TYPE              TIMESTAMP-REAL 

However the version of NM is the same as nmcli and this command works fine as root

share|improve this question
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.