· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Linuxdoc Sgml/Path

<!doctype linuxdoc system>
 <article>
<title>
PATH HOWTO
  <author>Esa Turtiainen <url url="mailto: etu@dna.fi" name="mailto: etu@dna.fi" >   
 <date> v0.4, 15 November 1997
  <trans>¹ø¿ª: °í¿µÈÆ <url url="mailto: gogoonee@bbs.para.co.kr" name="gogoonee@bbs.para.co.kr"  >
  

<sect> Introduction<p>
        
ÀÌ ¹®¼­´Â unix ¿Í linuxÀÇ È¯°æ º¯¼ö, ƯÈ÷ path¿¡ °üÇÑ ÀϹÝÀûÀÎ ¿ä·É°ú 
¹®Á¦Á¡µéÀ» ¼³¸íÇϰí ÀÖ´Ù. path ´Â ¸í·É¾î¸¦ ã±âÀ§ÇÑ µð·ºÅ丮µéÀÇ ¸®½º
Æ®·Î µ¥ºñ¾È ¸®´ª½º 1.3 ¹èÆ÷ÆÇÀ» ±âÁØÀ¸·Î ¼³¸íÇÑ´Ù.  
ÇѰ¡Áö ¾Ë¾ÆµÑ °ÍÀº ÀÌ ±ÛÀº º£Å¸ÆÇÀ̶ó´Â °ÍÀÌ´Ù. ÀüÇÒ ¸»À̳ª ±³Á¤»çÇ×À» 
¾Ë·ÁÁÖ¸é ÁÁ°Ú´Ù.
</p>

<sect>  Copyright
<p> 
ÀÌ ¹®¼­´Â ÀÚÀ¯·Ó´Ù. Free software foundation ÀÌ ¼±¾ðÇÑ GPLÇÏ¿¡¼­ ¹èÆ÷
ÇÒ¼ö ÀÖ°í ¼öÁ¤ÇÒ¼ö ÀÖ´Ù. ( GPL ¹öÀü2 ¶Ç´Â ±× ÀÌÈÄÀÇ ¹öÀüÀ» µû¸£´Â °Ç ´ç½Å 
¸¶À½ÀÌ´Ù)  

ÀÌ ¹®¼­´Â À¯¿ëÇÏ°Ô ¾²À̱⸦ ¹Ù¶ó´Â ¸¾¿¡¼­ ¹èÆ÷µÉ »Ó, ¾î¶°ÇÑ º¸ÁõÀ» ÇØÁÖ
Áø ¾ÊÀ¸¸ç Àº¿¬ÁßÀÇ »ó¾÷¼ºÀ̳ª ƯÁ¤ ¸ñÀûÀ¸·Î ¹èÆ÷µÇ´Â °Íµµ ¾Æ´Ï´Ù. ÀÚ¼¼ÇÑ 
»çÇ×À» ¾Ë°í½ÍÀ¸¸é GNU GPLÀ» Àо¶ó. 
 
´ç½ÅÀÌ ÀÌ ¹®¼­¿Í ÇÔ²² GNU GPL ¹®¼­¸¦ °¡Áö°í ÀÖ±æ ¹Ù¶õ´Ù. ±×·¸Áö ¾Ê´Ù¸é 
´ÙÀ½ ÁÖ¼Ò·Î ÆíÁö¸¦ ¶ç¿ö¶ó  Free Software Foundation, Inc., 675 Mass 
Ave, Cambridge, MA 02139, USA.
</p>

<sect>   General
<p>  
¸ðµç À¯´Ð½ºÀÇ ÇÁ·Î¼¼½ºµéÀº "ȯ°æ"À» ´ã°í ÀÖ´Ù. À̰ÍÀº º¯¼öµéÀÇ ¸®½ºÆ®·Î 
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() ¶óÀ̺귯¸®ÄÝÀ» »ç¿ëÇÏ¿© ȯ°æÀ» ¹Ù²Ü ¼ö ÀÖ
´Ù. Perl ¿¡¼­´Â%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¸¦ ÅëÇØ¼­ ·Î±×ÀÎÀ» ÇϰԵǴ °æ
¿ì°¡ ¿ÏÀüÈ÷ ´Ù¸£°Ô µÈ´Ù.
</p>

<sect> Init
<p>
init Àº ´Ù¸¥ ¸ðµç ÇÁ·Î¼¼½ºµéÀÇ ºÎ¸ð ÇÁ·Î¼¼½º·Î¼­, ´Ù¸¥ ÇÁ·Î¼¼½ºµéÀº init
ÀÇ È¯°æÀ» µû¸£°Ô µÇ°í ´Ù¸¥ ÆÐ½º°¡ ÁöÁ¤µÇÁö ¾Ê´Â ÇÑ(µå¹È °æ¿ìÀÌ´Ù) initÀÇ 
PATH¸¦ µû¸£°Ô µÈ´Ù.
 
initÀÇ PATH´Â init ÇÁ·Î±×·¥ÀÇ ¼Ò½º¿¡ ´ÙÀ½°ú °°ÀÌ Á¤ÇØÁ® µé¾î°¡ ÀÖ´Ù.

     /usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin
       
initÀÇ PATH¿¡ /usr/local/binÀÌ µé¾î°¡ÀÖÁö ¾Ê´Ù´Â °ÍÀ» ´«¿©°Ü ºÁµÎ±â ¹Ù
¶õ´Ù.
/etc/inittab ÆÄÀÏ, Ưº°È÷ ½Ã½ºÅÛ ÃʱâÈ­ ½ºÅ©¸³Æ®ÀÎ /etc/int.d·ÎºÎÅÍ ½Ç
ÇàµÇ´Â ¸ðµç ÇÁ·Î±×·¥µé Àº initÀÇ È¯°æ¿¡ µû¸£°Ô µÈ´Ù. (debian 1.3)
  
½Ã½ºÅÛ ÃʱâÈ­ ½ºÅ©¸³Æ®¿¡ ÀÇÇØ ½ÇÇàµÇ´Â ¸ðµç °ÍµéÀº init ÀÇ È¯°æÀ» µðÆú
Ʈȯ°æÀ¸·Î °¡Áö°Ô µÇ´Âµ¥ ÀÌ·¯ÇѰͿ¡´Â syslogd, kerneld, pppd (½Ã½ºÅÛ 
ºÎÆÃ½Ã ½ÃÀÛµÉ ¶§) , gpm, ±×¸®°í ¾ÆÁÖ Áß¿äÇÑ lpd ¿Í inetd °¡ ±×·¯Çϸç ÀÌ
µéÀº µðÆúÆ® ȯ°æÀ» ¹Ù²ÙÁö ¾Ê´Â´Ù.
 
ºÎÆÃ ½ºÅ©¸³Æ®¿¡¼­ ½ÃÀ۵Ǵ ¸î °³ÀÇ ÇÁ·Î±×·¥Áß¿¡´Â ºÎÆÃ ½ºÅ©¸³Æ®¿¡¼­ 
path º¯¼ö°¡ ÁöÁ¤µÇ±âµµ Çϴµ¥ ÀÌ·¯ÇÑ °Í¿¡´Â atd, sendmail, apache ±×
¸®°í squid°¡ ÀÖ´Ù.
ºÎÆÃ½ºÅ©¸³Æ®¿¡¼­ ½ÃÀ۵Ǵ ÇÁ·Î±×·¥Áß¿¡´Â path¸¦ ¾Æ¿¹ ¹Ù²ã¹ö¸®´Â °Íµµ 
Àִµ¥ ÇÑ ¿¹°¡ cronÀÌ´Ù.
</p>

