我的项目涉及通过远程主机模拟 block 设备。
为了测试,我使用的是 FUSE,我的文件系统是对“hello”示例应用程序的简单更改,我只是直接从文件中读取数据,而不是返回常量字符串。
当我尝试正常挂载文件时 (mount -o loop=/dev/loop1 ) 它运行良好。 当我加载 fuse 并通过它公开此文件时,所有正常的文件操作都有效。但是安装失败并显示“权限被拒绝”。
有人知道“权限被拒绝”的来源吗?
任何其他方法都允许我在用户空间中创建一个可挂载的虚拟设备(仅支持 block 访问)?
提前致谢
最佳答案
大概问题在于 FUSE 文件系统不支持在其上进行循环挂载所需的功能。
您是否考虑过使用网络 block 设备,例如 NBD 或 iSCSI 目标?
关于Linux block 设备模拟 & Fuse,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1631275/