5. ¿î¿µ»óÀÇ ¹®Á¦Á¡

5.1. ÂüÀ»¼º ¾ø´Â À̵éÀ» À§ÇÑ ¼Ò°³

¹®¼­Àб⸦ ÁÁ¾ÆÇÏ´Â »ç¶÷Àº ¾ø´Ù. »ç¶÷µéÀº ¹Ù·Î ¾ò°í ¼öÇàÇϱ⸦ ¿øÇÑ´Ù. µû¶ó¼­ À̹ø ºÎºÐ¿¡¼­´Â ºü¸£°Ô /dev »ó¿¡ devfs¸¦ ¸¶¿îÆ® ÇÏ¿© ¼öÇàÇϴµ¥ ÀÖ¾î ÇÊ¿äÇÑ ´Ü°è ¸¦ ¼³¸íÇÒ °ÍÀÌ´Ù. À̹ø ´Ü°è¸¦ °Ç³Ê¶Ù¾î¶ó. ±×·¯¸é ´ç½ÅÀº °ÅÀÇ ºÎÆÃÇÒ¼ö ¾ø´Â ½Ã½ºÅÛÀ» °¡ÁøÃ¤ ³¡³¯ °ÍÀÌ´Ù. ¾Æ·¡ÀÇ ºÎºÐµéÀº Á»´õ ÀÚ¼¼ÇÑ ºÎºÐ¿¡ ´ëÇØ ¼³¸íÇϰí ÀÖ°í, ÇʼöÀûÀÌÁö ¾ÊÀº ¼³Á¤¿É¼Ç¿¡ ´ëÇØ ³íÀÇÇÒ °ÍÀÌ´Ù.

5.1.1. Devfsd

OK, ´ç½ÅÀÌ À̺κÐÀ» Àаí ÀÖ´Ù¸é, ³ª´Â ´ç½ÅÀÌ devfs¸¦ »ç¿ëÇϱ⸦ ¿øÇÑ´Ù°í »ý°¢ÇÒ °ÍÀÌ´Ù. ù¹øÂ°·Î ´ç½ÅÀº /usr/src/linux¿¡ ÃÖ½ÅÀÇ Ä¿³Î¼Ò½º¸¦ Æ÷ÇÔÇϰí ÀÖ´ÂÁö È®½ÇÇÏ°Ô ÇØ¾ßÇÑ´Ù. ±×¸®°í µð¹ÙÀ̽º °ü¸® µ¥¸óÀÎ devfsd ¸¦ ÄÄÆÄÀÏ ÇÒ Çʿ䰡 ÀÖ´Ù. À̰ÍÀº http://www.atnf.csiro.au/~rgooch/linux/ ¿¡¼­ ¾òÀ»¼ö ÀÖ´Ù. ±× Ä¿³ÎÀº ¿¾ ¹öÀüÀÇ ³×ÀÌ¹Ö ½ºÅ°¸¶¿Í´Â »ó´çÈ÷ ´Ù¸¥ ³×ÀÌ¹Ö ½ºÅ°¸¶¸¦ °¡Áö±â ¶§¹®¿¡ ¿¹ÀüÀÇ ³×ÀÌ¹Ö ½ºÅ°¸¶°¡ ±úÁöÁö ¾Ê°í °è¼Ó »ç¿ëÇÒ ¼ö ÀÖµµ·ÏÇÏ´Â ¼ÒÇÁÆ®¿þ¾î¿Í ¼³Á¤ÆÄÀÏÀÎ devfsd¸¦ ¼³Ä¡ÇÒ Çʿ䰡 ÀÖ´Ù.

devfsd¸¦ ÄÄÆÄÀÏ ÇÏ°í ¼³Ä¡Ç϶ó. ´ç½ÅÀº ¿¹Àü ³×ÀÌ¹Ö ½ºÅ°¸¶¿¡ ´ëÇÏ¿© ȣȯ¼ºÀ» °¡Áö´Â ½É¸µÅ©¸¦ Á¦°øÇÏ´Â ±âº» ¼³Á¤ÆÄÀÏÀÎ /etc/devfsd.conf¸¦ Á¦°ø¹ÞÀ» °ÍÀÌ´Ù. ÃæºÐÇÑ Áö½ÄÀ» ¾ò±â Àü±îÁö ÀÌ ÆÄÀÏÀ» ¼öÁ¤ÇÏÁö ¸»¶ó. ÃæºÐÇÑ Áö½ÄÀ» °¡Áö°í ÀÖ´Ù°í »ý°¢ÇÑ´Ù ÇÒÁö¶óµµ, ¾Æ·¡¿¡¼­ ºÎÆÃµÈ devfs°¡ °¡´ÉÇÑ ½Ã½ºÅÛ°ú À̰ÍÀÌ Á¦´ë·Î ÀÛµ¿ÇÏ´ÂÁö¿¡ ´ëÇØ °ËÁõÀÌ ³¡³¯¶§±îÁö ¼öÁ¤ÇÏÁö ¸»¶ó.

ÀÌÁ¦ devfsd°¡ °¡Àå óÀ½(ÆÄÀϽýºÅÛÀÇ Ã¼Å©°¡ ÀϾ±â Àü¿¡)¿¡ ½ÃÀ۵ǵµ·Ï ¸ÞÀÎ ½Ã½ºÅÛÀÇ ºÎÆ® ½ºÅ©¸³Æ®¸¦ ¼öÁ¤ÇØ¾ß ÇÑ´Ù. °¡±Ý /etc/rc.d/rc.sysinitÀÌ SysV Çü½ÄÀÇ ºÎÆ® ½ºÅ©¸³Æ®¿Í ÇÔ²² ½Ã½ºÅÛ¿¡¼­ ¸ÞÀÎ ºÎÆ® ½ºÅ©¸³Æ®·Î »ç¿ëµÈ´Ù. BSD Çü½ÄÀÇ ºÎÆ® ½ºÅ©¸³Æ®¸¦ °¡Áö´Â ½Ã½ºÅÛ¿¡¼­´Â /etc/rc µµ »ç¿ëµÈ´Ù. /sbin/rcµµ Ã¼Å©ÇØº¸¶ó.

Âü°í: ºÎÆ® ½ºÅ©¸³Æ®¿¡ ³Ö¾î¾ß µÉ ÁÙÀº Á¤È®ÇÏ°Ô ´ÙÀ½°ú °°¾Æ¾ß ÇÔÀ» ¸í½ÉÇ϶ó :

/sbin/devfsd /dev

Àý´ë·Î ¾î¶°ÇÑ µ¥¸ó ½ÇÇà ÇÁ·Î±×·¥µµ »ç¿ëÇÏÁö ¸»¶ó. ±×·¸Áö ¾ÊÀ¸¸é ºÎÆ®½ºÅ©¸³Æ®´Â devfsd°¡ ÃʱâÈ­ÇÏ´Â °ÍÀ» ±â´Ù·ÁÁÖÁö ¾Ê´Â´Ù.

5.1.2. ½Ã½ºÅÛ ¶óÀ̺귯¸®µé

À߸øµÈ ¼ÒÇÁÆ®¿þ¾î°¡ µð¹ÙÀ̽º ³×ÀÓ¿¡ ´ëÇØ °¡Á¤Çϱ⠶§¹®¿¡ ÀϾ´Â ¹®Á¦Á¡µéÀÌ ÀÖ´Ù. ÀÚ¼¼ÇÏ°Ô ¸»Çϸé, ¾î¶² ¼ÒÇÁÆ®¿þ¾î´Â ½Éº¼¸¯ ¸µÅ©·Î µÈ µð¹ÙÀ̽º¸¦ »ç¿ëÇÏÁö ¸øÇÑ´Ù. ¸¸¾à libc5 ¸¦ »ç¿ëÇÏ´Â ½Ã½ºÅÛÀ» »ç¿ëÇϰí ÀÖ´Ù¸é, libc5.4.44¸¦ ¼³Ä¡Çضó(¸¸¾à libc5.4.46À» »ç¿ëÇϰí ÀÖ´Ù¸é ¿Ã¹Ù¸£°Ô ÀÛµ¿ÇÏ´Â libc5.4.44·Î ´Ù¿î±×·¹À̵åÇ϶ó). ¸¸¾à glibc¿¡ ±âÃÊÇÑ ½Ã½ºÅÛÀ» »ç¿ëÇÑ´Ù¸é glibc 2.1.3 ÀÌ»óÀÎÁö È®ÀÎÇØ¾ß ÇÑ´Ù.

5.1.3. /etc/securetty

PAM(Pluggable Authentication Modules)Àº ´õ ³ªÀº »ç¿ëÀÚ ÀÎÁõ°ú ¼­ºñ½º¸¦ Á¦°øÇϱ⠶§¹®¿¡ À¯¿¬ÇÑ ¸ÞÄ¿´ÏÁòÀ¸·Î Æò°¡¹Þ°í ÀÖ´Ù. ºÒÇàÇϰԵµ, ±×°ÍÀº ±úÁö±â ½±°í, º¹ÀâÇÏ°í ¹®¼­È­ µÇ¾î ÀÖÁö ¾Ê´Ù(·¹µåÇÞ 6.1°ú ´Ù¸¥ ¹èÆ÷ÆÇÀ» È®ÀÎÇØº¸¶ó). PAMÀº ½Éº¼¸¯¸µÅ©¿Í´Â ¹®Á¦¸¦ ÀÏÀ¸Å²´Ù. ´ÙÀ½ÀÇ ÁÙÀ» /etc/securetty ÆÄÀÏ¿¡ Ãß°¡½ÃÄѶó :

vc/1
vc/2
vc/3
vc/4
vc/5
vc/6
vc/7
vc/8
À̰ÍÀº º¸¾ÈÀ» ¾àÈ­½ÃŰÁö ¾ÊÀ» °ÍÀÌ´Ù. ¸¸¾à 2.10.h ÀÌÀüÀÇ util-linux ¹öÀüÀ» »ç¿ëÇϰí ÀÖ´Ù¸é ±× ÀÌÈÄÀÇ ¹öÀüÀ¸·Î ¾÷±×·¹À̸¦ Çϱ⠹ٶõ´Ù. ¸¸¾à ¾÷±×·¹À̵å ÇÒ ¼ö ¾ø´Ù¸é, ´ÙÀ½ÀÇ ÁÙÀ» /etc/securetty ÆÄÀÏ¿¡ Ãß°¡Ç϶ó :
1
2
3
4
5
6
7
8
À̰ÍÀº ³×Æ®¿öÅ©¸¦ ÅëÇÑ ·çÆ®ÀÇ ·Î±×ÀÎÀ» Çã¿ëÇϱ⠶§¹®¿¡(ÆÐ½º¿öµå´Â ¿ä±¸µÈ´Ù) º¸¾ÈÀ» ¾àÈ­½ÃŲ´Ù. ±×·¯³ª, ½É¸µÅ©¸¦ Ãë±ÞÇϴµ¥ À־ ¹®Á¦°¡ Àֱ⠶§¹®¿¡, ³ª´Â ¾î¶² °æ¿ì¿¡¶óµµ Á¦°øµÇ´Â º¸¾È·¹º§¿¡ ÀǽÉÀ» °¡Áö°í ÀÖ´Ù. (¿ªÀÚ ÁÖ : PAMÀÌ ½É¸µÅ©¿¡ ¹®Á¦Á¡À» º¸À̱⠶§¹®¿¡, ¾îÂ÷ÇÇ º¸¾È¿¡´Â ¹®Á¦Á¡ÀÌ ÀÖ´Ù´Â ¸»)

