[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Seltsamer Effekt beim DVD-R brennen und wieder einlesen



Peter Funk <pf@artcom-gmbh.de> wrote:
> Guten Morgen,

> ich benutze ein selbst geschriebenes Bash-Skript, um regelmässig Daten 
> auf DVD-R Medien zu archivieren.  In diesem Skript erzeuge ich zuerst 
> eine .iso-Datei mit dem Dienstprogramm mkisofs.  Um sicher zu gehen,
> dass meine Daten auch korrekt auf dem Medium angekommen sind, mache
> ich in meinem Skript im Prinzip folgendes (Die Variable $IMAGE_NAME 
> ist Name der Datei ohne die Endung .iso):

>   ...
>   # Checksumme der .iso-Datei berechnen:
>   sha256sum $IMAGE_NAME.iso > $IMAGE_NAME.sha256
>   # Brennen:
>   growisofs -dvd-compat -Z /dev/dvd=$IMAGE_NAME.iso
>   # Berechne Anzahl der wieder einzulesenden Bloecke:
>   EXTENDS=$(( $(ls -l $IMAGE_NAME.iso | awk '{ print $5 }') / 2048 ))
>   # Warten, bis sich das DVD-Laufwerk "beruhigt" hat:
>   sleep 10
>   # Medium einmal auswerfen:
>   eject /dev/dvd
>   # Medium gleich wieder einziehen:
>   eject -t /dev/dvd
>   # Medium wieder einlesen:
>   dd if=/dev/dvd bs=2048 count=$EXTENDS \
>                | sha256sum >${IMAGE_NAME}_DVD.sha256
>   # Die beiden Checksummen vergleichen:
>   SHA_ISO=$(cat $IMAGE_NAME.sha256 | awk '{ print $1 }')
>   SHA_DVD=$(cat ${IMAGE_NAME}_DVD.sha256 | awk '{ print $1 }')
>   if [ "$SHA_DVD" = "$SHA_ISO" ]
>   then echo "DVD SHA256 Checksummen Vergleich war erfolgreich"
>        ...
>   else ...

> Das funktioniert soweit alles.

> Wenn ich aber das Öffnen und Schließen der Schublade mittels "eject"
> und "eject -t" weg lasse, dann funktioniert das Skript nicht mehr:
> Das nachfolgende 'dd' liest dann nur noch einen einzigen Block ein.

> Erst nachdem die DVD einmal ausgeworfen und wieder eingelegt wurde, 
> gelingt das Wiedereinlesen und Überprüfen der DVD.  

> Warum ist das so?
> Ist das möglicherweise ein Treiber-Problem?
> Wir haben das optische Laufwerk ausgetauscht.  Daran lag es nicht.

Die anderen Brenn-Programme machen dies auch so, vermutlich aus dem
gleichen Grund.

Ich denke, die Laufwerke brauchen diesen Trigger, um das Medium neu
einzulesen, bevor sie Daten liefern.

S°

-- 
Sigmentation fault. Core dumped.


Reply to: