Problemi a leggere un cd

federico collazuol blug@lists.linux.it
26 Aug 2002 21:43:55 +0200


Ciao a tutti,
spero che abbiate passato buone ferie.

Vorrei sapere se esiste qualche programma in grado di riparare un
filesystem 9660 danneggiato. (non so se danneggiato sia la parola
giusta, forse bisogna dire 'non integro'... non lo so, ditemi voi...)

Ecco cosa mi =E8 successo:

Ho masterizzato un cd sotto windows e il programma ha riportato un
errore nella creazione del cd in fase di chiusura. Ho ripetuto la
masterizzazione 2 volte, la prima a 4x, la seconda a 2x, e l'errore me
lo dava sempre allo stesso punto.
Purtroppo non avevo tempo per ripetere la masterizzazione e mi sono
dovuto tenere i cd con gli errori.
Il programma usato era questo:

bash-2.05$ isoinfo -d -i /dev/cdrom |grep -i application=20
Application id: EASY CD CREATOR 4.4 (400) COPYRIGHT (C) 1996-2001
ADAPTEC, INC.

Torno a casa e metto il cd nel masterizzatore, ma non riesco nemmeno a
montarlo: dopo un sacco di tempo che ho lanciato mount (qualche minuto,
credo), compare la scritta=20
"mount: dispositivo di blocchi/dev/cdrom1 =E8 protetto da scrittura,
montaggio in sola lettura in corso"
poi, dopo un periodo di tempo altrettanto lungo:
"mount: No medium found"

=3D=3Ddomanda=3D=3D
E' normale questo? Da cosa puo' dipendere? Non mi era mai successo
prima.

Allora passo al lettore dvd.
Riesco a montarlo apparentemente senza problemi. Ma mentre cerco di
copiare l'intero contenuto del cd, il masterizzatore fa strani rumori
(tipo qualcosa che continua ad andare avanti e indietro (non saprei
descriverli meglio)) e la lucetta sul lettore non si accende mai. Non
posso smontare il cdrom ("device occupato"), ma posso espellerlo
premendo il pulsante "eject" del lettore (il comando eject non funziona,
sempre perch=E9 umount dice che il device =E8 occupato).=20

=3D=3Ddomanda=3D=3D
La cosa mi sembra strana perch=E9 se il cdrom =E8 montato non dovrei essere
in grado di espellerlo, giusto?

Se invece non faccio niente e aspetto (parecchi minuti, direi) mi da un
errore di input/output e passa al file successivo.

Finalmente riesco a copiare quasi tutte le directory del cd montando il
cdrom e copiando directory per directory (cp -R /mnt/cdrom/dirX ~/dirX).
Sembra pero' che non riesca a leggere 2 directory in particolare, con le
quali mi da' gli stessi problemi di prima (rumori, lunga attesa, errore
input/output).

Allora mi sono (ri)letto i cd-writing e cd-rom howto, e ho scoperto che
si pu=F2 verificare i cd con le iso9660 utilities. Ecco i risultati:

bash-2.05$ isovfy /mnt/cdrom
Root at extent 436e6f6e, -1728299007 bytes
[0 0]
********Directory has unusual size
No errors found

bash-2.05$ isovfy /dev/cdrom|head
Root at extent 17, 2048 bytes
[0 0]
17:  48    17     2048 *.              RRlen=3D14 [**BAD SUSP 0 0]
17:  48    17     2048 *..             RRlen=3D14 [**BAD SUSP 0 0]
17:  56    18     4096 *       RRlen=3D14 [**BAD SUSP 0 0]
18:  48    18     4096 *.              RRlen=3D14 [**BAD SUSP 0 0]
18:  48    17     2048 *..             RRlen=3D14 [**BAD SUSP 0 0]
18:  62 473d6  3809704   RRlen=3D14 [**BAD SUSP 0 0]
18:  62 45f8e  3400939   RRlen=3D14 [**BAD SUSP 0 0]
18:  62 4bc6c  3597171   RRlen=3D14 [**BAD SUSP 0 0]

(poi il file =E8 tutto simile)

=3D=3Ddomanda=3D=3D
Non ho capito una cosa su queste utility: cosa fanno isovfy /mnt/cdrom e
isovfy /dev/cdrom? In altre parole, se voglio verificare un cd, quale
delle due devo usare?

Ma la domanda pi=F9 importante =E8 questa:
=3D=3Ddomanda=3D=3D
Una volta scoperto che il file system di un cd =E8 danneggiato, c'=E8
qualche programma che sia in grado di rimetterlo a posto?
C'=E8 qualche maniera per recuperare quelle due directory illeggibili?

ciao,
federico