- 代碼: 選擇全部
主旨: CD 燒錄
日期: 2002/10/31
參考資料:
CD-Writing HOWTO
http://www.geocities.co.jp/SiliconValley/2548/mkisofs-NLS-CJK.html
http://howto.gp.mines.edu/howtowiki/LinuxCd
http://www.mandrakeuser.org/docs/utils/uiso.html
內容:
1. IDE 的 CDROM, CDRW, KERNEL 必須加入的選項
由於 cdrecord 只能在 scsi 的 device 上使用, 故必須在 KERNEL 中加入 "將IDE模擬成SCSI" 的module
SCSI support ->
[M] SCSI support
[M] SCSI CDROM support
[M] Enable vendor-specific extensions (for SCSI CDROM)
[M] SCSI generic support
在 SCSI low-level drivers 底下的所有 SCSI 卡都不要選
ATA/IDE/MFM/RLL support ->
IDE,ATA and ATAPi Block ->
[M] SCSI emulation support
make kernel 完成後,
在 lilo.conf 中加入要將 ATAPT CDROM 模擬成 SCSI CDROM 的選項
=====================================================
image=/vmlinuz
label=2.4.18
read-only
append="hdc=ide-scsi hdd=ide-scsi"
^^^^^^^^^^^^^^^^^^^^^^^^^
將 hdc,hdd 模擬成 SCSI CDROM
=====================================================
2. 使用 cdrecord 做 cd 燒錄
# apt-get install cdrecord
# apt-get install mkisofs
首先先用 cdrecord --scanbus 查出你的光碟機的 SCSI ID
# cdrecord --scanbus
0,0,0 0) 'ATAPI ' 'CD-ROM DRIVE ' '242H' Removable CD-ROM
0,1,0 1) 'ASUS ' 'CRW-1610A ' '1.20' Removable CD-ROM
0,2,0 2) *
0,3,0 3) *
0,4,0 4) *
0,5,0 5) *
0,6,0 6) *
0,7,0 7) *
^^^^^^
SCSI ID
(1) File 整理放至 CD
製作 iso 檔: 將放在<PATH>底下的所有檔案製作成<IMAGE>.iso
# mkisofs -r -o <IMAGE>.iso <PATH>/
Note: mkisofs 目前並沒有支援中文檔名, 所以放在 <PATH> 底下的中文檔名都會有問題,
在 http://www.geocities.co.jp/SiliconValley/2548/mkisofs-NLS-CJK.html 有 patch,
可以自己 compile mkisofs 後修正這個問題
Note: 你也可以在製作好 ISO 檔後用 loop device 將該 ISO 檔 mount 起來後加東西進去
# mount -t iso9660 -o rw,loop=/dev/loop0 <IMAGE>.iso /mnt
# cp xxx /mnt
將ISO檔燒進光碟
# cdrecord -v speed=<SPEED> -dev=<DEVICE_SCSI_ID> -data <IMAGE>.iso
(2) CD 對拷
使用 cdread 將 CD 的 raw image 取出
# cdrecord dev=<DEVICE_SCSI_ID> f=<IMAGE>.raw
將取出的的 raw image 燒進光碟
# cdrecord -v speed=<SPEED> -dev=<DEVICE_SCSI_ID> -data <IMAGE>.raw