vtllibrary(1)

πŸ“¦ version 1.72_release+6.a11b6777660b, in opensuse-leap 16.0

πŸ¦‹ vtllibrary(1) β€” the user space daemon for a Virtual Tape Library πŸ¦‹

okay bestie, welcome to the vtllibrary(1) page from the User Commands manual. This is the user space daemon that handles SCSI SMC commands for a Virtual Tape Library. It's giving "tape library, but make it virtual" and honestly? Obsessed. πŸ’–

🌸 NAME 🌸

vtllibrary β€” user space daemon to handle SCSI SMC commands for Virtual Tape Library.

✨ SYNOPSIS ✨

vtllibrary -h -- print a help message and exit, or
vtllibrary [OPTIONS] -q QUEUE_ID -- Emulate a tape library for queue QUEUE_ID.

πŸ’– DESCRIPTION πŸ’–

This command emulates a tape library device, using queue QUEUE_ID, which represent the message queue number used for this daemon. This number is derived from the device.conf where it must be unique. Media files can be created using OPTIONS from this list:

  • -d β€” Enable debug logging (to stdout). Do not background the process, and set verbosity to level 9.
  • -v[N] β€” Enable verbose logging (to syslog) at level N (default 1).
  • -F β€” Run in the foreground, not as a daemon.
  • -fFIFO β€” Near real time device state information will be available for external utilities by reading from this fifo. This switch has a higher precedence than the 'fifo:' entry in device.conf.

The vtllibrary daemon simulates a tape library device, and is started by systemd(1), as needed, one invocation per Tape Library being simulated. The vtllibrary daemon registers each vtltape(1) via message queue. The vtllibrary reads /etc/mhvtl/library_contents.* and dynamically builds an internal structure of Storage slots and Media Access slots. All media movement is performed on internal structures only. The configuration file is never changed, i.e. a re-start of the daemon will result in the loss of any previous media movements.

🚨 bestie, this is the important part: the configuration file is never changed. Restart the daemon and any previous media movements are gone. That's the vibe, and it's not a cute one. 😭

When media is moved to/from a "Data transfer element" (tape drive), a (un)load message is sent via the drive 'slot number' message Q number to load/unload the barcode.

πŸ“ FILES πŸ“

  • /etc/mhvtl/device.conf β€” to find which library_contents.* files to examine
  • /etc/mhvtl/library_contents.*

✍️ AUTHOR ✍️

Written by Mark Harvey. The icon. πŸ’…

πŸ› BUGS πŸ›

Does not implement the complete SCSI SMC-2/SMC-3 command set.

πŸ“£ REPORTING BUGS πŸ“£

Report bugs to <markh794@gmail.com>.

Copyright Β© 2019 Free Software Foundation, Inc.

This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

πŸ‘€ SEE ALSO πŸ‘€

library_contents(5), mktape(1), make_vtl_media(1), vtlcmd(1), vtltape(1) β€” go read these next, bestie. 🫢

mwah πŸ’‹ β€” this page is from mhvtl version 1.72_release+6.a11b6777660..., dated May 2025, and it's the vtllibrary(1) manual. Slay. ✨