I'm trying to mount a Windows ntfs partition on openSuse 11.4. When I mount it using the root account (either directly or via sudo) it mounts without problems. But when I try mounting it without any root privileges, it gives me the following error:

I've searched Google for possible solutions, but I don't seem to be getting anywhere.

Edit 1:

As suggested, I tried to set the UID/GID bits on the ntfs-3g binary. All the files (/sbin/mount.ntfs, /sbin/mount.ntfs-3g) point to /usr/bin/ntfs-3g, so I changed the permissions on that. The permissions now are:

-rwsr-sr-x 1 root root 51512 Feb 18 22:18 ntfs-3g

But the result is still the same and I get the same permission denied error.

Please don't put the answer in your question. Your updates were good until the third one, that one you should add as an answer below. It's ok to answer your own question if nobody else has given the solution. If somebody has shown a partial solution you can comment on it or edit it to add whatever detail is missing.
–
CalebAug 7 '11 at 7:02

Also, if you have a new question/problem please ask a new question. Each question answer set here should represent just one issue. Thanks for coming back and keeping everything up to date.
–
CalebAug 7 '11 at 7:04

Thanks. :) I added the third update because I thought it was relevant to the problem, since after each unmount, the file permissions went back to default and the original problem surfaced. Perhaps I should have explained it a bit better in the last edit.
–
JibranAug 7 '11 at 13:51

Make your posts informative for later usage -- what is your FINAL fstab entry?
–
greenoldmanSep 10 '11 at 8:36

To solve similar problems in the future - especially with removable media (like USB disks), I'd recommend to use pmount for mounting filesystems as normal users. It uses a policy approach and saves you from doing system-wide changes, which can sometimes be dangerous (such as chmod 1755 /sbin/mount.ntfs-3g /usr/bin/ntfs-3g).

To make a specific local partition user-mountable via pmount, you can add it to a whitelist. In your case, this would mean

echo "/dev/sda2" >> /etc/pmount.allow

Which has to be run as root. (Or by editing the file: sudo nano /etc/pmount.allow)

thanks for the tip. I'll definitely look at pmount. Btw, is it possible to interface it with nautilus? After going through all this trouble, I can now mount from within nautilus without root access. Is it the same with pmount?
–
JibranAug 7 '11 at 6:58

Solved It! Thank you @baharmat for all your help. If you hadn't pointed me in the right direction(s), I would still be facing the same issue. Here is how I did it.

As is apparent in my lengthy question, the only issue remaining was that for some reason the file permission of /dev/sda2 changed on unmount to the default of 0660. To fix that, I used the following udev rule:

NOTE: The file /etc/udev/rules.d/81-mount.rules has ACTION=="add|change". That does not seem to work. I had to wrestle with the rule for more than an hour before I figured that one out. Any help would be appreciated concerning why a rule file that came with my distro contains something that does not seem to work.