5.1.4. Xfree86

ÇʼöÀûÀÌÁö´Â ¾ÊÁö¸¸, Á»´õ devfs¿¡ ¹ÐÁ¢Çϵµ·Ï ÇÏ´Â ÆÐÄ¡ÀÇ ÀÏȯÀ¸·Î XFree86 4.0À¸·Î ¾÷±×·¹À̵å ÇÏ´Â °ÍÀº ÁÁÀº »ý°¢ÀÌ´Ù. ¸¸¾à ±×·¸°Ô ÇÏÁö ¾Ê´Â´Ù¸é, ÀÏ¹Ý »ç¿ëÀÚ°¡ startx¸¦ ÇÒ¼ö ÀÖµµ·Ï /etc/security/console.perms¿¡ ´ÙÀ½ÀÇ ÆÐÄ¡¸¦ Àû¿ëÇØ¾ß ÇÒ °ÍÀÌ´Ù. ¸ðµç ¹èÆ÷ÆÇÀÌ ÀÌ ÆÄÀÏÀ» °¡Áö°í ÀÖ´Â °ÍÀº ¾Æ´Ï¹Ç·Î(e.g. µ¥ºñ¾È) À̰ÍÀÌ Á¸ÀçÇÏÁö ¾Ê´Â´Ù°í ÇØµµ °ÆÁ¤ÇÒ ÇÊ¿ä´Â ¾ø´Ù.

--- /etc/security/console.perms.orig    Sat Apr 17 16:26:47 1999
+++ /etc/security/console.perms Fri Feb 25 23:53:55 2000
@@ -14,7 +14,7 @@
# man 5 console.perms

# file classes -- À̰ÍÀº Á¤±ÔÇ¥Çö½ÄÀÌ´Ù.
-<console>=tty[0-9][0-9]* :[0-9]\.[0-9] :[0-9]
+<console>=tty[0-9][0-9]* vc/[0-9][0-9]* :[0-9]\.[0-9] :[0-9]

# device classes -- these are shell-style globs
<floppy>=/dev/fd[0-1]*
¸¸¾à ÆÐÄ¡°¡ Àû¿ëµÇÁö ¾Ê´Â´Ù¸é, ´ÙÀ½°ú °°ÀÌ º¯°æÇ϶ó.:
<console>=tty[0-9][0-9]* :[0-9]\.[0-9] :[0-9]
À»
<console>=tty[0-9][0-9]* vc/[0-9][0-9]* :[0-9]\.[0-9] :[0-9]
À¸·Î ¼öÁ¤ÇÏ¸é µÈ´Ù.

5.1.5. devpts¸¦ ÁßÁö½Ã۱â

³ª´Â /dev/pts¿¡ ¸¶¿îÆ®µÈ devpts°¡ Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù´Â º¸°í¸¦ ¹Þ¾Ò´Ù. devfs´Â /dev/pts¸¦ °ü¸®ÇϹǷÎ, ´õ ÀÌ»ó devpts¸¦ ¸¶¿îÆ®ÇÒ ÇÊ¿ä´Â ¾ø´Ù. /etc/fstabÆÄÀÏÀ» ¼öÁ¤Çؼ­ ¸¶¿îÆ®µÇÁö ¾Êµµ·Ï Çϰųª, Ä¿³Î ¼³Á¤¿¡¼­ devpts¸¦ »ç¿ëÇÏÁö ¾Êµµ·Ï Ç϶ó.

5.1.6. Áö¿øµÇÁö ¾Ê´Â µå¶óÀ̹ö

¸ðµç µå¶óÀ̹ö°¡ devfs¸¦ Áö¿øÇÏÁö´Â ¾Ê´Â´Ù. ¸¸¾à ÀÌ·¯ÇÑ µå¶óÀ̹ö Áß¿¡ Çϳª¸¦ °¡Áö°í ÀÖ´Ù¸é, Àû´çÇÑ ¶§¿¡ µð¹ÙÀ̽º ³ëµå¸¦ »ý¼ºÇϵµ·Ï ºÎÆÃ½Ã¿¡ »ç¿ëÇÒ ¼ö ÀÖ´Â ½ºÅ©¸³Æ®³ª tarfile¸¦ ÀÛ¼ºÇÏ´Â °ÍÀÌ ÇÊ¿äÇÒ °ÍÀÌ´Ù. 5.3Àý Àº À̺κÐÀ» ¼³¸íÇϰí ÀÖ´Ù. 5.3Àý Àº devfs¸¦ Áö¿øÇÏ´Â µå¶óÀ̹öµéÀÇ ¸ñ·ÏÀÌ´Ù.

5.1.7. /dev/mouse

¸¹Àº ¹èÆ÷ÆÇµéÀÌ XFree86°ú GPMÀÇ ¸¶¿ì½º µð¹ÙÀ̽º¸¦ /dev/mouse·Î ¼³Á¤ÇÑ´Ù. ³ª´Â À̰ÍÀ» ¿ø·¡¿Í ´Ù¸£°Ô ¿ìÈ¸ÇØ¼­ Ãß°¡Çϱ⠶§¹®¿¡ ÁÁÁö ¸øÇÑ »ý°¢À̶ó°í »ý°¢ÇÑ´Ù. ¸¸¾à ´ç½ÅÀÌ ¼³Á¤ÆÄÀÏ¿¡¼­ »ìÆìº¼ ¶§, /dev/mouse¸¦ º¸°Ô µÈ´Ù¸é ¸¶¿ì½º°¡ ÂüÁ¶µÈ °÷ÀÌ ¾îµðÀÎÁö ±Ã±ÝÇÏ°Ô ¿©±æ °ÍÀÌ´Ù. µû¶ó¼­ ³ª´Â /etcX11/XF86CnfigÆÄÀÏ(±×¸®°í GPM ¼³Á¤ ÆÄÀÏ)¿¡ ½ÇÁ¦ ¸¶¿ì½º µð¹ÙÀ̽º(¿¹¸¦ µé¾î,/dev/psaux ¿Í °°Àº)¸¦ ±âÀÔÇÏ´Â °ÍÀ» ÃßõÇÑ´Ù.

´Ù¸¥ ¹æ¹ýÀ¸·Î´Â À§¿¡ ¼³¸íµÈ Áö¿øµÇÁö ¾Ê´Â µå¶óÀ̹ö¸¦ À§ÇÑ Å×Å©´ÐÀ» »ç¿ëÇØµµ µÈ´Ù.

5.1.8. Ä¿³Î

¸¶Áö¸·À¸·Î, devfs°¡ Ä¿³Î¿¡¿¡¼­ ÄÄÆÄÀÏ µÇµµ·Ï ÇØ¾ß ÇÑ´Ù. °¡Àå ÁÁ¾ÆÇÏ´Â Ä¿³Î ¼³Á¤Åø(¿¹¸¦ µé¸é, make config ¶Ç´Â make xconfig)À» »ç¿ëÇÏ¿© CONFIG_EXPERIMENTAL=y, CONFIG_DEVFS_FS=y ±×¸®°í CONFIG_DEVFS_MOUNT=y ·Î ¼³Á¤Çϰí make dep;make clean Çϰí Ä¿³Î°ú ¸ðµâÀ» ÀçÄÄÆÄÀÏ Ç϶ó. ºÎÆÃ½Ã¿¡ devfs°¡ /dev ¿¡ ¸¶¿îÆ® µÉ °ÍÀÌ´Ù.

¸¸¾à ºÎÆÃ½Ã¿¡ ¹®Á¦(¿¹¸¦ µé¾î, ¼³Á¤ ´Ü°è¸¦ Àؾú´Ù´øÁö ÇÏ´Â)°¡ ¹ß»ýÇÑ´Ù¸é, Ä¿³Î ºÎÆ® Ä¿¸Çµå ¶óÀο¡ devfs=nomount¸¦ ³Ö°í Åë°úÇÒ ¼ö ÀÖ´Ù. À̰ÍÀº Ä¿³ÎÀÌ ºÎÆÃ½Ã¿¡ devfs¸¦ /dev¿¡ ¸¶¿îÆÃ ÇÏ´Â °ÍÀ» ¸·¾ÆÁØ´Ù. /proc/partitions, irrespective of whether devfs is mounted.

ÀϹÝÀûÀ¸·Î CONFIG_DEVFS_FS=y·ÎÇßÁö¸¸ /dev¿¡ ¸¶¿îÆ®µÇÁö ¾Êµµ·Ï ¸¸µé¾îÁø Ä¿³ÎÀº ¾ÈÀüÇÏ´Ù, ¶ÇÇÑ ¼³Á¤ÀÇ º¯°æµµ ÇÊ¿ä¾ø´Ù. ÁÖÀǸ¦ ±â¿ï¿©¾ß ÇÒ ÇѰ¡Áö ¿¹¿Ü´Â LABEL= Áö½ÃÀÚ°¡ /etc/fstab¿¡ »ç¿ëµÇ¾úÀ» ¶§ÀÌ´Ù. ÀÌ·± °æ¿ì¿¡´Â Á¤»óÀûÀ¸·Î ºÎÆÃÇÒ ¼ö ¾øÀ» °ÍÀÌ´Ù. À̰ÍÀº mount(8) ÇÁ·Î±×·¥ÀÌ ±× º¼·ý ·¹À̺íÀ» ã´Â °úÁ¤ÀÇ ÀϺκÐÀ¸·Î /proc/partitions¸¦ »ç¿ëÇϰí, ãÀº µð¹ÙÀ̽º À̸§ÀÌ CONFIG_DEVFS_FS=y·Î ¼³Á¤ÇÏ´Â °ÍÀÌ /proc/partitions ¿¡¼­ ±× À̸§À» º¯°æ½Ã۰í, devfs°¡ ¸¶¿îÆ® µÇ¾ú´ÂÁö »ó°üÇÏÁö ¾Ê±â ¶§¹®¿¡ »ç¿ëºÒ°¡´ÉÇÏ°Ô µÇ±â ¶§¹®ÀÌ´Ù.

ÀÌÁ¦ ÇÊ¿äÇÑ ¸ðµç ´Ü°è¸¦ ³¡³Â´Ù. ÀÌÁ¦ ´ç½ÅÀÇ ºû³ª´Â:-) »õ·Î¿î Ä¿³ÎÀ» ºÎÆÃÇÒ Áغñ°¡ µÇ¾ú´Ù. Áñ°Üº¸¶ó.

5.1.9. ¼³Á¤ÆÄÀÏ º¯°æÇϱâ

