- Channel attached Tape device driver
- -----------------------------WARNING-----------------------------------------
- This driver is considered to be EXPERIMENTAL. Do NOT use it in
- production environments. Feel free to test it and report problems back to us.
- -----------------------------------------------------------------------------
- The LINUX for zSeries tape device driver manages channel attached tape drives
- which are compatible to IBM 3480 or IBM 3490 magnetic tape subsystems. This
- includes various models of these devices (for example the 3490E).
- Tape driver features
- The device driver supports a maximum of 128 tape devices.
- No official LINUX device major number is assigned to the zSeries tape device
- driver. It allocates major numbers dynamically and reports them on system
- startup.
- Typically it will get major number 254 for both the character device front-end
- and the block device front-end.
- The tape device driver needs no kernel parameters. All supported devices
- present are detected on driver initialization at system startup or module load.
- The devices detected are ordered by their subchannel numbers. The device with
- the lowest subchannel number becomes device 0, the next one will be device 1
- and so on.
- Tape character device front-end
- The usual way to read or write to the tape device is through the character
- device front-end. The zSeries tape device driver provides two character devices
- for each physical device -- the first of these will rewind automatically when
- it is closed, the second will not rewind automatically.
- The character device nodes are named /dev/rtibm0 (rewinding) and /dev/ntibm0
- (non-rewinding) for the first device, /dev/rtibm1 and /dev/ntibm1 for the
- second, and so on.
- The character device front-end can be used as any other LINUX tape device. You
- can write to it and read from it using LINUX facilities such as GNU tar. The
- tool mt can be used to perform control operations, such as rewinding the tape
- or skipping a file.
- Most LINUX tape software should work with either tape character device.
- Tape block device front-end
- The tape device may also be accessed as a block device in read-only mode.
- This could be used for software installation in the same way as it is used with
- other operation systems on the zSeries platform (and most LINUX
- distributions are shipped on compact disk using ISO9660 filesystems).
- One block device node is provided for each physical device. These are named
- /dev/btibm0 for the first device, /dev/btibm1 for the second and so on.
- You should only use the ISO9660 filesystem on LINUX for zSeries tapes because
- the physical tape devices cannot perform fast seeks and the ISO9660 system is
- optimized for this situation.
- Tape block device example
- In this example a tape with an ISO9660 filesystem is created using the first
- tape device. ISO9660 filesystem support must be built into your system kernel
- for this.
- The mt command is used to issue tape commands and the mkisofs command to
- create an ISO9660 filesystem:
- - create a LINUX directory (somedir) with the contents of the filesystem
- mkdir somedir
- cp contents somedir
- - insert a tape
- - ensure the tape is at the beginning
- mt -f /dev/ntibm0 rewind
- - set the blocksize of the character driver. The blocksize 2048 bytes
- is commonly used on ISO9660 CD-Roms
- mt -f /dev/ntibm0 setblk 2048
- - write the filesystem to the character device driver
- mkisofs -o /dev/ntibm0 somedir
- - rewind the tape again
- mt -f /dev/ntibm0 rewind
- - Now you can mount your new filesystem as a block device:
- mount -t iso9660 -o ro,block=2048 /dev/btibm0 /mnt
- TODO List
- - Driver has to be stabelized still
- BUGS
- This driver is considered BETA, which means some weaknesses may still
- be in it.
- If an error occurs which cannot be handled by the code you will get a
- sense-data dump.In that case please do the following:
- 1. set the tape driver debug level to maximum:
- echo 6 >/proc/s390dbf/tape/level
- 2. re-perform the actions which produced the bug. (Hopefully the bug will
- reappear.)
- 3. get a snapshot from the debug-feature:
- cat /proc/s390dbf/tape/hex_ascii >somefile
- 4. Now put the snapshot together with a detailed description of the situation
- that led to the bug:
- - Which tool did you use?
- - Which hardware do you have?
- - Was your tape unit online?
- - Is it a shared tape unit?
- 5. Send an email with your bug report to:
- mailto:Linux390@de.ibm.com