Newsgroup: it.comp.os.linux.iniziare
Titolo: Quanti dati può contenere un CD vuoto?

La domanda è molto semplice, però non sono riuscito a
trovare una risposta googolando per la rete...
 
Ho un CD vuoto su cui voglio bruciare un'immagine ISO.
Lavorando da riga di comando, come posso determinare quanti
"bytes" può contenere il CD?
Il fine è banale: sapere se la mia ISO potrà stare nel CD
stesso "prima" di avviare la masterizzazione.
 
Alcuni tool tipo k3b e altri grafici calcolano la capienza
del supporto e la confrontano con il peso della iso,
mostrando il classico report grafico che ci dà l'idea di
quanto si riempirà il CD dopo la masterizzazione.
 
Con i classici vecchi comandi di shell "cdrecord", "dd",
"isoinfo" ecc ecc... Possiamo verificare queste informazioni
in qualche modo?
 
Grazie in anticipo!  :)

in qualche modo?
 
Ho la Debian e allora qui per masterizzare c'e' wodim ottimo
infallibile, da riga di comando. Per una iso la riga e' questa:
 
$: wodim -v dev=/dev/sr0 speed=8 -sao /tmp/dvd_anna2.iso
 
- per sr0 vedi tu con "ls -l /dev/cdr*"
- per speed puoi anche non metterlo e allora va al massimo
- per -sao con le iso e' d'obbligo, se non lo metti lo mette lui.
 
Se la dai e dai subito control-c (hai 4 sec, te loi dice: "last
chance to quit...") poi con calma ti leggi a video tutto: se
resta o no spazio ect., ti dice tutto sul supporto, cdrom o dvd
che sia ciao
 
 
-- 
  (> '.')>
Ciao Oldghost
 


Ciao, dunque io sono su slackware e qui c'è cdrecord,
che comunque è molto simile a wodim se non sbaglio.
Le info di cui parli possono essere ottenute anche col
seguente comando, che interroga il drive e il supporto
che abbiamo inserito. Nel mio caso sotto, un CD-R vuoto:
 
-----------------
$ cdrecord -atip dev=/dev/sr0
Cdrecord-ProDVD-ProBD-Clone 3.01a08 (i686-pc-linux-gnu)
                      Copyright (C) 1995-2012 Joerg Schilling
scsidev: '/dev/sr0'
devname: '/dev/sr0'
scsibus: -2 target: -2 lun: -2
Warning: Open by 'devname' is unintentional and not supported.
Linux sg driver version: 3.5.27
Using libscg version 'schily-0.9'.
Device type    : Removable CD-ROM
Version        : 5
Response Format: 2
Capabilities   :
Vendor_info    : 'Optiarc '
Identifikation : 'DVD RW AD-7200A '
Revision       : '1.06'
Device seems to be: Generic mmc2 DVD-R/DVD-RW/DVD-RAM.
Using generic SCSI-3/mmc   CD-R/CD-RW driver (mmc_cdr).
Driver flags   : MMC-3 SWABAUDIO BURNFREE
Supported modes: TAO PACKET SAO SAO/R96R RAW/R96R
cdrecord: Warning: Cannot read drive buffer.
cdrecord: Warning: The DMA speed test has been skipped.
ATIP info from disk:
  Indicated writing power: 5
Disk Is not unrestricted
Disk Is not erasable
  Disk sub type: Medium Type A, high Beta category (A+) (3)
  ATIP start of lead in:  -11634 (97:26/66)
  ATIP start of lead out: 359846 (79:59/71)
Disk type:    Short strategy type (Phthalocyanine or similar)
Manuf. index: 3
Manufacturer: CMC Magnetics Corporation
 
    Capacity  Blklen/Sparesz.  Format-type  Type
           0             2048         0x00  No Media Present
	                                    or Unknown Capacity
-----------
 
 
 
Con questi dati, ripropongo la domanda:
quanto può essere grande al massimo una iso da masterizzare
su quel CD?
 
Provo a dare un'interpretazione chiedendovi conferma:
numero di blocchi        =   359846
lunghezza dei blocchi    =     2048 bytes
bytes totali scrivibili  =   359846*2048  = 736964608 bytes
 
 
Domanda precisa quanti bytes può essere grande ak massimo
la ISO da masterizzare per stare nel CD di cui sopra?
 
Grazie ancora!

la ISO da masterizzare per stare nel CD di cui sopra?
 
Guarda, siccome salvavo film d'epoca su dvd, ho ancora questi
appunti che ti garantisco perche' ultratestati.
Lo copio e commento:
 
Max = 4.707.319.808 byte = 2.298.496 numero di block di 2.048 byte l'uno.
E questi sono lo stesso tipo di dvd tuo.
 
I byte corrispondono a quelli dati da ls cosi':
ls -l --block-size=1048576 pippo.iso
 
Il massimo esatto che cerchi e chiedi e quindi quando ls da' 4.489 mega:
Max = 4.489
 
N.B. che dovrebbe coincidere anche dando "du -BM" ciao!
 
-- 
  (> '.')>
Oldghost
 

>>>>  
http://www.bb2002.it
 :)  <<<<<
