I am hoping that someone can help me with my growisofs problem.  It's not 
really a Debian problem, but the author:
http://fy.chalmers.se/~appro/linux/DVD+RW/
suggests I start here anyway.

I have a (relatively new) server that we used to run Solaris 10 update 7 on.  
On this system, we would perform backups of certain log files every day to DVD. 
 For this, we used:

growisofs -Z /dev/rdsk/c0t0d0s0 -R -f <files>

for the first write, and

growisofs -M /dev/rdsk/c0t0d0s0 -R -f <files>

For subsequent writes.  We never had to eject the tray until we were ready to 
take it out, which is good, because there is no way to automatically reload the 
tray once it has ejected on this server, as on most servers.  It worked 
swimmingly, as it always had on our other systems.  For reference, on Solaris 
10 we were using growisofs 7.1, and mkisofs 2.0.1.

Now we are in the process of moving to Red Hat 6.6.  I don't think there's 
anything special about Red Hat, as I was able to duplicate the problem on 
Slackware 14.1, but that's the system we are trying to work with.  Since I'd 
heard about troubles with the 'genisoimage' program that ships with Red Hat 
(and Debian, and Ubuntu), I went ahead and downloaded a cdrtools RPM from this 
helpful fellow:
http://negativo17.org/cdrtools/
and I also removed the 'fake' cdrtools that comes with Red Hat, just to be 
safe.  So, now we are using Red Hat with a kernel of:
Linux 2.6.32-504.8.1.el6.x86_64

Mkisofs is:
mkisofs 3.01a27 (x86_64-unknown-linux-gnu) Copyright (C) 1993-1997 Eric 
Youngdale (C) 1997-2015 Joerg Schilling

Growisofs is:
* growisofs by <ap...@fy.chalmers.se>, version 7.1,
  front-ending to mkisofs: mkisofs 3.01a27 (x86_64-unknown-linux-gnu) Copyright 
(C) 1993-1997 Eric Youngdale (C) 1997-2015 Joerg Schilling

And, in case you were curious, cdrecord is:
Cdrecord-ProDVD-ProBD-Clone 3.01a27 (x86_64-unknown-linux-gnu) Copyright (C) 
1995-2015 Joerg Schilling

The DVD drive in question is reported by cdrecord -scanbus as:
'Optiarc ' 'BD RW BD-5750H  ' '1.00' Removable CD-ROM

Unfortunately I cannot confirm this by physically inspecting the drive as I 
can't do so with the server where it is right now.  But, like I said, it worked 
on Solaris 10 update 7, so it can't be TOO alien.

The physical media are JVC DVD-R 16X discs, off a big ol' spindle that says 
'For Professional Use.'  I don't think they would have a case if I used them in 
an unprofessional capacity.  We use these media specifically because we have 
never had a problem with them and, as I said, the same media work fine on 
Solaris 10.

Volume management (or autofs) is not running, and all commands are run as root.

Here is how the disk looks to dvd+rw-mediainfo before I write anything to it:
INQUIRY:                [Optiarc ][BD RW BD-5750H  ][1.00]
GET [CURRENT] CONFIGURATION:
Mounted Media:         11h, DVD-R Sequential
Media ID:               TYG03
 Current Write Speed:   8.0x1385=11080KB/s