OK, ÀÌÁ¦ devfs°¡ »ç¿ë°¡´ÉÇÑ ½Ã½ºÅÛÀ» ºÎÆÃ½ÃÄ×°í, ¸ðµç °ÍÀÌ Á¦´ë·Î ÀÛµ¿ÇÑ´Ù. ÀÌÁ¦ ¼³Á¤ÆÄÀÏÀ» º¯°æ½Ãų Çʿ並 ´À³¥ °ÍÀÌ´Ù(ÀϹÝÀûÀ¸·Î ¼³Á¤´ë»óÀº /etc/fstab¿Í /etc/devfsd.confÀÌ´Ù). Á¦´ë·Î ÀÛµ¿ÇÏ´Â ½Ã½ºÅÛÀ» °®°í Àֱ⠶§¹®¿¡, ¼³Á¤À» º¯°æÇÏ°í³ª¼­ Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾Ê´õ¶óµµ, µðÆúÆ®·Î ¼³Á¤ÆÄÀÏÀ» º¹±¸Çϸé Àß ÀÛµ¿ÇÑ´Ù´Â °ÍÀ» ¾Ë ¼ö ÀÖ´Ù.

5.2. ¸®ºÎÆÃ ÈÄÀÇ ÆÛ¹Ì¼Ç À¯Áö

¸¸¾à µð¹ÙÀ̽º ÆÄÀÏÀ» »ý¼ºÇϱâ À§ÇÏ¿© mknod(2)¸¦ »ç¿ëÇÏÁö ¾Ê°í ¼ÒÀ¯±Ç/ÆÛ¹Ì¼ÇÀ» º¯°æÇϱâ À§ÇØ chmod(2) ¶Ç´Â chown(2)À» »ç¿ëÇÏÁö ¾Ê´Â´Ù¸é inodeÀÇ ctime´Â 0(12 am, 1-JAN-1970, GMT)À¸·Î ³²°ÜÁú °ÍÀÌ´Ù. ÀÌÈÄÀÇ ctimeÀ» °¡Áö´Â °ÍµéÀº ¼ÒÀ¯±Ç/ÆÛ¹Ì¼ÇÀÇ º¯È­°¡ ÀÖÀ» °ÍÀÌ´Ù. µû¶ó¼­, °£´ÜÇÑ ½ºÅ©¸³Æ® ¶Ç´Â ÇÁ·Î±×·¥À» »ç¿ëÇÏ¿© ¼Ë´Ù¿îÇϱâ Àü¿¡ ¸ðµç º¯°æµÈ inodeµéÀ» ¹­´Âµ¥ »ç¿ëÇÑ´Ù. È¿°úÀûÀ̱ä ÇÏÁö¸¸ À̰ÍÀ» Àû¿ëÇϱâ À§Çؼ­´Â ¸¹Àº °í·Á»çÇ×ÀÌ ÀÖ´Ù.

´õ ³ªÀº Á¢±Ù¹æ¹ýÀº ÆÛ¹Ì¼ÇÀ» ÀúÀåÇÏ°í ºÏ±¸Çϴµ¥ devfsd¸¦ »ç¿ëÇÏ´Â °ÍÀÌ´Ù. À̰ÍÀº ÆÛ¹Ì¼Ç¿¡¼­ÀÇ º¯°æÀ» ±â·ÏÇϱâ À§Çؼ­ ¼³Á¤µÇ°í, µ¥ÀÌŸº£À̽º(½ÇÁ¦·Î´Â µð·ºÅ丮 Æ®¸®)¿¡ ÀúÀåÇϰí, ºÎÆÃ½Ã¿¡ º¹±¸ÇÒ °ÍÀÌ´Ù. À̰ÍÀº ÇöÀçÀÇ ÆÛ¹Ì¼ÇÀ» ÀúÀåÇϴµ¥ À־ È¿À²ÀûÀÎ ¹æ¹ýÀ̸ç È¿°úÀûÀÎ °á°ú¸¦ º¸¿©ÁØ´Ù(¾Ë¼ö ¾ø´Â ¹Ì·¡ÀÇ ½Ã°£¿¡ ÆÛ¹Ì¼ÇÀ» ÀúÀåÇÏ´Â tar ÀÇ Á¢±Ù°ú´Â ´Ù¸£°Ô)

devsd¿¡ Á¦°øµÇ´Â ±âº»¼³Á¤ÆÄÀÏÀº Áö¼ÓÀûÀÎ °ü¸®°¡ °¡´ÉÇϵµ·Ï Çϱâ À§ÇØ ÁÖ¼®ÀÌ ´Þ¸° ¼³Á¤ºÎºÐÀ» °¡Áö°í ÀÖ´Ù.

¸¸¾à ¾î¶² ¹æ¹ýÀ¸·Î´ø tar Á¢±ÙÀ» »ç¿ëÇϱâ·Î °áÁ¤Çß´Ù¸é, tarÀº »õ·Î¿î µð¹ÙÀ̽º ³ëµå¸¦ »ý¼ºÇϱâ Àü¿¡ ¸ÕÀú inode¸¦ unlink(2) ÇÒ °ÍÀ̶ó´Â °ÍÀ» ÁÖÀÇÇ϶ó. unlink(2)´Â devfs ¿£Æ®¸®¿Í µð¹ÙÀ̽º µå¶óÀ̹ö »çÀÌÀÇ ¿¬°áÀ» ²÷¾î¹ö¸®´Â È¿°ú¸¦ °¡Áø´Ù. ¸¸¾à ºÎÆÃ ¿É¼Ç¿¡¼­ "devfs=only"¸¦ »ç¿ëÇϰí ÀÖ´Ù¸é, ¸ðµâÀ» ÀûÀçÇϱâ À§ÇØ ÇÊ¿äÇÑ µð¹ÙÀ̽º µå¶óÀ̹ö¿¡ ´ëÇÑ Åë·Î¸¦ ÀÒ°Ô µÈ´Ù. ³ª´Â À̰ÍÀ» tarÀÇ ¹ö±×¶ó°í »ý°¢Çϰí ÀÖ´Ù(½ÇÁ¦·Î tar°¡ inode¸¦ ¸ÕÀú unlink(2)ÇÒ ÇÊ¿ä´Â ¾ø´Ù)

´Ù¸¥ ¹æ¹ýÀ¸·Î´Â, µð¹ÙÀ̽ºÀÇ Á»´õ öÇÐÀûÀÎ ÆÛ¹Ì¼Ç °ü¸®¸¦ Á¦°øÇϱâ À§ÇÏ¿© devfsd¸¦ »ç¿ëÇÒ ¼öµµ ÀÖ´Ù. ´ç½ÅÀº µð¹ÙÀ̽º´ç ÇϳªÀÇ ¿£Æ®¸®¸¦ ÇÒ´çÇÏ´Â ÁøºÎÇÑ ¹æ¹ýº¸´Ù, ÇϳªÀÇ ¼³Á¤À» ÅëÇÏ¿© ¸ðµç µð¹ÙÀ̽º ±×·ì¿¡ ´ëÇÏ¿© ÆÛ¹Ì¼ÇÀ» ÀúÀåÇÒ ¼ö ÀÖ´Ù.

5.2.1. /dev¿¡ ¸¶¿îÆ®µÈ ÆÛ¹Ì¼Ç µ¥ÀÌŸº£À̽ºÀÇ ÀúÀå

¸¸¾à devfs°¡ /dev¿¡ ¸¶¿îÆ® µÈä·Î disc-baed /dev¿¡ µð¹ÙÀ̽ºÀÇ ÆÛ¹Ì¼ÇÀ» ÀúÀåÇϰųª º¹±¸Çϱ⸦ ¿øÇÑ´Ù¸é ±×·¸°Ô ÇÒ ¼öµµ ÀÖ´Ù. À̰ÍÀº 2.4.x Ä¿³Î (½ÇÁ¦·Î´Â, 2.3.99 ÀÌÈÄ)ÀÇ VFS ¹ÙÀεù ±â´ÉÀ» ÇÊ¿ä·Î ÇÑ´Ù. ÀÌ ±â´ÉÀ» ¼³Á¤Çϱâ À§Çؼ­´Â ¾Æ·¡¿Í °°ÀÌ Ç϶ó:

  • ºÎÆÃ½Ã¿¡ devfs°¡ ¸¶¿îÆ® µÇÁö ¾Êµµ·ÏÇ϶ó

  • /dev-stateµð·ºÅ丮¸¦ ¸¸µé¾î¶ó

  • ºÎÆ® ½ºÅ©¸³Æ®ÀÇ ¾ÕºÎºÐ¿¡ ´ÙÀ½ÀÇ ÁÙÀ» Ãß°¡Ç϶ó

    mount --bind /dev /dev-state
    mount -t devfs none /dev
    devfsd /dev

  • /etc/devfsd.conf¿¡ ´ÙÀ½À» Ãß°¡Ç϶ó:

    REGISTER	^pt[sy]/.*	IGNORE
    CHANGE		^pt[sy]/.*	IGNORE
    REGISTER	.*		COPY	/dev-state/$devname $devpath
    CHANGE		.*		COPY	$devpath /dev-state/$devname
    CREATE		.*		COPY	$devpath /dev-state/$devname

  • ¸®º×

5.2.2. ÀÏ¹Ý µð·ºÅ丮¿¡ ÆÛ¹Ì¼Ç µ¥ÀÌÅͺ£À̽º º¹±¸Çϱâ

¸¸¾à VFS ¹ÙÀεùÀ» Áö¿øÇÏÁö ¾Ê´Â ¿À·¡µÈ Ä¿³ÎÀ» »ç¿ëÁßÀ̶ó¸é, /dev¿¡ ¸¶¿îÆ®µÇ¾î ÀÖ´Â ÆÛ¹Ì¼Ç µ¥ÀÌŸº£À̽º¸¦ °¡Á®¿Ã ¼ö ¾øÀ» °ÍÀÌ´Ù. ±×·¯³ª ±× µ¥ÀÌŸº£À̽º¸¦ º¹±¸Çϱâ À§ÇÏ¿© ÀÏ¹Ý µð·ºÅ丮¸¦ ¸¸µé ¼ö ÀÖ´Ù. À§ÀÇ /etc/devfsd.confÆÄÀÏÀº ¿©ÀüÈ÷ »ç¿ë°¡´É ÇÒ °ÍÀÌ´Ù. ´ç½ÅÀº devfsd¸¦ ÀνºÅç Çϱ⿡ ¾Õ¼­ /dev-stateµð·ºÅ丮¸¦ ¸¸µé¾î¾ß ÇÑ´Ù. ¸¸¾à /dev¿¡ ¿¹ÀüÀÇ ÆÛ¹Ì¼ÇÀ» °¡Áö°í ÀÖ´Ù¸é, »õ·Î¿î µð·ºÅ丮¿¡ µð¹ÙÀ̽º ³ëµåµéÀ» Ä«ÇÇ(¶Ç´Â move)ÇÏ¸é µÈ´Ù.

5.2.3. ´õ ³ªÀº ¹æ¹ý

