Linux块设备模拟&保险丝

时间:2009-10-27 14:41:34

标签: linux embedded fuse

我的项目涉及通过远程主机模拟块设备。

为了测试我正在使用FUSE,我的文件系统是对“hello”示例应用程序的简单更改,而不是返回一个常量字符串,我只是直接从文件中读取数据。

当我尝试正常挂载文件时(mount -o loop = / dev / loop1),它运行良好。 当我加载保险丝并通过它公开此文件时,所有正常的文件操作都有效。但是由于“权限被拒绝”而导致安装失败。

任何人都知道“拒绝许可”的来源是什么?

任何其他方法都允许我在用户空间中创建一个可安装的虚拟设备(仅支持块访问)?

提前致谢

3 个答案:

答案 0 :(得分:4)

据推测,问题是FUSE文件系统不支持在其上安装循环安装所需的功能。

您是否考虑过使用网络块设备,例如NBD或iSCSI目标?

答案 1 :(得分:2)

您是否使用Root权限执行。您可以使用“strace”跟踪程序,然后检查其失败的位置。

答案 2 :(得分:1)

mount命令是一个真正的地狱,当它开始打印错误时使用。尝试“-v”但通常情况下,额外的输出无济于事:(