mt - Man Page
control magnetic tape drive operation
Examples (TL;DR)
- Check the status of a tape drive:
mt -f /dev/nstX status
- Rewind the tape to beginning:
mt -f /dev/nstX rewind
- Move forward a given files, then position the tape on first block of next file:
mt -f /dev/nstX fsf count
- Rewind the tape, then position the tape at beginning of the given file:
mt -f /dev/nstX asf count
- Position the tape at the end of valid data:
mt -f /dev/nstX eod
- Rewind the tape and unload/eject it:
mt -f /dev/nstX eject
- Write EOF (End-of-file) mark at the current position:
mt -f /dev/nstX eof
Synopsis
Description
This manual page documents the tape control program mt. mt performs the given operation, which must be one of the tape operations listed below, on a tape drive. The commands can also be listed by running the program with the -h option.
Some operations optionally take an argument or repeat count, which can be given after the operation name and defaults to 1. The postfix k , M , or G can be used to give counts in units of 1024, 1024 * 1024, or 1024 * 1024 * 1024, respectively.
The available operations are listed below. Unique abbreviations are accepted. Not all operations are available on all systems, or work on all types of tape drives.
- fsf
Forward space count files. The tape is positioned on the first block of the next file.
- fsfm
Forward space count files, then backward space one record. This leaves the tape positioned at the last block of the file that is count - 1 files past the current file.
- bsf
Backward space count files. The tape is positioned on the last block of the previous file.
- bsfm
Backward space count files, then forward space one record. This leaves the tape positioned at the first block of the file that is count - 1 files before the current file.
- asf
The tape is positioned at the beginning of the count file. Positioning is done by first rewinding the tape and then spacing forward over count filemarks.
- fsr
Forward space count records.
- bsr
Backward space count records.
- fss
(SCSI tapes) Forward space count setmarks.
- bss
(SCSI tapes) Backward space count setmarks.
- eod, seod
Space to end of valid data. Used on streamer tape drives to append data to the logical end of tape.
- rewind
Rewind the tape.
- offline, rewoffl, eject
Rewind the tape and, if applicable, unload the tape.
- retension
Rewind the tape, then wind it to the end of the reel, then rewind it again.
- weof, eof
Write count EOF marks at current position.
- wset
(SCSI tapes) Write count setmarks at current position (only SCSI tape).
- erase
Erase the tape. Note that this is a long erase, which on modern (high-capacity) tapes can take many hours, and which usually can't be aborted.
- status
Print status information about the tape unit. (If the density code is "no translation" in the status output, this does not affect working of the tape drive.)
- seek
(SCSI tapes) Seek to the count block on the tape. This operation is available on some Tandberg and Wangtek streamers and some SCSI-2 tape drives. The block address should be obtained from a tell call earlier.
- tell
(SCSI tapes) Tell the current block on tape. This operation is available on some Tandberg and Wangtek streamers and some SCSI-2 tape drives.
- setpartition
(SCSI tapes) Switch to the partition determined by count. The default data partition of the tape is numbered zero. Switching partition is available only if enabled for the device, the device supports multiple partitions, and the tape is formatted with multiple partitions.
- partseek
(SCSI tapes) The tape position is set to block count in the partition given by the argument after count. The default partition is zero.
- mkpartition
(SCSI tapes) Format the tape with one (count is zero) or two partitions (count gives the size of the second partition in megabytes). If the count is positive, it specifies the size of partition 1. From kernel version 4.6, if the count is negative, it specifies the size of partition 0. With older kernels, a negative argument formats the tape with one partition. The tape drive must be able to format partitioned tapes with initiator-specified partition size and partition support must be enabled for the drive.
- load
(SCSI tapes) Send the load command to the tape drive. The drives usually load the tape when a new cartridge is inserted. The argument count can usually be omitted. Some HP changers load tape n if the count 10000 + n is given (a special function in the Linux st driver).
- lock
(SCSI tapes) Lock the tape drive door.
- unlock
(SCSI tapes) Unlock the tape drive door.
- setblk
(SCSI tapes) Set the block size of the drive to count bytes per record.
- setdensity
(SCSI tapes) Set the tape density code to count. The proper codes to use with each drive should be looked up from the drive documentation.
- densities
(SCSI tapes) Write explanation of some common density codes to standard output.
- drvbuffer
(SCSI tapes) Set the tape drive buffer code to number. The proper value for unbuffered operation is zero and "normal" buffered operation one. The meanings of other values can be found in the drive documentation or, in the case of a SCSI-2 drive, from the SCSI-2 standard.
- compression
(SCSI tapes) The compression within the drive can be switched on or off using the MTCOMPRESSION ioctl. Note that this method is not supported by all drives implementing compression. For instance, the Exabyte 8 mm drives use density codes to select compression.
- stoptions
(SCSI tapes) Set the driver options bits for the device to the defined values. Allowed only for the superuser. The bits can be set either by ORing the option bits from the file /usr/include/linux/mtio.h to count, or by using the following keywords (as many keywords can be used on the same line as necessary, unambiguous abbreviations allowed):
- buffer-writes
buffered writes enabled
- async-writes
asynchronous writes enabled
- read-ahead
read-ahead for fixed block size
- debug
debugging (if compiled into driver)
- two-fms
write two filemarks when file closed
- fast-eod
space directly to eod (and lose file number)
- no-wait
don't wait until rewind, etc. complete
- auto-lock
automatically lock/unlock drive door
- def-writes
the block size and density are for writes
- can-bsr
drive can space backwards as well
- no-blklimits
drive doesn't support read block limits
- can-partitions
drive can handle partitioned tapes
- scsi2logical
seek and tell use SCSI-2 logical block addresses instead of device dependent addresses
- sili
Set the SILI bit is when reading in variable block mode. This may speed up reading blocks shorter than the read byte count. Set this option only if you know that the drive supports SILI and the HBA reliably returns transfer residual byte counts. Requires kernel version >= 2.6.26.
- sysv
enable the System V semantics
- stsetoptions
(SCSI tapes) Set selected driver options bits. The methods to specify the bits to set are given above in the description of stoptions. Allowed only for the superuser.
- stclearoptions
(SCSI tapes) Clear selected driver option bits. The methods to specify the bits to clear are given above in description of stoptions. Allowed only for the superuser.
- stshowoptions
(SCSI tapes) Print the currently enabled options for the device. Requires kernel version >= 2.6.26 and sysfs must be mounted at /sys.
- stwrthreshold
(SCSI tapes) The write threshold for the tape device is set to count kilobytes. The value must be smaller than or equal to the driver buffer size. Allowed only for the superuser.
- defblksize
(SCSI tapes) Set the default block size of the device to count bytes. The value -1 disables the default block size. The block size set by setblk overrides the default until a new tape is inserted. Allowed only for the superuser.
- defdensity
(SCSI tapes) Set the default density code. The value -1 disables the default density. The density set by setdensity overrides the default until a new tape is inserted. Allowed only for the superuser.
- defdrvbuffer
(SCSI tapes) Set the default drive buffer code. The value -1 disables the default drive buffer code. The drive buffer code set by drvbuffer overrides the default until a new tape is inserted. Allowed only for the superuser.
- defcompression
(SCSI tapes) Set the default compression state. The value -1 disables the default compression. The compression state set by compression overrides the default until a new tape is inserted. Allowed only for the superuser.
- sttimeout
sets the normal timeout for the device. The value is given in seconds. Allowed only for the superuser.
- stlongtimeout
sets the long timeout for the device. The value is given in seconds. Allowed only for the superuser.
- stsetcln
set the cleaning request interpretation parameters.
mt exits with a status of 0 if the operation succeeded, 1 if the operation or device name given was invalid, or 2 if the operation failed.
Options
- -h, --help
Print a usage message on standard output and exit successfully.
- -v, --version
Print version of mt.
- -f, -t
The path of the tape device on which to operate. If neither of those options is given, and the environment variable TAPE is set, it is used. Otherwise, a default device defined in the file /usr/include/sys/mtio.h is used (note that the actual path to mtio.h can vary per architecture and/or distribution).
Notes
The argument of mkpartition specifies the size of the partition in megabytes. If you add a postfix, it applies to this definition. For example, argument 1G means 1 giga megabytes, which probably is not what the user is anticipating.
Author
The program is written by Kai Makisara <Kai.Makisara@kolumbus.fi>, and is currently maintained by Iustin Pop <iustin@k1024.org>.
Copyright
The program and the manual page are copyrighted by Kai Makisara, 1998-2008. They can be distributed according to the GNU Copyleft.
Bugs
Please report bugs to <https://github.com/iustin/mt-st>.
See Also
Referenced By
amanda-devices(7), bsdcpio(1), bsdtar(1), dump(8), loaderinfo(1), mtx(1), restore(8), sg3_utils(8), st(4), star(1), stinit(8), tapeinfo(1).