Write Speed #0:        6.0x1385=8310KB/s
Write Speed #1:        4.0x1385=5540KB/s
Write Speed #2:        2.0x1385=2770KB/s
Write Speed #3:        8.0x1385=11080KB/s
Speed Descriptor#0:    09/2298495 R@8.0x1385=11080KB/s W@8.0x1385=11080KB/s
Speed Descriptor#1:    00/2298495 R@8.0x1385=11080KB/s W@6.0x1385=8310KB/s
Speed Descriptor#2:    00/2298495 R@4.0x1385=5540KB/s W@4.0x1385=5540KB/s
Speed Descriptor#3:    00/2298495 R@2.5x1385=3463KB/s W@2.0x1385=2770KB/s
READ DVD STRUCTURE[#10h]:
Media Book Type:       00h, DVD-ROM book [revision 0]
Legacy lead-out at:    2298496*2KB=4707319808
READ DVD STRUCTURE[#0h]:
Media Book Type:       25h, DVD-R book [revision 5]
Last border-out at:    0*2KB=0
READ DISC INFORMATION:
Disc status:           blank
Number of Sessions:    1
State of Last Session: empty
"Next" Track:          1
Number of Tracks:      1
READ TRACK INFORMATION[#1]:
Track State:           invisible incremental
Track Start Address:   0*2KB
Next Writable Address: 0*2KB
Free Blocks:           2297888*2KB
Track Size:            2297888*2KB
READ CAPACITY:          0*2048=0

Looks blank to me!  The only problem I can see with the way we write to DVD is 
I now have to tell growisofs not to eject the tray.  I write the first session 
like so:
growisofs -Z /dev/sr0 -use-the-force-luke=notray -R -f 
file1file1file1_REDHAT.txt file2file2file2_REDHAT.txt file3file3file3_REDHAT.txt
Executing 'mkisofs -R -f file1file1file1_REDHAT.txt file2file2file2_REDHAT.txt 
file3file3file3_REDHAT.txt | builtin_dd of=/dev/sr0 obs=32k seek=0'
Setting input-charset to 'UTF-8' from locale.
Total translation table size: 0
Total rockridge attributes bytes: 503
Total directory bytes: 0
Path table size(bytes): 10
Max brk space used 0
178 extents written (0 MB)
/dev/sr0: "Current Write Speed" is 8.2x1352KBps.
builtin_dd: 192*2KB out @ average infx1352KBps
/dev/sr0: flushing cache
/dev/sr0: updating RMA
/dev/sr0: closing session

Other than using a Linux-style block device, this is how it has always looked.  
Now I will try to mount the media:
mount -o ro /dev/sr0 -t iso9660 /media/
mount: wrong fs type, bad option, bad superblock on /dev/sr0,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

Nice!  If I leave off the filesystem type, it complains, although it does not 
require a filesystem type at any other time.  Here is what dvd+rw-mediainfo 
says:
GET [CURRENT] CONFIGURATION:
Mounted Media:         11h, DVD-R Sequential
Media ID:               TYG03
 Current Write Speed:   8.0x1385=11080KB/s
Write Speed #0:        6.0x1385=8310KB/s
Write Speed #1:        4.0x1385=5540KB/s
Write Speed #2:        2.0x1385=2770KB/s
Write Speed #3:        8.0x1385=11080KB/s
Speed Descriptor#0:    09/2298495 R@8.0x1385=11080KB/s W@8.0x1385=11080KB/s
Speed Descriptor#1:    00/2298495 R@8.0x1385=11080KB/s W@6.0x1385=8310KB/s
Speed Descriptor#2:    00/2298495 R@4.0x1385=5540KB/s W@4.0x1385=5540KB/s
Speed Descriptor#3:    00/2298495 R@2.5x1385=3463KB/s W@2.0x1385=2770KB/s
READ DVD STRUCTURE[#10h]:
Media Book Type:       00h, DVD-ROM book [revision 0]
Legacy lead-out at:    2298496*2KB=4707319808
READ DVD STRUCTURE[#0h]:
Media Book Type:       25h, DVD-R book [revision 5]
Last border-out at:    0*2KB=0
READ DISC INFORMATION:
Disc status:           appendable
Number of Sessions:    2
State of Last Session: empty
"Next" Track:          2
Number of Tracks:      2
READ TRACK INFORMATION[#1]:
Track State:           complete incremental
Track Start Address:   0*2KB
Free Blocks:           0*2KB
Track Size:            65264*2KB
Last Recorded Address: 191*2KB
READ TRACK INFORMATION[#2]:
Track State:           invisible incremental
Track Start Address:   93952*2KB
Next Writable Address: 93952*2KB
Free Blocks:           2203936*2KB
Track Size:            2203936*2KB
FABRICATED TOC:
Track#1  :             14@0
Track#AA :             14@192
Multi-session Info:    #1@0
READ CAPACITY:          192*2048=393216

It sure does look like it can see it!  But I can't mount the disc.  If I now 
eject the disc, and re-load the tray, I can mount it just fine, and see the 
files on it.  Dvd+rw-mediainfo reports exactly the same information it did 
before I reloaded the tray.  I will now write a second session to the disc:
growisofs -use-the-force-luke=notray -M /dev/sr0 -R file4file4file4_REDHAT.txt 
file5file5file5_REDHAT.txt file6file6file6_REDHAT.txt
Executing 'mkisofs -C 16,93952 -M /dev/fd/3 -R file4file4file4_REDHAT.txt 
file5file5file5_REDHAT.txt file6file6file6_REDHAT.txt | builtin_dd of=/dev/sr0 
obs=32k seek=5872'
Setting input-charset to 'UTF-8' from locale.
ISO-9660 image includes checksum signature for correct inode numbers.
SUSP signatures version 1 found
Rock Ridge signatures version 1 found
Rock Ridge id 'RRIP_1991A'
Total translation table size: 0
Total rockridge attributes bytes: 821
Total directory bytes: 0
Path table size(bytes): 10
Max brk space used 0
178 extents written (0 MB)
/dev/sr0: "Current Write Speed" is 8.2x1352KBps.
builtin_dd: 192*2KB out @ average infx1352KBps
/dev/sr0: flushing cache
/dev/sr0: updating RMA
/dev/sr0: closing session

I can now mount the media with:
mount /dev/sr0 /media

But I can only see the first session on the disk (i.e., file1, file2, and 
file3, but not file4, file5, or file6).  If I perform a dvd+rw-mediainfo, I get:
INQUIRY:                [Optiarc ][BD RW BD-5750H  ][1.00]
GET [CURRENT] CONFIGURATION:
Mounted Media:         11h, DVD-R Sequential
Media ID:               TYG03
 Current Write Speed:   8.0x1385=11080KB/s
Write Speed #0:        6.0x1385=8310KB/s
Write Speed #1:        4.0x1385=5540KB/s
Write Speed #2:        2.0x1385=2770KB/s
Write Speed #3:        8.0x1385=11080KB/s
Speed Descriptor#0:    09/2298495 R@8.0x1385=11080KB/s W@8.0x1385=11080KB/s
Speed Descriptor#1:    00/2298495 R@8.0x1385=11080KB/s W@6.0x1385=8310KB/s
Speed Descriptor#2:    00/2298495 R@4.0x1385=5540KB/s W@4.0x1385=5540KB/s
Speed Descriptor#3:    00/2298495 R@2.5x1385=3463KB/s W@2.0x1385=2770KB/s
READ DVD STRUCTURE[#10h]:
Media Book Type:       00h, DVD-ROM book [revision 0]
Legacy lead-out at:    2298496*2KB=4707319808
READ DVD STRUCTURE[#0h]:
Media Book Type:       25h, DVD-R book [revision 5]
Last border-out at:    0*2KB=0
READ DISC INFORMATION:
Disc status:           appendable
Number of Sessions:    3
State of Last Session: empty
"Next" Track:          3
Number of Tracks:      3
READ TRACK INFORMATION[#1]:
Track State:           complete incremental
Track Start Address:   0*2KB
Free Blocks:           0*2KB
Track Size:            65264*2KB
Last Recorded Address: 191*2KB
READ TRACK INFORMATION[#2]:
Track State:           complete incremental
Track Start Address:   93952*2KB
Free Blocks:           0*2KB
Track Size:            192*2KB
Last Recorded Address: 94143*2KB
READ TRACK INFORMATION[#3]:
Track State:           invisible incremental
Track Start Address:   100304*2KB
Next Writable Address: 100304*2KB
Free Blocks:           2197584*2KB
Track Size:            2197584*2KB
FABRICATED TOC:
Track#1  :             14@0
Track#2  :             14@93952
Track#AA :             14@94144
Multi-session Info:    #2@93952
READ CAPACITY:          94144*2048=192806912

dvd+rw-mediainfo "knows" that I wrote a new track, but I can't see the new data 
when I mount the disk.  If I eject the disc and re-load the tray, I can see the 
data just fine.

So, I can't write a multisession DVD on Linux without reloading the tray, 
though I could on Solaris 10.  This problem does not appear on all drives, but 
it does on two of the three systems we have tested it on.  I have tried:
blockdev --flushbufs --rereadpt /dev/sr0

and I have tried writing a C program that does an:
ioctl(fd, CDROMRESET)

and I have tried:
cdrecord -reset dev=0,0,0

All to no avail.  I had read that this was a problem with kernels older than 
2.6.8, but we are using 2.6.32, and anyway, I can repeat the problem on 
Slackware using kernel 3.10.17.  Am I missing something?

Any help is appreciated.

Thanks,
-Eric J. Richardson

Reply via email to