<sect>  Login<p>
ÅØ½ºÆ® Äֿܼ¡´Â getty ¶ó´Â ÇÁ·Î±×·¥ÀÌ »ç¿ëÀÚÀÇ ·Î±×ÀÎÀ» ±â´Ù¸°´Ù. ÀÌ 
ÇÁ·Î±×·¥Àº 'login:' µîÀÇ ¸Þ½ÃÁö¸¦ È­¸é¿¡ ³ªÅ¸³»¸ç initÀÇ È¯°æº¯¼öÇÏ¿¡¼­ 
½ÇÇàµÈ´Ù. »ç¿ëÀÚ°¡ ·Î±×ÀÎ ÇϰԵǸé getty´Â login ÇÁ·Î±×·¥À» ±âµ¿½Ã۸ç 
loginÀº »ç¿ëÀÚ È¯°æÀ» ¼¼ÆÃÇϰí shellÀ» ±âµ¿ÇÑ´Ù.
  
login ÇÁ·Î±×·¥Àº /usr/include.path.h ¿¡ Á¤ÇØÁø´ë·Î path¸¦ ¼³Á¤ÇÑ´Ù. ÀÏ
¹ÝÀûÀÎ »ç¿ëÀÚ¸¦ À§ÇÑ ÆÐ½ºÁöÁ¤Àº ´ÙÀ½°ú °°´Ù.(_PATH_DEFPATH)

     /usr/local/bin:/usr/bin:/bin:.
  
root¸¦ À§Çؼ­´Â ´ÙÀ½ÀÌ ÁöÁ¤µÇ¾îÀÖ´Ù. (_PATH_DEFPATH_ROOT)

     /sbin:/bin:/usr/sbin:/usr/bin

ÀϹݻç¿ëÀÚÀÇ ÆÐ½º´Â ¾î¶°ÇÑ sbin µð·ºÅ丮µµ Æ÷ÇÔÇϰí ÀÖÁö¾Ê´Ù. ±×·¯³ª 
ÇöÀçµð·ºÅ丮ÀÎ '.'À» Æ÷ÇÔÇϰí Àִµ¥ ÀÌ µð·ºÅ丮¸¦ path¿¡ ³Ö´Â °ÍÀº 
root¿¡°Ô´Â À§ÇèÇÑ °ÍÀ¸·Î º¸´Â °æ¿ì°¡ ¸¹´Ù. ½ÉÁö¾î root¿¡°Ô /usr/local/bin 
µð·ºÅ丮µµ PATH¿¡´Â ¾ø´Ù. 
 
·Î±×ÀÎ ÆÐ½º´Â ÀÚÁÖ ¼¿ ÃʱâÈ­ °úÁ¤¿¡¼­ ¼öÁ¤µÇ¾îÁø´Ù. ±×·¯³ª »ç¿ëÀÚ ½©·Î
¼­ /etc/passwd ¿¡ º¸Åë ¾²ÀÌ´Â ½©¸»°í ´Ù¸¥ ÇÁ·Î±×·¥µµ »ç¿ëµÉ¼ö ÀÖ´Ù. ¿¹
·Î ³ª´Â Ưº°È÷ ¸¸µç À¯Àú³×ÀÓÀ¸·Î ·Î±×ÀÎ ÇÏ´Â °æ¿ì¿¡´Â ppp¸¦ ½ºÅ¸Æ® ½Ã
۱âÀ§ÇØ ´ÙÀ½°ú °°Àº ¹æ¹ýÀ» ÀÌ¿ëÇÑ´Ù.(ÀÌ °æ¿ì pppdÀÇ ÆÐ½º´Â  login ÇÁ
·Î±×·¥ÀÇ ÆÐ½º¿Í °°´Ù)

etu-ppp:viYabVlxPwzDl:1000:1000:Esa Turtiainen,PPP:/:/usr/sbin/pppd
</p>

<sect>   Shells
<p>
»ç¿ëÀÚ ÇÁ·Î¼¼½ºµéÀº /etc/passwd ¿¡ Á¤ÇØÁø ½©ÀÇ ÀÚ½ÄÇÁ·Î¼¼½ºÀÎ °æ¿ì°¡ 
¸¹À¸¸ç ´ë°Ô ½©ÀÇ ÃʱâÈ­ ÆÄÀÏ¿¡ ÀÇÇØ¼­ path´Â ¼öÁ¤µÇ¾îÁö´Â °æ¿ì°¡ ¸¹´Ù. 
login ÇÁ·Î±×·¥¿¡¼­´Â ½©ÀÇ À̸§¾Õ¿¡ '-' °¡ ºÙ´Â´Ù. ¿¹¸¦µé¾î bash´Â 
'-bash'¶ó°í ºÒ·ÁÁø´Ù. ÀÌ Ç¥½Ã´Â ±×°ÍÀÌ ·Î±×ÀÎ ½©ÀÓÀ» ºÒ·ÁÁö´Â ½©¿¡°Ô 
¾Ë¸°´Ù. ÀÌ °æ¿ì¿¡ ½©Àº ·Î±×ÀÎ ÃʱâÈ­ ÆÄÀÏÀ» ¼öÇàÇÏ°Ô µÈ´Ù. ·Î±×ÀÎ ½©ÀÌ 
¾Æ´Ò°æ¿ì¿¡´Â °£´ÜÇÑ ÃʱâÈ­°¡ ÀÌ·ç¾îÁø´Ù. 

 Ãß°¡ÀûÀ¸·Î, ½©ÀÌ »óÈ£ ´ëÈ­½Ä½©ÀÎÁö Áï, ¸í·É¾î°¡ ÆÄÀϷκÎÅÍ ÀÔ·ÂÀÌ µÇ´Â
Áö tty¿¡¼­ ÀÔ·ÂÀÌ µÇ´ÂÁö üũ¸¦ Çϴµ¥ À̰ÍÀº ½©ÀÇ ÃʱâÈ­¸¦ ¼öÁ¤ÇÏ°Ô µÇ
¸ç ±×·¡¼­ ´ëÈ­½Ä ½©ÀÌ ¾Æ´Ï°í ·Î±×ÀÎ ½©µµ ¾Æ´Ï¶ó¸é ÃʱâÈ­´Â ¾ÆÁÖ °£´ÜÇÏ°Ô 
ÀÌ·ç¾îÁø´Ù.(bash´Â À̰æ¿ì¿¡´Â ¾Æ¹«·± ÃʱâÈ­µµ ÇÏÁö ¾Ê´Â´Ù!)  
</p>

<sect1>  bash
<p>  
ÀüÇüÀûÀÎ ·Î±×ÀÎ ½©·Î¼­ bash´Â ½Ã½ºÅÛÀü¹Ý¿¡ °ÉÃÄ ¾²ÀÌ´Â /etc/profile ÆÄ
ÀÏÀ» ÂüÁ¶ÇÑ´Ù. ¿©±â¿¡´Â ½Ã½ºÅÛ È¯°æ°ú path°¡ bash »ç¿ëÀÚ¸¦ À§ÇØ ¼³Á¤µÇ
¾î Áú ¼ö ÀÖ´Ù.

±×·¯³ª ½Ã½ºÅÛÀÌ ´ëÈ­½Ä ½©ÀÌ ¾Æ´Ï¶ó°í ÆÇ´ÜÇÏ°Ô µÇ¸é ÀÌ ÆÄÀÏÀº ÀÐÇôÁöÁö 
¾Ê´Â´Ù. Áß¿äÇÑ °æ¿ì·Î ¸®¸ðÆ®¿¡¼­ ¸í·É¾î°¡ ½ÇÇàµÇ´Â rsh °¡ Àִµ¥ ÀÌ °æ¿ì 
/etc/profileÀº ÀÐÇôÁöÁö ¾Ê°í path´Â rsh µ¥¸ó¿¡°Ô¼­ »ó¼ÓµÇ¾îÁø´Ù.   
  