........... [ al lavoro ] ...........

 trovare una risposta googolando per la rete...
 
dipende dal CD: in genere 650 o 700 MB. In genere c'e' scritto sopra.
 
Puoi scrivere qualche MB in piu' (una decina al massimo in genere) con l'overburn, a volte funziona, a volte no.
 
https://it.wikipedia.org/wiki/CD-R
 
 
Ciao Jack


Puoi anche metteri piu' roba forzando in Mode 2 (usato dai cd audio di solito), ma perdi il checksum (quindi il sistema non riesce a recuperare eventuali letture sbagliate).
 
http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-130.pdf
 
 
Ciao Jack


Grazie della risposta jack.
Tuttavia, stavo cercando un metodo un po' più preciso in
modo che fosse leggibile da un output di cdrecord o altri
comandi particolari che magari non conosco, tipo cd-info
che ho trovato per caso.
Sul CD c'è scritto sopra... Se hai la confezione però.
Nel mio caso ce l'ho sottomano e vi è scritto 700MB, ma
la domanda non era quella.
 
Il discorso dell'overburn può portare fuori strada il
discorso. Restiamo sulla capacità nominale del supporto.
 
Grazie ancora comunque

 N.B. che dovrebbe coincidere anche dando "du -BM" ciao!
 
Ecco sì parlavi di MB....
Scusa ma mi sono perso.  :|
 
Facciamo così, lasciamo perdere per un attimo la iso che
dovrà essere copiata sul supporto.
Poniamo di non averla ancora creata... ok?
 
Abbiamo solo il CD vuoto e sopra non vi è scritto quanto
tiene, sappiamo solo che è vuoto.
Lo infiliamo nel drive ottico e chiediamo a linux
quanti bytes tiene (non Mega Bytes per carità, restiamo
pure in bytes, scomoducci ma almeno non introduciamo
ulteriori complicazioni con equivalenze e conversioni).
 
Che comandi ci portano la risposta?

 
http://qpxtool.sourceforge.net/
 
 
Ho provato.
Il tool riporta che nel cd vi siano:
-----
Free:   359844    702 MB    79:57.69 MSF
Total:  359846    702 MB    79:57.71 MSF
-----
Cosa sono quelli?
Se leggete l'output che avevo postato usando cdrecord
vedrete:
----
ATIP start of lead out: 359846 (79:59/71)
----
 
Direi che sono quindi il numero di "blocchi" a disposizione
sul supporto. Da cdrecord si vede che la lunghezza dei
blocchi è di 2048 bytes/blocco. Pertanto moltiplicando si
ottengono i bytes totali eventualmente poi convertiti in
Mbytes.
Proviamo sul totale:
 
359846 * 2048 = 736964608 Bytes
359846*2048/1024/1024  = 702 MB
 
I conti tornano. Però... Il tool che hai consigliato
aggiunge un'informazione in più che non ero riuscito a
leggere da cdrecord: sembra infatti che il valore "Total"
non indichi il numero di blocchi disponibili per lo
stoccaggio della iso da masterizzare, altrimenti non mi
spiegherei la presenza del valore "Free", che riporta 2
blocchi in meno rispetto al totale.
 
A cosa sono dedicati questi due blocchi in meno?
È un valore fisso per ogni CD o DVD oppure a seconda
del supporto condsiderato cambia?
 

Che comandi ci portano la risposta?
 
Non va, nel cdrom non c'e' alcun fs. Ci sono programmi apposta
per leggere le info, ma con cdrecord=wodim (sono uguali, sono gli
stessi autori, credo tedeschi) non ne hai bisogno.
 
