IT/Tips

linux cd burnning

싸후이 2009. 7. 17. 11:09
1. 우선 자신이 가지고 있는 커널의 옵션을 확인해볼 필요가 있습니다.

여기서 반드시 선택되어야 할 옵션은 다음과 같습니다.
참고로 이 옵션은 2.4.18 을 기준으로 합니다. (Linux Kernel v2.6 에서도 마찬가지로 비슷한 옵션을 체크하세요.)
코드:
<M>   SCSI emulation support
<M>   SCSI generic support
<M> ISO 9660 CDROM file system support
[*]   Microsoft Joliet CDROM extensions

그러나 만약 이것이 안된다면 관련 옵션인 다음을 확인하셔야 합니다.
코드:
   ATA/IDE/MFM/RLL support  --->
     <*> ATA/IDE/MFM/RLL support
       IDE, ATA and ATAPI Block devices  --->
         <*> Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support
         <*>   Include IDE/ATA-2 DISK support
         <M>   Include IDE/ATAPI CDROM support
         <M>   SCSI emulation support
   SCSI support  --->
     <M> SCSI support
     <M>   SCSI disk support
     (20) Maximum number of SCSI disks that can be loaded as modules
     <M>   SCSI CD-ROM support
     [*]     Enable vendor-specific extensions (for SCSI CDROM)
     (4) Maximum number of CDROM devices that can be loaded as modules
     <M>   SCSI generic support
   File systems  --->
     [*] Quota support
     <M> Kernel automounter support
     <M> Kernel automounter version 4 support (also supports v3)
     <M> ISO 9660 CDROM file system support
     [*]   Microsoft Joliet CDROM extensions



2. 그 다음에 할것은 lilo.conf 를 확인하셔야 합니다.

코드:
append="hdc=ide-scsi"

이 항목이 없으면 추가하셔야 합니다. 이 옵션은 ide를 scsi로 보이게 하는 커널 인자입니다.
예로 다음과 같습니다.
코드:
image=/boot/bzImage-2.4.18
       label=CDRWtest
       read-only
       append="hdc=ide-scsi"

Linux Kernel v2.6에서는 이 작업을 수행할 필요가 전혀 없습니다. 자신의 커널이 v2.6 이상이라면 이 부분은 하지 마세요.


3. 다음은 iso를 CD로 굽는 명령을 알아야 합니다.

코드:
bash# cdrecord -v -eject speed=<RW speed> dev=<Device number> <ISO Image file name>

위와 같은 형식을 통해 CD를 굽게 되는데 여기서 RW speed는 구입당시 박스나 설명서에 나와있을겁니다.
통상 4라고 하면 무난할듯 하지만 자신의 CDRW에 맞게 사용하세요.
그리고 Device number는 "cdrecord -scanbus" 명령을 통해서 알수 있습니다.
Linux Kernel v2.6에서는 "cdrecord -scanbus -dev=ATA:" 명령으로 방법이 바뀌었습니다.
저의 경우는 다음과 같이 나오는군요.

Linux Kernel v2.4 이하 버젼에서
코드:
bash# cdrecord -scanbus
   Cdrecord 1.10 (i686-pc-linux-gnu) Copyright (C) 1995-2001 J?g Schilling
   Linux sg driver version: 3.1.22
   Using libscg version 'schily-0.5'
   scsibus0:
        0,0,0     0) 'TOSHIBA ' 'DVD-ROM SD-R2002' '1Q35' Removable CD-ROM
        0,1,0     1) *
        0,2,0     2) *
        0,3,0     3) *
        0,4,0     4) *
        0,5,0     5) *
        0,6,0     6) *
        0,7,0     7) *
   bash# _

Linux Kernel v2.6 이상 버젼에서
코드:
bash# cdrecord -scanbus -dev=ATA:
Cdrecord-Clone 2.01 (i686-pc-linux-gnu) Copyright (C) 1995-2004 J\uffffrg Schilling
cdrecord: Warning: Running on Linux-2.6.12-gentoo-r6
cdrecord: There are unsettled issues with Linux-2.5 and newer.
cdrecord: If you have unexpected problems, please try Linux-2.4 or Solaris.
scsidev: 'ATA:'
devname: 'ATA'
scsibus: -1 target: -1 lun: -1
Warning: Using badly designed ATAPI via /dev/hd* interface.
Linux sg driver version: 3.5.27
Using libscg version 'schily-0.8'.
scsibus1:
        1,0,0   100) 'SAMSUNG ' 'CD-ROM SC-152G  ' 'C401' Removable CD-ROM
        1,1,0   101) 'HL-DT-ST' 'RW/DVD GCC-4480B' '1.02' Removable CD-ROM
        1,2,0   102) *
        1,3,0   103) *
        1,4,0   104) *
        1,5,0   105) *
        1,6,0   106) *
        1,7,0   107) *

여기서 예를 들자면 저는 backup.iso를 굽고 싶을때 다음과 같이 하면 되겠네요.
Linux Kernel v2.4 이하 버젼에서
코드:
bash# cdrecord -v -eject speed=4 dev=0,0,0 backup.iso

