Giter Club home page Giter Club logo

mt-st's Introduction

mt-st tools

This directory contains two programs; mt and stinit, used for dealing with Linux-specific tape-drive handling.

The project was authored and is copyright by Kai Mäkisara ([email protected]), and since version 1.2 is maintained by Iustin Pop ([email protected]). For copyright information, see the COPYING file.

For more information, bug reports and the source code repository, please see the project homepage at https://github.com/iustin/mt-st.

GitHub Workflow Status Codecov Debian package Ubuntu package GitHub Release Date GitHub commits since latest release

mt

mt is basically a "standard" mt with additional commands to send the ioctls specific to the Linux SCSI tape driver. The source supports all SCSI tape ioctls up to kernel version 2.6.0 but it can also be compiled in kernels >= 2.0.x (and hopefully with 1.2.x). Although this mt program is tailored for SCSI tapes, it can also be used with other Linux tape drivers using the same ioctls (some of the commands may not work with all drivers).

stinit

The program stinit is meant for initializing of SCSI tape drive modes at system startup, when the tape driver module is loaded, or when new tape drivers are initialized using:

echo "scsi add-single-device x y z v" >/proc/scsi/scsi

or (with 2.6 kernels):

echo "y z v" > /sys/class/scsi_host/hostx/scan

where x=host y=channel z=id v=lun (- is wild card for 2.6).

The parameters used in initialization of a tape drive are fetched from a text file. The parameter file is indexed by the inquiry data returned by the drive, i.e., the parameters are defined by the drive manufacturer, model, etc. This means that the initialization for a drive does not depend on its hardware address. A similar method is used by most Unices either within the kernel or outside the kernel.

The contents of the configuration file and the command line parameters are defined in the man page stinit.8. A sample configuration file stinit.def.examples is included in this distribution. It can be used as example when writing descriptions for the tape drives in a system. NOTE that the examples by no means specify what are the "correct" parameters for different types of devices.

The program is configured for maximum of 32 tapes and 4 modes (the default Linux configuration). If the kernel is configured for different number of tape modes, the definitions MAX_TAPES and NBR_MODES in stinit.c should be configured accordingly. (With 8 bit minor numbers NBR_MODES * MAX_TAPES == 128.)

Contents

The files:

  • README.md: This file.
  • CHANGELOG.md: Changes between versions.
  • COPYING: The GNU Public License
  • Makefile: Makefile for programs
  • mt.c: The mt source
  • mt.1: The man page for mt
  • mtio.h: The tape command definitions
  • stinit.c: The stinit source
  • stinit.8: The man page for stinit
  • stinit.def.examples: example configurations for different devices
  • mt-st.bash_completion: bash auto completion file

Installation

Really simple:

  • review the makefile
  • make
  • make install

mt-st's People

Contributors

iustin avatar kmakisara avatar sharkcz avatar svalx avatar dabiged avatar doughdemon avatar dcb314 avatar cathay4t avatar hrchu avatar kishorkunal-raj avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.