LTFS has become a buzzword in the storage community in the last couple of years. Everybody seems to be excited about it. Nevertheless, only a few have tried it out themselves, and of those even fewer can talk of success. Driven by this trend, we decided to give LTFS a go and see how we can use and integrate this technology into PresSTORE and make it easier for the not-so-knowledgeable user to employ.
The only remaining tape technology that has survived over the years and proven itself through reliability and speed is LTO. Historically, even the very first SCSI standard has foreseen tapes with multiple partitions and commands to operate such tapes. I do not know whether some tape technologies in the past were capable of multiple partitions, however LTO in its 5th generation, released in 2010, introduced the capability of creating TWO partitions. With this feature, the creation of a file system on tape has become possible and with it the introduction of LTFS.
There are four major vendors pushing the LTO technology and developing it further, those being HP, IBM, Quantum and Tandberg. In order to popularize their LTO technology and make it accessible to the general computer public, they decided to create the Linear Tape File System, in short LFTS. The appeal behind LTFS is that it allows you to mount a tape and access it just as any other file system on disk by employing the well known finder/explorer/konqueror/dolphin type of tools. This makes it possible to easily save and retrieve data from tape and use tape as a transport medium for data between sites.
Having such big names behind an appealing technology obviously caught the attention of many users who already have LTO drives and libraries or are looking for a reliable and cost effective system to save their data, either short or long term. The appeal being even stronger since LTFS is an open project free of charge with an open code.
However, the appeal of LTFS and its open nature is also its drawback. The initial code was written and made available by IBM. The other vendors overtook this code and adapted it, each for their own hardware. Therefore, there are at least four different compilations and versions of this code out there, some working on some versions of some operating system, some less so, some supporting the drives of the other vendors and some less so. Therefore, if you are lucky and have the “correct” version of the operating system, find the correct LTFS package and have a drive that it supports, you are good to go. If you are less lucky, as I was, it can take you anywhere from days to weeks before you can enjoy your first attempt on saving the data on your drive with LTFS. I had to try out practically all the possible compilations. What makes this endeavor even more difficult is that there are three interdependent packages that one needs to install: the ICU package, the LTFS package and the Fuse package. The latter two have to fit together. The Fuse package is also delicate about the OS. The LTFS package wants the right version of ICU and even when you have it, in some cases it refuses to install.
With increasing frustration, at some point you may decide to use the readily available source code and attempt to compile it yourself. However, if you at all succeed in that after modifying the compilation scripts, you encounter the exact same problems as with the downloaded compiled code.
In summary, the current LTFS experience is nothing close to being user friendly or easy for a non-knowledgeable user, and not even for a professional. This is a pity given the appeal and promise that this technology offers.
Having gone through this experience, we at Archiware have decided to create a single package with a single double-click installer that will install a working version of LTFS for for several operating systems, beginning with Mac OS X, followed by Windows and Linux. We also decided to provide a graphical user interface to take away the burden on the user of having to learn the command line interface to operate LTFS.
Nevertheless, there are still some pitfalls to avoid while using LTFS to make the LTFS experience a positive one. I will address those in the next blog entry.