bash´Â ¸í·É Àμö -login°ú -i ·Î½á ·Î±×ÀÎ ½©ÀÎÁö ¾Æ´ÑÁö ¿Í ´ëÈ­Çü ½©ÀÎ
Áö ¾Æ´ÑÁö¸¦ Á¤ÇÒ ¼ö ÀÖ´Ù.  
»ç¿ëÀڴ Ȩµð·ºÅ丮¿¡ ~/.bash_profile, ~/.bash_login ¶Ç´Â ~/.profile 
ÆÄÀÏÀ» ¸¸µé¾î¼­ /etc/profile ¿¡ Á¤ÇØÁø °ªÀ» ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù. ÁÖÀÇÇÒ °ÍÀº 
cshÀÇ ÃʱâÈ­ °úÁ¤°ú´Â ´Ù¸£°Ô ÀÌ ÆÄÀÏÁß Ã³À½°Í¸¸ ½ÇÇàµÈ´Ù´Â °ÍÀÌ´Ù. 
~/.bash_login Àº ·Î±×ÀÎ ½©ÀÏ °æ¿ì ½ÇÇàµÇÁö ¾ÊÀ¸¸ç ~/.bash_profile ÀÌ 
ÀÖ´Ù¸é ~/.bash_loginÀº ÀüÇô ½ÇÇà¾ÈµÈ´Ù!!

¸¸¾à bash°¡ sh ¶õ À̸§À¸·Î »ç¿ëµÇ¾îÁø´Ù¸é bash´Â ¿À¸®Áö³¯ º»½©ÀÇ ÃÊ
±âÈ­¸¦ ¿¡¹Ä·¹ÀÌÆ®ÇÑ´Ù.  Áï, /etc/profile, ~/.profile °ú ·Î±×ÀÎ ½©ÀÇ Ãʱâ
È­¸¸ µû¸¥´Ù.
</p>

<sect1>  tcsh
<p>  
tcsh °¡ ·Î±×ÀÎ ½©À̸é tcsh ´Â ´ÙÀ½ ¼ø¼­·Î ÆÄÀϵéÀ» ¼öÇàÇÑ´Ù.
<code>
   /etc/csh.cshrc
   /etc/csh.login
   ~/.tcshrc
   ~/.cshrc (.tcshrc °¡ ¾ø´Â°æ¿ì)
   ~/.history
   ~/.login
   ~/.cshdirs
</code>
tcsh´Â cshrc ½ºÅ©¸³Æ® Àü¿¡ login ½ºÅ©¸³Æ®¸¦ ¸ÕÀú ¼öÇàÇϵµ·Ï ÄÄÆÄÀÏÇÒ¼ö 
µµ ÀÖ´Ù. ¾Ë¾ÆµÎ¾î¶ó!
 
´ëÈ­Çü ½©ÀÌ ¾Æ´Ò°æ¿ì¿¡´Â ´ÜÁö *cshrc½ºÅ©¸³Æ®¸¸ ½ÇÇàµÈ´Ù. *login ½ºÅ©
¸³Æ®´Â path¸¦ ÁöÁ¤Çϱâ À§ÇØ ·Î±×ÀÎ ½Ã¿¡ Çѹø »ç¿ëµÈ´Ù. 
</p>

<sect> Changing user ID

<sect1>su
<p>
su ¸í·É¾î¸¦ »ç¿ëÇÒ¶§´Â »ç¿ëÇÏ·Á´Â »õ·Î¿î ¾ÆÀ̵𸦠Àû¾îÁִµ¥ ¾Æ¹«°Íµµ 
Àû¾îÁÖÁö ¾ÊÀ¸¸é root °¡ »ç¿ëµÈ´Ù.
´ë°ÔÀÇ °æ¿ì su ´Â ´Ù¸¥¾ÆÀ̵ð·Î ¼­ºê½©À» ±âµ¿Çϴµ¥, ¾Æ±Ô¸ÕÆ®·Î '-'(ÃÖ
±Ù¿¡´Â -l ¶Ç´Â -login)¸¦ ºÙÀÏ °æ¿ì su ´Â ·Î±×Àν©À» ±âµ¿ÇÑ´Ù. ¾î·°Å³ª 
su´Â ÀÌ·± ±â´ÉÀ» ¼öÇàÇϱâÀ§ÇØ loginÇÁ·Î±×·¥À» ¾²Áö´Â¾Ê´Â´Ù. ´ë½Å ·Î±×ÀÎ 
½Ã¹Ä·¹À̼Ç(¼Ò½º Äڵ忡 ÀÌ ¿ë¾î¸¦ ¾²´õ±º¿ä)À» À§ÇÑ ´Ù¸¥ ³»ÀåµÈ(built in) 
path°¡ »ç¿ëµÈ´Ù.

±× path´Â ÀϹݻç¿ëÀÚ¿¡°Ô´Â    
   /usr/local/bin:/usr/bin:/bin:/usr/bin/X11:.

root ¿¡°Ô´Â 
 
   /sbin:/bin:/usr/sbin:/usr/bin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin
ÀÌ´Ù.

 »Ó¸¸ ¾Æ´Ï¶ó su´Â ²Ï³ª ¹Ì¼¼ÇÑ È¯°æ¼³Á¤ÀÇ º¯È­¸¦ °¡Á®¿Â´Ù.
</p>

<sect1>sudo
<p>
¼öÆÛÀ¯Àú ¸í·É¾îµéÀ» º¸´Ù ¾ÈÀüÇÏ°Ô ¾µ¼öÀÖµµ·Ï ÇÏ´Â ¸í·É¾îµéÀÌ Àִµ¥ 
À̰͵éÀº º¸´Ù ³ªÀº ·Î±ë°ú À¯Àúº° Á¦ÇѰú °³º°ÀûÀÎ ÆÐ½º¿öµå »ç¿ëÀ» °¡´É
ÇÏ°Ô ÇØÁØ´Ù. °¡Àå ³Î¸®¾²ÀÌ´Â °ÍÀº sudo ÀÌ´Ù.

     $ sudo env

ÀÌ ¸í·ÉÀº env ¸í·ÉÀ» ¼öÆÛÀ¯Àú ¸ðµå·Î ½ÇÇàÇÏ°Ô ÇÑ´Ù. (¸¸¾à ±×°ÍÀ» Çã¿ë
ÇϰԲû ¼³Á¤ÀÌ µÇ¾îÀÖ´Ù¸é)
sudo ¸í·É¾î´Â path¸¦ ´Ù·ç´Âµ¥ À־ ¶Ç´Ù¸¥ Á¢±Ù¹æ½ÄÀ» °®°í Àִµ¥, 
path¸¦ ¹Ù²ã¼­ Ç×»ó ÇöÀç µð·ºÅ丮°¡ pathÀÇ ¸¶Áö¸·¿¡ ÀÖ°Ô ÇÑ´Ù. ±×·¯³ª 
PATH º¯¼ö¸¦ ¹Ù²ÙÁö´Â ¾ÊÀ¸¸ç ´ÜÁö SUDO_USER °°Àº ¸î °³ÀÇ È¯°æ º¯¼ö
µé¸¸À» ¹Ù²Û´Ù.
</p>

