You are not logged in.
Currently I use pcmanfm as my file manager of choice, and since the switch to pure systemd with no consolekit (Which I am actually enjoying) whenever I attempt to mount internal drives as my normal user, I am thrown a permissions error.
I have googled around a bit and read a few things, but nothing I've tried yet has affected functionality at all.
For one, I read that having your X session start on the same virtual console as you login to can affect permissions with systemd-logind in a thread concerning how to set things up properly post-systemd; this has made no impact.
I have also tried re-writing my udisks2 pkla file, which currently states any users of the group "storage" can use any udisks feature (this makes me uncomfortable, since it allows device level access...)
I am currently using dbus-launch for my pcmanfm daemon in my .xinitrc (dbus-launch pcmanfm -d&)
For now, I have been reverting to mounting things in the terminal, but it bothers me when something on my system doesn't work as intended.
What am I missing that is the key to getting my mount capabilities back to working in pcmanfm?
Last edited by Xaero252 (2012-11-10 18:49:58)
Offline
Is your session active? You can check with:
$ loginctl session-status $XDG_SESSION_ID Also, how do you start your GUI? Do you do it from the console, or do you use a display manager like slim or gdm?
From what I understand (and take this with a grain of salt because I do not use udisks2) is that you actually do not need the pkla file if everything is set up correctly. Also, you should no longer need to be in the storage group (or any other groups really) as this is all handled by udev's uaccess tag. I don't know that it would be hurting anything to be in the group, but it has been said that it can cause problems.
Supply some more info, and then maybe someone can help you a bit better. Oh yeah, BTW, if you use startx or xinit to start X, it should start X on the tty you are logged in to by default. This is handled by the /etc/X11/xinit/xserverrc file and was changed with the most recent update. So it is imperative that your system is up to date for this functionality to be expected.
Offline
I currently use a bash profile to automatically launch startx on the FIRST virtual console login (i.e. I use my virtual console as my login manager) Running the command you gave me outputted a full session information breakout as expected.
I have zero out of date packages as of the writing of the original post, and as of the writing of this post. since I'm running pcmanfm as a daemon, it forks into the background as soon as you launch it, via terminal or otherwise, so no verbose output is available.
Here is my ~.xinitrc:
#!/bin/sh
#
# ~/.xinitrc
#
# Executed by startx (run your window manager from here)
if [ -d /etc/X11/xinit/xinitrc.d ]; then
for f in /etc/X11/xinit/xinitrc.d/*; do
[ -x "$f" ] && . "$f"
done
unset f
fi
#For QT stuff that doesn't follow standards
export GTK2_RC_FILES="$HOME/.gtkrc-2.0"
#wallpaper by feh script
sh ~/scripts/wallpaper.sh&
#dbus filemanager daemon for smb/trash/etc..
dbus-launch pcmanfm -d&
#Conky
conky&
#Taskbar
cairo-dock&
#Systemtray
stalonetray --kludges force_icons_size&
#You didn't really like this: pasystray&
#Remap Razer Naga
sh ~/scripts/remap_naga.sh&
#Start XBMC on TV
sh ~/scripts/xbmc.sh&
#Skype, so its already running and you don't forget dillhole
skype&
#Window Manager
exec fusion-icon
# exec gnome-session
# exec startkde
# exec startxfce4
# ...or the Window Manager of your choicepcmanfm as a daemon doesn't appear to do any sort of logging, or I would do some more digging there; I'm going to remove the daemon line and see if I can get some verbose output about the mount operations.
Offline
I might try to give some remarks about your issue.
Why do you think you need to use 'dbus-launch' when you start pcmanfm in the background?
There already is a dbus session instance launched from '/etc/X11/xinit/xinitrc.d/30-dbus' by the beginning lines of your .xinitrc script.
When you attempt to mount internal drives as normal user, are the internal drives in your /etc/fstab file?
Maybe system command permissions to active user session are required, because they are allowed only to admin by default.
I don't understand that sentence : 'Running the command you gave me outputted a full session information breakout as expected'.
Does it mean the command 'loginctl session-status $XDG_SESSION_ID' gives no output?
If so there is a problem with your systemd configuration, if you don't see an 'Active=yes' line.
I don't use pcmanfm to mount devices, but I give some remarks I can think of and I am interested in this permission subject under systemd/polkit usage.
Offline
Have you considered trying spacefm? It seems to have a very good support for automounting devices trough whatever you have installed.
'What can be asserted without evidence can also be dismissed without evidence.' - Christopher Hitchens
'There's no such thing as addiction, there's only things that you enjoy doing more than life.' - Doug Stanhope
GitHub Junkyard
Offline
Oh man, I feel stupid.
PolKit was updated and they changed from localauthority pkla files to rules.d and whatever this new format is; I have a global authorization now, and mounting works in Thunar, PCManFM and SpaceFM (I had all 3 installed, Thunar finally gave me verbose enough output to troubleshoot the issue.) However, I'm not comfortable leaving this rule in place with how general it is, any advice on how to make it check for group etc..?
Here is the rule I added:
50-udisks.rules
polkit.addRule(function(action, subject) {
if (action.id.indexOf("org.freedesktop.udisks") == 0) {
return polkit.Result.YES;
}
});Edit: would be nice to include the rules file huh?
Edit2: Found my answer in this thread:
https://bbs.archlinux.org/viewtopic.php?pid=1189842
Marking post as Solved.
Last edited by Xaero252 (2012-11-10 18:49:43)
Offline