Unix system administration 1. Bootstrapping bootingÀ̶õ bootstrappingÀÇ ÁÙÀÓ¸»·Î¼­ ÄÄÇ»Å͸¦ ½Ãµ¿ÇÏ´Â °ÍÀ» ÀǹÌÇÑ´Ù. Àü¿øÀ» ³Ö¾î OS°¡ ÀÛµ¿°¡´ÉÇÏ°Ô ¸¸µå´Â ÃʱâÈ­°úÁ¤À» Æ÷ÇÔÇÑ´Ù. UnixÀÇ ºÎÆÃÀº automatic°ú manualÇÑ booting µÎ°¡Áö°¡ Àִµ¥, ÀüÀÚ´Â ¸ðµç °úÁ¤ÀÌ ÀÚµ¿À¸·Î ÀÌ·ç¾îÁ® »ç¿ëÀÚ°¡ ½Ã½ºÅÛÀ» ÀÌ¿ëÇÒ ¼ö ÀÖ°Ô µÇ´Â »óÅ¿¡ µµ´ÞÇÏ´Â °ÍÀ» ÀǹÌÇÑ´Ù. ¹Ý¸é¿¡ ÈÄÀÚ´Â ½Ã½ºÅÛÀÌ ÃÖ¼ÒÇÑÀÇ ÃʱâÈ­°úÁ¤À» °ÅÃÄ ½Ì±Û¸ðµå(single mode)¿¡ µµ´ÞÇÏ°Ô µÇ°í °Å±â¼­ºÎÅÍ´Â °ü¸®ÀÚ¿¡°Ô Á¦¾î¸¦ ³Ñ°Ü ºÎÆðúÁ¤ÀÇ ³ª¸ÓÁö ÀÛ¾÷À» ¼öÇàÇÒ ¼ö ÀÖµµ·Ï ´ë±âÇÏ°Ô µÇ´Â °ÍÀ» ÀǹÌÇÑ´Ù. ºÎÆðúÁ¤ÀÇ 6´Ü°è 1) Ä¿³ÎÀ» ·ÎµåÇÏ°í ÃʱâÈ­ 2) ÀåÄ¡¸¦ ã°í ¼³Á¤ 3) ÀÚ¹ßÀûÀÎ ½Ã½ºÅÛ ÇÁ·Î¼¼½ºµéÀÇ »ý¼º 4) °ü¸®ÀÚÀÇ °£¼·(½Ì±Û ¸ðµå) 5) ½Ã½ºÅÛ ½ÃÀÛ ½ºÅ©¸³Æ® ½ÇÇà 6) ¸ÖƼ À¯Àú ¸ðµå 1) Ä¿³ÎÀ» ·ÎµåÇÏ°í ÃʱâÈ­ Ä¿³ÎÀº /unix, /vmunix/µîÀÇ À̸§À» °¡Áö´Âµ¥, Solaris½Ã½ºÅÛ¿¡¼­´Â /kernel/genunixÀÇ À̸§À¸·Î Á¸ÀçÇÑ´Ù. ÀÌ ÇÁ·Î±×·¥(Ä¿³Î)ÀÌ ¸Þ¸ð¸®¿¡ ¿Ã·ÁÁö°í ½ÇÇàµÇ¸é¼­ ÃʱâÈ­µÇ´Â °ÍÀÌ´Ù. ·Îµù°úÁ¤Àº ½ÇÁ¦·Î´Â µÎ°¡Áö °úÁ¤À¸·Î ³ª´µ´Âµ¥, óÀ½¿¡´Â Á¶±×¸¸ ºÎÆ® ÇÁ·Î±×·¥ÀÌ ¸Þ¸ð¸®¿¡ ¿Ã·ÁÁö°í ´ÙÀ½¿¡´Â ±× Á¶±×¸¸ ÇÁ·Î±×·¥ÀÌ Ä¿³ÎÀÌ ¸Þ¸ð¸®¿¡ ¿Ã·ÁÁú ¼ö ÀÖµµ·Ï Áغñ¸¦ ÇÑ´Ù. 2) Çϵå¿þ¾î ¼³Á¤ Ä¿³ÎÀÌ Çϴ ù¹ø° ÀÏÀº machineÀÇ È¯°æÀ» üũÇÏ¿© °ü¸®ÀÚ°¡ ÁöÁ¤ÇÑ ÀåÄ¡¸¦ ã¾Æ¼­ ÃʱâÈ­ÇÏ´Â °ÍÀÌ´Ù. Ä¿³Î ¼³Á¤(kernel configuration) ´ç½Ã¿¡ ÀåÄ¡ Á¤º¸°¡ ¿ÏÀüÈ÷ ¾Ë·ÁÁö´Â °ÍÀÌ ¾Æ´Ï°í ÀåÄ¡¸¦ À§ÇÑ ¹ö½º¸¦ Ž»ö(probe)Çϰųª ÀåÄ¡¿¡ ÀûÇÕÇÑ ±¸µ¿ÀåÄ¡(driver)¸¦ ¹°¾îº¸´Â °ÍÀ¸·Î½á ÀåÄ¡¿¡ ´ëÇØ ÇÊ¿äÇÑ ¸ðµç Á¤º¸¸¦ °¡Áö°Ô µÈ´Ù. ºÎÆ® ¾÷ÀÌ µÇ´Â µ¿¾È¿¡ ÇÊ¿äÇÑ Á¤º¸°¡ Á¦°øµÇÁö ¾ÊÀ¸¸é ´ÙÀ½ ¸®ºÎÆ®ÇÒ ¶§±îÁö´Â ±× ÀåÄ¡¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ºÒ°¡´ÉÇÏ´Ù. 3) ½Ã½ºÅÛ ÇÁ·Î¼¼½º ÀÌÁ¦´Â Ä¿³ÎÀÌ ÀÚ¹ßÀûÀÎ ÇÁ·Î¼¼½º(spontaneous process)¸¦ ¸¸µé¾î¼­ ½ÇÇà½ÃŲ´Ù. BSD°è¿­ÀÇ À¯´Ð½º¿¡¼­´Â swapper(0), init(1), pagedaemon(2)ÀÌ°í AT&T°è¿­¿¡¼­´Â sched(0), init(1), memory handlers(2...) ÀÌ·¯ÇÑ ÇÁ·Î¼¼½ºµéÀº ´Ù¸¥ À¯Àú ÇÁ·Î¼¼½º¿Í´Â ´Þ¸® fork ½Ã½ºÅÛ ÄÝ¿¡ ÀÇÇØ »ý¼ºµÇ´Â °ÍÀÌ ¾Æ´Ï¶ó Ä¿³ÎÀÌ Á÷Á¢ ¸¸µé¾î ³»¾ß ÇÑ´Ù. ÀÌ·¯ÇÑ ÀÚ¹ßÀûÀÎ ÇÁ·Î¼¼½ºµé Áß¿¡¼­init process¸¸ÀÌ À¯Àú ÇÁ·Î¼¼½ºÀÌ°í ³ª¸ÓÁö´Â kernelÀÇ ÀϺθ¦ ÇÁ·Î¼¼½ºÃ³·³ º¸ÀÌ°Ô ÇÏ´Â °ÍÀÌ´Ù. ¿ì¼±Àº ¿©±â¼­ Ä¿³ÎÀÌ ºÎÆ® ¾÷ °úÁ¤ Áß¿¡¼­ ÇÒ ÀÏÀº ³¡ÀÌ ³ª°Ô µÈ´Ù. ±×·¯³ª Å͹̳ÎÀ» À§ÇÑ ÇÁ·Î¼¼½º¸¦ »ý¼ºÇÏ´Â µîÀÇ ±âÃÊÀûÀÎ ÀÛ¾÷ÀÌ ¼öÇàµÇÁö ¾ÊÀº »óÅÂÀÌ´Ù. ÀÌ·± ÀÛ¾÷µéÀº init ÇÁ·Î¼¼½º°¡ ´ã´çÇÏ°Ô µÈ´Ù. 4) °ü¸®ÀÚ °£¼·(manual boot) ½Ã½ºÅÛÀÌ ½Ì±Û À¯Àú ¸ðµå(single-user mode)¿¡ µé¾î°¡·ÁÇÒ ¶§, kernel¿¡ ÀÇÇØ flag¸¦ ÅëÇØ init ÇÁ·Î¼¼½º°¡ ÅëÁö¸¦ ¹Þ´Â´Ù. initÀº shellÀ» Çϳª »ý¼ºÇÏ¿© °ü¸®ÀÚ°¡ Á÷Á¢ ½Ã½ºÅÛÀ» Á¶ÀÛÇÒ ¼ö ÀÖµµ·Ï ÇÏ°í ÀÛ¾÷À» ´Ù ¸¶Ä¡°í ³ª¼­ Ctrl+D¸¦ ´©¸£°Ô µÇ¸é multi-user mode·ÎÀÇ ºÎÆÃÀÌ °è¼Ó ÁøÇàµÈ´Ù. º¸Åë ÀÌ ¸ðµå¿¡¼­´Â / ÆÄƼ¼Ç¸¸ ¸¶¿îÆ®µÇ¹Ç·Î /bin, /sbin, /etc¿¡ ÀÖÁö ¾ÊÀº ÇÁ·Î¼¼½ºµéÀ» »ç¿ëÇϱâ À§Çؼ­´Â ´Ù¸¥ ÆÄƼ¼ÇÀ» ¸¶¿îÆ®ÇØ ÁÖ¾î¾ß ÇÑ´Ù. ´ë°³ ½Ì±Û ¸ðµå¿¡¼­ ÇÏ´Â ÀÛ¾÷Àº µð½ºÅ©¿¡ ÀÌ»óÀÌ »ý°åÀ» ¶§, fsck¸¦ ÅëÇØ µð½ºÅ©¿Í ÆÄÀÏ ½Ã½ºÅÛÀÇ »óŸ¦ üũÇÏ°í Ä¡·áÇÏ´Â °ÍÀÌ´Ù. 5) ½ÃÀÛ ½ºÅ©¸³Æ®(startup scripts) ½ÃÀÛ ½ºÅ©¸³Æ®´Â daemon ÇÁ·Î¼¼½º¸¦ ½ÇÇà½ÃÅ°±â À§ÇØ »ç¿ëµÇ´Âµ¥, ´ë°³´Â Bourne shell ½ºÅ©¸³Æ®·Î ¾²¿©Áø´Ù. AT&T°è¿­ÀÇ ½Ã½ºÅÛ¿¡¼­´Â /etcµð·ºÅ丮 ¹Ø¿¡ ÀÖ´Â init.d³ª rc¹øÈ£.d¶ó´Â À̸§À» °¡Áø µð·ºÅ丮¿¡ ½ÃÀÛ ½ºÅ©¸³Æ®°¡ À§Ä¡ÇÑ´Ù. BSD°è¿­¿¡¼­´Â /etc¹Ø¿¡ rc°¡ Æ÷ÇԵǴ ½ºÅ©¸³Æ®°¡ ½ÃÀÛ ½ºÅ©¸³Æ®ÀÌ´Ù. ÁÖ·Î ÇÏ´Â ÀÏÀº ÄÄÇ»ÅÍÀÇ À̸§À» ¼³Á¤ÇÏ°í, ½Ã°£À» ¸ÂÃß°í, fsck·Î µð½ºÅ©¸¦ Á¡°ËÇÏ°í, µð½ºÅ©¸¦ ¸¶¿îÆ®ÇÏ°í /tmp¸¦ û¼ÒÇÏ°í, ³×Æ®¿÷ ÀÎÅÍÆäÀ̽º¸¦ ¼³Á¤ÇÏ°í daemonÀ» ½ÃÀÛ½ÃÅ°°í ³×Æ®¿÷ ¼­ºñ½º¸¦ ½ÃÀÛÇϸç accouting°ú quota¸¦ °¡µ¿ÇÑ´Ù. 6) ´ÙÁß »ç¿ëÀÚ ¿î¿µ ½ÃÀÛ ½ºÅ©¸³Æ®°¡ ¸ðµÎ ½ÇÇàµÇ°í ³ª¸é ÀÏ¹Ý »ç¿ëÀÚµéÀÌ »ç¿ëÇÒ ¼ö ÀÖ´Â »óÅ°¡ µÇ´Âµ¥ ÀÌ°ÍÀº multi-user mode¶ó°í ºÎ¸¥´Ù. À̶§ºÎÅÍ loginÀÌ °¡´ÉÇØÁö¸ç »ç¿ëÀÚ¿¡°Ô ÇÊ¿äÇÑ ÇÁ·Î±×·¥µéÀÌ À§Ä¡ÇÑ ÆÄƼ¼ÇÀÌ ¸¶¿îÆ®µÇ¾î ÀÖ¾î »ç¿ë°¡´ÉÇÏ´Ù. ¿©±â¿¡¼­ init ÇÁ·Î¼¼½º°¡ getty ÇÁ·Î¼¼½º¸¦ fork/execÇÏ¿© ÀϹݻç¿ëÀÚµéÀÌ Å͹̳ÎÀ» ÅëÇØ Á¢¼Ó°¡´ÉÇÑ °ÍÀÌ´Ù. AT&T°è¿­¿¡¼­´Â »ç¿ëÀÚ ÇÁ·Î±×·¥ÀÌ »ç¿ëÇÒ ¼ö ÀÖ´Â ¸®¼Ò½ºÀÇ ¼öÁØ¿¡ µû¶ó multi-user modeÀÇ levelÀ» ³ª´©´Âµ¥, ÀÌ°ÍÀÌ ½ÃÀÛ½ºÅ©¸³Æ®ÀÇ rc¹øÈ£.d¿¡¼­ÀÇ ¹øÈ£¿Í µ¿ÀÏÇÑ °ÍÀÌ´Ù. À¯´Ð½º ½Ã½ºÅÛÀÌ ÀϹÝÀûÀ¸·Î ¿ä±¸ÇÏ´Â ¼­ºñ½º¸¦ À§ÇÑ ½ÃÀÛ ½ºÅ©¸³Æ®´Â init.d µð·ºÅ丮¿¡ À§Ä¡ÇÏÁö¸¸, ¿ÏÀüÇÑ ´ÙÁß »ç¿ëÀÚ ¸ðµå¿¡¼­ ÇÊ¿äÇÑ ¼­ºñ½º¸¦ À§ÇÑ ½ºÅ©¸³Æ®´Â rc3.d¿¡ Á¸ÀçÇÏ´Â °ÍÀÌ´Ù. 2. Reboot 1) shutdown 2) halt 3) reboot 4) kill -TERM 1 1) shutdownÀº ½Ã½ºÅÛÀ» °¡Àå ¿ì¾ÆÇÏ°Ô Á¤Áö½ÃÅ°´Â ¸í·ÉÀ¸·Î¼­ ¿©·¯°¡Áö ¿É¼ÇÀ» °¡Áø´Ù. shutdown -i6 or -r : reboot shutdown -i0 or -h : halt shutdown -iS : single mode 2) halt´Â ´õ °£´ÜÇÑ ¹æ¹ýÀÌ´Ù. halt : Áß¿äÇÏÁö ¾ÊÀº ÇÁ·Î¼¼½º¸¦ Á×ÀÌ°í sync¸¦ ½ÇÇàÇÑ´Ù. halt -n : sync¸¦ ÇÏÁö ¾Ê°í Á¤Áö½ÃŲ´Ù. halt -q : ÇÁ·Î¼¼½º¸¦ Á×ÀÌÁöµµ ¾Ê°í syncµµ ÇÏÁö ¾Ê°í ¹Ù·Î Á¤Áö½ÃŲ´Ù. 3) reboot´Â quick and dirtyÇÑ ¹æ¹ýÀ¸·Î, halt°¡ ÇÏ´Â ÀÏÀ» Çϸ鼭 ½Ã½ºÅÛÀ» ´Ù½Ã °¡µ¿½ÃŲ´Ù. halt¿Í ¸¶Âù°¡Áö·Î -n, -q ¿É¼ÇÀÌ ÀÖ´Ù. 4) 1¹ø ÇÁ·Î¼¼½º´Â init ÇÁ·Î¼¼½ºÀε¥, ÀÌ ÇÁ·Î¼¼½º¸¦ Á×À̰ųª TERM signalÀ» º¸³»¸é ½Ã½ºÅÛÀÌ Á¤ÁöÇÏ°Ô µÈ´Ù. 5) BSD°è¿­¿¡´Â fasthalt¿Í fastboot°¡ À־ fsckÇÏ´Â °úÁ¤À» »ý·«ÇÏ¿© ÈξÀ ºü¸£°Ô ¼öÇàµÈ´Ù. 3. account °¢Á¾ À¯´Ð½º½Ã½ºÅÛ¸¶´Ù »ç¿ëÀÚ¸¦ Ãß°¡Çϰųª »ç¿ëÀÚ¿¡ ´ëÇÑ Á¤º¸¸¦ ¼öÁ¤ÇÏ´Â ¹æ¹ýÀÌ ¿©·¯°¡Áö Á¦°øµÇ°í ÀÖÀ¸³ª °¡Àå Áß¿äÇÑ °ÍÀº /etc/passwd°¡ »ç¿ëÀÚ Á¤º¸¸¦ Æ÷ÇÔÇÏ°í ÀÖ´Ù´Â »ç½ÇÀÌ´Ù. /etc/passwd´Â ´ÙÀ½°ú °°Àº Çü½ÄÀ¸·Î ±¸¼ºµÇ¾î ÀÖ´Ù. »ç¿ëÀÚÁ¢¼Ó¸í:Æнº¿öµå:»ç¿ëÀÚID¹øÈ£:±×·ìID¹øÈ£:GECOS:Ȩµð·ºÅ丮:¼Ð GECOS´Â »ç¿ëÀÚÀÇ À̸§À̳ª ÁÖ¼Ò, ¶Ç´Â Á÷±ÞÀ» ÀÚÀ¯·Ó°Ô Ç¥½ÃÇϱâ À§ÇØ »ç¿ëµÇ´Â Çʵå·Î¼­ Çü½Ä¿¡´Â Á¦ÇÑÀÌ ¾ø´Ù. /etc/passwd´Â »ç¿ëÀÚ Á¤º¸¸¦ Æ÷ÇÔÇÏ°í Àֱ⠶§¹®¿¡ ¸¹Àº ÇÁ·Î±×·¥µé¿¡ ÀÇÇØ ÀÐÇôÁú ¼ö ÀÖ¾î¾ß ÇÑ´Ù. ±×·±µ¥ passwd°¡ ³ëÃâµÇ¸é encryptµÇ¾î ÀÖ´Ù°í ÇÏ´õ¶óµµ crackÀÌ ÀϺΠ°¡´ÉÇϱ⠶§¹®¿¡ Æнº¿öµå´Â /etc/shadow³ª /etc/master.passwd·Î ºÐ¸®µÇ¾î ÀúÀåµÇ¾î ÀÖ°í, ÀÌ ÆÄÀϵéÀº ¼öÆÛÀ¯Àú(root)¿¡ ÀÇÇؼ­¸¸ Á¢±ÙÀÌ °¡´ÉÇÏ´Ù. »ç¿ëÀÚ Á¤º¸¸¦ ´Ù·ç´Â ÇÁ·Î±×·¥¿¡´Â adduser, vipw, newgrp µîÀÌ ÀÖ´Ù. adduser´Â »ç¿ëÀÚ¸¦ Ãß°¡·Î µî·ÏÇÏ´Â ¸í·ÉÀÌ°í vipw´Â »ç¿ëÀÚ Á¤º¸¸¦ ¼öÁ¤ÇÒ ¶§ »ç¿ëµÇ¸ç, newgrp´Â ±×·ì¿¡ ´ëÇÑ Á¤º¸°¡ ÀúÀåµÈ /etc/groupÆÄÀÏÀ» ´Ù·ê ¶§ »ç¿ëµÈ´Ù. À̹ۿ¡µµ chsh, chfn, passwd µîÀÇ ¸í·ÉÀÌ Àִµ¥ chshÀº »ç¿ëÀÚÀÇ ¼Ð(shell)À» ¹Ù²Ü ¼ö ÀÖ°Ô ÇÏ´Â ¸í·ÉÀÌ°í, chfnÀº GECOS field¸¦ °íÄ¥ ¼ö ÀÖ°Ô ÇÏ´Â ¸í·ÉÀ̸ç, passwd´Â Æнº¿öµå¸¦ ºñ·ÔÇÑ »ç¿ëÀÚ Á¤º¸¸¦ °íÄ¥ ¼ö ÀÖ°Ô ÇÏ´Â ¸í·ÉÀÌ´Ù. 4. Backup ÀúÀå ¸Åü¿¡´Â CDROM, 8mm Cartridge tape, 4mm DAT tape, Floppy disk, Floptical, Jukebox, StackerµîÀÌ ÀÖ´Ù. ¿©±â¼­´Â ÁÖ·Î 4mm DAT tape¿¡ ¹é¾÷ÇÏ´Â °Í¿¡ ´ëÇØ ÃÊÁ¡À» ¸ÂÃá´Ù. cat /home1 > /dev/rmt/0l cat /dev/dsk/c0t1d0s0 > /dev/rmt/0l tar cvf /dev/rmt/0l /home1 tar cvf indra:/dev/rmt/0l /home1 dump·Î ¹é¾÷À» ÇÏ°í Ç® ¶§ restore¸í·ÉÀ» »ç¿ëÇÏ´Â ¹æ¹ýÀÌ °¡Àå ÀϹÝÀûÀ¸·Î »ç¿ëµÇ´Â ¹é¾÷ ¹æ¹ýÀÔ´Ï´Ù. remote½Ã½ºÅÛ¿¡ ÀÖ´Â ¹é¾÷ ÀåÄ¡¸¦ »ç¿ëÇϱâ À§ÇØ rdump¶ó´Â À¯Æ¿¸®Æ¼¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. rdump 0uf anchor:/dev/nrtape /spare dump 5usdf 1700 1000 /dev/rst0 /work restore x ÆÄÀÏÀ̸§ rrestore xf tapehost:/dev/nrtape /users/janet/iamlost rrestore if tapehost:/dev/nrtape : interactive(extract¸í·É ÇÊ¿ä) dump / restore ¸í·ÉÀ» »ç¿ëÇÒ ¶§´Â dump ÇÑ file system ÀÇ top directory¿¡¼­ ²À restore ÇØ¾ß ÇÑ´Ù. dump ¸í·ÉÀ» ¾µ¶§ ²À u optionÀ» »ç¿ëÇÏ¿©¾ß¸¸ backup ¹ÞÀº ½Ã°£À» ½Ã½ºÅÛ¿¡ ±â·ÏÇÑ´Ù. restore -i ¸¦ »ç¿ëÇÏ¸é ¿øÇÏ´Â ÆÄÀϸ¸ º¹±¸ ÇÒ ¼ö ÀÖ´Ù.(Å×ÀÌÇÁÀ§¿¡ µð·ºÅ丮 ±¸Á¶¸¦ ±â·ÏÇÔ) dump ¸í·ÉÀº single user »óÅ¿¡¼­ »ç¿ëÇÏ´Â °ÍÀÌ ÁÁ´Ù. ufsdump 0uf /dev/rmt/2 /dev/rdsk/c0t3d0s2 ufsdump 0fu indra:/dev/rmt/0l /home1 ufsdump´Â SunOS(SolarisÆ÷ÇÔ)¿¡¸¸ ÀÖ´Â À¯Æ¿¸®Æ¼ÀÌ°í BSD°è¿­ÀÇ ½Ã½ºÅÛ¿¡¼­´Â dump ¹× dumpfs µîÀÇ ¹é¾÷ À¯Æ¿¸®Æ¼°¡ Á¦°øµÈ´Ù. ÁÖÀÇ»çÇ× 1. tape¿¡ ·¹À̺íÀ» ºÙÀδÙ. 2. Àû´çÇÑ ¹é¾÷ ÀÎÅ͹úÀ» Á¤ÇÑ´Ù. 3. ¹é¾÷ÇÒ ÆÄÀϽýºÅÛÀ» °í¸¥´Ù.(º¸¾È ¹®Á¦) 4. ÇϳªÀÇ tape¿¡ ¸ÂÃç µé¾î°¥ ¼ö ÀÖµµ·Ï ÇÑ´Ù. 5. tapeÀº µû·Î º¸°üÇÑ´Ù. ¸¶Áö¸·À¸·Î mt¸í·ÉÀ» ÀÌ¿ëÇؼ­ ¿©·¯ ÆÄÀÏÀ» ÇϳªÀÇ tape¿¡ ÀúÀåÇÒ ¼ö ÀÖ´Ù. mt [-f tapename] rew|offl|status|fsf [count]|bsf [count]