Stop Microsoft
Miscellaneous => Technical Support => Topic started by: H_TeXMeX_H on 20 May 2006, 05:12
-
I've had lots of trouble burning CDs properly (mostly CD-Rs using cdrecord). Is there a way to list the possible supported speeds for a particular drive ? It seems I may have been trying to burn at way over the supported speed. The CDs come out seemingly ok, but upon inspection by md5sum they are either corrupt or I get input/output error (again corrupt).
-
I've had lots of trouble burning CDs properly (mostly CD-Rs using cdrecord). Is there a way to list the possible supported speeds for a particular drive ? It seems I may have been trying to burn at way over the supported speed. The CDs come out seemingly ok, but upon inspection by md5sum they are either corrupt or I get input/output error (again corrupt).
Isn't it written on the drive? Usually the drive has 3 numbers like 40x/12x/48x. The first is the burn speed. The second is the speed in packet writing mode (if you use a cdrw like a big floppy disk instead of an erasable cdr), the third is the read speed. If it's not written on the drive, you can get the model number easily enough of your linux boot sequence or bios messages and look it up on the web.
You can get corrupted media if you try to burn media faster than its rated speed. It's a simple thing, but did you check the CD blanks?
But one thing to remember... burns are more reliable if you slow them down, no matter how fast a drive you have.
-
Try using k3b (seriously, it's good). When you go to record, there's a drop-down box for speeds, and right next to it, there's a button that removes all non-supported speeds from the list.
Personally I've never used my desktop burner's full speed (52x). I use 40x. Not just for the sake of reliability, but also because 52x is fucking LOUD.
-
Yeah, I've used frontends for cdrecord ... like k3b and others, but how do they get the speeds ? I wanna know how to do this in command line. I think my drive supports at least 40x but it never burns that fast, fastest I can burn is 4x ... maybe I need new firmware ? I'll try ... assuming I can find a way to update the firmware.
-
Yeah, I've used frontends for cdrecord ... like k3b and others, but how do they get the speeds ? I wanna know how to do this in command line. I think my drive supports at least 40x but it never burns that fast, fastest I can burn is 4x ... maybe I need new firmware ? I'll try ... assuming I can find a way to update the firmware.
4x is very slow. You should not have any reliability problems at that speed.
Just what kind of drive is this?
If it is an external USB drive plugged into a USB 1.1 port, you are bandwidth limited to 4x and unless you manually set it to burn at 4x it can possibly foul things up.
If it is an internal IDE drive, are you using SCSI emulation? That's really the way to go.
-
It's this one:
http://pcworld.about.com/news/Jun212002id102077.htm (http://pcworld.about.com/news/Jun212002id102077.htm)
1,1,0 101) 'ASUS ' 'CRW-4012A ' '1.0 ' Removable CD-ROM
40X/12X/48X
Still, I can ony safely burn at 4x :(
-
Bah. Get some patience. I burn DVDs at 2x...and do I complain? Rarely. :D
-
Ok, so it's an IDE/ATAPI drive, but are you using SCSI emulation? I tried getting my ATAPI CD burner to work without SCSI emulation just to see how well the drivers worked, and everything was corrupted.
Here is a link with some good instructions to setting up SCSI emulation. http://www-128.ibm.com/developerworks/linux/library/l-cdburn.html
Only thing it doesn't mention is resetting your /dev/cdrom symbolic links and /etc/fstab...
Also, is your IDE controller using bus mastering on this drive? You can check it with hdparm.
-
Here's the output of cdrecord -scanbus:
[Drax@knoppix ~]$ cdrecord -scanbus
Cdrecord-Clone 2.01.01a03-dvd (i686-pc-linux-gnu) Copyright (C) 1995-2005 J
-
[root@hariel mobrien]# /sbin/hdparm /dev/hdc
/dev/hdc:
IO_support = 0 (default 16-bit)
unmaskirq = 0 (off)
using_dma = 1 (on)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 256 (on)
HDIO_GETGEO failed: Inappropriate ioctl for device
The "using_dma" is what you are looking for.
You are apparently not using SCSI emulation. Kernel 2.6 is supposed to have a much better ATAPI support, but I have never tried it. SCSI emulation is much more mature... and when you consider that ATAPI is essentially SCSI over the ATA interface anyway, it makes perfect sense.
If you are having problems, why don't you try SCSI emulation and see if it solves your problem?
-
Here is hdparm output:
[Drax@knoppix ~]$ /sbin/hdparm /dev/cdwriter
/dev/cdwriter:
IO_support = 0 (default 16-bit)
unmaskirq = 0 (off)
using_dma = 1 (on)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 256 (on)
HDIO_GETGEO failed: Inappropriate ioctl for device
[Drax@knoppix ~]$
How do you use SCSI emulation ?
-
To use scsi emulation, assuming your burner is on /dev/hdc.
Edit your grub.conf file.
Copy your linux entry. Call the copy something different, like linuxscsi.
Add an entry at the end of the kernel line saying
hdc=scsi
Reboot and use the new entry. Your burner is no longer accessable under /dev/hdc at all. Instead, it is accessible as /dev/scd0. Reset your /dev/cdwriter symlink appropriately.
-
Ugh. SCSI emulation over IDE, that's just unholy. Luckily for me, I don't need any emulation.
-
Ugh. SCSI emulation over IDE, that's just unholy. Luckily for me, I don't need any emulation.
As I said before, the whole ATAPI specification is already essentially SCSI over IDE.
The only emulation that's going on is the way the kernel interfaces with the drive.
There's nothing unholy or unnatural about it.
The new kernel 2.6 drivers which allow you to avoid the ide-scsi really only offer convenience in setup.
-
Well it don't work ... the writer drive is hdd and I put hdd=scsi in the kernel line, and hdd dissapeared, but /dev/scd0 did not appear :(
-
Well it don't work ... the writer drive is hdd and I put hdd=scsi in the kernel line, and hdd dissapeared, but /dev/scd0 did not appear :(
hmm... ok.
Check to see if the ide-scsi kernel module is loaded. Maybe it is not loading automatically.
/sbin/lsmod |grep "ide-scsi"
if not,
modprobe ide-scsi
If that brings up /dev/scd0 and it solves your burning problems, then we just need to make it autoload.
You can also check the status of the scsi system by ls /proc/scsi
-
Hmmm ... it partly works (/dev/scd0 appears), but I get a hard system crash while trying to burn anything like that. Well I suppose it doesn't matter, burning at 4x is not that bad.
-
Something is very strange with that drive.
-
hdc=scsi
I believe it's hdc=ide-scsi
I didn't even know that until I noticed it written on my desk today (I really should get some post-it note things) - I used to need it ages ago, think I wrote it down when I gave Gentoo a try.
-
That's for LILO's append=
-
I found it, now I know how to burn a CD properly (I found it earlier, but today I got a chance to test it burning FreeSBIE (http://www.freesbie.org/)), I used the ps command to find out how nautilus cd burner did it and used it myself.
cdrecord fs=16m speed=4 dev=/dev/hdd -dao driveropts=burnfree -v -data -nopad /path/file.iso
I wonder which one of the extra options did it, I don't see why there have to be so many just to burn a CD properly ... growisofs work great for DVDs with much simpler options
-
Interesting to see that others have had this problem too. In FreeBSD, the cdrecord/mkisofs/etc have had problems in the past detecting the proper speeds of my DVD burner. I had to pass command line arguments to mkisofs via k3b's advanced settings to get burning to work properly.
Like linux, in FreeBSD ATAPI > SCSI emulation is required to burn CD's, only it's looks like it's much simpler to get working. You just load the 'cam' kernel module and go.