我不确定这是否可行,但我希望挂载nfs共享(作为客户端),并将主板外部eSata绑定到nfs共享。
这听起来可能是假的,但我所拥有的是一个可以通过eSata播放媒体的媒体播放器,并且希望有一个中介框来完成eSata和nfs挂载之间的转换。(因为这个特定的玩家对nfs的世界一无所知)。
也许有更好的方法,所以我愿意接受建议。(但它绝不能脱离nfs)。
另一个(更草率的)想法是找到一个最小大小的外部usb / eSata驱动器,并将nfs共享与外部驱动器上的一个符号链接挂载,然后媒体播放器eSata也会输入到驱动器中。
谢谢!
发布于 2011-04-12 00:49:55
虽然不是根本上不可能的,但我不认为解决这个问题的办法是存在的。
首先,如果我正确地理解了您的请求--媒体播放器没有自己的磁盘,或者不在这里使用它--媒体播放器希望在eSATA上显示一个磁盘。eSATA是一种块访问协议;为了给它提供这样一个块设备(磁盘,这里实际上不是磁盘),您需要在以目标模式运行的终端上使用SATA (在启动器模式下运行的“正常”端口)。这在SAN系统之外是不常见的,在那里它们往往是光纤通道或SAS,而不是SATA。这些支持设置的目标模式将一个(单一的、大的)文件映射到一个LUN,该LUN显示在附加的设备上。服务器不太了解或关心该文件中的内容;应该由客户机来理解LUN上的分区表和文件系统,然后才能到达文件的实际内容。
接下来,媒体服务器可能期望“磁盘”有一个DOS风格的分区表和一个带有FAT (或者NTFS)分区的分区。也许它也会接受ext2 2/3 --这取决于它自己运行的是什么。
另一方面,NFS是一种文件协议。客户端请求一个文件并获取原始数据,而不关心该文件所驻留的文件系统。
为了在这里做您想做的事情,您需要一个中间层,它构建媒体播放器可以读取的某些文件系统布局的内部结构(最有可能的选项是非开放标准,这增加了复杂性),并使用从NFS获取的文件中获取的数据来响应对这些块的请求。您可以枚举NFS挂载的内容以构建数据库,但是对NFS共享的任何更改都需要重新组合到提供给媒体播放器的表示中。Linux中有一些系统可以做到这一点,但是它们不能使用NFS挂载。
因此,安全的方法是将NFS共享的内容复制到一个环回挂载的FAT32分区中,然后卸载该分区并将其作为LUN导出到媒体播放器。然而,这有一个缺点,那就是需要存储两次所有的东西。
或者简单地说:对不起,这(差不多)不可能。
https://serverfault.com/questions/258477
复制相似问题