´ÙÀ½ ÀÌÀü Â÷·Ê

3. General

¸ðµç À¯´Ð½ºÀÇ ÇÁ·Î¼¼½ºµéÀº "ȯ°æ"À» ´ã°í ÀÖ´Ù. ÀÌ°ÍÀº º¯¼öµéÀÇ ¸®½ºÆ®·Î name À̳ª ¶Ç´Â ƯÁ¤ °ª µéÀÌ´Ù.(µÑ´Ù ´ÜÁö string À¸·Î¼­ ´ëºÎºÐÀÇ character°¡ µé¾î°¥ ¼ö ÀÖ´Ù). ¸ðµç À¯´Ð½º ÇÁ·Î¼¼½ºµéÀº Æз±Æ® ÇÁ·Î¼¼½º (ºÎ¸ð ÇÁ·Î¼¼½º)¸¦ °¡Áö°í ÀÖ´Ù (ºÎ¸ð ÇÁ·Î¼¼½º¶õ ÇöÀçÀÇ ÇÁ·Î¼¼½º¸¦ (ÀÌÀü¿¡) »ý¼ºÇÑ ÇÁ·Î¼¼½º·Î À̶§ ÇöÀçÀÇ ÇÁ·Î¼¼½º´Â Â÷Àϵå ÇÁ·Î¼¼½º¶ó ÇÑ´Ù(ÀÚ½Ä ÇÁ·Î¼¼½º)). ÀÚ½Ä ÇÁ·Î¼¼½º´Â ºÎ¸ð ÇÁ·Î¼¼½º·ÎºÎÅÍ È¯°æÀ» ¹°·Á¹Þ°Ô µÇ°í ÀÚ½Ä ÇÁ·Î¼¼½º´Â ¶Ç ´Ù½Ã ÀÚ±â ÀÚ½ÄÇÁ·Î¼¼½º¸¦ ¸¸µé¸é¼­ ȯ°æÀ» ¹Ù²Ü¼ö ÀÖ´Ù.

±× Áß Áß¿äÇÑ È¯°æº¯¼ö °¡¿îµ¥ Çϳª°¡ path ÀÌ´Ù. path´Â ¸í·É¾î¸¦ ã±âÀ§ÇØ °Ë»öÇØ¾ßµÉ µð·ºÅ丮µéÀÇ ¸®½ºÆ®·Î¼­ ÄÝ·Ð(:)À¸·Î ±¸ºÐµÇ¾îÁø´Ù. ¸¸¾à ´ç½Å ÀÌ 'foo' ¶ó´Â ¸í·É¾î¸¦ ÃÆ´Ù¸é path ¿¡ Á¤ÀÇµÈ ¼ø¼­´ë·Î µð·ºÅ丮µéÀÌ °Ë»ö µÇ¾îÁö¸ç ½ÇÇàÆÄÀÏÀÎ(x ºñÆ®°¡ on »óÅÂÀÎ ÆÄÀÏ) 'foo' ÆÄÀÏÀ» ã°ÔµÇ°í ¹ß°ß ÀÌ µÇ¸é ½ÇÇàÀÌ µÈ´Ù.

ÀÌ howto ¹®¼­¿¡¼­ ³ª´Â path ¸ÞÄ«´ÏÁò¿¡ ÀÇÇØ ÂªÀº À̸§¸¸À¸·Î(Ç® Æнº ³×ÀÓÀÌ ¾Æ´Ñ:¿ªÀÚÁÖ) È£ÃâµÇ¾îÁö´Â ½ÇÇàÆÄÀÏÀ» °¡¸®ÄÑ '¸í·É¾î'(command) ¶ó ºÎ¸£°Ú´Ù.

