Мне нужно сделать несколько основных операций с магнитными лентами на нашем ленточном сервере:
mt stat
команда в Linux)Я хочу выполнить эти задачи через API / библиотеку в C / C ++, но я действительно изо всех сил пытаюсь найти инструкции / учебное пособие для начинающих.
Можете ли вы как-то использовать SG водитель, функции от sg3_utils или немного играть с ioctl()
?
Ленты, как правило, символьные устройства (обычно /dev/st*
, увидеть й (4) -какие списки актуальны IOCTL (2) аргументы — и т.д …). Так что используйте общий чтения (2) а также написать (2) системные вызовы (с буфером соответствующего размера, например, 128 Кбайт).
Вы могли бы рассмотреть libtar (чтобы поддержать tar
формат). Вы определенно должны изучить исходный код, например, GNU tar (а также mt
содержится в нем).
Возможно, у вашего ленточного сервера есть собственный API или какой-то веб-интерфейс (тогда используйте Libcurl) или какой-то сетевой протокол.