All Projects → amiaopensource → ltopers

amiaopensource / ltopers

Licence: MIT License
Bash scripts to manage LTO cartridges with LTFS

Programming Languages

shell
77523 projects
Roff
2310 projects

Projects that are alternatives of or similar to ltopers

ltfs
Reference implementation of the LTFS format Spec for stand alone tape drive
Stars: ✭ 130 (+400%)
Mutual labels:  tape, ltfs
stenc
SCSI Tape Encryption Manager - stenc (formerly on https://sourceforge.net/projects/stenc/)
Stars: ✭ 41 (+57.69%)
Mutual labels:  tape, lto
awesome-javascript-testing
🔧 Awesome JavaScript testing resources
Stars: ✭ 28 (+7.69%)
Mutual labels:  tape
tap-xunit
TAP to xUnit XML converter
Stars: ✭ 40 (+53.85%)
Mutual labels:  tape
tropic
🍍 Test Runner Library
Stars: ✭ 29 (+11.54%)
Mutual labels:  tape
gulp-tape
👻 Run Tape tests in Gulp.
Stars: ✭ 14 (-46.15%)
Mutual labels:  tape
cbmtapepi
Use a Raspberry Pi as fast mass storage solution for your Commodore 8-bit computer using just the datassette port.
Stars: ✭ 41 (+57.69%)
Mutual labels:  tape
KCSviewer
Kansas City Standard tape decoder/viewer made with discrete transistors
Stars: ✭ 25 (-3.85%)
Mutual labels:  tape
unitest
🌎 Seamless node and browser unit testing with code coverage
Stars: ✭ 28 (+7.69%)
Mutual labels:  tape
svelte-starter-kit
Svelte starter kit — router, state management and testing included.
Stars: ✭ 16 (-38.46%)
Mutual labels:  tape
tape-es
ESM-compatible Tape.js test runner
Stars: ✭ 24 (-7.69%)
Mutual labels:  tape
zx tape player
Just another tape player has been written in Flutter for iOS and Android. The application is able to find tapes and theirs images using https://zxInfo.dk public API and upload them to ZX-Spectrum compatible computers by the audio output of the smartphone. Now it supports TAP and TZX tape images only.
Stars: ✭ 26 (+0%)
Mutual labels:  tape
playwright-test
Run unit tests with several runners or benchmark inside real browsers with playwright.
Stars: ✭ 81 (+211.54%)
Mutual labels:  tape
originator
🌱 es6 starter - babel, tape, zuul, npm scripts
Stars: ✭ 12 (-53.85%)
Mutual labels:  tape
ts-snippet
A TypeScript snippet compiler for any test framework
Stars: ✭ 29 (+11.54%)
Mutual labels:  tape
zxtap-to-wav
Converter of .TAP files (a ZX-Spectrum emulator data format) into .WAV sound files
Stars: ✭ 34 (+30.77%)
Mutual labels:  tape
node-bogota
🚀 Run tape tests concurrently with tap-spec output
Stars: ✭ 15 (-42.31%)
Mutual labels:  tape
Archivebox
🗃 Open source self-hosted web archiving. Takes URLs/browser history/bookmarks/Pocket/Pinboard/etc., saves HTML, JS, PDFs, media, and more...
Stars: ✭ 12,383 (+47526.92%)
Mutual labels:  digipres

LTOpers Documentation

This documentation is up to date as of LTOpers version 2019-01-18.

LTOpers elements

General LTO-handling tools

  • formatlto
  • mountlto
  • readlto
  • renameschemas
  • verifylto
  • writelto

Database-specific tools

  • ingestcollectionchecksum
  • ingestschemas
  • searchlto

CUNY-specific tool

  • collectionchecksum
  • indexschemas

Installing LTOpers

You can easily install these tools using Homebrew. To install Homebrew, follow the instructions.

Install the LTFS utilities. Please use version 2.4 on the Quantum site.

To install the general LTO-handling tools, run the following two commands:

brew tap amiaopensource/amiaos
brew install ltopers

To install the general LTO-handling and the database-specific tools, run the following two commands:

brew tap amiaopensource/amiaos
brew install ltopers --with-db

To install the general LTO-handling, the database-specific and the CUNY-specific tools, run the following two commands:

brew tap amiaopensource/amiaos
brew install ltopers --with-cuny

To update LTOpers tools, run the following commands:

brew update
brew upgrade

Note

This will update Homebrew and upgrade every package you've installed using it.

By default, LTOpers scripts use the standard tape serials, consisting of 6 character strings of numbers and capital letters. (However, the flag -x allows to use the barcode label as tape serial for non-standard implementations.)

Formatting LTO

LTO tapes need to be formatted before they can be used. Run the following command:

formatlto

The script will ask you select a deck (if you have more than one attached) and to provide a tape serial your tape. The tape serial format is exactly 6 capital letters and/or numbers.

Example:

  • Annnnn

where nnnnn is a 5-digit sequential number, e.g. A00001, A00002, etc.

The script will format your tape in LTFS format, with no compression, and sets rules that allow smaller types of files to live in the index partition of the tape, which gives you faster access. If you need to change this, edit the mkltfs line in the script to suit your preferences.

Remember to physically label the tape with the tape serial!

Mounting LTO

Put the tape you want to mount in the deck (you do not have to push it in all the way).

To mount the tape run the following command:

mountlto

The script will check for attached tape drive, and will prompt for deck name if there are multiple drives.

The tape will load in deck and mount.

In Finder, go to Go > Go to Folder, and enter /Volumes/$tape_serial to navigate to tape in Finder.

Un-mounting LTO and creating XML

To unmount the tape, Ctrl-C in Terminal.

Whenever a tape is ejected, the script will export the tape’s index (as an XML .schema file) to the path set as LTO_INDEX_DIR in mmconfig. To set or change the path, type mmconfig to access the configuration GUI. If there is no path set, the index location will default to $HOME/Documents/lto_indexes. If a .schema file for that tape already exists in that location, it will just update the existing schema file with any new data.

Writing to LTO

To write data onto a tape, run the following command:

writelto

When prompted, enter the tape serial and the source directory.

The script will run gcp to transfer the data to the LTO tape (rsync is used as a backup check for gcp).

To read back and create checksums for the contents of a tape, and write checksums to a file named with the tape serial and date, run the following command:

writelto -v

The checksum file will be written to the LTO logs directory: LTO_INDEX_DIR (also set in mmconfig) or $HOME/Documents/lto_indexes (default if not set in mmconfig).

This command uses the tool md5deep, which has several flags to set options. To customize which flags you want to append to md5deep, set the variable LTO_MD5_FLAGS in mmconfig (type mmconfig to access the configuration GUI).

Database integration

LTOpers can integrate with the database reporting functions in mediamicroservices. For information on how to set up the database see the mediamicroservices' readme.

If the database is activated and configured LTOpers will store information from LTO schema files, fixity information and PREMIS event information relating to LTOpers and microservices.

Database-specific tools in LTOpers are searchlto, ingestschemas and ingestcollectionchecksum. Both ingestchemas and ingestcollectionchecksum are designed for importing already existing information to the database (LTO schema information and read back checksums respectively). They can be run either on individual files or on directories containing multiple files.

searchlto is for performing searches against the LTO schema information stored in the database. It accepts either a media ID or an LTO tape serial as an input and will return a list of matching service files. Options are -h display help, -c compare characteristics of an input file to records in the database, and -f show full results (this will show all matches to search term as opposed filtering for service files only).

License

LTOpers is licensed under an MIT License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].