¸®´ª½º¿¡¼­´Â ÇÁ·Î¼¼½º¸¦ ½ÃÀÛÇϱâ À§ÇÑ Àú¼öÁØÀÇ ¿î¿µÃ¼Á¦ ½Ã½ºÅÛ È£Ãâµµ (exec Æйи® Äݵé) path ¿¡ Á¤ÇØÁø µð·ºÅ丮µéÀ» °Ë»öÇÏ¿© ½ÇÇàµÇ¾îÁø´Ù: ¶ÇÇÑ ´ç½ÅÀÌ ¾îµð¿¡¼­ ¸í·ÉÀ» ½ÇÇàÇÏ°Ç path ¸ÞÄ«´ÏÁò¿¡ ÀÇÇØ ½ÇÇàµÇ¾îÁø´Ù. ¸¸¾à, exec ½Ã½ºÅÛ ÄÝÀÌ '/'ÀÌ Æ÷ÇÔµÇÁö ¾ÊÀº ÆÄÀϳ×ÀÓ(Áï, Ç®Æнº ³×ÀÓÀÌ ¾Æ ´Ñ°Í:¿ªÀÚ ÁÖ)À» ½ÇÇàÇÒ °ÍÀ» ¿ä±¸¹ÞÀ¸¸é path º¯¼ö¸¦ ÂüÁ¶ÇÏ°Ô µÇ°í PATH °¡ ¼³Á¤µÇ¾îÀÖÁö ¾Ê´õ¶óµµ Àû¾îµµ /bin °ú /usr/bin µð·ºÅ丮°¡ Àû´çÇÑ ¸í·É À» À§ÇØ °Ë»öµÇ¾îÁö°Ô µÉ °ÍÀÌ´Ù.

ȯ°æº¯¼ö ¼¼ÆÃÀº sh ¿¡¼­´Â export ¸í·É¾î¸¦ »ç¿ëÇÏ°í csh ¿¡¼­´Â setenv ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. ¿¹¸¦ µé¸é:

sh: PATH=/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games:.

csh: setenv PATH usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games:.

C-ÇÁ·Î±×·¥¿¡¼­´Â setenv() ¶óÀ̺귯¸®ÄÝÀ» »ç¿ëÇÏ¿© ȯ°æÀ» ¹Ù²Ü ¼ö ÀÖ ´Ù. Peal ¿¡¼­´Â%ENV ¶ó´Â Á¶ÇÕ Çà·ÄÀ» °¡Áö°í À־ ´ÙÀ½°ú °°ÀÌ path¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ´Ù.

$ENV{PATH}="/bin".

env ¸í·É¾î´Â ÇöÀçÀÇ È¯°æº¯¼ö°ªµéÀ» ¾Ë¾Æº¸´Âµ¥ ±âº»ÀûÀÎ ¸í·É¾îÀÌ¸ç ¶ÇÇÑ È¯°æ º¯¼ö¸¦ ¹Ù²Ù´Â µ¥¿¡µµ ¾²ÀÏ ¼ö ÀÖ´Ù.

±âº»ÀûÀΠȯ°æ(º¯¼ö) ¸ÞÄ«´ÏÁò¿¡ ´ëÇÑ Á¤º¸µéÀº ¸Å´º¾ó ÆäÀÌÁöÀÇ 'environ', 'execl', 'setenv'¸¦ º¸°Å³ª info ÆÄÀÏ 'env' ±×¸®°í ½©¿¡ °üÇÑ ¹®¼­¸¦ º¸±â ¹Ù¶õ´Ù.

¸®´ª½º°¡ ºÎÆÃµÉ ¶§ Á¦ÀÏ Ã³À½ ½ÃÀ۵Ǵ °ÍÀº init ÇÁ·Î¼¼½ºÀÌ´Ù. ÀÌ°ÍÀº Ưº°ÇÑ ÇÁ·Î¼¼½º·Î¼­ ¸ðµç ÇÁ·Î¼¼½ºµéÀÇ Á¶»óÀÌ µÇ¸ç ÀÚ½ÅÀº ºÎ¸ðÇÁ·Î¼¼½º¸¦ °¡ÁöÁö ¾Ê´Â´Ù. Áï init ÀÇ È¯°æÀº ¸í¹éÇÏ°Ô ¹Ù²îÁö ¾Ê´ÂÇÑ ´Ù¸¥ ¸ðµç ÇÁ·Î¼¼ ½ºÀÇ È¯°æÀ¸·Î¼­ ³²¾ÆÀÖ°Ô µÈ´Ù.(»ç½Ç ´ë ºÎºÐÀÇ ÇÁ·Î¼¼½ºµéÀº ȯ°æÀ» ¼öÁ¤ ÇÑ´Ù)

