[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Problem with growisofs -- cannot write multisession DVDs without ejecting and reloading tray



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 <appro@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 to: