LinearTapeFileSystem / ltfs

Reference implementation of the LTFS format Spec for stand alone tape drive
BSD 3-Clause "New" or "Revised" License
256 stars 77 forks source link

The ability to mount ltfs filedumps #255

Closed svein closed 3 years ago

svein commented 3 years ago

Is your feature request related to a problem? Please describe. IBM Tape Diagnostic Tool (ITDT) has the ability to dump ltfs formated tapes to disk, but as far as I know there is no way to mount this image for file extraction.

Describe the solution you'd like ltfs to have the ability to mount files using fuse. A read/write image would be even better, but read only would be beneficial to me in some cases.

Describe alternatives you've considered I have tried binding the image to loopback and use that as a device, but it doesn't seem to work.

piste-jp commented 3 years ago

I believe it's already provided. See https://github.com/LinearTapeFileSystem/ltfs/tree/master/src/tape_drivers/generic/itdtimg.

You can try it by the option -o tape_backend=itdtimg.

The image created by ITDT has a hardly appendable structure so we don't have any plan to support R/W functionality on the itdtimg backend in the future.

piste-jp commented 3 years ago

I will close this because there is no response in a week.

Please feel free to reopen this with a comment if you did't resolve the problem yet.

svein commented 3 years ago

Hi,

Sorry for no reply, I didn't have access to a drive. I tried to mount the image but it gives the following errors.

 ./ltfs -o tape_backend=itdtimg /tempsync/tape.img  /srv/
3b20 LTFS14000I LTFS starting, LTFS version 2.5.0.0 (Prelim), log level 2.
3b20 LTFS14058I LTFS Format Specification version 2.4.0.
3b20 LTFS14104I Launched by "./ltfs -o tape_backend=itdtimg /tempsync/tape.img /srv/".
3b20 LTFS14105I This binary is built for Linux (x86_64).
3b20 LTFS14106I GCC version is 4.8.5 20150623 (Red Hat 4.8.5-44).
3b20 LTFS17087I Kernel version: Linux version 3.10.0-1160.15.2.el7.x86_64 (mockbuild@x86-034.build.eng.bos.redhat.com) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Thu Jan 21 16:15:07 EST 2021 i386.
3b20 LTFS17089I Distribution: NAME="Red Hat Enterprise Linux Server".
3b20 LTFS17089I Distribution: Red Hat Enterprise Linux Server release 7.9 (Maipo).
3b20 LTFS17089I Distribution: Red Hat Enterprise Linux Server release 7.9 (Maipo).
3b20 LTFS14063I Sync type is "time", Sync time is 300 sec.
3b20 LTFS17085I Plugin: Loading "itdtimg" tape backend.
3b20 LTFS17085I Plugin: Loading "unified" iosched backend.
3b20 LTFS14095I Set the tape device write-anywhere mode to avoid cartridge ejection.
3b20 LTFS12004E Device backend does not implement all required methods.
3b20 LTFS10004E Cannot open device 'tape.img'.
./ltfs -o tape_backend=itdtimg -o devname=/tempsync/tape.img  /srv/
3b7d LTFS14000I LTFS starting, LTFS version 2.5.0.0 (Prelim), log level 2.
3b7d LTFS14058I LTFS Format Specification version 2.4.0.
3b7d LTFS14104I Launched by "./ltfs -o tape_backend=itdtimg -o devname=/tempsync/tape.img /srv/".
3b7d LTFS14105I This binary is built for Linux (x86_64).
3b7d LTFS14106I GCC version is 4.8.5 20150623 (Red Hat 4.8.5-44).
3b7d LTFS17087I Kernel version: Linux version 3.10.0-1160.15.2.el7.x86_64 (mockbuild@x86-034.build.eng.bos.redhat.com) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Thu Jan 21 16:15:07 EST 2021 i386.
3b7d LTFS17089I Distribution: NAME="Red Hat Enterprise Linux Server".
3b7d LTFS17089I Distribution: Red Hat Enterprise Linux Server release 7.9 (Maipo).
3b7d LTFS17089I Distribution: Red Hat Enterprise Linux Server release 7.9 (Maipo).
3b7d LTFS14063I Sync type is "time", Sync time is 300 sec.
3b7d LTFS17085I Plugin: Loading "itdtimg" tape backend.
3b7d LTFS17085I Plugin: Loading "unified" iosched backend.
3b7d LTFS14095I Set the tape device write-anywhere mode to avoid cartridge ejection.
3b7d LTFS12004E Device backend does not implement all required methods.
3b7d LTFS10004E Cannot open device '/tempsync/tape.img'.

Something wrong with my syntax?

piste-jp commented 3 years ago

It looks a bug. Can I have a time to investigate?

svein commented 3 years ago

It looks a bug. Can I have a time to investigate?

Of cause. It's a feature I need when thing goes bad, but now all our drives are operational

It also seems the plugin is not part of the ltfsle package. But thats not a problem.

Is there anywhere where the different plugins are documented? I didn't see any references in the man page or --help https://www.ibm.com/support/knowledgecenter/STQNYL_2.4.1/ltfs_sd_ichome.html also seems lacking

piste-jp commented 3 years ago

Is there anywhere where the different plugins are documented? I didn't see any references in the man page or --help

No, but you can see the [install_path]/etc/ltfs.conf. It includes the available tape backends. (But it is the another story that all backends are supported not not...)

https://www.ibm.com/support/knowledgecenter/STQNYL_2.4.1/ltfs_sd_ichome.html also seems lacking

I don't want to mention about a product of IBM here.