init Àº ¿©·¯ ÇÁ·Î¼¼½º ±×·ìµéÀ» ½ÇÇà½ÃÅ°´Âµ¥, /etc/inittab ÆÄÀÏÀÌ ¾î¶² ÇÁ ·Î¼¼½º¸¦ ½ÃÀÛ½Ãų°ÍÀÎÁö ¾Ë·ÁÁØ´Ù. ÀÌ ÇÁ·Î¼¼½ºµéÀº init À¸·ÎºÎÅÍ ¹ÞÀº ȯ °æÀ» °¡Áö°í ¼öÇàµÇ°í, 'getty'(Äֿܼ¡ 'login:'À̶ó°í ³ªÅ¸³»ÁÖ´Â ÇÁ·Î¼¼½º) °°Àº °ÍµéÀÌ ÀÖ´Ù. ¸¸¾à ¿©±â¼­(½Ã½ºÅÛ ½ºÅ¸Æ® ½Ã¿¡) pppÁ¢¼ÓÀ» ½ÃÀÛÇÑ´Ù¸é ÀÌ ¶§´Â initÀÇ È¯°æº¯¼ö ¾Æ·¡¼­ ¼öÇàµÇ°í ÀÖÀ½À» ¾Ë¾Æ¾ß ÇÑ´Ù. ½Ã½ºÅÛ Ãʱâ È­´Â ´ë°Ô ¿©±â¼­ ½ÃÀ۵Ǵ ½ºÅ©¸³Æ®µé¿¡ ÀÇÇØ ÀÌ·ç¾î Áø´Ù. µ¥ºñ¾È 1.3ÀÇ ÃʱâÈ­´Â /etc/init.d/rc À̸ç ÀÌ ½ºÅ©¸³Æ®´Â ¶Ç ´Ù½Ã ´Ù¸¥ ÃʱâÈ­ ½ºÅ©¸³Æ® µéÀ» È£ÃâÇÑ´Ù.

½Ã½ºÅÛ¿¡´Â µ¹¾Æ°¡°í ÀÖ´Â ¸¹Àº ¼­¹ö(µ¥¸óÀ̶ó°íµµ ÇÔ)µéÀÌ Àִµ¥ ÀÌ °Íµé Àº µðÆúÆ®ÀÇ È¯°æº¯¼ö¸¦ »ç¿ëÇÒ ¼öµµ ±×·¸Áö ¾ÊÀ»¼öµµ Àִµ¥, ´ëºÎºÐÀÇ ¼­ ¹öµéÀº ÃʱâÈ­ ½ºÅ©¸³Æ®¿¡¼­ ½ÇÇàµÇ¾îÁö¸ç ±×·¡¼­ init ÀÇ È¯°æÀ» °¡Áö°í ÀÖ ´Ù.

»ç¿ëÀÚ°¡ ½Ã½ºÅÛ¿¡ ·Î±×ÀÎ ÇϰԵǸé ȯ°æº¯¼öµéÀº ÇÁ·Î±×·¥¿¡ ÄÄÆÄÀÏµÇ¾î µé¾î°£ ȯ°æº¯¼ö ¼³Á¤¿¡ ÀÇÇؼ­, ¶Ç´Â ½Ã½ºÅÛ Àü¹Ý¿¡ ¿µÇâÀ» ÁÖ´Â ÃʱâÈ­ ½º Å°¸³Æ®³ª »ç¿ëÀÚ ÃʱâÈ­ ½ºÅ©¸³Æ®¿¡ ÀÇÇØ º¯ÇÏ°Ô µÈ´Ù. ÀÌ°ÍÀº ²Ï º¹ÀâÇÏ°í ¿©±â¼­ ¼³¸íÇϱ⿡´Â ÃæºÐÄ¡ ¾Ê´Ù°í º»´Ù. ¿¹¸¦ µé¾î »ç¿ëÀÚ°¡ ÄַܼΠ·Î±× ÀÎÀ» ÇÏ´Â °æ¿ì, ¾Æ´Ï¸é xdm ¶Ç´Â network¸¦ ÅëÇؼ­ ·Î±×ÀÎÀ» ÇϰԵǴ °æ ¿ì°¡ ¿ÏÀüÈ÷ ´Ù¸£°Ô µÈ´Ù.


´ÙÀ½ ÀÌÀü Â÷·Ê