Linux Kernel v2.6 이상 버젼에서 (dev부분에 직접 device를 지정하는것이 가능해졌습니다.)
코드:
bash# cdrecord -v -eject speed=4 dev=/dev/cdrom backup.iso

그리고 만약 자신이 굽고자 하는 CD매체가 CD-RW라면 먼저 깨끗히 청소하는 작업이 필요한데
코드:
cdrecord -v -eject -blank=all speed=4 dev=0,0,0 backup.iso

이렇게 하시면 CD-RW매체를 청소하고 굽게 됩니다.
하지만 "-blank=all"의 경우는 완전히 소거해주는 것으로 시간이 많이 필요로 합니다. 때문에 "-blank=minimal" 옵션을 사용하시는것으로 시간을 단축할수 있습니다.

참고로 "root" 유저로 하셔야 됩니다. 일반 유저로 CD를 굽기 위해서는 몇가지
확인 사항이 더 있는데 그부분은 각자 해결해보세요.


다음은 Linux Kernel v2.6기준 실행화면입니다. (Fedora Core1 ?CD1 iso image를 굽는 화면)
코드:
bash# cdrecord -v -eject -blank=minimal speed=4 dev=/dev/hdd -data yarrow-i386-disc1.iso
cdrecord: No write mode specified.
cdrecord: Asuming -tao mode.
cdrecord: Future versions of cdrecord may have different drive dependent defaults.
cdrecord: Continuing in 5 seconds...
Cdrecord-Clone 2.01 (i686-pc-linux-gnu) Copyright (C) 1995-2004 J\uffffrg Schilling
cdrecord: Warning: Running on Linux-2.6.12-gentoo-r6
cdrecord: There are unsettled issues with Linux-2.5 and newer.
cdrecord: If you have unexpected problems, please try Linux-2.4 or Solaris.
TOC Type: 1 = CD-ROM
scsidev: '/dev/hdd'
devname: '/dev/hdd'
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.8'.
SCSI buffer size: 64512
atapi: 1
Device type    : Removable CD-ROM
Version        : 0
Response Format: 1
Vendor_info    : 'HL-DT-ST'
Identifikation : 'RW/DVD GCC-4480B'
Revision       : '1.02'
Device seems to be: Generic mmc2 DVD-ROM.
Current: 0x000A
Profile: 0x000A (current)
Profile: 0x0009
Profile: 0x0008
Profile: 0x0002 (current)
Profile: 0x0010
Using generic SCSI-3/mmc   CD-R/CD-RW driver (mmc_cdr).
Driver flags   : MMC-2 SWABAUDIO BURNFREE
Supported modes: TAO PACKET SAO SAO/R96P SAO/R96R RAW/R16 RAW/R96P RAW/R96R
Drive buf size : 1944096 = 1898 KB
FIFO size      : 4194304 = 4096 KB
Track 01: data   629 MB
Total size:      723 MB (71:39.12) = 322434 sectors
Lout start:      723 MB (71:41/09) = 322434 sectors
Current Secsize: 2048
ATIP info from disk:
  Indicated writing power: 5
  Reference speed: 2
  Is not unrestricted
  Is erasable
  ATIP start of lead in:  -11615 (97:27/10)
  ATIP start of lead out: 335925 (74:41/00)
  1T speed low:  0 (reserved val  0) 1T speed high:  4
  2T speed low:  0 (reserved val  5) 2T speed high:  0 (reserved val 12)
  power mult factor: 4 5
  recommended erase/write power: 3
  A1 values: 02 4A B0
  A2 values: 5C C6 26
Disk type:    Phase change
Manuf. index: 18
Manufacturer: Plasmon Data systems Ltd.
Blocks total: 335925 Blocks current: 335925 Blocks remaining: 13491
Starting to write CD/DVD at speed 4 in real TAO mode for single session.
Last chance to quit, starting real write    0 seconds. Operation starts.
Waiting for reader process to fill input buffer ... input buffer ready.
Performing OPC...
Blanking PMA, TOC, pregap
Blanking time:   46.613s
BURN-Free is OFF.
Performing OPC...
Starting new track at sector: 0
Track 01:  629 of  629 MB written (fifo 100%) [buf 100%]   4.2x.
Track 01: Total bytes read/written: 660340736/660340736 (322432 sectors).
Writing  time: 1079.441s
Average write speed   4.0x.
Min drive buffer fill was 100%
Fixating...
Fixating time:   78.796s
cdrecord: fifo had 10402 puts and 10402 gets.
cdrecord: fifo was 0 times empty and 10314 times full, min fill was 76%.

'IT > Tips' 카테고리의 다른 글

글쓰기 목차  (0) 2009.07.22
linux signal  (0) 2009.07.21
linux shell shortcuts key  (0) 2009.07.13
yacc and readline  (0) 2009.07.09
bootsplash  (0) 2009.05.12