<sect>Network servers<p>
´ëºÎºÐÀÇ ³×Æ®¿öÅ© ¼­¹öµéÀº ¾î¶²Á¾·ùÀÇ ¼­ºê ÇÁ·Î¼¼½ºµµ °¡µ¿ÇÏÁö ¾Ê´Â°Ô 
ÁÁ´Ù. º¸¾ÈÀ» »ý°¢ÇÑ´Ù¸é ±× ÇÁ·Î¼¼½ºµéÀÇ path ´Â ÃÖ¼ÒÇÑ ÀÌ¿©¾ß ÇÑ´Ù. 
ÇѰ¡Áö Áß¿äÇÑ ¿¹¿Ü°¡ ÀÖ´Ù¸é ³×Æ®¿öÅ©·ÎºÎÅÍ ·Î±ëÀ» Çã¿ëÇÏ´Â ¼­ºñ½ºµéÀÌ
´Ù. ÀÌ Àå¿¡¼­´Â ÀÌ °æ¿ì¿¡ ¾î¶² ȯ°æÀÌ ¾²ÀÌ´ÂÁö ¼³¸íÇϰí ÀÖ´Ù. ¸¸¾à rsh¸¦ 
ÅëÇØ ¾î¶² ¸í·É¾î°¡ ¸®¸ðÆ® ¸Ó½Å¿¡¼­ ¼öÇàµÇ¸é path ´Â ssh¸¦ »ç¿ëÇÏ´Â°Í °ú 
´Ù¸£´Ù. ºñ½ÁÇÏ°Ô rloginÀ¸·Î telnet ¶Ç´Â ssh·Î ·Î±×ÀÎ ÇßÀ»¶§µµ °¢°¢ ´Ù¸£
´Ù.</p>

<sect1>inetd
<p>
´ëºÎºÐÀÇ ³×Æ®¿öÅ© ¼­¹öµéÀº ¸®Äù½ºÆ®¸¦ ±â´Ù¸®¸ç ´ë±âÇϰí ÀÖ´Â ¼­ºê ÇÁ
·Î¼¼½ºµéÀ» °¡Áö°í ÀÖÁö ¾Ê´Ù. ÀÌ ÀÏÀº inetd¶ó´Â ÀÎÅÍ³Ý ¼öÆÛ ¼­¹ö°¡ ´ë½Å
ÇÏ°Ô µÇ´Âµ¥, inetd´Â ¼³Á¤µÈ ¸ðµç ³×Æ®¿öÅ© Æ÷Æ®µéÀ» µè°í ÀÖ´Ù°¡ ¸®Äù½ºÆ®
°¡ ¿À¸é ÇØ´çÇÏ´Â ¼­¹ö¸¦ ±âµ¿ÇÑ´Ù. 

inetd ÀÇ ¼³Á¤ÆÄÀÏÀº /etc/inetd.conf ÀÌ´Ù.
inetd´Â ½Ã½ºÅÛ ½ÃÀÛ ½ºÅ©¸³Æ®¿¡¼­ ½ÃÀ۵Ǿî Áø´Ù. init ÇÁ·Î¼¼½º·ÎºÎÅÍ 
path¸¦ »ó¼Ó¹Þ°í ¼öÁ¤ÇÏÁö´Â ¾Ê´Â´Ù. ±×·¡¼­ inetd ·ÎºÎÅÍ ½ÃÀ۵Ǵ ¸ðµç 
¼­¹öµéÀº initÀÇ path¸¦ °¡Áö°í ÀÖ´Ù.
¿¹·Î¼­ IMAP post office ÇÁ·ÎÅäÄÝÀÎ imapdÀ» µé¼öÀÖ´Ù 
´Ù¸¥ inetdÇÁ·Î¼¼½º´Â telnet, rlogin, talkd, ftp, popd, ¿©·¯ http¼­¹ö µîÀÌ 
ÀÖ´Ù.
 
¸®¾ó ¼­¹ö¸¦ ±¸µ¿ÇϱâÀ§ÇØ µû·Î ºÐ¸®µÈ(µ¶¸³ÀûÀÎ?:¿ªÀÚ ÁÖ) tcpd ÇÁ·Î±×·¥
À» »ç¿ëÇÑ´Ù¸é inetd ÀÇ »ç¿ë¹ýÀº ¿©ÀüÈ÷ º¹ÀâÇÏ´Ù. tcpd´Â ¸®¾ó ¾îÇø®ÄÉ
À̼ÇÀÌ ½ÃÀ۵DZâ Àü¿¡ Ãß°¡ÀûÀÎ º¸¾È Á¡°ËÀ» ÇϰԵǴµ¥ path¸¦ ¹Ù²ÙÁö´Â 
¾Ê´Â´Ù.(È®ÀÎÇØº¸Áö ¾Ê¾ÒÀ½) 
</p>

<sect1>rsh
<p>
rsh µ¥¸óÀº ÀϹݻç¿ëÀÚ¸¦ À§ÇØ ·Î±×ÀÎ ÇÁ·Î±×·¥ÀÌ ¼³Á¤Çϴ°Ͱú °°Àº 
_PATH_DEFPATH (/usr/include/paths.h) ·ÎºÎÅÍ path¸¦ ¼³Á¤ÇÑ´Ù. root 
¿ª½Ã ÀϹÝÀ¯Àú¿Í °°Àº path¸¦ °®´Â´Ù. 
»ç½Ç, rshd ´Â commandline¿¡¼­ ¾òÀº ÆÄ¶ó¸ÞÅÍ(¿¹Á¦¿¡¼­  
command-line:¿ªÀÚ ÁÖ)·Î ´ÙÀ½°ú °°Àº ¸í·É¾î¸¦ ½ÇÇàÇÏ´Â °ÍÀÌ´Ù.

     shell -c command-line

À̰æ¿ì ·Î±×ÀÎ ½©Àº¾Æ´Ï´Ù. /etc/passwd ¿¡ ±â·ÏµÈ ¸ðµç ½©µéÀÌ -c ¿É¼ÇÀ» 
Áö¿øÇÏ´ÂÁö È®ÀÎÇϱ⠹ٶõ´Ù.
</p>

<sect1> rlogin
<p>
Rlogin Àº real login °úÁ¤À» ¼öÇàÇϱâÀ§ÇØ loginÀ» ±âµ¿ÇÑ´Ù. rloginÀ» ÅëÇØ 
·Î±×ÀÎ ÇÑ´Ù¸é login ¿¡¼­¿Í °°Àº path¸¦ °®°Ô µÉ °ÍÀÌ´Ù. ´Ù¸¥¹æ½ÄÀÇ ¸®´ª½º 
·Î±×ÀÎÀº ´ëºÎºÐ loginÀ» »ç¿ëÇÏÁö ¾Ê´Â´Ù. rsh ¿Í ´Ù¸£´Ù´Â °Í¿¡ ÁÖÀÇÇϱâ 
¹Ù¶õ´Ù.
  
½ÇÁ¦ login ´ÙÀ½°ú °°Àº ¸í·ÉÀ» »ç¿ëÇϴµ¥

     login -p -h host-name user-name

-p ¿É¼ÇÀº HOME, PATH, SHELL, TERM, MAIL, LOGNAMEÀ» Á¦¿ÜÇÑ 
ȯ°æº¯¼öµéÀ» Àü¿¡ ÀÖ´ø ±×´ë·Î º¸Á¸Çϰí, -h ¿É¼ÇÀº ·Î±×ÀÎÇÒ ¸®¸ðÆ® È£½º
Æ® ¸íÀ» ¾Ë·ÁÁÖ°Ô µÈ´Ù. 
</p>

<sect1>   telnet
<p>
telnetÀº rlogin °ú ºñ½ÁÇÏ´Ù. login ÇÁ·Î±×·¥À» »ç¿ëÇÏ¸ç ¸í·É½ÇÇ൵ 
rlogin°ú ºñ½ÁÇÑ ¹æ½ÄÀ¸·Î ÀÌ·ç¾îÁø´Ù.
</p>

