Hi. It turns out that I'd overlooked relevant sections in the documentation ("Linux Notes" in Chapter 4) and there is (or at least was) a way to use ATAPI interface. Still it doesn't work for me, and (thanks to Joerg pointing that out to us) it can be seen as a minor bug in wodim --- because it says, albeit in somewhat nondeterminate language, in its manpage wodim (1) that ==== To access SCSI devices via alternate transport layers, you need to prepend the SCSI device name by a transport layer indicator. The transport layer indicator may be something like USCSI: or ATAPI:. ====
However, there is nothing about SCSI at all in /usr/share/doc/wodim/README.ATAPI.setup, the fact which led me to the erroneous impression that there is no way to configure Cedar Backup to use ATAPI recorder interface. Consider the following as well: if there is more than one recorders on the system, it's perfectly clear which one you're referring to when you pass dev=/dev/cdrw where /dev/cdrw points to correct recorder device, rather than mysterious dev=ATAPI:0,1,0 for example. The first way makes much more sense. > I'm open to allowing other ways to specify the writer device. > However, I am not completely convinced (yet) that the right way to > solve the problem is to make the SCSI id optional. I may instead > provide some other way to flag the condition. Let me give it some > thought and do some testing on my own. > > What kernel are you using -- a stock Debian one, or one you built > yourself? If it's a stock Debian 2.6 kernel, that's great, because I > should be able to reproduce your situation and do direct testing. I use a custom-built kernel. Tell me if you want the complete config for it or just relevant options and I'll send it to you. > Incidentally, the regression tests are likely failing now because > you've caused a fundamental assumption to be broken, i.e. that every > configuration has a SCSI device associated with it. Any changes like > this ripple through the regression test suite, which is exactly what I > want to happen. :) I also had broken the code --- if you set scsi_id tag it'll fail. I'm just not accustomed to interpreted languages. The following additional patch should make it work the way it did when the tag is present (though I didn't test it), and it reduces the number of failed unittests to only about a dozen. Index: config.py =================================================================== --- config.py (revision 1011) +++ config.py (working copy) @@ -2743,7 +2743,7 @@ if value is None: self._deviceScsiId = None else: - self._deviceScsiId = validateScsiId(value) + self._deviceScsiId = validateScsiId(value, None) def _getDeviceScsiId(self): """ Index: image.py =================================================================== --- image.py (revision 1011) +++ image.py (working copy) @@ -200,7 +200,7 @@ if os.path.isabs(value): self._device = value else: - self._device = validateScsiId(value) + self._device = validateScsiId(value, None) except ValueError: raise ValueError("Device must either be an absolute path or a valid SCSI id.") Of course, it's only a temporary fix. -- --- Dmitry Rutsky -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]