°¡Àå ÁÁÀº ¹æ¹ýÀº /dev¿¡ ¸¶¿îÆ®µÇ¾î ÀÖ´Â ÆÛ¹Ì¼ÇÀÇ µ¥ÀÌÅͺ£À̽º¸¦ °¡Á®¿À´Â °ÍÀÌ´Ù. ±× ÀÌÀ¯´Â µð¹ÙÀ̽º ³ëµåµéÀ» /dev-state¿¡ º¹»çÇÒ Çʿ䰡 ¾ø°í, /dev-state(devfs¸¦ À§ÇÑ) °ú /dev/(devfs¸¦ »ç¿ëÇÏÁö ¾ÊÀ» °æ¿ì¿¡) »çÀÌ¿¡ ÆÛ¹Ì¼ÇÀ» º¹»çÇÒ Çʿ䰡 ¾øÀÌ devfs¿Í devfs¸¦ »ç¿ëÇÏÁö ¾Ê´Â Ä¿³ÎÀ» ¹Ù²Ü ¼ö Àֱ⠶§¹®ÀÌ´Ù.

5.3. devfsÀÇ Áö¿ø¾øÀÌ µå¶óÀ̹ö¸¦ Ãë±ÞÇϱâ

ÇöÀç, Ä¿³Î¿¡¼­ ¸ðµç µå¶óÀ̹öµéÀÌ devfs¸¦ »ç¿ëÇϵµ·Ï ¼öÁ¤µÇÁö´Â ¾Ê¾Ò´Ù. ¿©ÀüÈ÷ devfs°¡ Áö¿øµÇÁö ¾Ê´Â µð¹ÙÀ̽º µå¶óÀ̹öµéÀº ÀÚµ¿À¸·Î devfs¿¡ ³ªÅ¸³ªÁö ¾ÊÀ» °ÍÀÌ´Ù. ÀÌ·¯ÇÑ µå¶óÀ̹öµé¿¡ ´ëÇÑ µð¹ÙÀ̽º¸¦ »ý¼ºÇÏ´Â °¡Àå °£´ÜÇÑ ¹æ¹ýÀº ÇÊ¿äÇÑ µð¹ÙÀ̽º ³ëµåµéÀ» Æ÷ÇÔÇϰí ÀÖ´Â tarfileÀ» Ǫ´Â °ÍÀÌ´Ù. À̰ÍÀ» ºÎÆ® ½ºÅ©¸³Æ®¿¡ ³Ö¾îµµ µÈ´Ù. ÀÌÁ¦ ´ç½ÅÀÇ ¸ðµç µå¶óÀ̹öµéÀº Àüó·³ ÀÛµ¿ÇÒ °ÍÀÌ´Ù.

°í¹«ÀûÀ̰Եµ ´ëºÎºÐÀÇ »ç¶÷µé¿¡°Ô devfs´Â ´ëºÎºÐÀÇ ±â´ÉÀ» ÀÒÁö ¾Ê°í (¿¹¸¦ µé¾î ´Ù¾çÇÑ µð¹ÙÀ̽º¿¡ ´ëÇÑ Á¢±Ù »ó½Ç) /dev À§¿¡ devfsµð·ºÅ丮¸¦ ¸¶¿îÆ® ÇÒ ¼ö ÀÖ´Â ÃæºÐÇÑ Áö¿øÀ» ÇÑ´Ù. 1998 ³â 1¿ù 22ÀÏ ÀÌÈÄ (devfs ÆÐÄ¡ ¹öÀü 10)ºÎÅÍ ³ª´Â(ÀúÀÚ´Â) ÀÌ ¹æ¹ý(devfs)¸¦ ¿î¿µÇϰí ÀÖ´Ù. ³»°¡ °¡Áö°í ÀÖ´Â ¸ðµç µð¹ÙÀ̽ºµéÀº devfs¿¡ ³ªÅ¸³ª¹Ç·Î ³ª´Â ¾Æ¹«°Íµµ ÀÒÀº °ÍÀÌ ¾ø´Ù.

°æ°í

¸¸¾à ´ç½ÅÀÇ ¼³Á¤ÀÌ ¿¹Àü¹æ½ÄÀÇ µð¹ÙÀ̽º À̸§(¿¹¸¦ µé¾î /dev/hda1 , /dev/sda1)À» ÇÊ¿ä·Î ÇÑ´Ù¸é, ȣȯ¿£Æ®¸®¸¦ À¯ÁöÇϵµ·Ï devfsd¸¦ ¼³Ä¡ÇÏ°í ¼³Á¤ÇØ¾ß ÇÑ´Ù. ´ç½ÅÀÌ À̰ÍÀ» ÇÊ¿ä·Î ÇÒ °ÍÀ̶ó´Â °ÍÀº °ÅÀÇ È®½ÇÇÏ´Ù. Ä¿³ÎÀÌ ·çÆ® µð¹ÙÀ̽º¿¡ ´ëÇØ ȣȯÇ׸ñÀ» »ý¼ºÇϱ⠶§¹®¿¡ initrd¸¦ ÇÊ¿ä·Î ÇÏÁö ¾Ê´Â´Ù´Â °ÍÀ» ±â¾ïÇ϶ó.

¸¸¾à Unix98 PTYs¸¦ »ç¿ëÇϱâ ÀÖ´Ù¸é devfs °¡ /dev/pts¸¦ °ü¸®ÇÒ ¼ö Àֱ⠶§¹®¿¡ ´õ ÀÌ»ó devpts ¸¦ ¸¶¿îÆ®ÇÒ Çʿ䰡 ¾ø´Ù´Â °ÍÀ» ±â¾ïÇ϶ó. À̰ÍÀº devpts¸¦ ÄÄÆÄÀÏ ÇÏ°í ¼³Ä¡ÇÒ Çʿ䰡 ¾ø±â ¶§¹®¿¡, ¾à°£ÀÇ ·¥À» Àý¾àÇÑ´Ù. glibcÀÇ ¾î¶² ¹öÀüÀº devfs ½Ã½ºÅÛ¿¡¼­ Unix98 pty¸¦ Ãë±ÞÇϴµ¥ ¹ö±×¸¦ °¡Áö°í ÀÖ´Ù´Â °ÍÀ» ¸í½ÉÇ϶ó. ¼öÁ¤À» À§Çؼ­´Â glibc ¸ÞÀÎÅ×ÀÌ³Ê¿Í ¿¬¶ôÇ϶ó. Glibc 2.1.3 Àº ¼öÁ¤µÇ¾ú´Ù.

¸¸¾à devfsd¸¦ ¼³Ä¡ÇÏÁö ¾Ê¾Ò´Ù¸é /etc/fstab¸¦ ¼öÁ¤ÇÏ´Â °Í¿¡¼­ºÎÅÍ ´Ù¸¥ °Íµéµµ ¼öÁ¤ÇØ¾ß ÇÑ´Ù´Â °ÍÀ» ¸í½ÉÇ϶ó. (X ¼­¹ö¿Í °°Àº) ¾î¶² ¼ÒÇÁÆ®¿þ¾î´Â ±× ¼Ò½º¿¡ µð¹ÙÀ̽º À̸§À» °íÁ¤½ÃÄÑ ³õ´Â´Ù. ½ÇÁ¦·Î ȣȯ ¿£Æ®¸®¸¦ »ý¼ºÇϴµ¥ devfsd¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ÈξÀ ½±´Ù. ´ç½ÅÀº ´ç½ÅÀÇ ½Ã½ºÅÛÀ» devfsd°¡ ȣȯÇ׸ñÀ» »ý¼ºÇϵµ·Ï Á¦ÇÑÇϸ鼭 ¼­¼­È÷ »õ·Î¿î µð¹ÙÀ̽º À̸§(¿¹¸¦ µé¾î, /etc/fstabºÎÅÍ ½ÃÀÛÇÏ¿©)À» »ç¿ëÇϵµ·Ï ÇÒ¼ö ÀÖ´Ù.

DEVFS°¡ °¡´ÉÇÑ Ä¿³ÎÀ» ºÎÆÃÇϱâ Àü¿¡ DEVFSD¸¦ ¼³Ä¡ÇÏ¿´´ÂÁö È®ÀÎÇ϶ó!!

devfs°¡ 2.3.46 Ä¿³Î¿¡ µé¾î°¬À» ´ç½Ã, ³ª´Â ¼ö¸¹Àº º¸°í¸¦ ¹Þ¾Ò´Ù. ´ëºÎºÐÀÇ º¸°íµéÀº »ç¶÷µéÀÌ devfsd ¾øÀÌ ¿î¿µÇ߱⠶§¹®À̾ú°í, ±× Áß¿¡ ¾î¶² °ÍµéÀÌ ±úÁ³´Ù(»ç¿ëÇÒ ¼ö ¾ø´Â ½Ã½ºÅÛÀÌ µÇ¾ú´Ù). ³ª´Â ¼ø°£ÀûÀÎ ¼³Á¤À߸øÀ¸·Î ÀÎÇÑ ¹ö±×º¸´Ù ½ÇÁ¦ ¹ö±×¿¡ Àü³äÇϱ⸦ ¿øÇÑ´Ù. ¸¸¾à ´Ù¸¥ ÄÚµå(¿¹¸¦ µé¾î glibc, X server)¿¡¼­ ¹ö±×/¿À·ù¸¦ ¼öÁ¤ÇØ¾ß ÇÑ´Ù°í ´À³¤´Ù¸é, ±× ¸ÞÀÎÅ×À̳ʵ鿡°Ô È®ÀÎÇ϶ó. ±×µéÀº (³ªº¸´Ù) ÈǸ¢ÇÏ°Ô ÇØ°áÇÒ °ÍÀÌ´Ù.

5.4. Devfs ÀÇ ¹æ¹ý

devfsÀÇ Ä¿³ÎÆÐÄ¡´Â ÇÕ¸®ÀûÀÎ µð¹ÙÀ̽º Æ®¸®¸¦ »ý¼ºÇÑ´Ù. À§¿¡ ±â¼úµÈ´ë·Î, ¸¸¾à ¿¹Àü ¹æ½ÄÀÇ /dev ³×ÀÌ¹Ö ½ºÅ°¸¶¸¦ À¯ÁöÇϱ⠿øÇÑ´Ù¸é, Àû´çÇϰÔ(¸Ç ÆäÀÌÁö¿¡¼­ º¸´Â´ë·Î) devfsd¸¦ ¼³Á¤ÇÏ¸é µÈ´Ù. ¿¹Àü ¹æ½ÄÀ» ¼±È£ÇÏ´Â »ç¶÷µéÀº À̹ø ¼½¼ÇÀ» °Ç³Ê¶Ù¾î¶ó. ü°èÈ­µÈ À̸§°ú ¸íÈ®ÇÑ /dev¸¦ ÁÁ¾ÆÇÏ´Â »ç¶÷µéÀº Àо±æ ¹Ù¶õ´Ù.