<sect1> ssh
<p>
ssh ´Â ÀڽŸ¸ÀÇ path ¼³Á¤Ä¡¸¦ °®°í ÀÖ´Ù. ssh´Â °íÁ¤µÃ path º¯¼ö¸¦ °¡
Áö¸ç ssh °¡ ³õ¿©Á®ÀÖ´Â path¸¦ Ãß°¡ÇÑ °ÍÀÌ´Ù. ¶§·Î ÀÌ·¸°Ô µÊÀ¸·Î½á 
/usr/bin µð·ºÅ丮°¡ ÆÐ½º¿¡ µÎ ¹ø ³ªÅ¸³ª°Ô µÇ±âµµ ÇÑ´Ù.

     /usr/local/bin:/usr/bin:/bin:.:/usr/bin

path¿¡ /usr/X11/bin ÀÌ µé¾îÀÖÁö ¾ÊÀ¸¸ç, ssh°¡ ±âµ¿ÇÑ ½©Àº ·Î±×ÀÎ ½©ÀÌ 
¾Æ´Ï´Ù. ±×·¯¹Ç·Î
       
     ssh remotehost xterm

ÀÌ·± ¸í·ÉÀº ½ÇÇàµÇÁö ¾Ê°í /etc/profileÀ̳ª /etc/csh.cshrc°ªÀ» ¹Ù²ãÁØ´Ù 
ÇØµµ ¼Ò¿ë¾ø´Ù. »ç¿ëÇÏ·Á¸é Ç® ÆÐ½º¸¦ Àû¾îÁà¾ßÇÑ´Ù (/usr/bin/X11/xterm)
ssh´Â /etc/environment ÆÄÀϾÈÀÇ VAR=VALUE, ÀÌ·± Çü½ÄÀÇ È¯°æº¯¼ö 
°ªÀ» ÀоîµéÀδÙ. ±×·¡¼­ XFree86 ½ÇÇà½Ã ¹®Á¦¸¦ ÀÏÀ¸Å²´Ù. (µÚ¿¡ Ãß°¡ÀûÀ¸
·Î ¼³¸íµÊ:¿ªÀÚ ÁÖ)  
</p>

<sect> XFree86

<sect1> XDM
<p>
XDMÀº ±×·¡ÇÈ È¯°æÀÇ Å͹̳ηΠ·Î±×ÀÎ ½Ã¿¡ ¸¹ÀÌ »ç¿ëµÇ´Â ¹æ¹ýÀÌ´Ù. login 
°ú ºñ½ÁÇÏ°Ô º¸ÀÏÁö ¸ð¸£³ª ³»ºÎÀûÀ¸·Î´Â ¿ÏÀüÈ÷ ´Ù¸¥°ÍÀÌ´Ù.
Àü°ú´Â ´Ù¸¥ ·Î±×ÀÎ °úÁ¤À» ½ÇÇàÇϱâ À§ÇÑ ¼³Á¤ÆÄÀϵéÀÌ /etc/X11/xdm µð
·ºÅ丮¿¡ ÀÖ´Ù. Xstartup (screen 0 ´Â Xstartup_0) Àº À¯Àú°¡ ·Î±×ÀÎÇÑÈÄ 
½ÇÇàµÇ´Â ¸í·ÉµéÀÌ ÀÖ´Ù.(¸í·ÉÀº root ±ÇÇÑÀ¸·Î ½ÇÇàµÇ¾îÁø´Ù)
À¯ÀúµéÀ» À§ÇÑ path ´Â /etc/X11/xdm/xdm-config ÆÄÀÏ¿¡ ÀÖ´Ù. ´ÙÀ½°ú 
°°Àº ¶óÀεéÀε¥

     DisplayManager*userPath: 
/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games

       DisplayManager*systemPath: 
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11

´ç¿¬È÷ ÀÏ¹Ý »ç¿ëÀÚ¿Í root¸¦ À§ÇÑ ±âº» path °¡ µÉ°ÍÀ̸ç /usr/bin/X11 µð
·ºÅ丮°¡ path¿¡ °É·ÁÀÖ´Ù´Â °Í¿¡ ÁÖ¸ñÇϱ⠹ٶõ´Ù. ¸¸¾à¿¡ X À¯Àú°¡ ´Ù¸¥ 
¸Ó½Å¿¡ µé¾î°¡ X Ŭ¶óÀÌ¾ðÆ® ÇÁ·Î±×·¥À» ½ÇÇàÇϱâ À§Çؼ­´Â (X terminal·Î
ºÎÅÍ Á÷Á¢ ·Î±×ÀÎ ÇÏÁö ¾Ê¾Ò´õ¶óµµ..)  /usr/bin/X11 ÀÌ path¿¡ °É·ÁÀÖ¾î¾ß 
ÇÑ´Ù. 

XstartupÀ» ½ÇÇàÇÑÈÄ XDMÀº ÃÖÁ¾»ç¿ëÀڷμ­ /etc/X11/XsessionÀ» ½ÇÇà
ÇÑ´Ù. /etc/environment ÆÄÀÏÀÌ Á¸ÀçÇÑ´Ù¸é XsessionÀº ÀÌ ÆÄÀÏÀ» ºÒ·¯µé
ÀÌ°í ·ÎÄ® ¼³Á¤Àº ÀÌ ÆÄÀÏ¿¡¼­ ³¡³ª°Ô µÈ´Ù.(XsesionÀº /bin/sh ¿¡ ÀÇÇØ ½Ç
ÇàµÇ¹Ç·Î /etc/environment ´Â shÆÄÀÏÀ̾î¾ß ÇÑ´Ù) ÀÌ ¶§¹®¿¡ ssh¸¦ »ç¿ëÇÒ 
°æ¿ì ¹®Á¦°¡ ¹ß»ýÇÑ´Ù. ssh´Â /etc/environment°¡ VAR=VALUE, ÀÌ·± Çü
½ÄÀÇ ¶óÀεéÀÌ µé¾î°¡ ÀÖ´Â ÆÄÀÏÀÏ °ÍÀ̶ó »ý°¢Çϱ⠶§¹®ÀÌ´Ù.
</p>

<sect1>   xterm -ls
<p>
µðÆúÆ®·Î X window¸Þ´ÏÁ® ¸Þ´º·ÎºÎÅÍ ½ÇÇàµÈ ¸í·ÉµéÀ» À§ÇÑ path´Â XDM
À¸·ÎºÎÅÍ »ó¼Ó¹ÞÀº °ÍÀÌ´Ù. ´Ù¸¥ path¸¦ ¿øÇÑ´Ù¸é Á÷Á¢ ¼¼ÆÃÇØÁà¾ß ÇÑ´Ù. 
¸î¸î ±âº»ÀûÀÎ ÆÐ½º¸¦ °¡Áö°í Å͹̳Π¿¡¹Ä·¹ÀÌÅ͸¦ ½ÃÀÛÇÏ·Á¸é Ưº°ÇÑ ¿É¼Ç
µéÀÌ »ç¿ëµÇ¾îÁ®¾ß ÇÑ´Ù. xterm¿¡¼­´Â -ls(login shell) ¿É¼ÇÀ» »ç¿ëÇÏ¿© 
shell ·Î±×ÀÎ ÃʱâÈ­ ÆÄÀÏÀÇ path¸¦ Áö´Ñ ·Î±×ÀÎ ½©À» ±âµ¿ÇÒ ¼ö ÀÖ´Ù.
</p>