La strada migliore te l'ho gia' indicata:
- metti dentro il cdrom vergine (l'avevi messo? qui su sembra di no)
- dai il comando di copia
- dai control-c prima che inizi a copiare
- leggi quanti blocchi restano o mancano, te lo dice-scrive lui ciao.



Anche senza dare il ctrl+c dovrebbe sparare fuori il cd
senza scrivere nulla se c'è troppa roba, però per
precauzione si può attivare la modalità simulazione col
flag "-dummy" (man cdrecord).
In questo modo in ogni caso il CD non viene bruciato: la
scrittura viene appunto solo simulata.
 
Ho fatto una prova con la ISO di slackware che avevo lì
in tmp:
------------
FIFO size      : 4194304 = 4096 KB
Track 01: data  2645 MB
Total size:     3037 MB (300:56.53) = 1354240 sectors
Lout start:     3037 MB (300:58/40) = 1354240 sectors
Current Secsize: 2048
ATIP info from disk:
  Indicated writing power: 5
Disk Is not unrestricted
Disk Is not erasable
  Disk sub type: Medium Type A, high Beta category (A+) (3)
  ATIP start of lead in:  -11634 (97:26/66)
  ATIP start of lead out: 359846 (79:59/71)
Disk type:    Short strategy type (Phthalocyanine or similar)
Manuf. index: 3
Manufacturer: CMC Magnetics Corporation
 
    Capacity  Blklen/Sparesz.  Format-type  Type
           0             2048         0x00  No Media Present or Unknown
                                                               Capacity
Blocks total: 359846 Blocks current: 359846 Blocks remaining: -994394
cdrecord: WARNING: Data may not fit on current disk.
cdrecord: Notice: Most recorders cannot write CD's >= 90 minutes.
cdrecord: Notice: Use -ignsize option to allow >= 90 minutes.
cdrecord: Notice: Use -overburn option to write more than the official
                                                        disk capacity.
cdrecord: Notice: Most CD-writers do overburning only on SAO or RAW mode.
--------------
 
$ echo 994394+359846|bc
1354240
$ ls -l --block-size=M /tmp/slackware64-14.2-install-dvd.iso 
2645M lug 20 11:25 /tmp/slackware64-14.2-install-dvd.iso
 
--------------
 
 
Per la cronaca il CD è stato espulso prima dell'inizio della
scrittura perchè la iso di slack è circa 2.6 GB mentre il CD
ne tiene 700MB.
I numeri tornano con gli altri comandi basati sul pacchetto
di cdrecord, come avevo mostrato:
(cd-info, cdrecord -v dev=/dev/sr0 -toc)
 
Infatti:
La iso viene stabilito che abbia bisogno di 3037MB di spazio,
nonostante la sua dimensione sul sistema locale sia di soli
2645M.
Viene esplicitato che il "current secsize", cioè la lunghezza
dei settori è di 2048 bytes.
 
Quindi alla iso servirebbero 1354240 settori sul supporto.
D'altra parte cdrecord ci dice che il supporto consta di
soli 359'846 settori (o blocchi insomma...).
 
E per ultimo come dicevi, cdrecord mette in evidenza i blocchi
totali del supporto che devono essere bruciati e quelli restanti
ottenuti dai primi a cui viene sottratto il numero dei blocchi
della iso (nel nostro caso il risultato è negativo ovviamente).
 
In pratica:
 
blocchi totali da scrivere        =  359.846
blocchi rimanenti =
      (da scrivere - blocchi iso) =
      =     359846 - 1354240      = -994.394
 
----------------
 
La mia domanda era per capire come funziona la scrittura della iso.
Cioè ad esempio perchè se la mia iso è di 2.6GB, risulta poi aver
bisogno di 3 GB e passa sull'ipotetico DVD. C'è una bella differenza.
 
Ancora, perchè cdrecord considera solo il numero di blocchi totali
e non parla di blocchi liberi, mentre il software "qpxtool" mette
in evidenza che due dei blocchi totali non sono utilizzabili?
 
Mi interessava capre un attimo meglio la teoria. Però avendone anche
riscontro coi numeri. Tutto qui.

 
 
Scusa eh ma non è che puoi buttarmi un link al pezzo dove ne
parla?
perchè vi ho cercato dentro, anche con google e non mi trova
nè free sectors nè free blocks e anche dal sorgente di qscan
non capisco da dove tira fuori quei due blocchi in meno...
 
Se sai dove devo guardare, mi basta che mi copi e incolli un
pezzo di una frase della spiegazione del punto che chiedevo
poi mi arrangio.

riscontro coi numeri. Tutto qui.
 
Queste info che t'interessano fanno parte dei libretti Giallo o
Arancione o Rosso non ricordo di Sony-Philips eccetera, tempo
fa le conoscevo, ora praticamente e' tutta roba obsoleta: le
chiavette o gli stessi dischi fissi (magari usb) costano meno a
parita' di giga. Un hd usb da 1 tera e' sui 60 euro circa, 200
dvd oramai non li trovi piu' neppure a 1/2 euro l'uno. I film li
metto su usb e sono ad accesso molto e molto piu' comodo e veloce
e anche come ingombro non c'e' confronto.
 
Nei cdrom e dvd c'e' il lead-in e lead-out che prendono spazio,
inoltre dei 2048 K del blocco non tutti possono sempre essere
disponibili per i dati, col formato dvd R+ ad esempio son di meno
del dvd R-.
Comunque la capacita' indicata dovrebbe essere al netto ciao
 
Ps. Occhio a non confondere lo spazio e il formato che sceglie
mkisofs (che nella Debian e' genisoimage), col leadin-out che ti
dicevo, perche' ad esempio per i .VOB si deve dare "-dvd-video"
come opzione nel fare la iso.


 Ciao Jack
https://redtowers.org/txt/va.a.capo.dopo.72.colonne.txt
 
 

 poi mi arrangio.
 
vabbe' allora plonk.
la prossima volta non ti rispondo neanche, tempo risparmiato.
addio
 
Ciao Jack