Closed. This question is off-topic. It is not currently accepting answers. Learn more。
想改进这个问题吗?Update the question所以堆栈溢出的值小于aa>。
我需要对磁带服务器上的磁带执行一些基本操作:
加载磁带
显示统计信息(相当于Linux中的mt stat
命令)
在磁带块上读/写数据
我想通过C/C++中的API /库来执行这些任务,但我真的很难找到初学者的指导/教程。
您是否可以使用sg驱动程序、sg3实用程序中的函数或一些玩弄ioctl()
的函数?
最佳答案
磁带通常是字符设备(通常/dev/st*
,请参阅st(4)-其中列出了相关的ioctl(2)参数等)。因此,使用公共的read(2)和write(2)系统调用(具有适当大小的缓冲区,例如128k字节)。
您可以考虑libtar(以支持tar
格式)。你一定要研究源代码,例如GNU tar(以及其中包含的mt
)。
也许您的磁带服务器有自己的api,或者一些web接口(然后使用libcurl)或一些网络协议。
10-01 11:12