· 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)]]

ID
Password
Join
Show your affection, which will probably meet with pleasant response.


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.0112 sec