NASIL Cdrdao ile komut satirindan cd/dvd yazici kullanma
From Lapis Wiki
Bu makale NASIL bölümü serisinin bir parçasıdır
|
| MasaÜstü • Donanım • Ağ • Dağıtımlar |
| Tarayıcılar• Programlama • Linux ve Oyunlar |
Giriş
Son zamanlardaki CDRECORD daki hatalar ve benim donanımım ile uyum sağlamaması üzerine, çeşitli alternatifler denedim ve en sonunda CDRDAO ile komut satırından CD/DVD yazdırma işlemini en kolay yöntem olarak kabul etmeye başladığım için, şimdi kısaca cdrdao ya ait bilgiler aktarayım.
Tabi sizinde akliniza gelen komutlar varsa buraya aktarabilirsiniz.
CD Yazıcının Tespiti
cdrdao scanbus
CD/DVD Yazıcılar Hakkında Bilgileri Göstermek
cdrdao disk-info
Takılı AudioCD'nin CDDB Bilgilerini Göstermek (tabi mevcut ise)
cdrdao read-cddb
CD+RW Silme
cdrdao blank
Not: komutun sonuna --help yazarak diğer parametreleri görebilirsiniz
BIN/CUE Dosyalarını Yazdırma
cdrdao write --device /dev/hdc /nerdeyse/bu/dosya/deneme.cue
Bir AudioCD'yi Komple Olarak Yazdırmak
cdrdao read-cd --device /dev/hdd -driver generic-mmc audiocd.toc cdrdao write --device /dev/hdc audiocd.toc
Not: /dev/hdc = CD+RW /dev/hdd = Normal CD-Rom
ISO Dosyalarını Yazdırma
Iso dosyalarını yazdırmak biraz zahmetli fakat imkansız değil. Bunun için ilk önce iso dosyası internetten indirilir ve bir dizin altına konur. Mesela
/tmp/deneme/deneme.iso
Daha sonra aynı dizin altında birde deneme.iso.toc dosyası oluşturulur ve içine şunlar yazılır:
/tmp/deneme/deneme.iso.toc
CD_ROM // Track 1 TRACK MODE1 NO COPY DATAFILE "/tmp/deneme/deneme.iso"
Son olarakda TOC dosyası cdrdao ile yazdırılır.
cdrdao write --device /dev/hdc /tmp/deneme/deneme.iso.toc
iso dosyasından toc oluşturan bir script
Aşağıdaki kısmı generate_toc.sh isminde bir dosya oluşturup kaydedin. Chmod ile çalıştırma hakkı verin (chmod 755 generate_toc.sh) ve "/usr/bin" altına kopyalayın.
generate_toc.sh
#!/bin/sh # Kullanimi: # env DATA=1 generate_toc.sh stuff.iso # generate_toc.sh *.wav # Sonradan ilave edildi Adres=`pwd`
IFS="
"
[ "$DATA" = "" ] && DATA=0
(
if [ $DATA -eq 1 ]
then
echo CD_ROM
else
echo CD_DA
fi
for file in $@
do
echo
if ( echo $file | grep '\.wav$' ) &>/dev/null
then
echo TRACK AUDIO
echo AUDIOFILE \"$file\" 0
else
echo TRACK MODE1
echo DATAFILE \"$Adres/$file\"
fi
done
) > $1.toc
bu script sadece .toc uzantılı bir dosya oluşturup içine aşağıdakileri yazıyor Örnek:
sh generate_toc.sh benim.iso
cd.toc diye bir dosya olusturdu icinde ise
CD_DA TRACK MODE1 DATAFILE "benim.iso"
yazıyor. Bu toc uzantılı dosyayı cdrdao ile yazabilirsiniz.
Cdrdao ile Backup yazdırma
Not: Yukardaki "generate_toc.sh" skriptini /usr/bin altına kopyalamış ve chmod ile 755 hakları vermiş olmanız gerekir. Aksi takdirde calışmaz.
#!/bin/bash # Boşluk bırakarak yedeklemek istediginiz dizinleri yazin # Dizin tanimlarken * veya başka karakter kullanmayın # Aynı dizinlerin aynı dizin altında kopyalanması icin, aşağıdaki # yazım şekline dikkat edin. # Aşağıdaki şekilde tanımlanır ise, dizin içindeki dosyalar aynı dizin altına # yedekleniyor. Yedeklenecekler="/etc=/etc/ /tmp=/tmp/ /home=/home/" # Başlangıç mkdir -p /tmp/yedek cd /tmp/yedek mkisofs -r -R -L -l -J -V "Yedekleme" -o yedekleme.iso -graft-points $Yedeklenecekler env DATA=1 generate_toc.sh yedekleme.iso cdrdao write --device /dev/hdc yedekleme.iso.toc