<sect1>  Window manager menus and buttons
<p>
À©µµ¿ì ¸Þ´ÏÁ®´Â XDMÀ¸·ÎºÎÅÍ È¯°æº¯¼ö¸¦ ¹°·Á¹Þ´Â´Ù. À©µµ¿ì ¸Þ´ÏÁ®·Î
ºÎÅÍ ½ÇÇàµÈ ¸ðµç ÇÁ·Î±×·¥µéÀº À©µµ¿ì ¸Þ´ÏÁ®ÀÇ È¯°æÀ» ¹°·Á¹Þ´Â´Ù.
»ç¿ëÀÚ ½©ÀÇ È¯°æº¯¼ö´Â À©µµ¿ì ¸Þ´ÏÁ®ÀÇ ¹öưÀ̳ª ¸Þ´º·ÎºÎÅÍ ½ÇÇàµÇ´Â 
ÇÁ·Î±×·¥¿¡´Â ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê´Â´Ù. ¿¹¸¦µé¾î, 'xterm -ls'¿¡¼­ ÇÁ·Î±×·¥ÀÌ 
½ºÅ¸Æ® µÈ´Ù¸é ·Î±×ÀÎ ½©ÀÇ ±âº» ȯ°æÀ» °®°Ô µÇ³ª, ¸Þ´º¿¡¼­ ½ÇÇàµÈ´Ù¸é, 
´ÜÁö À©µµ¿ì ¸Þ´ÏÁ®ÀÇ È¯°æ¸¸À» °¡Áú»ÓÀÌ´Ù.
</p>

<sect>  Delayed commands cron and at
<sect1>  cron
<p>
Cron Àº ÁÖ±âÀûÀ¸·Î /etc/crontab°ú À¯Àú°¡ Á¤ÀÇÇÑ crontabs¾ÈÀÇ ¸í·ÉÀ» 
½ÇÇàÇÏ´Â ¸í·É¾îÀÌ´Ù. µ¥ºñ¾È 1.3 ¿¡´Â /etc/cron.daily, /etc/cron.weekly, 
/etc/cron.monthly ÆÄÀϵé·Î½á Ç¥ÁØÀûÀÎ ±â´ÉÀ» ¼öÇàÇÏ°Ô µÈ´Ù.
Cron Àº ºÎÆ® ½ºÆ®¸³Æ®¿¡¼­ ½ÃÀ۵dzª ÀÚ½ÅÀÇ path¸¦ Á¶±ÝÀº »ý¼ÒÇÑ °ÍÀ¸·Î 
¹Ù²Û´Ù. Áï,
 
    /usr/bin:/binn:/sbin:/bin:/usr/sbin:/usr/bin
ÀÌ°Ç cron ÀÇ ¹ö±×ÀÎ °Í °°´Ù!!!  init ÀÇ path¿¡´Ù ¾ÕºÎºÐ¿¡ /usr/bin:/binÀ» 
µ¤¾î ½á¹ö¸° °ÍÀÌ´Ù! ÀÌ ¹ö±×´Â ´Ù¸¥ ¸ðµç ½Ã½ºÅÛ¿¡ Á¸ÀçÇÏ´Â °ÍÀº ¾Æ´Ï´Ù.
crontab ¿¡´Â path Á¤ÀǸ¦ ÇÒ ¼ö Àִµ¥, µ¥ºñ¾È 1.3¿¡´Â /etc/crontab ÀÇ 
¾ÕºÎºÐ¿¡ ´ÙÀ½ÀÇ ±âº» ¼³Á¤ ¶óÀÎÀÌ ÀÖ´Ù.

     PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
ÀÌ °ÍÀ¸·ÎÀÎÇØ, crond ÇÁ·Î±×·¥ÀÇ PATH´Â À¯Àú ÇÁ·Î±×·¥¿¡¼­´Â Àû¿ëµÇÁö 
¾ÊÀ¸¸ç,   /etc.cron* µð·ºÅ丮ÀÇ ¸ðµç ½ºÆ®¸³Æ®µéÀº ÀÌ ÆÐ½º¸¦ ±âº»À¸·Î »ç
¿ëÇÑ´Ù.  ½ÉÁö¾î ÇÁ·Î±×·¥ÀÇ ½ÇÇàÀÚ°¡ root°¡ ¾Æ´Ï¶ó ÀϹݻç¿ëÀÚÀÏ °æ¿ì¿¡µµ 
crond ÇÁ·Î±×·¥Àº ÀÌ ÆÐ½º¸¦ »ç¿ëÇÑ´Ù.
</p>

<sect1>at
<p>
at ´Â ƯÁ¤ÇÑ ½Ã°£¿¡ ÇÁ·Î±×·¥À» Çѹø ½ÇÇàÇϱâ À§ÇØ »ç¿ëÇÏ´Â ¸í·É¾îÀÌ´Ù. 
 
atd ´Â init ÀÇ ÆÐ½º¸¦ »ç¿ëÇϳª, À¯ÀúµéÀÇ ÇÁ·Î±×·¥Àº sh ¸í·É¾î·Î Ç×»ó À¯
ÀúÀÇ È¯°æÇÏ¿¡¼­ ¼öÇàµÇ¾îÁø´Ù. ±×·¯¹Ç·Î shell ¿¡ ÀÇÇØ ȯ°æº¯°æÀÌ Àû¿ëµÇ
¾îÁø´Ù. bash ¿¡ °üÇÑ ±ÛÀ» Àо¶ó.
</p>

<sect> Some examples
<sect1> magicfilter
<p>
magicfilter ´Â ÇÁ¸°Æ®ÇÒ ÆÄÀÏÀ» ´Ù·ç±â À§ÇØ ÁÖ·Î »ç¿ëµÇ´Â ÅøÀÌ´Ù. ÇÁ¸°Æ®
µÉ ÆÄÀÏÀ» ºÐ¼®ÇÏ¿© ÀûÀýÇÑ ÇÊÅÍ ½ºÅ©¸³Æ®¸¦ ±âµ¿ÇÑ´Ù. ÀÌ·¯ÇÑ ½ºÅ©¸³Æ®µéÀº 
initÀÌ  /etc/init.d/lpd¿¡¼­ ½ÃÀÛ½ÃŲ lpd °¡ ¼öÇàÇÏ°Ô µÇ¸ç ±×·¡¼­ initÀÇ ÆÐ
½º¸¦ °¡Áö°í ÀÖ´Ù. ±×·¯¹Ç·Î /usr/bin/X11Àº path ¿¡ µé¾î°¡ ÀÖÁö ¾Ê´Ù!! 
¸ÞÁ÷ÇÊÅÍ¿¡ PDF ÆÄÀÏÀ» ³Ö¾î¼­ Ãâ·ÂÇÏ°í ½ÍÀ» °ÍÀÌ´Ù. À̰ÍÀº 
/usr/bin/xpdf¸¦ »ç¿ëÇÏ¸é °¡´ÉÇÏ´Ù. À̶§ ´ç½ÅÀº Ç®ÆÐ½º ÆÄÀϳ×ÀÓÀ» Àû¾î
Áà¾ßÇÑ´Ù. ±×·¸Áö ¾ÊÀ¸¸é ¸ÞÁ÷ÇÊÅÍ´Â ±× ÆÄÀÏÀ» ãÀ»¼ö¾ø±â ¶§¹®ÀÌ´Ù. (±×·¯
³ª) ¸ÞÁ÷ÇÊÅͰ¡ »ç¿ëÇÏ´Â ´ëºÎºÐÀÇ ÇÁ·Î±×·¥µéÀº /bin¶Ç´Â /usr/bin¿¡ ÀÖ±â 
¶§¹®¿¡ ¾ÕÀÇ °æ¿ì ¿Ü¿¡´Â Ç®ÆÐ½º¸¦ ÀûÀ»ÇÊ¿ä´Â ¾ø´Ù.
</p>

