使用FUSE可以将许多事情纯粹作为非特权用户来安装。 但是,似乎对于webdav davfs2是首选项目,它似乎是一个文件系统驱动程序,并使用需要权限的标准mount / umount。
有没有办法使用这个(或另一个库)安装webdav只作为一个用户通过保险丝? (也就是说,每个用户都可以在不同的服务器上安装不同的webdav,而不需要在fstab中configuration任何东西)。
我能够使用wdfs作为非私有的工作。 用户:
wdfs <dav url> <mount point>
卸载
fusermount -u <mount point>
wdfs是从这里使用保险丝。 我使用Archlinux, 这个 AUR包运行良好
作为首发答案..我会build议以下。
1)sshfs不需要访问/ etc / fstab,所以如果你可以将你的webdav用户映射到具有相似文件结构的linux用户,那么这是一个简单的select。
然后,您可以使用这样的非根语法挂载到您的本地主目录中;
sshfs -o ControlPath=none -o workaround=rename -o idmap=user \ -o nonempty -o reconnect -o transform_symlinks -o follow_symlinks" \ [email protected]:/ $HOME/mnt/my.ssh.server.com
2)gvfs / gio – 根据你的发行版本, /usr/libexec/gvfsd-dav
可能是一个选项,它应该允许使用替代的控制语法将webdav文件系统挂载到~/.gvfs/
但是这个文档是非常垃圾的,我只是对它的function进行了有限的testing。
作为根;
sudo yum install gvfs-fuse.x86_64
然后作为用户;
$ gvfs-mount dav://my.dav.server.hostname.com/projects/ Enter password for Authorization Realm User: my.dav.username Password: XXXXXX $ cd ~/.gvfs/WebDAV\ on\ my.dav.server.hostname.com/ $ ls proj1 proj2 proj3 ... etc