¸¸¾à devfsd¸¦ ½ÇÇàÇÏÁö ¾Ê¾Ò´Ù¸é, ȣȯ ¿£Æ®¸®ÀÇ °ü¸®¸¦ ÇÒ¼ö ¾ø°í, »õ·Î¿î À̸§À» »ç¿ëÇϱâ À§Çؼ­´Â ´ç½ÅÀÇ ½Ã½ºÅÛÀ» ¼³Á¤ÇØ¾ß ÇÒ °ÍÀÌ´Ù. ¿¹¸¦ µé¾î, »õ·Î¿î µð½ºÅ©ÀÇ ³×ÀÌ¹Ö ½ºÅ°¸¶¸¦ »ç¿ëÇϱâ À§Çؼ­ /etc/fstab¸¦ ¼öÁ¤ÇØ¾ß ÇÒ °ÍÀÌ´Ù. ¸¸¾à devfs¸¦ »ç¿ëÇÏÁö ¾Ê´Â Ä¿³ÎÀ» ºÎÆÃÇϽñ⠿øÇÑ´Ù¸é, devfs¾øÀÌ Ä¿³ÎÀ» ºÎÆÃÇßÀ»¶§¸¦ À§ÇÏ¿© ¿¹Àü ¹æ½ÄÀÇ À̸§À¸·Î µ¹¾Æ°¥ disc-based /dev¿¡ ±âÃÊÇÑ È£È¯ ½É¸µÅ©°¡ ÇÊ¿äÇÒ °ÍÀÌ´Ù.

´ç½ÅÀº ȣȯ¿£Æ®¸®¸¦ À¯ÁöÇÒ µð¹ÙÀ̽º¸¦ ¼±ÅÃÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î, BSD pseudo-terminal µð¹ÙÀ̽º¿¡ ´ëÇÑ È£È¯ ¿£Æ®¸®¸¦ ¿øÇÒ ¼öµµ ÀÖ´Ù(±×·¸Áö ¾ÊÀ¸¸é C ¶óÀ̺귯¸®¸¦ ÆÐÄ¡Çϰųª, ´ë½Å¿¡ Unix98 ptys¸¦ »ç¿ëÇØ¾ß ÇÒ °ÍÀÌ´Ù). À̰ÍÀº /dev/devfsd.conf ¿¡ Á¤È®ÇÑ Á¤±ÔÇ¥Çö½ÄÀ» ³ÖÀ¸¸é µÇ´Â ÀÏÀÌ´Ù.

´ç½ÅÀÌ ¼±È£ÇÏ´Â ´Ù¸¥ ³×ÀÌ¹Ö ½ºÅ°¸¶¸¦ ¼±ÅÃÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î, ³ª´Â ³Ê¹« ¼öÁ÷ÀûÀ̱⠶§¹®¿¡ Ä¿³Î Á¦°ø À̸§¸¦ »ç¿ëÇÏÁö ¾Ê´Â´Ù. ÀϹÝÀûÀÎ À߸øµÈ »ý°¢Àº Ä¿³ÎÀÌ Á¦°øÇÏ´Â À̸§µéÀº ¼³Á¤ÆÄÀÏ¿¡ Á÷Á¢ÀûÀ¸·Î »ç¿ëµÇ¾î¾ß ÇÑ´Ù´Â °ÍÀÌ´Ù. À̰ÍÀº ±×·±°Ô ¾Æ´Ï´Ù. ±×°ÍµéÀº ÀåÂøµÈ µð¹ÙÀ̽ºµéÀÇ ·¹À̾ƿôÀ» ¹Ý¿µÇÏ°í ½±°Ô ºÐ·ùÇϱâ À§ÇÏ¿© µðÀÚÀÎµÈ °ÍÀÌ´Ù.

¸¸¾à Ä¿³ÎÀÌ Á¦°øÇÏ´Â À̸§À» ÁÁ¾ÆÇÑ´Ù¸é, ±×°ÍÀ¸·Î ÁÁ´Ù. ¸¸¾à ±×·¸Áö ¾Ê´Ù¸é, ´ç½ÅÀÌ Á»´õ ¼±È£ÇÏ´Â ³×ÀÓ½ºÆäÀ̽º¸¦ »ý¼ºÇϱâ À§ÇÏ¿© devfsd¸¦ »ç¿ëÇØ¾ß ÇÒ °ÍÀÌ´Ù. devfsd´Â ³í¸®ÀûÀÌ°í °ü¸®Çϱ⠽±µµ·Ï ÇÏ´Â ³×ÀÓ½ºÆäÀ̽º¸¦ »ý¼ºÇϱâ À§ÇÑ Äڵ带 Æ÷ÇÔÇϰí ÀÖ´Ù. ±Ùº»ÀûÀ¸·Î´Â, Ä¿³ÎÀÌ Á¦°øÇÏ´Â ³×ÀÓ½ºÆäÀ̽ºÀÇ »ý·«ÇüÀ» »ý¼ºÇÑ´Ù.

´ç½ÅÀº ÀڽŸ¸ÀÇ ³×ÀÓ½ºÆäÀ̽º¸¦ ¸¸µé±â À§ÇÑ °úÁ¤¿¡ ÀÖ´Ù. devfsd´Â ´ç½ÅÀÌ ÀÌ ÀÏÀ» ½±°Ô Çϵµ·Ï Çϴµ¥ ÇÊ¿äÇÑ ¸ðµç ±â¹ÝÀ» °¡Áö°í ÀÖ´Ù. ÇÊ¿äÇÑ ÀÏÀº ½ºÅ©¸³Æ®¸¦ ¸¸µå´Â °ÍÀÌ´Ù. ½ÉÁö¾î c Äڵ带 ÀÛ¼ºÇÒ ¼öµµ ÀÖÀ¸¸ç devfsd´Â È£Ãâ°¡´ÉÇÑ È®ÀåÀ¸·Î ±× °øÀ¯ ¿ÀºêÁ§Æ®¸¦ ÀûÀçÇÒ ¼ö ÀÖ´Ù.

5.5. ´Ù¸¥ ³íÁ¡

5.5.1. init ÇÁ·Î±×·¥

ÁÖÀǸ¦ ±â¿ï¿©¾ß ÇÒ ´Ù¸¥ Á¡Àº initÇÁ·Î±×·¥ÀÌ /dev/telinit À¯´Ð½º ¼ÒÄÏÀ» »ý¼ºÇÏ´ÂÁö¿¡ ´ëÇÑ °ÍÀÌ´Ù. initÀÇ ¾î¶² ¹öÀüÀº /dev/telinit¸¦ »ý¼ºÇϰí telinitÇÁ·Î±×·¥Àº init ÇÁ·Î¼¼½º¿Í Åë½ÅÇÑ´Ù. ¸¸¾à ÀÌ·± ½Ã½ºÅÛÀ» °¡Áö°í ÀÖ´Ù¸é, init °¡ ½ÃÀ۵DZâ Àü¿¡ devfs°¡ /dev¿¡ ¸¶¿îÆ®µÇµµ·Ï ÇØ¾ß ÇÑ´Ù. ´Ù¸¥ ¸»·Î Çϸé, initÈÄ¿¡ ¼öÇàµÇ´Â /etc/rc¿¡´Â devfs¸¦ ¸¶¿îÆ® Çϵµ·Ï ³Ö¾î¼­´Â ¾ÈµÈ´Ù. initÀÇ ´Ù¸¥ ¹öÀüµéÀº init°¡ ½ÃÀÛÇϱâ Àü¿¡ Á¸ÀçÇØ¾ß¸¸ ÇÏ´Â named pipe /dev/initctl °¡ ÇÊ¿äÇÏ´Ù. ´Ù½Ã¸»ÇÏÁö¸¸ init°¡ ½ÃÀ۵DZâ Àü¿¡ ±× named pipe¸¦ »ý¼ºÇϰí devfs¸¦ ¸¶¿îÆ®ÇØ¾ß ÇÑ´Ù.

±âº»ÀûÀÎ ÇൿÀº 2.3.x ÀÌÈÄÀÇ Ä¿³ÎÀÌ ºÎÆÃÇÒ¶§¿¡´Â /dev ¿¡ devfs¸¦ ¸¶¿îÆ® ÇÏÁö ¾Ê´Â °ÍÀÌ´Ù. À̰ÍÀº ºÎÆÃ ¿É¼Ç¿¡ "devfs=mount"¸¦ ³ÖÀ½À¸·Î½á °íÄ¥ ¼ö ÀÖ´Ù. ÀÌ ¹®Á¦´Â initÀÇ ¹®Á¦¸¦ ÇØ°áÇϰí, ´ÙÀ½ÀÇ ²ûÂïÇÑ »óȲ(Cannot open initial console ¸Þ¼¼Áö)À» ¸·¾ÆÁØ´Ù. devfs ÆÐÄ¡°¡ Àû¿ëµÇ¾î¾ß ÇÏ´Â 2.2.xÀÇ Ä¿³Î¿¡¼­´Â ±âº»ÀûÀ¸·Î ¸¶¿îÆ® ÇÑ´Ù.

¸¸¾à /dev¿¡ devfs¸¦ ÀÚµ¿À¸·Î ¸¶¿îÆ®ÇÑ´Ù¸é, ºÎÆ® ½ºÅ©¸³Æ®¿¡¼­ /dev/initctl¸¦ »ý¼ºÇϵµ·Ï ÇØ¾ß ÇÑ´Ù. ´ÙÀ½ÀÇ ÁÙÀ» Ãß°¡Ç϶ó:

mknod /dev/initctl p
kill -SIGUSR1 1 	# /dev/initctlÀÌ ÇöÀç Á¸ÀçÇÏ´ÂÁö¸¦ init¿¡ ¾Ë·ÁÁÜ
´Ù¸¥ ¹æ¹ýÀ¸·Î´Â, Ä¿³ÎÀÌ /dev¿¡ devfs¸¦ ¸¶¿îÆ® Çϱ⸦ ¿øÄ¡ ¾Ê´Â´Ù¸é, /dev/initctl¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇÏ¿© ´ÙÀ½ÀÇ ÇÁ·Î½ÃÁ®¸¦ »ç¿ëÇÒ ¼ö ¼ö ÀÖ´Ù:
# cd /sbin
# mv init init.real
# cat > init
#! /bin/sh
mount -n -t devfs none /dev
mknod /dev/initctl p
exec /sbin/init.real $*
[control-D]
# chmod a+x init
initÀÇ ÃֽйöÀüÀº /dev/initctl¸¦ ÀÚµ¿À¸·Î »ý¼ºÇϹǷÎ, À̰Ϳ¡ ´ëÇØ¼­ °ÆÁ¤ÇÒ Çʿ䰡 ¾ø´Ù´Â °ÍÀ» ±â¾ïÇ϶ó.

5.5.2. ¸ðµâ ÀÚµ¿·Îµù

¸ðµâÀÇ ÀÚµ¿·ÎµùÀ» Çϱâ À§Çؼ­´Â devfsd¸¦ ¼³Á¤ÇÒ Çʿ䰡 ÀÖ´Ù. ´ÙÀ½ÀÇ ÁÙÀ» /etc/devfsd.confÆÄÀÏ¿¡ Ãß°¡½ÃÄѶó:

