CD'ye yazmaya karar verdiğimiz dosyaları, CD dosya sistemine dönüştürmeli
ve bu şekilde CD'ye yazmalıyız. Bunun için ilk önce yazmayı düşündüğümüz
dosyaları kendi dosya sistemimiz üzerinde bir dizine toplamalı ve daha
sonra da mkisofs isimli yazılım yardımı ile bu
dizini CD dosya sistemine dönüştürmeliyiz. Bir dizin CD dosya sistemine
şu şekilde dönüştürülebilir:
mkisofs -r -o iso_dosyasi.iso cdye_yazilacak_dosyalar/
Bu komut, bulunduğumuz dizinde bulunan cdye_yazilacak_dosyalar/
isimli dizini, yine bulunduğumuz dizine iso_dosyasi.iso
ismi ile dönüştürecektir. Aşağıdaki ekran çıktısı, tez/
isimli dizinin tez.iso dosyasına dönüştürülmesini
göstermektedir:
[root@isildur iso]# mkisofs -r -o tez.iso tez/
Using APPEN00.HTM;1 for tez/Applied_Cryptography/appendixb.html (appendixa.html)
Using LECTU000.PS;1 for tez/lecture_notes/lecture17.ps (lecture16.ps)
Using LECTU001.PS;1 for tez/lecture_notes/lecture16.ps (lecture15.ps)
Using LECTU002.PS;1 for tez/lecture_notes/lecture15.ps (lecture14.ps)
Using LECTU003.PS;1 for tez/lecture_notes/lecture14.ps (lecture13.ps)
Using LECTU004.PS;1 for tez/lecture_notes/lecture13.ps (lecture12.ps)
Using LECTU005.PS;1 for tez/lecture_notes/lecture12.ps (lecture11.ps)
Using LECTU006.PS;1 for tez/lecture_notes/lecture11.ps (lecture10.ps)
Using LECTU007.PS;1 for tez/lecture_notes/lecture10.ps (lecture1.ps)
Using 2001_00.PDF;1 for tez/pointcheval/2001_asiacryptC.pdf (2001_asiacryptA.pdf)
13.10% done, estimate finish Wed Feb 26 15:20:25 2003
26.21% done, estimate finish Wed Feb 26 15:20:21 2003
39.34% done, estimate finish Wed Feb 26 15:20:23 2003
52.43% done, estimate finish Wed Feb 26 15:20:23 2003
65.55% done, estimate finish Wed Feb 26 15:20:27 2003
78.65% done, estimate finish Wed Feb 26 15:20:26 2003
91.75% done, estimate finish Wed Feb 26 15:20:26 2003
Total translation table size: 0
Total rockridge attributes bytes: 44970
Total directory bytes: 108544
Path table size(bytes): 618
Max brk space used 617e4
38160 extents written (74 Mb)
Ayrıca, yazmak istediğimiz dosyalar diskimizde değil bir başka CD üzerinde
bulunuyor olabilirler ya da bir CD'yi bire-bir kopyalamak istiyor olabiliriz
(İlgilenmeyenler okumaya
bir kaç
satır aşağıdan devam edebilirler).
Bu durumda izlenebilecek iki yöntem vardır. İlki, CD'den CD'ye doğrudan
kopyalama, diğeri de kopyalanacak CD'yi iso olarak diskimize kaydettikten
sonra disk üzerinden CD'ye yazmak. İkisinin sonucu arasında hiçbir fark
olmayacak, fakat ikinci yöntemi takip ettiğimiz taktirde CD'mizi yakma
olasılığımız daha az olacaktır. Çünkü, CD'den CD'ye doğrudan kopyalama
esnasında CD okuyucunun normal okuması esnasında bir kaç sefer deneyip
okuyabileceği bir kısım, CD yazıcıya olan veri akışını sekteye uğratacak
ve yazma işlemi başarısızlık ile sonlanacaktır. Yine de kendinize güveniyor
olabilir ve illa ki CD'den CD'ye doğrudan kopyalama yapmak isteyebilirsiniz.
Örneğin CD yazıcınızın SCSI bus adresi 0,4,0 ve CD
okuyucu olarak kullanacağınız aygıt /dev/cdrom iken
aşağıdaki komut ile CD'den CD'ye kopyalama yapabilirsiniz. Bu noktada
yazma hızını (yani komuttaki speed parametresini)
düşük tutmanız risklerin azalması açısından iyi bir yaklaşım olacaktır:
[root@isildur iso]# cdrecord -v dev=0,4,0 speed=2 -isosize /dev/cdrom
İlk yönteme göre kopyalama yapmak isteyenlerin, yani CD'den CD'ye
kopyalama yerine iso dosyasını önce disklerinde oluşturup daha sonra
CD yazma işlemine geçmek isteyenlerin ihtiyacı olan komut şöyledir
(kopyalamak istediğiniz CD'nin /dev/cdrom aygıtında
olduğunu varsayarsak):
[root@isildur iso]# dd if=/dev/cdrom of=iso_dosyasi.iso
Artık iso dosyamız hazırdır ve iso dosyamızın boyutunun CD'mizin
kapasitesinden küçük olduğunu teyit ettikten sonra CD'ye yazma işlemine
başlamamız için önümüzde hiçbir engel yoktur. Fakat yine de, daha sonradan
ortaya çıkabilecek tatsızlıkları engellemek için, iso dosyasının içini
kontrol etmek isteyebiliriz; şu anda aklımıza gelmeyen ancak gözümüzle
gördüğümüzde hatırlayabileceğimiz eksiklik ya da hataların var olmadığından
emin olmak için. Bunun için iso dosyamızı, sanki bir CD-ROM'muş gibi
dosya sistemimizde bir yere bağlayıp içinde gezebiliriz:
[root@isildur iso]# mount -t iso9660 -o ro,loop=/dev/loop0 tez.iso /mnt/cdrom
komutu yeterli olacaktır. Bir problem olmadığından emin olduktan sonra da
iso dosya sistemini
[root@isildur iso]# umount /mnt/cdrom
komutu yardımı ile dosya sisteminizden ayırabiliriz. Boş CD'mizi
CD-yazarın içerisine koyduktan sonra yazma işlemine başlayabiliriz.
Yazma işlemi aşağıdaki komut yardımı ile gerçekleştirilecektir:
cdrecord dev=scanbus_id_si -eject speed=yazma_hizi iso_dosyasi.iso
Burada belki de üzerinde konuşmamız gereken tek parametre 'dev'
parametresidir. Bu parametre, yazma işleminde kullanacağımız cihazın hangi
cihazımız olduğunu bildirdiğimiz parametredir ve değerinin ne olacağına
`cdrecord -scanbus' çıktısına göre
karar verdiğimizi de hatırlatalım. Aşağıdaki ekran çıktısı, az önce
hazırladığımız tez.iso isimli dosyayı yazdığımızda
meydana gelen çıktıdır:
[root@isildur iso]# cdrecord dev=0,4,0 -eject speed=12 tez.iso
Cdrecord 1.10 (i686-pc-linux-gnu) Copyright (C) 1995-2001 Jörg Schilling
scsidev: '0,4,0'
scsibus: 0 target: 4 lun: 0
Linux sg driver version: 3.1.22
Using libscg version 'schily-0.5'
Device type : Removable CD-ROM
Version : 2
Response Format: 2
Capabilities : SYNC LINKED
Vendor_info : 'PLEXTOR '
Identifikation : 'CD-R PX-W1210S'
Revision : '1.04'
Device seems to be: Generic mmc CD-RW.
Using generic SCSI-3/mmc CD-R driver (mmc_cdr).
Driver flags : SWABAUDIO
Starting to write CD/DVD at speed 12 in write mode for single session.
Last chance to quit, starting real write in 0 seconds. Operation starts.
Track 01: Total bytes read/written: 83839360/83839360 (58320 sectors).