/dev/fuse "permission denied" even when member of fuse group

7,259

Solution 1

How is your backup script run? Is it possible that it's run from an open shell which hasn't inherited the group membership (since it was running before you added the user to the group)?

Solution 2

Use a udev rule to create the special file with mode 777. Create a new file /etc/udev/rules.d/99-fuse.rules with the following contents.

KERNEL==fuse, MODE=0777

As for the group membership problem, did you add the user to the group after puppet was started? If so, restarting puppet would likely fix the issue.

Solution 3

Are you sure those are the groups the puppet job sees when logging in, as oppossed to only the ones you see when you su - backup? Try running a job that shows you the output of the groups command and/or restarting the puppet agent if you haven't already.

Share:
7,259
steeef
Author by

steeef

Updated on September 17, 2022

Comments

  • steeef
    steeef almost 2 years

    I have a backup script scheduled on a Debian 5.0 x86 server, via sshfs. However, when I attempt to mount the remote directory, I receive:

    failed to open /dev/fuse: Permission denied
    

    ls -l /dev/fuse returns:

    crwxrwxr-x 1 root fuse 10, 229 2010-11-12 09:08 /dev/fuse
    

    id backup returns:

    uid=501(backup) gid=501(backup) groups=501(backup),46(plugdev),108(fuse)
    

    The only way I can get the directory to mount is if I run chmod a+w /dev/fuse, but this is reset at some point during the day. It's a kludge though, and I'd rather figure out why the group permissions aren't working.

  • steeef
    steeef over 13 years
    It's run as a Puppet scheduled job, similar to a cron job. It's running as the backup user.