/dev/fuse “权限被拒绝”,即使是 fuse 组成员

/dev/fuse “权限被拒绝”,即使是 fuse 组成员

我在 Debian 5.0 x86 服务器上通过 sshfs 安排了一个备份脚本。但是,当我尝试挂载远程目录时,我收到:

failed to open /dev/fuse: Permission denied

ls -l /dev/fuse返回:

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

id backup返回:

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

我唯一可以挂载目录的方法是运行chmod a+w /dev/fuse,但这会在一天中的某个时间点重置。不过这是一个临时解决方案,我宁愿弄清楚为什么组权限不起作用。

答案1

您的备份脚本是如何运行的?它是否可能从未继承组成员身份的打开的 shell 中运行(因为它在您将用户添加到组之前就已运行)?

答案2

你确定这些是 Puppet 作业在登录时看到的组,而不是你在登录时看到的组吗su - backup?尝试运行一个显示命令输出的作业groups和/或重新启动 Puppet 代理(如果还没有)。

答案3

使用 udev 规则创建模式为 777 的特殊文件。创建一个/etc/udev/rules.d/99-fuse.rules包含以下内容的新文件。

KERNEL==fuse, MODE=0777

至于组成员问题,您是否在启动 Puppet 后将用户添加到组中?如果是这样,重新启动 Puppet 可能会解决问题。

相关内容