<sect1>  Printing from X applications
<p>
Áö±Ý »ç¿ëÇÏ´Â ÇÁ¸°ÅͰ¡ ¹ºÁö ³ªÅ¸³»±â À§Çؼ­ PRINTER ȯ°æº¯¼ö¸¦ »ç¿ëÇÒ 
¼ö ÀÖ´Ù. ±×·¯³ª ¾î¶² °æ¿ì¿¡´Â ÀÛµ¿ÇÏÁö ¾ÊÀ»¼öµµ ÀÖ´Ù´Â°É ¾Ë¾ÆµÎ±â ¹Ù¶õ´Ù. 
 
¸¸¾à¿¡ XDM¿¡¼­ X sessionÀÌ ½ÃÀ۵Ǿú´Ù¸é À©µµ¿ì ¸Þ´ÏÁ®´Â shell ·Î±×ÀÎ 
½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÏÁö ¾Ê´Â´Ù´Â °ÍÀ» ±â¾ïÇØ¾ßµÈ´Ù. xterm¿¡¼­ ½ÇÇàµÈ ¸ðµç X 
applicationµéÀº PRINTER°ªÀ» °¡Áö°í ÀÖÁö¸¸ ¸Þ´º³ª À©µµ¿ì ¸Þ´ÏÁ® ¹öư
¿¡¼­ ½ÇÇàµÈ´Ù¸é PRINTER°ªÀÌ ¾øÀ»°ÍÀÌ´Ù.
¾î¶² °æ¿ì¿¡´Â ÇÏÀ§°èÃþÀ¸·Î »ó¼ÓµÇ´Â °æ¿ìµµ ÀÖ´Ù. ¿¹¸¦µéÀÚ¸é ¸ðÁú¶ó help 
ÇÁ·Î±×·¥Àº(Ç÷¯±× ÀÎ ÇÁ·Î±×·¥:¿ªÀÚ ÁÖ- ÀÌ ÈÄ ÇÁ·¯±×ÀÎ À̶ó ºÎ¸¥´Ù) 
PRINTER º¯¼ö°ªÀ» °¡Áú ¼öµµ ÀÖ°í ±×·¸Áö ¾ÊÀ» ¼öµµ ÀÖ´Ù.
</p>

<sect>   Security concerns
<p>
ÆÐ½º´Â ¶§·Î Áß´ëÇÑ º¸¾È¹®Á¦¸¦ ¾ß±âÇϱ⵵ ÇÑ´Ù. À߸øµÈ ÆÐ½º¼³Á¤À» ¾Ç¿ë
ÇÏ¿© ½Ã½ºÅÛÀ» ÇØÅ·ÇÏ´Â °ÍÀº ÈçÇѰæ¿ìÀÌ´Ù.
°ú°Å(?) ÆÐ½º¼³Á¤¿¡¼­ ÈçÇÑ ½Ç¼ö´Â rootÀÇ ÆÐ½º¿¡ '.'ÀÌ µé¾î°¡ Àִ°æ¿ìÀÌ´Ù.
¾ÇÀÇÀÖ´Â ÇØÄ¿´Â ÀÚ½ÅÀÇ È¨µð·ºÅ丮¿¡ 'ls' ÇÁ·Î±×·¥À» µÎ¾î root°¡ ´ÙÀ½Ã³·³
 
    # cd ~hacker
    # ls

ÇØÄ¿ ÀÚ½ÅÀÇ µð·ºÅ丮¿¡¼­ ls¸¦ ½ÇÇàÇÏ°Ô µÇ¸é ÇØÄ¿°¡ ¸¸µç ÇÁ·Î±×·¥ÀÌ ½ÇÇà
µÇµµ·Ï ÇÑ´Ù.
ÀÌ·¯ÇÑ¿ø¸®´Â root ±ÇÇÑÀ¸·Î ½ÇÇàµÇ´Â ¸ðµç ÇÁ·Î±×·¥¿¡ °£Á¢ÀûÀ¸·Î Àû¿ëÀÌ 
µÈ´Ù. ¸ðµç µ¥¸ó ÇÁ·Î¼¼½ºµéÀº ÀÏ¹Ý À¯Àú°¡ ¾²±â°¡´ÉÇÑ °ÍÀÌ¸é ¾î¶°ÇÑ °Íµµ 
½ÇÇàÇØ¼­´Â ¾ÈµÈ´Ù. ¸î¸î ½Ã½ºÅÛ¿¡¼­´Â /usr/local/bin µð·ºÅ丮¿¡ ÇÁ·Î±×
·¥µéÀÌ ÀÖ°í ±×¸® ¾ö°ÝÇÏÁö ¾ÊÀº º¸¾È »óÅ¿¡ ÀÖ´Ù.(´ÜÁö ÀÌ µð·ºÅ丮°¡ 
rootÀÇ ÆÐ½º¿¡ ¾øÀ»»Ó..) ¾î·°Å³ª, ¸¸¾à¿¡ ¾î¶² µ¥¸óÀÌ 'foo' ¶ó´Â ¸í·ÉÀ» 
½ÇÇàÇϴµ¥ /usr/local/bin µð·ºÅ丮°¡ ÆÐ½º¿¡ °É·ÁÀÖ´Ù¸é '/bin/foo' ´ë½Å¿¡ 
'/usr/local/bin' ÀÌ ½ÇÇàµÉ¼öµµÀÖÀ» °ÍÀÌ´Ù. ±×·¸´Ù¸é /usr/local/bin ¿¡ ¾²±â 
±ÇÇÑÀÌ ÀÖ´Â »ç¿ëÀÚ´Â ´©±¸³ª ½Ã½ºÅÛ¿¡ ħÀÔÇØ µé¾î°¥ ¼ö ÀÖ°Ô µÈ´Ù.
ÆÐ½º¿¡ ¼³Á¤µÈ µð·ºÅ丮µéÀÇ '¼ø¼­'°¡ ¾î¶²Áö ÁÖÀDZí°Ô »ìÆìº¸´Â°Íµµ »ó´çÈ÷ 
Áß¿äÇÏ´Ù. ¸¸¾à /usr/local/binÀÌ /bin º¸´Ù ¾Õ¿¡ ÆÐ½º°¡ °É·ÁÀÖ´Ù¸é ,À½.. 
±×°Ç º¸¾È¹®Á¦°¡ ÀÖ´Â °ÍÀÌ´Ù. ¹Ý´ë·Î /bin ÀÌ ¾Õ¿¡ÀÖ°í /usr/local/bin ÀÌ 
µÚ¿¡ÀÖ´Ù¸é ·ÎÄöóÀÌÁîµÈ /usr/local/bin¿¡ ÀÖ´Â ÇÁ·Î±×·¥ÀÌ /bin ¿¡ ÀÖ´Â 
°ÍÀ» ´ë½ÅÇÏ¿© ¼öÇàµÉ °¡´É¼ºÀº ¾ø´Ù.

¸®´ª½º¿¡¼­ ÆÐ½º¸¦ °ËÅä, Àû¿ëÇÏ´Â °ÍÀº ¿î¿µÃ¼Á¦ ½Ã½ºÅÛ ÄÝ ·¹º§¿¡¼­ ÀÌ·ç
¾îÁø´Ù´Â °ÍÀ» ±â¾ïÇØ¾ßÇÑ´Ù. ¾î´À°÷¿¡¼­³ª ¸í·É¾î¸¦ ÀÔ·ÂÇÏ¸é ¼³Á¤µÈ µð·º
Å丮°¡ °Ë»öµÇ¾îÁö°í Àû¾îµµ /bin °ú /usr/bin ÀÌ °Ë»öµÇ¾îÁø´Ù. 
 </p>

