如何在 FreeBSD-12.0p10 jail 内挂载 fuse-sshfs 文件系统

如何在 FreeBSD-12.0p10 jail 内挂载 fuse-sshfs 文件系统

我希望将远程数据源在本地挂载为 fuse 文件系统。以下系统支持此功能lsvfs

lsvfs
Filesystem                              Num  Refs  Flags
-------------------------------- ---------- -----  ---------------
devfs                            0x00000071     4  synthetic, jail
cd9660                           0x000000bd     0  read-only
procfs                           0x00000002     4  synthetic, jail
nfs                              0x0000003a     0  network
zfs                              0x000000de    17  jail, delegated-administration
msdosfs                          0x00000032     0  
ufs                              0x00000035     0  
fdescfs                          0x00000059     4  synthetic, jail
fusefs                           0x000000ed     0  synthetic, jail
nullfs                           0x00000029     3  loopback, jail
tmpfs                            0x00000087     0  jail

我已经安装fusefs-sshfs在jail中了。我还创建了挂载点目录。

在主机中/etc/sysctl.conf我有security.jail.enforce_statfs=1;并且在/etc/rc.conf我有kld_list="fuse"(我认为这是多余的,但仍然存在)。

在 (ez)jail 配置中我允许allow.mountallow.mount.nullfsallow.mount.fusefs

在监狱里,我可以建立到远程数据源的 sftp 链接并将目录更改为 OUT:

sftp -o IdentityFile=/var/data/theheart/.ssh/xxx_rsa_id     [email protected]
Connected to [email protected].
sftp> dir
OUT  bin  dev  etc  lib  usr

但我无法将该数据源挂载为 fuse ssh 文件系统:

/usr/local/bin/sshfs -C -o uid=16701 -o gid=16701     -o reconnect -o IdentityFile=/var/data/theheart/.ssh/xxx_rsa_id        [email protected]:OUT /var/spool/xxx/pick_up
mount_fusefs: /dev/fuse on /var/spool/xxx/pick_up: Operation not permitted
fuse: failed to mount file system: No error: 0

这可能吗?Jail(8) 手册页暗示它存在该allow.mount.fusefs设置。如果是这样,那么我遗漏了哪些步骤?

相关内容