CD Writer mini-HOWTO <author>Matt Cutts, <em><htmlurl url="mailto:cutts@ms.uky.edu" name="cutts@ms.uky.edu"></em> <date>v0.2, 17 Dec 1994 <trans>Á¶ ¿ëÀÏ <em><htmlurl url="mailto:tolkien@nownuri.net" name="tolkien@nownuri.net"></em>, <trans>¾ö ±â¼º <em><htmlurl url="mailto:jurist@netkorea.co.kr" name="jurist@netkorea.co.kr"></em> <abstract> Linux¿¡¼­ CD WriterÀÇ »ç¿ë¿¡ ´ëÇؼ­ °£·«ÇÏ°Ô ¼³¸íÇß´Ù. </abstract> <!-- Table of contents --> <toc> <!-- Begin the document --> <sect>¼Ò°³ <p> ÀÌ ¹®¼­´Â Linux kernel v1.1.64, Philips CDD 521(°Ñ¿¡´Â Kodak PCD Writer 200 PLUS¶ó°í ÀûÇô ÀÖÁö¸¸), Adaptec 1542cf¸¦ °¡Áö°í CD¸¦ ±¸¿î ¹æ¹ýÀ» Àû¾ú´Ù ³»°¡ ¾ÆÁ÷ ´Ù¸¥ writerµéÀº testÇغ» ÀÏ´Â ¾øÁö¸¸, <tt/cdwrite/´Â ¾Æ¸¶µµ Philips writer¿¡¼­¸¸ ½ÇÇàµÇ´Â °Í°°´Ù. :-) Àü¹ÝºÎ´Â ³»°¡ Çß´ø ÀÏÀ» °úÁ¤º°·Î ºÐÇØÇÏ¿© À籸¼ºÇÑ °ÍÀÌ´Ù. ÇÑ ¹ø¸¸ ÇÏ¸é ±× ´ÙÀ½ºÎÅÍ ´ç½ÅÀÌ ÇÒ ÀÏÀº <tt/mkisofs/¿Í <tt/cdwrite/¸¦ »ç¿ëÇÏ¿© CD¸¦ ±Á±â¸¸ ÇÏ¸é µÈ´Ù. <sect1>Feedback <p> ÀÌ ¹®¼­´Â CD writer·Î ³»°¡ ÇÑ °æÇèÀ» ¼­¼úÇÏ°í ÀÖ´Ù. ³ª´Â ÀÌ ÀÏ¿¡ ´ëÇÑ ¸î°¡Áö Áú¹®À̳ª ÀÇ°ß¿¡ ´ë´äÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ºÎ´ã¾øÀÌ <htmlurl url="mailto:cutts@ms.uky.edu" name="Matt Cutts">·Î mailÀ» Áֱ⠹ٶõ´Ù. ¶ÇÇÑ ³»°¡ À߸ø ¾Ë°í ÀÖ´Â °Íµµ ÁöÀûÇØÁֱ⠹ٶõ´Ù. <sect>ÁøÇà¼ø¼­ <p> ÀÌ °÷Àº ³»°¡ ÇÑ ÀÏ ¸ðµÎ¸¦ ¼ø¼­´ë·Î Àû¾ú´Ù. kernel panicÀ¸·Î ÀÎÇÑ ÀýÂ÷µéÀº °Ç³Ê ¶Ù¾îµµ µÈ´Ù :-). super-user·Î¼­ ÀÌ process¸¦ ÁøÇà½ÃÄÑ¾ß ÇÔÀ» ¸í½ÉÇÏÀÚ. <sect1>Àü¿øÀ» ²ô°í, CD-Writer¸¦ ÄÄÇ»ÅÍ¿Í ¿¬°áÇÑ´Ù. ±×¸®°í reboot <p> --> kernel panic ¹ß»ý <sect1>1.1.64 kernel·Î upgrade <p> --> ¿©ÀüÈ÷ Kernel panic <sect1>1542cf settingÀ» ¹Ù²Þ <p> Mike McKenna(¿ì¸® ±¸¿ª hardware ´ã´çÀÚ)¿Í ³ª´Â ¿©±âÀú±â ¾à°£ settingÀ» ¹Ù²Ù¾ú´Ù. ¾Æ·¡¿¡ ÀÖ´Â listµéÁß Çϳª°¡ ¸ðµç error¸¦ Àâ¾Ò´Ù. ³ª´Â "Enable Disconnection"¸¦ CD writer¿¡ »óÀÀÇÏ´Â SCSI ID#¸¦ À§Çؼ­ "no"·Î ¹Ù²Û °ÍÀÌ error¸¦ Àâ¾Ò´Ù°í 90% È®½ÅÇÑ´Ù. ÇÏÁö¸¸ settingÀ» ÇÑ µÚ, CD¸¦ ±¸¿öº» ÀûÀÌ ¾ø´Ù. ÀÌ °ÍÀ» ¸ÕÀú Çغ¸°í, ¾È µÇ¸é ´Ù¸¥ °ÍÀ» Çغ¸±â ¹Ù¶õ´Ù. bootingÇÒ ¶§, Ctrl-A¸¦ ´­·¯ SCSI-select utilityÀÇ "Configure/View Host Adapter Settings"·Î µé¾î°£´Ù. ´ÙÀ½Àº ³»°¡ Çß´ø settingÀÌ´Ù. <code> Host Adapter IRQ Channel -> 11 Host Adapter DMA Channel -> 5 Host Adapter SCSI ID -> 7 [BIOS Revision: 2.02; Base Address: DC000h; Firmware: Rev. B.0; Checksum: A223h] (these should be irrelevant to you; DO NOT change the settings above) SCSI Parity Checking Enabled DMA Transfer Rate 5.0 MB/sec Host Adapter SCSI Termination Enabled SCSI Device Configuration (note hard drive = #0, writer = #1, 1542 = #7) #0 #1 #2 #3 #4 #5 #6 #7 Enable Sync Negotiation no no no no no no no no Enable FAST SCSI no no no no no no no no Enable Disconnection yes no yes yes yes yes yes yes Send Start Unit Command no yes no no no no no no *(default is all yes for Enable Disconnection and all no for Send Start Unit Command) Advanced Configuration Options Floppy Controller I/O Port (AHA-1542CF only) 3F0h-3F7h Reset SCSI Bus at Power-On Enabled Host Adapter BIOS (Configuration Utility Reserves BIOS Space) Enabled System Boot (INT 19h) Controlled by Host Adapter BIOS Enabled Extended BIOS Translation for DOS Drives > 1 GByte Disabled *Support Removable Disks Under BIOS as Fixed Disks Enabled Dynamically Scan SCSI Bus for BIOS Devices Disabled BIOS Support for More Than 2 Drives (MS-DOS(R) 5.0 and above) Disabled Immediate Return On Seek Command Enabled Display <Ctrl><A> Message During BIOS Initialization Enabled *BIOS Support for Floptical Drives Enabled </code> *Ç¥¿Í ´Ù¸¥ °ÍÀº default¿Í ´Ù¸¥ °ÍÀÌ´Ù. ÇÊ¿äÇÏÁö ¾ÊÀº °Í±îÁö Æ÷ÇÔÇÑ Àüü list¸¦ º¸¿©ÁÖ°Ô µÇ¾î ¹Ì¾ÈÇÏ´Ù. ÇÏÁö¸¸, SCSI Ãʺ¸ÀÚ´Â ÁÁ¾ÆÇÒ °ÍÀ̶ó°í »ý°¢ÇÑ´Ù. REMEMBER: ³»°¡ »ý°¢Çϱ⿡ ÇÊ¿äÇÑ º¯È­´Â "Enable Disconnection for the ID#"»ÓÀÌ´Ù. yes¸¦ no·Î ¹Ù²Ù¸é µÈ´Ù. °á°ú´Â: no panic; CDROM drive¸¦ sr0·Î ÀνÄÇÏ°í, SCSI generic drvier´Â Ç×»ó ±×·¸µíÀÌ ÀνÄÇß´ÂÁö ¿©ºÎ¸¦ ¾Ë·Á¿ÀÁö ¾Ê¾Ò´Ù. <sect1><em/mkisofs/¸¦ »ç¿ëÇؼ­ binary image »ý¼ºÇϱâ <p> <tscreen><verb> # mkisofs -o /home/cd.image /home/dir_to_archive </verb></tscreen> [tsx-11.mit.eduÀÇ /pub/linux/BETA/cdrom/mkisofs-1.00.tar.gz¸¦ °¡Á®´Ù°¡ »ç¿ë. version 1.01±îÁö ÀÖÀ½.] ¶Ç ´Ù¸¥ toolÀÎ <tt/iso9660-diagnose.tar.gz/¸¦ °°Àº µð·ºÅ丮¿¡¼­ °¡Á® ¿Ã ¼ö ÀÖ´Ù. section 3¿¡¼­ <tt/mkisofs/ÀÇ »ç¿ë¹ý ÂüÁ¶ <sect1>SCSI generic device ¸¸µé´Ù. <p> <tscreen><verb> # /dev/MAKEDEV sg </verb></tscreen> Joseph Julicher´Â SCSI inquiry byte¸¦ ó¸®Çϵµ·Ï kernel hackingÀ» Á¦¾ÈÇÏ¿´´Ù. (0x1f¿Í bit maskingÀ» ÇÏ¸é µÈ´Ù). ¶ÇÇÑ TYPE_WORM drive¸¦ "¾²±â°¡´É"À¸·Î ¹Ù²Ù¾ú´Ù; Á¦´ë·Î ¿õÁ÷ÀÌ°Ô ÇÏ´Â µ¥ ÇÊ¿äÇÑ °ÍÀÎÁö´Â È®½ÅÇÏÁö´Â ¸øÇÏÁö¸¸. »ç½Ç ³ª´Â ¸ðµç °ÍÀ» "¾²±â°¡´É"À¸·Î ¹Ù²Ù¾î ³õ¾Ò´Ù. (º¼Ç°¾øÁö¸¸, È¿°úÀûÀÌ´Ù!) <tscreen><verb> The original /usr/src/{linux-1.1.64/}linux/drivers/scsi/scsi.c (beginning around line 361) switch (type = scsi_result[0]) { case TYPE_TAPE : case TYPE_DISK : case TYPE_MOD : SDpnt->writeable = 1; break; case TYPE_WORM : case TYPE_ROM : SDpnt->writeable = 0; break; default : I changed it to: switch (type = scsi_result[0] & 0x1f) { case TYPE_TAPE : case TYPE_DISK : case TYPE_MOD : case TYPE_WORM : case TYPE_ROM : /* probably shouldn't be writeable :) */ SDpnt->writeable = 1; break; default : </verb></tscreen> <sect1><em/cdwrite/¸¦ °íÄ£´Ù. (³»°¡ °íÄ£ °ÍÀº v1.3) <p> [tsx-11.mit.eduÀÇ /pub/linux/BETA/cdrom/private/mkisofs/cdwrite-1.3.tar.gz¸¦ °¡Áö°í ÀÖ´Ù.] line 439ºÎÅÍ original programÀº ´ÙÀ½°ú °¥Àº code¸¦ °®°í ÀÖ¾ú´Ù. <tscreen><verb> set_timeout(fd, timeout); /* First make sure we know how to talk to this writer */ inquiry (fd, &ero;reply_len, &ero;reply, &ero;manufacturer[0], &ero;model[0]); if(strcmp(manufacturer,"PHILLIPS")) { </verb></tscreen> ³ª´Â À§¿¡ ´ÙÀ½ µÎÁÙÀ» ÷°¡ÇÔÀ¸·Î½á programÀ» ¹Ù²Ù¾ú´Ù. <tscreen><verb> /* new #define from drivers/scsi/scsi.h; orig program had this defined */ #define SG_SET_TIMEOUT 0x2201 (Following code replaced orig. code around line 439) /* set_timeout(fd, timeout);*/ if (ioctl(fd, SG_SET_TIMEOUT, SG_SET_TIMEOUT, &ero;timeout) < 0) { perror ("ioctl SG_SET_TIMEOUT"); exit(5); } /* First make sure we know how to talk to this writer */ inquiry (fd, &ero;reply_len, &ero;reply, &ero;manufacturer[0], &ero;model[0]); if(strcmp(manufacturer,"IMS")) { </verb></tscreen> Philips CDD 521Àº "IMS"¸¦ manufacturer·Î ¹ÝȯÇÏ°í, ³ª´Â ¿ø·¡ programÀÌ Çß´ø °Íó·³ timeoutÀ» ¼³Á¤Çϵµ·Ï °íÃÆ´Ù. cdwrite package¸¦ Ç®¸é, ¿ø programÀº "orig" directory¿¡ ÀÖ´Ù. <sect1>kernelÀ» ´Ù½Ã compileÇÏ°í reboot... <p> <bf><em>SCSI generic support</em></bf>¸¦ °¡´ÉÇÏ°Ô ÇÒ °Í. ±×·¯ÇÏÁö ¾Æ´ÏÇϸé generic driver´Â kernel¿¡ Æ÷ÇÔµÇÁö ¾Ê´Â´Ù. ÇöÀç ¼öÇàµÇ°í ÀÖ´Â kernelÀ» ¹Ù²Ù±â À§Çؼ­´Â reboot¸¦ ÇؾßÇÑ´Ù. <sect1>CD¸¦ ±Á´Â´Ù! <p> ¿¹¸¦ µé¾î, <tt>"cdwrite /dev/sgb < /home/cd.image"</tt> sgb°¡ CD writer, ´Ù½Ã ¸»ÇØ SCSI generic device b (hard drive°¡ generic device aÀ̹ǷÎ)ÀÌ°í, /home/cd.image´Â <tt/mkisofs/·Î ¸¸µç ISO9660 imageÀÌ´Ù. <sect>±×¸®°í... <p> À̷νá ÇÑ °³ÀÇ CD¸¦ ±Á±â À§ÇÑ Áغñ¸¦ ÀýÂ÷º°·Î ¼³¸íÇÏ¿´´Ù. ±× ÀÌÈÄ´Â »ç¼ÒÇÑ °ÍÀÌ´Ù. ´ç½ÅÀÇ disk¿¡ ÃæºÐÇÑ °ø°£ÀÌ ÀÖ´ÂÁö È®ÀÎÇ϶ó. ±×¸®°í,<tt>"mkisofs -o filename path"</tt> (path´Â ISO9660 formatÀ¸·Î copyÇÒ directory¸¦ ÁöĪÇÏ°í, filenameÀº Ãâ·Â ÀÌÁø fileÀÌ´Ù.)À̶ó°í ÇÏ¸é µÈ´Ù. <tt/mkisofs/´Â <bf>Rock Ridge extension</bf>°°Àº ¸¹Àº optionÀ» °¡Áö°í ÀÖ´Ù. Eric YoungdaleÀÌ µ¿ºÀÇÑ man page¸¦ ÂüÁ¶Çϵµ·Ï. ±× ´ÙÀ½Àº <tt>"cdwrite scsi_device < cdrom_file"</tt> (scsi_device´Â generic SCSI deviceÀÌ°í, cdrom_file´Â ISO9660 image fileÀÌ´Ù)¶ó°í Ç϶ó. <tt/cdwrite/´Â ¿ª½Ã ¾à°£ÀÇ optionÀ» - "-speed"(single/double speed·Î ½á¶ó), "-dummy"(disk¾øÀÌ testÇϱâÀ§ÇÑ) ¿Í °°Àº - °¡Áö°í ÀÖ´Ù. <em><bf>cdwrite.c</bf></em>¿¡ º¸¸é option¿¡ ´ëÇÑ ¼³¸íÀÌ ÀÖ´Ù. <sect>Thank you <p> ³»°¡ Áö³æ´ø ¹®Á¦Á¡À» ÇØ°áÇϱâ À§ÇÑ Á¦¾ÈÀ» ÇØÁֽŠ¿©·¯ºÐµé°Ô °¨»çÇÕ´Ï´Ù. <itemize> <item><tt/mkisofs/¸¦ ¸¸µå½Å Eric Youngdale <item><tt/cdwrite/¿øº»À» ¸¸µå½Å Adam Richter <item>SCSI generic problem¿¡ ´ëÇÑ Ãæ°í¸¦ ÇØÁֽŠJoseph Julicher <item>1542 setting¿¡ ´ëÇØ ¼³¸íÇØÁֽŠMike McKenna, ±×¸®°í, »ê¶æÇÑ Àå³­°¨À» Á¶»çÇÒ ¼ö ÀÖµµ·Ï Àú¸¦ °í¿ëÇØÁֽŠ°æ¿µÀÚ ¿©·¯ºÐ²² ¶ÇÇÑ °¨»çµå¸³´Ï´Ù. </itemize> </article>