<sect>  How to debug problems?<p>
ȯ°æº¯¼ö¸¦ Àоîµå¸®´Â ±âº»¸í·É¾î´Â /usr/bin/env ÀÌ´Ù.
/proc µð·ºÅ丮¸¦ ÀÌ¿ëÇÏ¸é ¾î¶² ÇÁ·Î±×·¥ÀÇ ÆÐ½º¸¦ ¾Ë¾Æ³¾¼ö ÀÖ´Ù. ¸ÕÀú 
ÇÁ·Î¼¼½º ¹øÈ£¸¦ ¾Ë¾Æ¾ß ÇÑ´Ù. (ps ¸í·É¾î¸¦ »ç¿ëÇϸéµÈ´Ù) ¿¹¸¦µé¸é, 
xtermÀÇ ÇÁ·Î¼¼½º ¹øÈ£°¡ 1088 ÀÌ¸é ´ÙÀ½ ¸í·É¾î·Î ÇÁ·Î±×·¥ÀÇ È¯°æº¯¼ö¸¦ 
¾Ë ¼ö ÀÖ´Ù.

     # more /proc/1088/environ

ÀÌ ¹æ¹ýÀº xdm°ú °°Àº µ¥¸ó ÇÁ·Î±×·¥¿¡°Ô´Â Àû¿ëµÇÁö ¾Ê´Â´Ù. ½Ã½ºÅÛ ÇÁ·Î
¼¼½ºÀÇ È¯°æº¯¼ö, ¶Ç´Â ´Ù¸¥ »ç¿ëÀÚ ÇÁ·Î¼¼½ºÀÇ È¯°æº¯¼ö¸¦ ¾Ë¾Æ³»±â À§ÇØ
¼­´Â root ±ÇÇÑÀÌ ÇÊ¿äÇÏ´Ù.
¸ðÁú¶ó¸¦ µð¹ö±× ÇØº¸ÀÚ. /tmp/test ½ºÅ©¸³Æ®¸¦ ¸¸µç´Ù:
<verb>
     $ cat > /tmp/test
     #!/bin/sh
     /usr/bin/env > /tmp/env
     ^d
     $ chmod +x /tmp/test
</verb>
±×¸®°í ³ª¼­ ¾Æ¹« ÇÁ·¯±×ÀÎ ÇÁ·Î±×·¥À» ¼³Á¤ÇÑ´Ù. ¿¹¸¦µé¾î ¸®¾ó¿Àµð¿À, 
audio/x-pn-realaudio¸¦ '/tmp/test' ÇÁ·Î±×·¥À» È£ÃâÇϵµ·ÏÇÑ´Ù. ±×·¯°í 
³ª¼­ ºê¶ó¿ìÁ®·Î ¸®¾ó¿Àµð¿À ¸µÅ©°¡ Àִµ¥·Î°¡¸é (¿¹¸¦µé¾î 
<url url="http://www.realaudio.com/showcase" name=" www.realaudio.com/showcase">), ¸ðÁú¶ó´Â /tmp/env ¿¡ ȯ°æº¯¼ö
µéÀ» ÀúÀåÇÏ´Â ´õ¹Ì ÇÁ·Î±×·¥(¹æ±Ý ¸¸µç ½ºÅ©¸³Æ®:¿ªÀÚÁÖ)À» È£ÃâÇÒ°ÍÀÌ´Ù.</p>

<sect> Some strategies to get the same path for all the users<p>
°¡Àå Áß¿äÇÑ ¼³Á¤µéÀº Æ÷°ýÀûÀÎ ·Î±×ÀÎ ½©ÀÇ ½© ÃʱâÈ­¿¡¼­ ÇÒ¼öÀÖ´Ù. tcsh
ÀÎ °æ¿ì´Â /etc/csh.login bashÀÎ °æ¿ì´Â /etc/profile. 
rsh , ssh ¸í·É,  ·Î±×ÀÎ ½©À» ¸í½ÃÀûÀ¸·Î ½ÃÀÛÇÏÁö ¾Ê´Â X window¸Þ´ÏÁ®ÀÇ 
¸Þ´º¾ÆÀÌÅÛµé, inittab·ÎºÎÅÍ ±âµ¿µÈ ¸í·Éµé, cron jobµéÀ̳ª lprd·Î ºÎÅÍ 
½ÃÀÛµÈ ¸ÞÁ÷ ÇÊÅͰ°Àº µ¥¸ó jobµé,±×¸®°í WWW CGI ½ºÅ©¸³Æ® µîµîÀº ÀÌ·¯
ÇÑ ÆÐ½º°¡ Àû¿ëµÇÁö ¾Ê´Â ¿¹¿ÜÀÎ °æ¿ì´Ù.  

¸¸¾à¿¡ ÆÐ½º°¡ /etc/csh.cshrc ÆÄÀÏ¿¡ ¼³Á¤µÇÀÖ´Ù¸é rsh ³ª ssh °¡ ¸®¸ðÆ® 
¸Ó½Å¿¡¼­ ¸í·É¾î¸¦ ¼öÇàÇßµå¶óµµ tcsh³ª csh¸¦ »ç¿ëÇÏ´Â °èÁ¤¿¡¼­¶ó¸é ÆÐ
½º´Â À¯È¿ÇÏ°Ô µÈ´Ù. ±×·¯³ª bash³ª sh¸¦ »ç¿ëÇÑ´Ù¸é ÆÐ½º´Â À¯È¿ÇÏÁö ¾Ê´Ù. 
ÆÐ½º ¼³Á¤À» ¿¹¸¦µé¾î /etc/environment-common °°Àº ÇϳªÀÇ ÆÄÀÏ¿¡ ³Ö
¾î¼­ »ç¿ëÇÒ ¼ö Àִµ¥, ÀÌ ÆÄÀÏ¿¡ ´ÙÀ½°ú °°ÀÌ Àû¾îµÎ°í 

     ${EXPORT}PATH       
     ${EQ}/bin:/usr/bin:/sbin:/usr/sbin:/usr/bin/X11:/usr/local/bin:/usr/games:.

ÀÌ °ÍÀ» /etc/csh.login(tcsh ³ª csh ÀÎ °æ¿ì)
set EQ=" " set EXPORT="setenv " source /etc/environment-common

¶Ç´Â /etc/profile (bash ÀÎ °æ¿ì, ¿ø·¡ÀÇ sh´Â ¾ÈµÊ)
     EQ='=' EXPORT="export " . /etc/environment-common

¶ÇÇÑ /etc/environment (XDM ÀÎ °æ¿ì)
     EQ="=" EXPORT="export " . /etc/environment-common
ÆÄÀÏ¿¡ ÀÌ¿Í °°ÀÌ »ç¿ëÇϸé Àû¿ë½Ãų ¼ö ÀÖ´Ù.

ÀÌ ¹æ¹ýÀº ssh ÀÎ °æ¿ì¿¡´Â /etc/environment (±×¸®°í EQ ¿Í EXPORT º¯
¼ö¿¡ ´ëÇÏ¿©)¾ÈÀÇ ¶óÀε鿡 ´ëÇØ¼­ ºÒÆòÀ»ÇÒ°ÍÀ̳ª ±× ¿Ü,´ë°ÔÀÇ °æ¿ì¿¡´Â Àß 
Àû¿ëÀÌ µÈ´Ù. (¿©ÀüÈ÷,  bash¸¦ »ç¿ëÇÏ´Â rsh ¸í·É¿¡´Â Àû¿ëÀÌ µÇÁö ¾Ê´Â´Ù)
</p>

<sect>   Acknowledgements
<p>
Ari MujunenÀÇ ÁÂÀýÀÌ À̱ÛÀº ¾²°Ô µÈ µ¿±â°¡ µÇ¾ú°í, Juha TakalaÀº ¿©·¯ 
Á¶¾ðÀ» ÇØÁÖ¾ú´Ù.
</p>
 </article>

----
[http://?action=keywords&tour=1&all=1 Tags]: [[Keywords(tour)]]



sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2009-01-06 13:00:17
Processing time 0.0118 sec