LOOKUP	.*	MODLOAD
devfsd-v1.3.10 ÀÌÈÄ·Î, MODLOAD ¿¡ ÀÇÇØ »ç¿ëµÇ´Â Æ÷°ýÀûÀÎ /etc/modules.devfs ¼³Á¤ ÆÄÀÏÀÌ ¼³Ä¡µÈ´Ù. À̰ÍÀº ´ëºÎºÐÀÇ ¼³Á¤µé¿¡ ´ëÇØ ÃæºÐÇÏ´Ù. ¸¸¾à ¼³Á¤ÀÌ ´õ ÇÊ¿äÇÏ´Ù¸é, /etc/modules.confÆÄÀÏÀ» ¼öÁ¤Ç϶ó. devfs°¡ ¸ðµâÀÇ ÀÚµ¿·ÎµùÀ» ÇÏ´Â ¹æ¹ýÀº :

  • ÇÁ·Î¼¼½º°¡ µð¹ÙÀ̽º ³ëµåÀÇ Å½»ö½Ãµµ¸¦ ÇÑ´Ù(e.g. /dev/fred)

  • ¸¸¾à µð¹ÙÀ̽º ³ëµå°¡ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, Àüü°æ·Î°¡ ¹®ÀÚ¿­·Î devfsd¿¡ ³Ñ°ÜÁø´Ù.

  • devfsd´Â modprobe ÇÁ·Î±×·¥(À§¿¡¼­ º¸¿©Áø ¼³Á¤ ¶óÀÎÀÌ Á¸ÀçÇÏ´Â) ¿¡ ±× ¹®ÀÚ¿­À» ÀüÇØÁÖ°í, ±× ¼³Á¤ÆÄÀÏÀÎ /etc/modules.devfs¿¡ ¸í½ÃÇÑ´Ù.

  • /etc/modules.devfs´Â ·ÎÄà ¼³Á¤¿¡ Á¢±ÙÇϱâ À§ÇØ /etc/modules.confÀ» Æ÷ÇÔÇÑ´Ù.

  • modprobe´Â ±× °æ·Î¸¦ ¸ðµâÀ̸§À¸·Î º¯È¯ÇÏ´Â ¾Ù¸®¾î½º¸¦ Ž»öÇÔÀ¸·Î½á ±×°ÍÀÇ ¼³Á¤ÆÄÀÏÀ» ãÀ» °ÍÀÌ´Ù.

  • º¯È¯µÈ °æ·Î´Â ±× ¸ðµâÀ» ·ÎµùÇϴµ¥ »ç¿ëµÈ´Ù.

¸¸¾à mymod¸ðµâÀ» ·ÎµùÇϱâ À§ÇÏ¿© /dev/fred¸¦ Ž»öÇϱ⠿øÇÑ´Ù¸é, /etc/modules.conf¿¡ ´ÙÀ½ÀÇ ÁÙÀ» Ãß°¡Ç϶ó:

alias	/dev/fred	mymod
±× /etc/modules.devfs ¼­Á¤ ÆÄÀÏÀº Ç¥ÁØ µð¹ÙÀ̽º À̸§¿¡ ´ëÇØ¼­ °¢°¢ÀÇ ¾Ù¸®¾î½º¸¦ Á¦°øÇÑ´Ù. ¸¸¾à ÀÌ ÆÄÀÏÀ» ÀÚ¼¼ÇÏ°Ô Ã£´Â´Ù¸é, ¾î¶² ¸ðµâÀº ¿©·¯°³ÀÇ ¾Ù¸®¾î½º ¼³Á¤ ÁÙÀÌ ÇÊ¿äÇÏ´Ù´Â °ÍÀ» ¾Ë°ÍÀÌ´Ù. ±×°ÍÀº ¿§ ¹æ½Ã°ú »õ·Î¿î ¹æ½ÄÀÇ µð¹ÙÀ̽º À̸§¿¡ ´ëÇØ ¸ðµâ ÀÚµ¿·ÎµùÀ» Áö¿øÇϱâ À§ÇØ ÇÊ¿äÇÏ´Ù.

5.5.3. devfs µð¹ÙÀ̽º¿¡ root¸¦ ¸¶¿îÆ®Çϱâ

¸¸¾à "devfs=only" ºÎÆ® ¿É¼ÇÀ» ¼³Á¤ÇßÀ»¶§ devfs µð¹ÙÀ̽º°¡ root¸¦ ¸¶¿îÆ® Çϱ⸦ ¿øÇÑ´Ù¸é, ºÎÆÃ½Ã Ä¿³Î¿É¼Ç¿¡ "root=<device>" ¿É¼ÇÀ» ³Ö¾î¾ß ÇÑ´Ù. LILO¸¦ »ç¿ëÇÑ´Ù¸é, lilo.conf¿¡ À̰ÍÀ» °¡Áö°í ÀÖ¾î¾ß¸¸ ÇÑ´Ù:

append = "root=>device>"
³î¶ó¿î°¡? ¿½, ³ª ¿ª½Ã ±×·¸´Ù. ´ÙÀ½ÀÇ ÁÙÀ» ´ç½ÅÀÌ °¡Áö°í ÀÖ´Ù¸é (´ëºÎºÐÀÇ »ç¶÷µéÀÌ ±×·± °Íó·³) ÇØ°áÇÑ´Ù:
root = <device>
LILO´Â <device>ÀÇ µð¹ÙÀ̽º ¹øÈ£¸¦ °áÁ¤ÇÒ °ÍÀ̰í, ±× Ä¿³ÎÀ» ½ÃÀÛÇÏ°Ô Àü¿¡ Ä¿³Î À̹ÌÁöÀÇ Æ¯Á¤ ºÎºÐ¿¡ ±× ¹øÈ£¸¦ ±â·ÏÇÒ °ÍÀ̸ç, ±× Ä¿³ÎÀº ·çÆ® ÆÄÀϽýºÅÛÀ» ¸¶¿îÆ® Çϱâ À§ÇÏ¿© ±× µð¹ÙÀ̽º ¹øÈ£¸¦ »ç¿ëÇÒ °ÍÀÌ´Ù. ±×·¡¼­, "append" º¯¼ö¸¦ »ç¿ëÇÏ´Â °ÍÀº LILO°¡ ±× ·çÆ® ÆÄÀϽýºÅÛÀ» devfs°¡ »ç¿ëÇÒ ¼ö ÀÖ´Â ¹®ÀÚ¿­·Î ³Ñ°Ü ÁÖµµ·Ï È®½ÇÈ÷ ÇÏ´Â °ÍÀÌ´Ù.

¸¸¾à "devfs=only"¸¦ »ç¿ëÇÏÁö ¾Ê´Â´Ù¸é ½Å°æ¾µ °Í ¾ø´Ù.

5.5.4. TTY ¹®Á¦

C ¶óÀ̺귯¸®ÀÇ ¾î¶² ¹öÀü¿¡¼­´Â ttyname(3)°¡ ½Éº¼¸¯ ¸µÅ©ÀÎ µð¹ÙÀ̽º ¿£Æ®¸®¿¡ ´ëÇØ¼­´Â ¿À·ù¸¦ ¸¸µé¾î³½´Ù. tty(1) ÇÁ·Î±×·¥Àº ÀÌ ÇÔ¼ö¿¡ ÀÇÁ¸ÇÑ´Ù. ³ª´Â À̰ÍÀ» ¼öÁ¤Çϱâ À§ÇÏ¿© libc 5.4.43¿¡ ÆÐÄ¡¸¦ ¸¸µé¾ú´Ù. À̰ÍÀº libc 5.4.44¿¡ Æ÷ÇԵǾî ÀÖ°í ºñ½ÁÇÚ ÆÐÄ¡°¡ glibc 2.1.4¿¡ ÀÖ´Ù.

5.6. Ä¿³Î ³×ÀÌ¹Ö ½ºÅ°¸¶

Ä¿³ÎÀº ±âº» ³×ÀÌ¹Ö ½ºÅ°¸¶¸¦ Á¦°øÇÑ´Ù. ÀÌ ½ºÅ°¸¶´Â ƯÁ¤ÇÑ µð¹ÙÀ̽º³ª µð¹ÙÀ̽º ÇüÅ¿¡ µû¶ó °Ë»öÇϰí, »ç¿ë°¡´ÉÇÑ µð¹ÙÀ̽º¸¦ ã¾Æº¸´Âµ¥ ½±µµ·Ï µðÀÚÀÎ µÈ´Ù. ¾î¶² µð¹ÙÀ̽º ÇüÅÂ(ÇÏµå µð½ºÅ© °°Àº)´Â ±×·± ºÎ·ùÀÇ µð¹ÙÀ̽º°¡ »ç¿ë°¡´ÉÇѰ¡¸¦ ¾Ë¾Æº¸±â ½±°Ô Çϱâ À§ÇØ ±× Ç׸ñÀÇ µð·ºÅ丮¸¦ °¡Áö°í ÀÖ´Ù. Á¾Á¾, ±× Ç׸ñµéÀº »ç¿ë°¡´ÉÇÑ µð¹ÙÀ̽ºÀÇ ±¸Á¶¸¦ ¹Ý¿µÇϱâ À§ÇÑ µð·ºÅ丮 Æ®¸®¿¡ ½Éº¼¸¯ ¸µÅ©·Î µÇ¾î ÀÖ´Ù. ±âÇÏÇÐÀûÀÎ Æ®¸®´Â ´ç½ÅÀÇ µð¹ÙÀ̽º°¡ ¾î¶»°Ô ¹è¿­µÇ¾î ÀÖ´ÂÁö º¸´Âµ¥ À¯¿ëÇÏ´Ù.

¾Æ·¡´Â ´ëºÎºÐÀÇ ÀϹÝÀûÀÎ µå¶óÀ̹öµé¿¡ ´ëÇÑ ³×ÀÌ¹Ö ½ºÅ°¸¶ÀÇ ¸ñ·ÏÀÌ´Ù. ¿¹¾àµÈ µð¹ÙÀ̽º À̸§µéÀÇ ¸ñ·ÏÀº Âü°í°¡ °¡´ÉÇÏ´Ù. ±× ¸ñ·Ï¿¡ Ãß°¡µÇ±â ¿øÇÑ´Ù¸é rgooch (at) atnf.csiro.au ¿¡ ¸ÞÀÏÀ» º¸³»¶ó. ´Ù¸¥ À̸§µéµµ ±× ¸ÞÀÎÅ×À̳ÊÀÇ ÆÇ´Ü¿¡ µû¶ó ¿äûµÈ À̸§´ë½Å ÇÒ´çµÉ ¼ö ÀÖ´Ù.

5.6.1. µð½ºÅ© µð¹ÙÀ̽ºµé

SCSI, IDE ¶Ç´Â ¹«¾ùÀ̶óµµ, ¸ðµç µð½ºÅ©´Â /dev/discs ¾Æ·¡¿¡ À§Ä¡ÇÑ´Ù.

/dev/discs/disc0	first disc
/dev/discs/disc1	second disc
ÀÌµé °¢ Ç׸ñµé¸¶´Ù ±× µð¹ÙÀ̽º¿¡ ´ëÇÏ¿© µð·ºÅ丮¿¡ ½Éº¼¸¯ ¸µÅ©°¡ °É·ÁÀÖ´Ù. µð¹ÙÀ̽º µð·ºÅ丮´Â ´ÙÀ½À» Æ÷ÇÔÇÑ´Ù.
disc	Àüü µð½ºÅ©¿¡ ´ëÇÏ¿©
part*	°¢°¢ÀÇ ÆÄƼ¼Ç¿¡ ´ëÇÏ¿©

