|
| Underligt problem med CD-ROM under Linux Fra : Peter Mogensen |
Dato : 30-06-03 23:44 |
|
Hej,
Jeg har et underligt problem med CD-ROM drev på min Linux.
Dette indlæg er på engelsk, da jeg oprindeligt har postet det på
c.o.l.help. Håber ikke det gør noget.
Måske nogen her har en ide.
Oprindeligt indlæg:
========================================================
I've having problems with my new CD-burner (AOpen 2440).
My system is a SOYO K7V Dragon plus with Mandrake 8.2 and a custom
compiled 2.4.19 kernel.
I've used CD-R on linux many times before, so this comes as a bit of a
surprise to me. Everything (burning and all) seemed to work great until
I decided to verify the CD with:
$ md5sum /dev/scd0
... which produced:
md5sum: /dev/scd0: Input/output error
I tried:
$ cat /dev/scd0 > image.iso
same result.
I moved the disc to my other drive:
$ cat /dev/cdrom > image2.iso
same result, but the two files were not the same size.
Hmm.. looking at the log I see things like:
Jun 30 23:01:43 glaurung kernel: I/O error: dev 0b:00, sector 1332336
Jun 30 23:12:07 glaurung kernel: I/O error: dev 0b:00, sector 1332336
....
Jun 30 23:29:15 glaurung kernel: hdd: command error: status=0x51 {
DriveReady SeekComplete Error }
Jun 30 23:29:15 glaurung kernel: hdd: command error: error=0x54
Jun 30 23:29:15 glaurung kernel: end_request: I/O error, dev 16:40
(hdd), sector 1332248
....
Jul 1 00:09:26 glaurung kernel: hdd: timeout waiting for DMA
Jul 1 00:09:26 glaurung kernel: ide_dmaproc: chipset supported
ide_dma_timeout
func only: 14
Jul 1 00:09:50 glaurung kernel: hdd: command error: status=0x51 {
DriveReady Se
ekComplete Error }
Jul 1 00:09:50 glaurung kernel: hdd: command error: error=0x54
Jul 1 00:09:50 glaurung kernel: end_request: I/O error, dev 16:40
(hdd), sector
1044828
Jul 1 00:10:20 glaurung kernel: hdd: timeout waiting for DMA
Jul 1 00:10:20 glaurung kernel: ide_dmaproc: chipset supported
ide_dma_timeout
func only: 14
Jul 1 00:21:07 glaurung kernel: hdd: command error: status=0x51 {
DriveReady Se
ekComplete Error }
Jul 1 00:21:07 glaurung kernel: hdd: command error: error=0x54
Jul 1 00:21:07 glaurung kernel: end_request: I/O error, dev 16:40
(hdd), sector
1261448
Hmm... Ok. My first guesses are now:
- CD-image too big.
- bad medias.
- problems with DMA
- too long cables (unlikely since the cables I use came with my SOYO K7V
Dragon+)
I try a different media (first was Fujitsu/Siemens .. now KODAK).
Same result.
I try an old CD which I've burned long ago on a working CD-burner.
Same result.
I do a little googling and get confirmed that these are among the options.
I try a smaller CD-image: Mandrake91-cd1-inst.i586.iso
(the first was a little larger than 650Mb)
Same result.
I find an advice that I should enable CONFIG_IDEDISK_MULTI_MODE=y
.... I already have that.
Ok.. I try checking every file individually to find out how bad the
problem is:
$ mount /dev/cdrom mnt1
$ mount -o loop Mandrake91-cd1-inst.i586.iso mnt2
$ find mnt1 -exec md5sum {} >> sums1 \;
$ find mnt2 -exec md5sum {} >> sums2 \;
$ diff sums2 sums2
... They are identical!
What is happening ?!?
DMA?
Kernel?
Other?
.... Ideas?
thanx,
Peter
| |
Mogens Kjaer (01-07-2003)
| Kommentar Fra : Mogens Kjaer |
Dato : 01-07-03 06:40 |
|
Peter Mogensen wrote:
....
> $ cat /dev/scd0 > image.iso
....
Det er vist ikke den rigtige måde at gøre dette på.
Jeg ville køre isosize på /dev/scd0 først, dele
tallet med 2048, og så lave en:
dd if=/dev/scd0 of=image.iso bs=2048 count=tallet
Prøv det på forskellige drev, og lav md5sum på image.iso
bagefter. Er de forskellige, må du mounte cd'en, og så
lave en:
cd /mnt/cdrom
find . -type f -exec md5sum {} \; >/tmp/log1
Du kan evt. loopmounte den iso fil, du brugte til
at brænde efter, og køre samme find på den, og
sammenlign outputtet.
Mogens
--
Mogens Kjaer, Carlsberg A/S, Computer Department
Gamle Carlsberg Vej 10, DK-2500 Valby, Denmark
Phone: +45 33 27 53 25, Fax: +45 33 27 47 08
Email: mk@crc.dk Homepage: http://www.crc.dk
| |
Peter Mogensen (01-07-2003)
| Kommentar Fra : Peter Mogensen |
Dato : 01-07-03 10:14 |
|
Mogens Kjaer wrote:
> Peter Mogensen wrote:
> ...
>
>> $ cat /dev/scd0 > image.iso
>
> ...
>
> Det er vist ikke den rigtige måde at gøre dette på.
>
> Jeg ville køre isosize på /dev/scd0 først, dele
> tallet med 2048, og så lave en:
>
> dd if=/dev/scd0 of=image.iso bs=2048 count=tallet
Det prøvede jeg iøvrigt også... samme resultat :(
Peter
| |
Mogens Kjaer (01-07-2003)
| Kommentar Fra : Mogens Kjaer |
Dato : 01-07-03 10:17 |
|
Peter Mogensen wrote:
....
> Det prøvede jeg iøvrigt også... samme resultat :(
Hvad så med at teste de enkelte filer vha. find/md5sum?
Mogens
--
Mogens Kjaer, Carlsberg A/S, Computer Department
Gamle Carlsberg Vej 10, DK-2500 Valby, Denmark
Phone: +45 33 27 53 25, Fax: +45 33 27 47 08
Email: mk@crc.dk Homepage: http://www.crc.dk
| |
Peter Mogensen (01-07-2003)
| Kommentar Fra : Peter Mogensen |
Dato : 01-07-03 11:16 |
|
Mogens Kjaer wrote:
> Peter Mogensen wrote:
> ...
>
>> Det prøvede jeg iøvrigt også... samme resultat :(
>
>
> Hvad så med at teste de enkelte filer vha. find/md5sum?
>
Det var det jeg prøvede... se mit oprindelige indlæg.
I det tilfælde er alle filerne ok.
Det beroliger mig dog ikke. Jeg plejer at kunne læse hele devicet i et
huk... Hvad går der galt.
Peter
| |
Mogens Kjaer (01-07-2003)
| Kommentar Fra : Mogens Kjaer |
Dato : 01-07-03 12:47 |
|
Peter Mogensen wrote:
> Mogens Kjaer wrote:
>
>> Peter Mogensen wrote:
>> ...
>>
>>> Det prøvede jeg iøvrigt også... samme resultat :(
>>
>>
>>
>> Hvad så med at teste de enkelte filer vha. find/md5sum?
>>
>
>
> Det var det jeg prøvede... se mit oprindelige indlæg.
> I det tilfælde er alle filerne ok.
Ups, den missede jeg.
>
> Det beroliger mig dog ikke. Jeg plejer at kunne læse hele devicet i et
> huk... Hvad går der galt.
Hvordan passer den sector, den logger fejl på i logfilen,
med længden af cd'en (som isosize skriver)?
Jeg har i øvrigt engang oplevet, at linux logger fejl,
når man læser sidste del af cd'en, fordi kernen læser
i forvejen og kommer ud over kanten af imaget. -pad
til cdrecord løste dette problem, så blev der brændt
nogle nullbytes til sidst.
Mogens
--
Mogens Kjaer, Carlsberg A/S, Computer Department
Gamle Carlsberg Vej 10, DK-2500 Valby, Denmark
Phone: +45 33 27 53 25, Fax: +45 33 27 47 08
Email: mk@crc.dk Homepage: http://www.crc.dk
| |
Peter Mogensen (01-07-2003)
| Kommentar Fra : Peter Mogensen |
Dato : 01-07-03 12:51 |
|
Mogens Kjaer wrote:
> Hvordan passer den sector, den logger fejl på i logfilen,
> med længden af cd'en (som isosize skriver)?
Det må jeg lige undersøge...
> Jeg har i øvrigt engang oplevet, at linux logger fejl,
> når man læser sidste del af cd'en, fordi kernen læser
> i forvejen og kommer ud over kanten af imaget. -pad
> til cdrecord løste dette problem, så blev der brændt
> nogle nullbytes til sidst.
Tjae... men jeg har også problemet når jeg forsøger at
cat /dev/cdrom > fil
med en trykt CD i mit DVD-drev.
Såå?
*forvirret*
Peter
| |
Mogens Kjaer (01-07-2003)
| Kommentar Fra : Mogens Kjaer |
Dato : 01-07-03 13:09 |
|
Peter Mogensen wrote:
....
> Tjae... men jeg har også problemet når jeg forsøger at
>
> cat /dev/cdrom > fil
Hvad skriver isosize om den cd?
Hvormeget bliver rent faktisk kopieret over, hvis du kopierer
med dd?
Mogens
--
Mogens Kjaer, Carlsberg A/S, Computer Department
Gamle Carlsberg Vej 10, DK-2500 Valby, Denmark
Phone: +45 33 27 53 25, Fax: +45 33 27 47 08
Email: mk@crc.dk Homepage: http://www.crc.dk
| |
Peter Mogensen (01-07-2003)
| Kommentar Fra : Peter Mogensen |
Dato : 01-07-03 13:43 |
|
Mogens Kjaer wrote:
> Peter Mogensen wrote:
> ...
>
>> Tjae... men jeg har også problemet når jeg forsøger at
>>
>> cat /dev/cdrom > fil
>
>
> Hvad skriver isosize om den cd?
>
> Hvormeget bliver rent faktisk kopieret over, hvis du kopierer
> med dd?
Jeg har ikke lige isosize på min maskine, men jeg går ud fra dette er
tilsvarende:
[root@glaurung usr]# isoinfo -d -i /dev/cdrom
CD-ROM is in ISO 9660 format
System id:
Volume id: SUPREME
Volume set id:
Publisher id:
Data preparer id:
Application id: NERO___BURNING_ROM
Copyright File id:
Abstract File id:
Bibliographic File id:
Volume set size is: 1
Volume set seqence number is: 1
Logical block size is: 2048
Volume size is: 55959
Joliet with UCS level 3 found
NO Rock Ridge present
[root@glaurung usr]# dd if=/dev/cdrom bs=2k count=55959 of=image
dd: reading `/dev/cdrom': Input/output error
55908+0 records in
55908+0 records out
Peter
| |
Peter Mogensen (01-07-2003)
| Kommentar Fra : Peter Mogensen |
Dato : 01-07-03 19:10 |
| | |
Peter Mogensen (01-07-2003)
| Kommentar Fra : Peter Mogensen |
Dato : 01-07-03 19:40 |
| | |
Peter Mogensen (01-07-2003)
| Kommentar Fra : Peter Mogensen |
Dato : 01-07-03 19:42 |
| | |
Mogens Kjaer (02-07-2003)
| Kommentar Fra : Mogens Kjaer |
Dato : 02-07-03 06:32 |
|
Peter Mogensen wrote:
....
> Dette kommer meget tæt på mit problem:
> http://www.cs.helsinki.fi/linux/linux-kernel/2002-18/0059.html
>
"Printed CD-Rs never show any error." står der. Gælder dette også dig?
Kører drevet med DMA?
Mogens
--
Mogens Kjaer, Carlsberg A/S, Computer Department
Gamle Carlsberg Vej 10, DK-2500 Valby, Denmark
Phone: +45 33 27 53 25, Fax: +45 33 27 47 08
Email: mk@crc.dk Homepage: http://www.crc.dk
| |
Peter Mogensen (02-07-2003)
| Kommentar Fra : Peter Mogensen |
Dato : 02-07-03 11:26 |
|
Mogens Kjaer wrote:
> Peter Mogensen wrote:
> ...
>
>> Dette kommer meget tæt på mit problem:
>> http://www.cs.helsinki.fi/linux/linux-kernel/2002-18/0059.html
>>
>
> "Printed CD-Rs never show any error." står der. Gælder dette også dig?
Næe.. jeg har ihvertfald 1 printet CD, der giver fejl. Både i min
brænder og i mit DVD-drev. Fejlmeddelelsen er dog lidt forskellig i
loggen da brænderen kører via ide_scsi.
Jeg prøvede lige en af mine brændte CD'er på kærestens maskine (Mandrake
9.0) og der er samme problem med at læse dem.
> Kører drevet med DMA?
Ja... men nu har jeg slået det fra og problemet er der stadig.
Tilgengæld har jeg efterhånden testet alle de CD'er jeg har brændt med
md5sum og hvis jeg læser hver enkel fil alene ser der ikke ud til at
være nogen problemer.
Det kunne godt tyde på at det er kernen, der kommer til at læse for
meget på disken da den ikke kan finde slutningen.
Jeg mener jeg så et sted at Alan Cox havde sagt at ældre kerner havde en
funktion, der opdagede dette og undlod at komme med en fejl, men at
det tydeligvis var forsvundet.
.... han sagde vist også at han var glad for at han ikke var 2.4
maintainer, for det virkede i 2.2. :)
Peter
| |
|
|