After taking a look at the manual again, I don't think there is any need to 
change anything. This problem is *very* clearly explained in the section that 
describes "Archive device = ..." for the Storage daemon conf file.  I suppose 
I could possibly add a warning in the installation section, but the manual is 
already quite large :-)

On Tuesday 11 April 2006 15:57, Kern Sibbald wrote:
> On Tuesday 11 April 2006 13:14, Gabriele Bulfon wrote:
> > Maybe this is a silly discovery, but I did not find any writing about it
> > anywhere, so I'm sending you the solution. Maybe would be nice to have a
> > mention on the pdf documentation. Running Bacula on Solaris : you HAVE to
> > use the "b" device on tapes! Read the Solaris 10 mtio man page extract:
> >   Read Operation
> >      The read(2) function reads the next record on the tape.  The
> >      record size is passed back as the number of bytes read, pro-
> >      vided it is not greater than the number requested.   When  a
> >      tape  mark  or  end  of  data  is read, a zero byte count is
> >      returned; all successive reads  after  the  zero  read  will
> >      return an error and errno will be set to EIO. To move to the
> >      next file, an MTFSF ioctl can be issued before or after  the
> >      read causing the error. This error handling behavior is dif-
> >      ferent from the older BSD behavior, where another read  will
> >      fetch  the  first  record  of the next tape file. If the BSD
> >      behavior is required, device names containing the  letter  b
> >      (for BSD behavior) in the final component should be used. If
> >      persistent error handling was enabled with either the BSD or
> >      SVR4  tape  device  behavior, all operations after this read
> >      error will return EIO errors until the MTIOCLRERR  ioctl  is
> >      issued.  An MTFSF ioctl can then he issued.
>
> Yes, this *is* in the manual (in the Tape Testing chapter), but perhaps I
> could stress the /dev/rmt/0b for Solaris systems a bit more.
>
> Anyway, I am happy you found the solution ...
>
> > Now, using /dev/rmt/0b will run the tests perfectly.
> > If you use /dev/rmt/0 :
> > - Test will not work
> > - Bacula will correctly write
> > - bconsole will correctly read, because it knows exactly the file number
> > to reach, and ask the device to skip there before reading - command line
> > utilities won't work, beacuse they will fail discovery of content after
> > reaching the end of file=1 Previous tapes that I have written using
> > /dev/rmt/0 can be read through /dev/rmt/0b, but may mislead you. Trying
> > an "bls -j -v -V ..." on the old tape will show the first start of job,
> > and then come out with a lot of: 11-Apr 13:03 bls: Got EOF at file 1  on
> > device /dev/rmt/0b, Volume "THURSDAY2" 11-Apr 13:03 bls: Got EOF at file
> > 2  on device /dev/rmt/0b, Volume "THURSDAY2" ....
> > ....
> > You just have to wait. The rest of data has been written into later
> > files. Then you can create your bootstrap file and suggest bextract where
> > to position. Hope this helps,
>
> Yes, I will put this information in the manual.
>
> > Gabriele.
> > Gabriele Bulfon - Sonicle S.r.l.
> > Tel +39 028246016 Int. 30 - Fax +39 028243880
> > Via Felice Cavallotti 16 - 20089, Rozzano - Milano - ITALY
> > http://www.sonicle.com

-- 
Best regards,

Kern

  (">
  /\
  V_V


-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
Bacula-users mailing list
Bacula-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bacula-users

Reply via email to