5.6.2. CD-ROM Devices

SCSI, IDE ¶Ç´Â ¾î¶² CD-ROMÀÌ´øÁö°£¿¡ ¸ðµç CD-ROMµéÀº /dev/cdroms °è¿­¾Æ·¡ Á¸ÀçÇÑ´Ù.:

/dev/cdroms/cdrom0	first CD-ROM
/dev/cdroms/cdrom1	second CD-ROM
À̵é Ç׸ñ °¢°¢Àº ±× µð¹ÙÀ̽º¿¡ ´ëÇÑ ½ÇÁ¦ µð¹ÙÀ̽º Ç׸ñ¿¡ ´ëÇÑ ½Éº¼¸¯ ¸µÅ©ÀÌ´Ù.

5.6.3. Tape Devices

SCSI, IDE ¸¦ ¸··ÐÇÏ°í ¸ðµç Å×ÀÙ ÀåÄ¡µéÀº /dev/tapes°è¿­¾Æ·¡¿¡ À§Ä¡ÇÑ´Ù.

/dev/tapes/tape0	first tape
/dev/tapes/tape1	second tape
À̵é Ç׸ñ °¢°¢Àº ±× µð¹ÙÀ̽º¿¡ ´ëÇÑ µð·ºÅ丮ÀÇ ½Éº¼¸¯ ¸µÅ©ÀÌ´Ù.
mt			for mode 0
mtl			for mode 1
mtm			for mode 2
mta			for mode 3
mtn			for mode 0, no rewind
mtln			for mode 1, no rewind
mtmn			for mode 2, no rewind
mtan			for mode 3, no rewind

5.6.4. SCSI Devices

¾î¶² SCSI µð¹ÙÀ̽º¸¦ À¯ÀÏÇÏ°Ô ÆÇº°Çϱâ À§Çؼ­´Â ´ÙÀ½ÀÇ Á¤º¸°¡ ÇÊ¿äÇÏ´Ù:

controller	(host adapter)
bus		(SCSI channel)
target	(SCSI ID)
unit		(Logical Unit Number)
¸ðµç SCSI µð¹ÙÀ̽º´Â /dev/scsi (devfs°¡ /dev¿¡ ¸¶¿îÆ® µÇ¾ú´Ù´Â ÀüÁ¦ÇÏ¿¡) ¾Æ·¡ À§Ä¡ÇÑ´Ù. ±×·¯¹Ç·Î, ´ÙÀ½ ÆÄ¶ó¹ÌÅÍ:c=1, b=2, t=3, u=4 ¸¦ °¡Áö´Â SCSI µð¹ÙÀ̽º´Â ´ÙÀ½°ú °°ÀÌ ³ªÅ¸³¯ °ÍÀÌ´Ù.
/dev/scsi/host1/bus2/target3/lun4	device directory
ÀÌ µð·ºÅ丮 ¾È¿¡¼­ SCSI µð¹ÙÀ̽º ŸÀÙ µå¶óÀ̹ö°¡ ÀνºÅçµÈ °Í¿¡ ÀÇÁ¸ÇÏ¿© µð¹ÙÀ̽º Ç׸ñ ¹øÈ£°¡ ¸¸µé¾îÁú °ÍÀÌ´Ù.

SCSI µð½ºÅ© µå¶óÀ̹ö°¡ ¸¸µå´Â Ç׸ñÀ» ¾Ë±âÀ§Çؼ­´Â µð½ºÅ© ³×ÀÌ¹Ö Ã¼°è¿¡ ´ëÇÑ ¼½¼ÇÀ» º¸¶ó.

SCSI Å×ÀÙ µå¶óÀ̹ö Ç׸ñÀÌ ¸¸µé¾îÁö´Â °Í¿¡ ´ëÇØ ¾Ë°í ½ÍÀ¸¸é Å×ÀÙ ³×ÀÌ¹Ö ÃǰԿ¡ ´ëÇÑ ¼½¼ÇÀ» º¸¶ó.

SCSI CD-ROm µå¶óÀ̹ö´Â ´ÙÀ½À» ¸¸µç´Ù:

cd
SCSI generic µå¶óÀ̹ö´Â ´ÙÀ½À» ¸¸µç´Ù:
	generic

5.6.5. IDE Devices

IDE µð¹ÙÀ̽º¸¦ À¯ÀÏÇÏ°Ô ÁöÁ¤Çϱâ À§Çؼ­´Â ´ÙÀ½ÀÇ Á¤º¸°¡ ÇÊ¿äÇÏ´Ù:

controller
bus		(aka. primary/secondary)
target	(aka. master/slave)
unit
¸ðµç IDE µð¹ÙÀ̽ºµéÀº /dev/ide¾Æ·¹ À§Ä¡Çϰí, SCSI ¼­ºê½Ã½ºÅÛ°ú ºñ½ÁÇÑ ³×ÀÌ¹Ö Ã¼°è¸¦ »ç¿ëÇÑ´Ù.

5.6.6. XT Hard Discs

¸ðµç XT µð½ºÅ©µéÀº /dev/xd¾Æ·¡ À§Ä¡ÇÑ´Ù. ù¹øÂ° XT µð½ºÅ©´Â /dev/xd/disc0µð·ºÅ丮¸¦ °¡Áø´Ù.

5.6.7. TTY devices

tty µð¹ÙÀ̽ºµéÀº ´ÙÀ½°ú °°ÀÌ ³ªÅ¸³­´Ù.

     New name                   Old-name                   Device Type
     ---------                  --------                   -----------
/dev/tts/{0,1,...}         /dev/ttyS{0,1,...}             Serial ports
/dev/cua/{0,1,...}         /dev/cua{0,1,...}              Call out devices
/dev/vc/0                  /dev/tty                       Current virtual console
/dev/vc/{1,2,...}          /dev/tty{1...63}               Virtual consoles
/dev/vcc/{0,1,...}         /dev/vcs{1...63}               Virtual consoles
/dev/pty/m{0,1,...}        /dev/ptyp??                    PTY masters
/dev/pty/s{0,1,...}        /dev/ttyp??                    PTY slaves

5.6.8. RAMDISCS

RAMDISCµéÀº ±×µé ÀÚ½ÅÀÇ µð·ºÅ丮¿¡ À§Ä¡Çϸç, ´ÙÀ½°ú °°Àº À̸§À» °¡Áø´Ù:

/dev/rd/{0,1,2,...}

5.6.9. Meta Devices

meta µð¹ÙÀ̽ºµéÀº ±×µé ÀÚ½ÅÀÇ µð·ºÅ丮¿¡ À§Ä¡Çϸç, ´ÙÀ½°ú °°´Ù:

/dev/md/{0,1,2,...}

5.6.10. Floppy discs

Ç÷ÎÇÇ µð½ºÅ©µéÀº /dev/floppyµð·ºÅ丮¿¡ À§Ä¡ÇÑ´Ù.

5.6.11. Loop devices

Loop µð¹ÙÀ̽ºµéÀº /dev/loopµð·ºÅ丮¿¡ À§Ä¡ÇÑ´Ù.

5.6.12. Sound devices

Sound µð¹ÙÀ̽ºµéÀº /dev/soundµð·ºÅ丮¿¡ À§Ä¡ÇÑ´Ù. (audio, sequencer,...).

5.7. Devfsd ³×ÀÌ¹Ö ½ºÅ°¸¶

Devfsd´Â Ä¿³ÎÁ¦°ø ³×ÀÓ½ºÆäÀ̽º ÀÇ Æí¸®ÇÑ Ãà¾àÇüÀÎ ³×ÀÌ¹Ö ½ºÅ°¸¶¸¦ Á¦°øÇÑ´Ù. ¾î¶² °æ¿ì¿¡´Â, Ä¿³ÎÀÌ Á¦°øÇÏ´Â ³×ÀÌ¹Ö ½ºÅ°¸¶´Â ¸Å¿ì Æí¸®Çϰí, µû¶ó¼­ devfsd´Â ´Ù¸¥ ³×ÀÌ¹Ö ½ºÅ°¸¶¸¦ Á¦°øÇÏÁö ¾Ê´Â´Ù. devfsd°¡ ¸¸µå´Â Æí¸®ÇÑ À̸§Àº ½ÇÁ¦·Î ¿À¸®Áö³¯ devfs Ä¿³Î ÆÐÄ¡°¡ ¸¸µå´Â À̸§°ú µ¿ÀÏÇÏ´Ù(¸®´©Áî°¡ Big Name Change¸¦ Áö½ÃÇϱâ Àü±îÁö). À̰͵éÀº "»õ·Î¿î ȣȯ ¿£Æ®¸®"·Î¼­ Âü°íµÈ´Ù.

ÀÌµé Æí¸®ÇÑ À̸§À» »ý¼ºÇϱâ À§ÇØ devfsd¸¦ ¼³Á¤Çϱâ À§ÇÏ¿©, ´ÙÀ½ÀÇ ÁÙÀÌ /etc/devfsd.conf¿¡ Ãß°¡µÇ¾î¾ß ÇÑ´Ù:

REGISTER        .*         MKNEWCOMPAT
UNREGISTER      .*         RMNEWCOMPAT
À̰ÍÀº Ä¿³ÎÀÌ Á¦°øÇÏ´Â À̸§À» ÁöÁ¤Çϱâ À§ÇÏ¿© devfsd°¡ ½Éº¼¸¯ ¸µÅ©¸¦ ¸¸µé(¾ø¾Ù)µµ·Ï ÇÑ´Ù.

5.7.1. SCSI ÇÏµå µð½ºÅ©µé

¸ðµç SCSI µð½ºÅ©µéÀº /dev/sd¾Æ·¡¿¡ À§Ä¡ÇÑ´Ù (devfs´Â /dev¿¡ ¸¶¿îÆ®µÇ¾ú´Ù°í °¡Á¤Çϸé). ±×·¯¹Ç·Î, ´ÙÀ½ÀÇ ÆÄ¶ó¹ÌÅÍ:c=1,b=2,t=3,u=4¸¦ °¡Áö´Â SCSI µð½ºÅ©µéÀº

/dev/sd/c1b2t3u4	for the whole disc
/dev/sd/c1b2t3u4p5	for the 5th partition
/dev/sd/c1b2t3u4p5s6	for the 6th slice in the 5th partition
¿¡ ³ªÅ¸³­´Ù.

5.7.2. SCSI Tapes

¸ðµç SCSI Å×ÀÔµéÀº /dev/st¾Æ·¡ À§Ä¡ÇÑ´Ù. SCSI µð½ºÅ©µé°ú À¯»çÇÑ ³×ÀÌ¹Ö Ã¼°è°¡ »ç¿ëµÈ´Ù. ´ÙÀ½°ú °°Àº ÆÄ¶ó¹ÌÅÍ : c=1, b=2, t=3, u=4 ¸¦ °¡Áö´Â SCSI Å×ÀÙµéÀº ´ÙÀ½°ú °°ÀÌ ³ªÅ¸³­´Ù:

