Re: Multiple slices on LTO6 tape

Denis Corbin <[email protected]> Sun, 3 Jul 2022 17:40:16 +0200
Newsgroups gmane.comp.sysutils.backup.dar.support
Message-ID <[email protected]>
Le 01/07/2022 à 11:08, Petr Skoda a écrit :
> Dear Denis,

Hi Petr,

> 
> I have tried the 2.7.6 but still no succes with reading tape from symlink.

in 2.7.6 it is possible to read sequentially a backup relying on
symlinks, but that fails if the symlink points to a special device or
named pipe.

I have provided a minor update to libdar for the slicing layer (sar) to
be provided modified files object when reading in sequential mode. Those
modified files to not require to know the file size and emulate the
skip()/get_position() offset feature by just reading the data and
counting the byte read.

for now you need to disable fadvise invocation from libdar at
compilation time:
./configure --disable-fadvise ...
I'm looking forward to see how to make fadvise failure triggering an
operation failure.

You now have the release candidate 2.7.7.RC1 that, I hope, should let
you read

> 
> Could you, please provide a example how to write and read multiple
> slices on tape that I could read independently using the symlinks ?
> I am probably doing something in a completely messy way - spent again
> several hours without succes.
> I tried to complie the source 2.7.6 and used the one on repository (static)
> 

what I did in this context:

# mkfifo tube
# ls repo
demo.1.dar
demo.2.dar
demo.3.dar
#

in a first terminal:
# dar -t link --sequential-read -N
link.1.dar is required for further operation, please provide the file.
[return = YES | Esc = NO]


in a second terminal:
# ln -s tube link.1.dar
# cat < repo/demo.1.dar > tube

back in the first terminal, hitting return
Continuing...
link.2.dar is required for further operation, please provide the file.
[return = YES | Esc = NO]

in the second terminal, the previous cat returned, then:
# ln -s tube link.2.dar
# cat < repo/demo.2.dar > tube

back in the first terminal,hitting return again
Continuing...
link.3.dar is required for further operation, please provide the file.
[return = YES | Esc = NO]

in the second terminal:
# ln -s tube link.3.dar
# cat < repo/demo.3.dar > tube

last in the first terminal, hitting return a last time
Continuing...


 --------------------------------------------
 2339 item(s) treated
 0 item(s) with error
 0 item(s) ignored (excluded by filters)
 --------------------------------------------
 Total number of items considered: 2339
 --------------------------------------------



> 
>     expected in a couple of weeks, and is already available in 2.7.6.RC2 at
>     https://dar.edrusb.org/dar.linux.free.fr/Interim_releases/ 
> 
> 
> Here is nothing

once a release has been done (2.7.6 here), the release candidates
packages are not kept, they are provided waiting for the non regression
tests to complete in the meanwhile the release occurs.

You should now find there the 2.7.7.RC1 source package

>[...]
> 
> 
>     provide the digit after the dot, I have fixed that also in 2.7.6.RC2.
> 
>     all is in 2.7.6.RC2 (see above to get it).
> 
>     If this works for you I will update the FAQ to present/resurrect the
>     alternative to dar_split by mean of symlinks, pause and
>     sequential-read.
> 
> 
> Unfortunately I am lost.. I tried to use only one fle (not split)
> 
> dar_static_2.7.6_x86_64_GNU_Linux -c - -R /home/skoda |dar_split
> split_output /dev/nst0
> 
> 
>  mt -f /dev/nst0 rewind
> 
> 
> ln -s /dev/nst0 mytest.1.dar

I don't follow what you are doing, previously you used a multi-sliced
backup each slice on a different tape. In that you need symlinks to
provide different filenames dar is searching for each slice.

But if you use dar_split (and this no slicing), you don't need any
symlink just dar-split at reading time. These a two different/opposite
methods.

> 
> dar_static_2.7.6_x86_64_GNU_Linux -l mytest -0

the correct way to read your backup if using dar_split to create it is:

dar_split split_input /dev/nst0 | dar -l - --sequential-read

as described in dar_split man page.

> 
> 
[...]

Cheers,
Denis
OpenPGP_signature (application/pgp-signature, 840 B) - not displayed