Comment 19 for bug 231246

Revision history for this message
rishab (rg-ubuntu) wrote :

no debian policykit. it was installed with hardy. it was just an upgrade from up-to-date gutsy to hardy. but there's lots of weird stuff with the upgrade, which (like with the upgrade to gutsy from feisty before) doesn't update many config settings, the menu bar, etc. and there seems no way to get a "standard config".

my user was not in the admin group. in fact, no user was. instead, it was in the "adm" group. i added it to the admin group. but

i'm not quite sure what's changed, since i've been trying many things, but although the PolicyKit.conf file looks the same (no "admin" line) now things that need a password to "unlock" seem to be working (network-admin and users-admin, for instance, and time change). i.e. "unlock" doesn't freeze and return with an error. i can't figure out why. these also work the same way for another user i created that's _not_ in the admin group.

adding the <define_admin_auth> line to PolicyKit.conf seems to make no difference either way.

also, running users-admin or network-admin with sudo still has a greyed-out "Unlock" button and gives the error " ** (users-admin:11074): CRITICAL **: Unable to lookup session information for process '11074'" (i.e. it can't look up session info for itself!). however, since PolicyKit inexplicably now prompts for the password instead of freezing when i press unlock after running the command without sudo, there's no need to run it with sudo.

$ polkit-auth --show-obtainable
org.freedesktop.systemtoolsbackends.set
org.freedesktop.systemtoolsbackends.self.set
org.gnome.clockapplet.mechanism.settimezone
org.gnome.clockapplet.mechanism.settime
org.gnome.clockapplet.mechanism.configurehwclock
org.freedesktop.policykit.read
org.freedesktop.policykit.revoke
org.freedesktop.policykit.grant
org.freedesktop.policykit.modify-defaults
org.freedesktop.hal.power-management.shutdown-multiple-sessions
org.freedesktop.hal.power-management.reboot-multiple-sessions
org.freedesktop.hal.storage.mount-fixed
org.freedesktop.hal.storage.unmount-others
org.freedesktop.hal.storage.crypto-setup-fixed

the difference between the previous output is only because i went and revoked all permissions i'd explicitly granted to my user "rishab" so there are a few more "obtainable" items.

i think there must be a problem with how PolicyKit is set up to check console activity, since the external USB drive installation was always authorised for the active console. hal detects the device fine, just doesn't auto-mount:

$ hal-device

0: udi = '/org/freedesktop/Hal/devices/volume_uuid_D207_0B13'
  volume.partition.type = '0x06' (string)
  volume.partition.label = '' (string)
  volume.partition.uuid = '' (string)
  volume.partition.flags = { 'boot' } (string list)
  volume.ignore = false (bool)
  linux.hotplug_type = 3 (0x3) (int)
  storage.model = '' (string)
  org.freedesktop.Hal.Device.Volume.method_names = { 'Mount', 'Unmount', 'Eject' } (string list)
  info.product = 'PKBACK# 001' (string)
  org.freedesktop.Hal.Device.Volume.method_signatures = { 'ssas', 'as', 'as' } (string list)
  info.capabilities = { 'volume', 'block' } (string list)
  info.udi = '/org/freedesktop/Hal/devices/volume_uuid_D207_0B13' (string)
  org.freedesktop.Hal.Device.Volume.method_argnames = { 'mount_point fstype extra_options', 'extra_options', 'extra_options' } (string list)
  info.category = 'volume' (string)
  org.freedesktop.Hal.Device.Volume.method_execpaths = { 'hal-storage-mount', 'hal-storage-unmount', 'hal-storage-eject' } (string list)
  volume.mount.valid_options = { 'ro', 'sync', 'dirsync', 'noatime', 'nodiratime', 'noexec', 'quiet', 'remount', 'exec', 'utf8', 'shortname=', 'codepage=', 'iocharset=', 'umask=', 'dmask=', 'fmask=', 'uid=', 'flush' } (string list)
[...]

thanks,
-rishab