/dev/st/c1b2t3u4m0	for mode 0
/dev/st/c1b2t3u4m1	for mode 1
/dev/st/c1b2t3u4m2	for mode 2
/dev/st/c1b2t3u4m3	for mode 3
/dev/st/c1b2t3u4m0n	for mode 0, no rewind
/dev/st/c1b2t3u4m1n	for mode 1, no rewind
/dev/st/c1b2t3u4m2n	for mode 2, no rewind
/dev/st/c1b2t3u4m3n	for mode 3, no rewind

5.7.3. SCSI CD-ROMs

¸ðµç SCSI CD-ROMµéÀº /dev/sr¾Æ·¡ À§Ä¡ÇÑ´Ù. SCSI µð½ºÅ©µé°ú ºñ½ÁÇÑ ³×ÀÌ¹Ö Ã¼°è¸¦ »ç¿ëÇÑ´Ù. ´ÙÀ½°ú °°Àº ÆÄ¶ó¹ÌÅÍ: c=1, b=2, t=3, u=4 ¸¦ °¡Áö´Â SCSI CD-ROMÀº ´ÙÀ½°ú °°ÀÌ ³ªÅ¸³­´Ù:

/dev/sr/c1b2t3u4

5.7.4. SCSI Generic Devices

¸ðµç SCSI CD-ROMµéÀº /dev/sg¾Æ·¡ À§Ä¡ÇÑ´Ù. SCSI µð½ºÅ©¿Í ºñ½ÁÇÑ ³×ÀÌ¹Ö Ã¼°è¸¦ »ç¿ëÇÑ´Ù. ´ÙÀ½°ú °°Àº ÆÄ¶ó¹ÌÅÍ: c=1, b=2, t=3, u=4 ¸¦ °¡Áö´Â SCSI generic µð¹ÙÀ̽º´Â ´ÙÀ½°ú °°ÀÌ ³ªÅ¸³­´Ù:

/dev/sg/c1b2t3u4

5.7.5. IDE Hard Discs

¸ðµç IDE µð½ºÅ©µéÀº SCSI µð½ºÅ©µé°ú ºñ½ÁÇÑ ¹æ¹ýÀ» »ç¿ëÇÏ¿©, /dev/ide/hd¾Æ·¡ À§Ä¡ÇÑ´Ù. ´ÙÀ½ÀÇ ¸ÊÇÎÀÌ »õ·Î¿î À̸§°ú ¿¹Àü À̸§ »çÀÌ¿¡ Á¸ÀçÇÑ´Ù.

/dev/hda	/dev/ide/hd/c0b0t0u0
/dev/hdb	/dev/ide/hd/c0b0t1u0
/dev/hdc	/dev/ide/hd/c0b1t0u0
/dev/hdd	/dev/ide/hd/c0b1t1u0

5.7.6. IDE Tapes

IDE µð½ºÅ©µé°ú À¯»çÇÑ ³×ÀÌ¹Ö Ã¼°è°¡ »ç¿ëµÈ´Ù. ±× Ç׸ñÀº /dev/ide/mtµð·ºÅ丮 ¾È¿¡¼­ ³ªÅ¸³¯ °ÍÀÌ´Ù.

5.7.7. IDE CD-ROM

IDE µð½ºÅ©¿Í ºñ½ÁÇÑ ³×ÀÌ¹Ö Ã¼°è°¡ »ç¿ëµÈ´Ù. °¢ Ç׸ñÀº /dev/ide/cdµð·ºÅ丮 ¾È¿¡¼­ ³ªÅ¸³¯ °ÍÀÌ´Ù.

5.7.8. IDE Floppies

IDE µð½ºÅ©¿Í ºñ½ÁÇÑ ³×ÀÌ¹Ö Ã¼°è¸¦ »ç¿ëÇÑ´Ù. °¢ Ç׸ñÀº /dev/ide/fdµð·ºÅ丮 ¾È¿¡¼­ ³ªÅ¸³¯ °ÍÀÌ´Ù.

5.7.9. XT Hard Discs

¸ðµç XT µð½ºÅ©µéÀº /dev/xd¾Æ·¡¿¡ À§Ä¡ÇÑ´Ù. ù¹øÂ° XT µð½ºÅ©´Â /dev/xd/c0t0ó·³ ³ªÅ¸³¯ °ÍÀÌ´Ù.

5.8. ¿¾ ¹æ½ÄÀÇ È£È¯ À̸§

¿¡ÀüÀÇ È£È¯À̸§µéÀº /dev/hda, /dev/sda, /dev/rtc µîµîÀÇ ¿¹ÀüºÎÅÍ À¯ÁöµÇ¾î¿Â µð¹ÙÀ̽º À̸§À» »ç¿ëÇÑ´Ù. Devfsd´Â ¿À·¡µÈ À̸§À» °è¼Ó »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ȣȯ ½É¸µÅ©¸¦ »ý¼ºÇϵµ·Ï ¼³Á¤ÆÄÀÏ¿¡ ¼³Á¤µÉ ¼ö ÀÖ°í, µû¶ó¼­ ¿À·¡µÈ ÀÀ¿ëÇÁ·Î±×·¥µéÀº °è¼ÓÇÏ¿© Àß ÀÛµ¿ÇÏ°Ô µÉ °ÍÀÌ´Ù.

devfsd°¡ ÀÌ·± ¿¹ÀüÀÇ À̸§À» »ý¼ºÇϵµ·Ï ¼³Á¤Çϱâ À§Çؼ­ ´ÙÀ½ÀÇ ÁÙÀÌ /etc/devfsd.conf¿¡ Ãß°¡µÇ¾î¾ß ÇÑ´Ù

REGISTER	.*		MKOLDCOMPAT
UNREGISTER	.*		RMOLDCOMPAT
À̰ÍÀº devfsd°¡ Ä¿³ÎÀÌ Á¦°øÇÏ´Â À̸§À» ÁöÁ¤Çϵµ·Ï ÇÏ´Â ½Éº¼¸¯ ¸µÅ©¸¦ ¸¸µé(¾ø¾Ö)µµ·Ï ÇÑ´Ù.

5.9. SCSI È£½ºÆ® Ž»ö°ú °ü·ÃµÈ ¹®Á¦

Devfs´Â SCSI È£½ºÆ® ¹øÈ£¿¡ ´ëÇØ ±âÃÊÇÑ SCSI µð½ºÅ©¸¦ ½Äº°Çϵµ·Ï Çã¿ëÇÑ´Ù. ¸¸¾à ´ç½ÅÀÇ ÄÄÇ»ÅÍ¿¡ ¿ÀÁ÷ ÇϳªÀÇ SCSI È£½ºÆ®(card)°¡ ÀÖ´Ù¸é, È£½ºÆ® ¹øÈ£´Â 0À» ¹Þ°Ô µÉ °ÍÀÌ´Ù. ´ç½ÅÀÌ ¿©·¯°³ÀÇ SCSI È£½ºÆ®¸¦ °¡Áö°í ÀÖ´Ù¸é ±×´ÙÁö ½±Áö ¾Ê´Ù. ºÒÇàÇϰԵµ, ¶§¶§·Î SCSI È£½ºÆ®ÀÇ ¹øÈ£¸¦ ¾ò±â ¿øÇÏ´Â °ÍÀ» ÃßÃøÇϴµ¥ ¾î·Á¿òÀÌ ÀÖÀ» ¼ö ÀÖ´Ù. À̰ÍÀ» ½±°Ô Çϱâ À§Çؼ­, "scsihosts"¶ó ºÒ¸®´Â Ä¿³Î ºÎÆ® ÆÄ¶ó¹ÌÅͰ¡ ÀÖ´Ù. À̰ÍÀº SCSI È£½ºÆ®µéÀÇ ´Ù¸¥ ŸÀÔ¿¡ ´ëÇØ ¼ø¼­¸¦ °áÁ¤Çϵµ·Ï ÇØÁØ´Ù. ÀÌ ÆÄ¶ó¹ÌÅÍÀÇ ¹®¹ýÀº:

scsihosts=<name_1>:<name_2>:<name_3>:...:<name_n>
ÀÌ´Ù. ¿©±â¼­ <name_1>,<name_2>,...,<name_n> µéÀº /proc ÆÄÀϽýºÅÛ¿¡¼­ »ç¿ëµÈ µå¶óÀ̹öµéÀÇ À̸§µéÀÌ´Ù. ¿¹¸¦ µé¾î:
scsihosts=aha1542:ppa:aha1542::ncr53c7xx
´Â
- ù¹øÂ° aha1542 ÄÁÆ®·Ñ·¯   - /dev/scsi/host0/bus#/target#/lun# ÀÏ °ÍÀÌ´Ù.
- ù¹øÂ° º´·ÄÆ÷Æ® ZIP       - /dev/scsi/host1/bus#/target#/lun# ÀÏ °ÍÀÌ´Ù.
- µÎ¹øÂ° aha1542 ÄÁÆ®·Ñ·¯   - /dev/scsi/host2/bus#/target#/lun# ÀÏ °ÍÀÌ´Ù.
- ù¹øÂ° NCR53C7xx ÄÁÆ®·Ñ·¯ - /dev/scsi/host4/bus#/target#/lun# ÀÏ °ÍÀÌ´Ù.
- ³ª¸ÓÁö ÄÁÆ®·Ñ·¯           - /dev/scsi/host5/bus#/target#/lun#,
                              /dev/scsi/host6/bus#/target#/lun# µîµî ÀÏ °ÍÀÌ´Ù.
- ¸¸¾à À§ÀÇ ¾î¶² ÄÁÆ®·Ñ·¯µµ ¹ß°ßµÇÁö ¾Ê¾Ò´Ù¸é - ±× ¿¹¾àµÈ À̸§µéÀÌ ´Ù¸¥ µð¹ÙÀ̽º¿¡ ÀÇÇØ
                                                »ç¿ëµÇÁö ¾Ê´Â´Ù´Â °ÍÀÌ´Ù.
- /dev/scsi/host3/bus#/target#/lun# ´Â Àý´ë·Î »ç¿ëµÇÁö ¾Ê´Â´Ù.
¿¡ ¿¬°áµÈ µð¹ÙÀ̽º¸¦ ÀǹÌÇÑ´Ù. ¿øÇÑ´Ù¸é ºÐ¸®ÀÚ·Î ':' ´ë½Å¿¡ ','¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ³ª´Â ¿©±â¼­ devfsd ³×ÀÌ¹Ö ½ºÅ°¸¶ ¸¦ »ç¿ëÇÑ´Ù.

¸¸¾à °°Àº ŸÀÔÀ¸·Î ¿©·¯°³ÀÇ Ä«µå(NCR53c8xx¿Í °°Àº)¸¦ °¡Áö°í ÀÖ´Ù¸é, ÀÌ ½ºÅ°¸¶°¡ SCSI È£½ºÆ®¸¦ ÁöÁ¤ÇÏÁö´Â ¸øÇÑ´Ù. ÀÌ·± °æ¿ì¿¡ ´ç½ÅÀº À̰ÍÀ» Á¦¾îÇϱâ À§Çؼ­ µå¶óÀ̹ö¸¦ ÁöÁ¤ÇÏ´Â ºÎÆ® ÆÄ¶ó¹ÌÅ͸¦ »ç¿ëÇÒ Çʿ䰡 ÀÖ´Ù.