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

4. ·çÆ® ÆÄÀϽýºÅÛÀÇ Á¦ÀÛ

·çÆ® ÆÄÀϽýºÅÛÀ» ¸¸µé ¶§´Â ½Ã½ºÅÛ ±¸µ¿¿¡ ÇʼöÀûÀÎ ÆÄÀϵéÀ» °í¸£´Â ÀÛ¾÷ÀÌ ÇÊ¿äÇÕ´Ï´Ù. ÀÌ Àý¿¡¼­´Â ¾ÐÃàµÈ ·çÆ® ÆÄÀϽýºÅÛÀÇ Á¦ÀÛ¹ýÀ» ¼³¸íÇÕ´Ï´Ù. º°·Î ¸¹ÀÌ ¾²ÀÌÁö´Â ¾ÊÁö¸¸ ¾ÐÃà¾ÈµÈ ÆÄÀϽýºÅÛÀ» µð½ºÄÏ»ó¿¡ ¸¸µé¾î Á÷Á¢ ·çÆ®·Î ¸¶¿îÆ®½ÃÅ°´Â ¹æ¹ýµµ °¡´ÉÇÕ´Ï´Ù. ÀÌ ¹æ¹ýÀº ·¥µð½ºÅ© ¾Æ´Ñ ·çÆ® ÆÄÀϽýºÅÛ ºÎºÐ¿¡¼­ ¼³¸íÇÕ´Ï´Ù.

4.1 °³¿ä

·çÆ® ÆÄÀϽýºÅÛÀº Ç® »çÀÌÁîÀÇ ¿ÏÀüÇÑ ¸®´ª½º ½Ã½ºÅÛÀ» Áö¿øÇϱâ À§ÇÑ ¸ðµç °ÍÀ» °®Ãß¾î¾ß ÇÕ´Ï´Ù. À̸¦ À§Çؼ­´Â ¸®´ª½º ½Ã½ºÅÛ¿¡ ²À ÇÊ¿äÇÑ ÃÖ¼Ò¿ä°Ç¸¸Å­Àº ·çÆ®µð½ºÅ©¿¡ ¹Ýµå½Ã ±¸ºñµÇ¾î¾ß ÇÕ´Ï´Ù.

¾î¶² ½Ã½ºÅÛÀÌ µÆµç°£¿¡ ±× À§¿¡¼­ ¿øÇÏ´Â ÇÁ·Î±×·¥À» ½ÇÇà½Ãų ¼ö ÀÖÀ» ¶§ ºñ·Î¼Ò ÀÌ¿ë°¡Ä¡°¡ ÀÖ´Â °Å°ÚÁö¿ä. ±×·± Á¡¿¡ ¹Ì·ç¾î º¼¶§, ·çÆ® µð½ºÄÏÀ¸·Î ´ÙÀ½°ú °°Àº ÀÛ¾÷À» ÇÒ¼ö ÀÖ¾î¾ß¸¸ ÇÕ´Ï´Ù.

ÀÌÁ¦ ¾ÐÃà ÆÄÀϽýºÅÛÀ» ¾î¶»°Ô ¸¸µå´ÂÁö ¼³¸íÇÏ°Ú½À´Ï´Ù. ¾ÐÃà ÆÄÀϽýºÅÛÀ̶ó´Â ¸»Àº ÆÄÀϽýºÅÛÀÌ µð½ºÅ©¿¡ ¾ÐÃàµÈ »óÅ·ΠÀÖ´Ù°¡ ºÎÆ®½Ã¿¡ ·¥µð½ºÅ©·Î ¾ÐÃàÀÌ Ç®¸®¸é¼­ º¹»çµÇ´Â °ÍÀ» ¸»ÇÕ´Ï´Ù. ¾ÐÃà ÆÄÀϽýºÅÛÀ» ¾²¸é Ç¥ÁØ 1440K µð½ºÄÏ¿¡ ÈξÀ ¸¹Àº ÆÄÀÏ(¾à 6¸Þ°¡ °¡·®)µéÀ» ³ÖÀ» ¼ö ÀÖ½À´Ï´Ù. ÆÄÀϽýºÅÛÀÌ µð½ºÄÏÀÇ ¿ë·®º¸´Ù ÈξÀ Å©±â ¶§¹®¿¡ µð½ºÄÏ À§¿¡ À̸¦ Á÷Á¢ ÀÛ¼ºÇÏ´Â °ÍÀº ºÒ°¡´ÉÇÕ´Ï´Ù. ÀÏ´Ü ´Ù¸¥ °÷¿¡¼­ ÆÄÀÏ ½Ã½ºÅÛÀ» ¿ÏÀüÈ÷ ¸¸µé¾î ¾ÐÃàÇÑ ´ÙÀ½, ±× ¾ÐÃàµÈ °ÍÀ» µð½ºÄÏ¿¡ º¹»çÇÏ´Â ¹æ¹ýÀ» ½á¾ß ÇÕ´Ï´Ù.

4.2 ÆÄÀÏ ½Ã½ºÅÛ ¸¸µé±â

¾ÐÃàµÈ ·çÆ® ÆÄÀϽýºÅÛÀ» ¸¸µé±â À§Çؼ­´Â ¾ÐÃàÇϱâ Àü¿¡ ÀÏ´Ü ÇÊ¿äÇÑ ¸ðµç ÆÄÀϵéÀ» ´ãÀ» ¼ö ÀÖ´Â ÃæºÐÇÑ Å©±âÀÇ ºó °ø°£ÀÌ ÇÊ¿äÇÕ´Ï´Ù. ¾à 4 ¸Þ°¡¹ÙÀÌÆ® °¡·®À» ´ãÀ»¼ö ÀÖ´Â µð¹ÙÀ̽º°¡ ÇÊ¿äÇÕ´Ï´Ù. ¸î °¡Áö ¼±ÅÃÀÌ °¡´ÉÇÕ´Ï´Ù.

À§¿¡¼­ ¸»ÇÑ ¼¼°¡Áö ¹æ¹ý Áß ¾î´À Çϳª¸¦ ¼±ÅÃÇϱâ·Î ¸¶À½¸Ô¾ú´Ù¸é ÀÌÁ¦ DEVICE ¿¡ ´ÙÀ½ ¸í·ÉÀ» ÁÖ¼¼¿ä.

   dd if=/dev/zero of=DEVICE bs=1k count=3000

ÀÌ ¸í·ÉÀº µð¹ÙÀ̽ºÀÇ ³»¿ëÀ» ¸ðµÎ 0 À¸·Î ä¿ó´Ï´Ù. ÀÌ °úÁ¤ÀÌ Áß¿äÇÑ ÀÌÀ¯´Â µð¹ÙÀ̽º»óÀÇ ÆÄÀÏ ½Ã½ºÅÛÀº ³ªÁß¿¡ ¾ÐÃàµÇ°Ô µÇ¹Ç·Î »ç¿ëµÇÁö¾ÊÀº ¸ðµç ¿µ¿ªÀº 0 À¸·Î ä¿ö¾ß ÃÖ´ëÇÑÀ¸·Î ¾ÐÃàÇÒ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù.

±× ´ÙÀ½, ÆÄÀÏ ½Ã½ºÅÛÀ» ¸¸µì´Ï´Ù. ¸®´ª½º Ä¿³ÎÀÌ ÀÚµ¿À¸·Î ·¥µð½ºÅ©·Î º¹»çÇÒ ¼ö ÀÖ´Â ·çÆ® µð½ºÅ© ÆÄÀϽýºÅÛÀº minix ¿Í ext2 ÆÄÀϽýºÅÛ ´Ü µÎ°¡Áö »ÓÀÔ´Ï´Ù. ÀÌÁß¿¡¼­ ext2 ÆÄÀϽýºÅÛÀÌ º¸´Ù ¼±È£µÇ´Â ÆÄÀÏ ½Ã½ºÅÛÀÔ´Ï´Ù. ext2 ¸¦ ¾²¸é -i ¿É¼ÇÀ» ÁÖ¾î µðÆúÆ®°ªº¸´Ù ´õ ¸¹Àº inode ¸¦ ¼³Á¤ÇÒ ¼ö ÀÖÀ¸¹Ç·Î Æí¸®ÇÕ´Ï´Ù. -i 2000 Á¤µµ·Î ¼³Á¤Çϸé inode °¡ ºÎÁ·ÇØÁö´Â ÀÏÀº ¾øÀ» °ÍÀÔ´Ï´Ù. ±×¹Û¿¡, ºÒÇÊ¿äÇÑ ¸¹Àº /dev ÆÄÀϵéÀ» Á¦°ÅÇؼ­ inode ¸¦ Àý¾àÇÏ´Â ¹æ¹ýµµ ÀÖ½À´Ï´Ù. mke2fs ´Â µðÆúÆ®·Î 1.44 M µð½ºÄÏ¿¡ 360 °³ÀÇ inode¸¦ »ý¼ºÇÕ´Ï´Ù. ÇÊÀÚ°¡ ¾²´Â º¹±¸¿ë ·çÆ®µð½ºÄÏ¿¡´Â 120°³ ÀÇ inode °¡ ÀÖ°í ÀÌ Á¤µµ·Î ÃæºÐÇÏÁö¸¸ ¸¸ÀÏ ´ç½ÅÀÌ /dev ³»ÀÇ µð¹ÙÀ̽º ÆÄÀϵéÀ» ÀüºÎ Æ÷ÇÔ½ÃÅ°·Á ÇÑ´Ù¸é ÇÊ¿äÇÑ inode ¼ö´Â 360°³ ¸¦ ½±°Ô ÃÊ°úÇØ ¹ö¸³´Ï´Ù. ¾ÐÃà ·çÆ® ÆÄÀϽýºÅÛÀ» »ç¿ëÇÏ¸é º¸´Ù Å« ÆÄÀϽýºÅÛÀ» ´ãÀ» ¼ö ÀÖ°í µû¶ó¼­ µðÆúÆ®·Î º¸´Ù ¸¹Àº inode¸¦ ¾µ ¼ö ÀÖ½À´Ï´Ù¸¸ ±×·¡µµ ¿ª½Ã ÆÄÀÏÀÇ ¼ö¸¦ ÁÙÀ̰ųª inode ¼ö¸¦ ´Ã¸± ÇÊ¿ä°¡ ÀÖÀ» °ÍÀÔ´Ï´Ù.

µû¶ó¼­ ´ÙÀ½°ú ºñ½ÁÇÑ ¸í·ÉÀÌ ÇÊ¿äÇÕ´Ï´Ù.

mke2fs -m 0 -i 2000 DEVICE

(·çÇÁ¹é µð¹ÙÀ̽º¸¦ »ç¿ëÇϽŴٸé À§ÀÇ DEVICE ÀÚ¸®¿¡ ÆÄÀÏÀ̸§À» ½á¾ß ÇÕ´Ï´Ù. ÀÌ °æ¿ì mke2fs ´Â Á¤¸»·Î ±×·¯°Ú´À³Ä°í ¹°¾î¿Ã ÅÙµ¥ yes Çϼ¼¿ä)

mke2fs ¸í·ÉÀº ÀÚµ¿À¸·Î »ç¿ë°¡´ÉÇÑ ¿ë·®À» ÀÎÁöÇÏ°í ±×¿¡ ¸ÂÃç ÆÄÀϽýºÅÛÀ» ¼³Á¤ÇÕ´Ï´Ù. -m 0 ÆĶó¸ÞÅÍ´Â mke2fs ·Î ÇÏ¿©±Ý root ¿ëÀ¸·Î °ø°£À» ÇÒ´çÇÏÁö ¸øÇÏ°Ô ÇÔÀ¸·Î½á »ç¿ë°¡´ÉÇÑ µð½ºÅ© ¿ë·®À» ´õ ¸¹ÀÌ È®º¸ÇÕ´Ï´Ù.

ÀÌÁ¦ µð¹ÙÀ̽º¸¦ ¸¶¿îÆ®Çϼ¼¿ä.

mount -t ext2 DEVICE /mnt

(¸¸¾à /mnt µð·ºÅ丮°¡ ¾ø´Ù¸é ¸¶¿îÆ®Æ÷ÀÎÆ®°¡ µÉ /mnt µð·ºÅ丮¸¦ ¸¸µé¾î ÁÖ¾î¾ß¸¸ ÇÕ´Ï´Ù) ¾ÕÀ¸·Î ¿ì¸®°¡ ¸¸µé ¸ðµç µð·ºÅ丮µéÀº /mnt ¾Æ·¡¿¡ ÀÖ´Â °ÍÀ¸·Î °¡Á¤ÇÏ°Ú½À´Ï´Ù.

4.3 ÆÄÀϽýºÅÛÀÇ ±¸¼º

´ÙÀ½Àº ÀϹÝÀûÀÎ ·çÆ® ÆÄÀϽýºÅÛ¿¡ µé¾îÀÖ¾î¾ßÇÒ ÃÖ¼ÒÇÑÀÇ µð·ºÅ丮µéÀÔ´Ï´Ù.

(¿©±â¿¡ Á¦½ÃµÈ µð·ºÅ丮 ±¸Á¶´Â ·çÆ®µð½ºÄÏ¿¡ ÇØ´çµÇ´Â °Í¸¸ ÀûÀº °ÍÀÔ´Ï´Ù. ½ÇÁ¦ÀÇ ¸®´ª½º ½Ã½ºÅÛÀº º¸´Ù º¹ÀâÇÏ°í ¼¼·ÃµÈ µð·ºÅ丮±¸Á¶¿¡ °üÇÑ ±Ô¾àÀ» °¡Áö°í ÀÖ½À´Ï´Ù. À̸¦ Ç¥ÁØ °èÃþ ÆÄÀϽýºÅÛ(FHS, Filesystem Hierarchy Standard)À̶ó ºÎ¸£´Âµ¥ ¿äÄÁ´ë °¢ ÆÄÀϵéÀ» ¾î´À µð·ºÅ丮¿¡ µÎ¾î¾ß Çϴ°¡¿¡ ´ëÇÑ ±Ô¾àÀÔ´Ï´Ù)

·çÆ® È­ÀϽýºÅÛ¿¡¼­ À§ÀÇ µð·ºÅ丮 Áß 3 °³´Â ºó µð·ºÅ丮°¡ µË´Ï´Ù. µû¶ó¼­ ±× 3 °³´Â mkdir ¸í·ÉÀ¸·Î µð·ºÅ丮¸¸ ¸¸µé¾î ÁÖ¸é µË´Ï´Ù. /proc µð·ºÅ丮´Â ´Ü¼øÈ÷ proc ÆÄÀÏ ½Ã½ºÅÛÀÌ À§Ä¡ÇÏ°Ô µÇ´Â Àå¼ÒÀÏ »ÓÀÔ´Ï´Ù. /mnt ¿Í /usr µð·ºÅ丮µéÀº boot/root ½Ã½ºÅÛÀÌ °¡µ¿µÈ ÈÄ¿¡¾ß »ç¿ëµÇ´Â ¸¶¿îÆ®Æ÷ÀÎÆ®ÀÔ´Ï´Ù. µû¶ó¼­ ´Ù½Ã ¸»¾¸µå¸®Áö¸¸ ÀÌ 3 °³ÀÇ µð·ºÅ丮´Â ´ÜÁö µð·ºÅ丮¸¸ ¸¸µé¾îÁÖ¸é µË´Ï´Ù.

ÀÌÁ¦ ³ª¸ÓÁö 4 °³ÀÇ µð·ºÅ丮¿¡ ´ëÇØ ¼³¸íµå¸®°Ú½À´Ï´Ù.

/dev

/dev µð·ºÅ丮¿¡´Â ½Ã½ºÅÛÀÌ »ç¿ëÇÏ´Â ¸ðµç µð¹ÙÀ̽ºµé °¢°¢¿¡ ´ëÀÀÇϴ Ư¼öÆÄÀϵéÀÌ À§Ä¡ÇÏ°Ô µË´Ï´Ù. /dev µð·ºÅ丮´Â ¸ðµç ¸®´ª½º ½Ã½ºÅÛ¿¡ ¹Ýµå½Ã ÀÖ¾î¾ß¸¸ ÇÏ´Â °­Á¦»çÇ×ÀÔ´Ï´Ù. /dev µð·ºÅ丮 ÀÚü´Â º¸ÅëÀÇ µð·ºÅ丮¿Í °°À¸¹Ç·Î mkdir ¸í·É¾î·Î ±×³É ¸¸µé¾î ÁÖ¸é µË´Ï´Ù. ÇÏÁö¸¸ /dev µð·ºÅ丮 ³»¿¡ À§Ä¡ÇÏ´Â µð¹ÙÀ̽º ÆÄÀÏµé ¸¸Å­Àº Ư¼öÇÑ ÆÄÀϵéÀ̹ǷΠmknod ¸í·ÉÀ» »ç¿ëÇϴ Ư¼öÇÑ ¹æ½ÄÀ¸·Î ¸¸µé¾îÁÖ¾î¾ß ÇÕ´Ï´Ù.

ÇÏÁö¸¸ º¸´Ù °£´ÜÇÑ ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù. -- ´ç½Å ½Ã½ºÅÛÀÇ /dev µð·ºÅ丮ÀÇ ³»¿ëµéÀ» º¹»çÇØ ¿Â ÈÄ ÇÊ¿ä¾ø´Â °ÍµéÀ» Áö¿ì´Â °ÍÀÔ´Ï´Ù. À̶§ À¯³äÇØ¾ß ÇÒ °ÍÀº Ư¼ö µð¹ÙÀ̽º ÆÄÀϵéÀ» º¹»çÇØ ¿Ã ¶§´Â -R ¿É¼ÇÀ» ½á¼­ º¹»çÇØ¾ß ÇÑ´Ù´Â Á¡ÀÔ´Ï´Ù. ÀÌ·¸°Ô ÇØ¾ß µð·ºÅ丮°¡ º¹»çµÉ ¶§ ÆÄÀϵéÀÇ ³»¿ëµéÀº º¹»çµÇÁö ¾Ê°Ô µË´Ï´Ù. ´ë¹®ÀÚ R ÀÓ¿¡ ÁÖÀÇÇϽʽÿÀ. ¸¸ÀÏ ¼Ò¹®ÀÚ -r À» ¾´´Ù¸é ´ç½Å Çϵåµð½ºÅ©ÀÇ ³»¿ëÀ» ¸ù¶¥ º¹»çÇØ¿À·Á ÇÒ °ÍÀÌ°í °á±¹ º¹»ç µµÁß¿¡ µð½ºÄÏÀÇ ¿ë·® ÃÊ°ú·Î Áß´ÜµÇ¾î ¹ö¸³´Ï´Ù. µû¶ó¼­ ÁÖÀÇÇؼ­ ´ÙÀ½ ¸í·É¾î¸¦ »ç¿ëÇϽʽÿÀ.

cp -dpR /dev /mnt

À§ÀÇ ¸í·ÉÀº µð½ºÄÏÀÌ /mnt ¿¡ ¸¶¿îÆ® µÇ¾ú´Ù°í °¡Á¤ÇÑ °ÍÀÔ´Ï´Ù. dp ½ºÀ§Ä¡µéÀº ½Éº¼¸¯ ¸µÅ©°¡ º¹»çµÉ ¶§ Ÿ°ÙÆÄÀϵéÀÌ º¹»çµÇ´Â °ÍÀÌ ¾Æ´Ï¶ó ¸µÅ©·Î¼­ º¹»çµÇµµ·Ï ÇØÁÖ¸ç ¿ø·¡ÀÇ ÆÄÀÏ ¼Ó¼ºµéÀÌ ±×´ë·Î À¯ÁöµÈ ä º¹»çµÇµµ·Ï ÇØÁÝ´Ï´Ù. µû¶ó¼­ ÆÄÀÏ ¼ÒÀ¯±Ç Á¤º¸°¡ ±×´ë·Î À¯ÁöµË´Ï´Ù.

¾î·Á¿î ¹æ¹ýÀ¸·Î Çغ¸°í ½Í´Ù¸é ls -l ·Î ¿øÇÏ´Â µð¹ÙÀ̽ºÀÇ ¸ÞÀÌÀú¿Í ¸¶ÀÌ³Ê µð¹ÙÀ̽º ³Ñ¹ö¸¦ Ãâ·ÂÇؼ­ È®ÀÎÇÑ ÈÄ mknod ¸í·ÉÀ» ½á¼­ Á÷Á¢ ¸¸µé¾î ÁÖ´Â ¹æ¹ýµµ ÀÖ½À´Ï´Ù.

ÀÌÁ¦ µð¹ÙÀ̽ºµéÀ» º¹»çÇßÀ¸¸é, ¿øÇϴ Ư¼ö µð¹ÙÀ̽ºµéÀÌ º¹±¸µð½ºÄÏ¿¡ Á¦´ë·Î µé¾î°¬´ÂÁö È®ÀÎÇغ¸½Ê½Ã¿ä. ¿¹¸¦ µé¸é ftape ¸í·ÉÀº Å×ÀÌÇÁ µð¹ÙÀ̽º¸¦ »ç¿ëÇϹǷΠ´ç½ÅÀÌ ºÎÆ® µð½ºÅ©¸¦ ½á¼­ Å×ÀÌÇÁ µå¶óÀ̺ê ÀåÄ¡µéÀ» ¾×¼¼½ºÇÒ ÀÛÁ¤À̶ó¸é Å×ÀÌÇÁ ÀåÄ¡¿¡ °ü·ÃµÈ µð¹ÙÀ̽ºµéÀÌ Á¦´ë·Î µé¾î°¬´ÂÁö È®ÀÎÇØ º¼ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.

°¢°¢ÀÇ Æ¯¼ö µð¹ÙÀ̽º ÆÄÀÏÀº Çϳª¾¿ÀÇ inode ¸¦ ÇÊ¿ä·Î Çϱ⠶§¹®¿¡, °æ¿ì¿¡ µû¶ó¼­´Â inode °¡ ºÎÁ·ÇØÁú ¼ö ÀÖÀ½¿¡ À¯ÀÇÇϼ¼¿ä. ƯÈ÷³ª µð½ºÄÏ ÆÄÀÏ ½Ã½ºÅÛ¿¡¼­´Â ´õ¿í ±×·¸½À´Ï´Ù. µû¶ó¼­ ÇÊ¿ä¾ø´Â µð¹ÙÀ̽º ÆÄÀϵéÀº µð½ºÄÏÀÇ /dev µð·ºÅ丮¿¡¼­ Á¦°ÅÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù. »ó´ç¼öÀÇ µð¹ÙÀ̽ºµéÀÌ ÀÌ·± µð½ºÄÏ ½Ã½ºÅÛ°ú °°Àº Ư¼öÇÑ ½Ã½ºÅÛ¿¡´Â ºÒÇÊ¿äÇÕ´Ï´Ù. ¿¹¸¦ µé¾î SCSI µð½ºÅ©¸¦ °¡Áö°í ÀÖÁö ¾Ê´Ù¸é sd ·Î ½ÃÀÛÇÏ´Â ¸ðµç µð¹ÙÀ̽º ÆÄÀϵéÀº »èÁ¦Çصµ ¹«¹æÇÕ´Ï´Ù. ¸¶Âù°¡Áö·Î, ½Ã¸®¾ó Æ÷Æ®¸¦ »ç¿ëÇÒ ÀÏÀÌ ¾ø´Ù¸é cua ·Î ½ÃÀÛÇÏ´Â ¸ðµç µð¹ÙÀ̽º ÆÄÀϵéÀº Áö¿öµµ µË´Ï´Ù.

/dev µð·ºÅ丮¿¡ ´ÙÀ½ È­ÀϵéÀº ¹Ýµå½Ã ÀÖ¾î¾ß ÇÔÀ» ¸í½ÉÇϼ¼¿ä: console, kmem, mem, null, ram, tty1

/etc

/etc µð·ºÅ丮¿¡´Â ¼³Á¤ÆÄÀϵéÀÌ À§Ä¡ÇÕ´Ï´Ù. ´ëºÎºÐÀÇ ½Ã½ºÅÛ¿¡ ÀÖ¾î ¼³Á¤ÆÄÀϵéÀº ´ÙÀ½ ¼¼°¡Áö Á¤µµ·Î ºÐ·ùÇÒ ¼ö ÀÖ½À´Ï´Ù.

  1. ¾î¶² °æ¿ìµç ¹Ýµå½Ã ÇÊ¿äÇÑ ÆÄÀϵé : rc, fstab, passwd µîµî
  2. ²À ±×·± °ÍÀº ¾Æ´Ï³ª ´ëü·Î ÇÊ¿äÇÏ´Ù°í »ý°¢µÇ´Â ÆÄÀϵé.
  3. ±×¿ÜÀÇ ÆÄÀϵé

ÇʼöÀûÀÎ ÆÄÀÏÀÎÁö ¾Æ´ÑÁö´Â ´ÙÀ½°ú °°ÀÌ È®ÀÎÇØ º¸½Ç ¼ö ÀÖ½À´Ï´Ù.

ls -ltru

ÀÌ ¸í·ÉÀº ¸¶Áö¸·À¸·Î ¾×¼¼½ºµÈ ½Ã°£¼øÀ¸·Î ÆÄÀϵéÀ» Ãâ·ÂÇÕ´Ï´Ù. µû¶ó¼­ ÃÖ±Ù¿¡ ¾×¼¼½ºµÈ ÀûÀÌ ¾ø´Â ÆÄÀϵéÀº ·çÆ®µð½ºÄÏ¿¡¼­ Á¦¿Ü½ÃÄѵµ ÁÁ½À´Ï´Ù.

ÇÊÀÚÀÇ ·çÆ®µð½ºÄÏ¿¡´Â ¾à 15 °³ Á¤µµÀÇ ¼³Á¤ÆÄÀÏÀÌ µé¾îÀÖ½À´Ï´Ù. ¿ëµµ¿¡ µû¶ó ¼¼°¡Áö Á¤µµ·Î ³ª´©¾î º¸°Ú½À´Ï´Ù.

  1. boot/root ½Ã½ºÅÛÀ» ¼³Á¤Çϴµ¥ ²À ÇÊ¿äÇÑ ¼³Á¤ÆÄÀϵé
    1. rc.d/* -- ½Ã½ºÅÛ ±âµ¿ ¹× ·±·¹º§ º¯È¯ ½ºÅ©¸³Æ®
    2. fstab -- ¸¶¿îÆ®µÇ´Â ÆÄÀÏ ½Ã½ºÅÛÀÇ ¸®½ºÆ®
    3. inittab -- init ÇÁ·Î¼¼½º¿¡ ´ëÇÑ ÆĶó¸ÞÅ͵éÀÌ ´ã°ÜÀÖ½À´Ï´Ù. init ´Â ºÎÆ®½Ã¿¡ ÃÖÃÊ·Î ±âµ¿µÇ´Â ÇÁ·Î¼¼½ºÀÔ´Ï´Ù.
  2. boot/root ½Ã½ºÅÛ Á¤µ·¿¡ ÇÊ¿äÇÑ ¼³Á¤ÆÄÀϵé
    1. passwd -- »ç¿ëÀÚ, Ȩ µð·ºÅ丮 µîµîÀÇ ¸®½ºÆ®
    2. group -- »ç¿ëÀÚ ±×·ì
    3. shadow -- »ç¿ëÀÚµéÀÇ Æнº¿öµå. ¾øÀ» ¼öµµ ÀÖ½À´Ï´Ù.
    4. termcap -- Å͹̳ÎÀÇ ´É·Â¿¡ ´ëÇÑ µ¥ÀÌÅͺ£À̽º
    º¸¾ÈÀÌ Áß¿äÇÑ °æ¿ì¶ó¸é »ç¿ëÀÚ Æнº¿öµå°¡ ½Ã½ºÅÛÀ» ¶°³ª Á¸ÀçÇÏÁö ¾Êµµ·Ï passwd ¿Í shadow ´Â µð½ºÄÏÀ¸·Î º¹»çÇØ¿ÀÁö ¾Ê´Â °ÍÀÌ ÁÁ½À´Ï´Ù. ÀÌ·¸°Ô ÇØµÎ¸é µð½ºÄÏÀ¸·Î ºÎÆýà ¿øÄ¡¾Ê´Â »ç¿ëÀÚÀÇ ·Î±×ÀÎÀ» ¸·À» ¼ö ÀÖ½À´Ï´Ù. passwd ´Â Àû¾îµµ root ¸¸Å­Àº Æ÷ÇÔÇÏ°í ÀÖ¾î¾ß ÇÕ´Ï´Ù. ¸¸ÀÏ ´Ù¸¥ »ç¿ëÀڵ鵵 ÀÌ µð½ºÄÏÀ¸·Î ·Î±×ÀÎÇÒ ¼ö ÀÖ°Ô ÇÏ·Á¸é ±× »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮¿Í ½©À» ¸¸µé¾î ÁÖ¾î¾ß ÇÕ´Ï´Ù. termcap, Áï Å͹̳Πµ¥ÀÌÅͺ£À̽º´Â º¸Åë ¼ö¹é ų·Î¹ÙÀÌÆ® °¡·® µË´Ï´Ù. boot/root µð½ºÄÏ¿¡´Â ´ç½ÅÀÌ ÁÖ·Î »ç¿ëÇÏ´Â Å͹̳ÎÀÎ linux-console ¿£Æ®¸®¸¸ ³²±â°í ³ª¸ÓÁö´Â »èÁ¦Çϼ¼¿ä.
  3. ±× ¹ÛÀÇ ¼³Á¤ÆÄÀϵé. ¶§·Î ÇÊ¿äÇÑ °æ¿ì°¡ ÀÖ½À´Ï´Ù.

ÇÊÀÚ´Â ÀÌ Áß¿¡¼­ µÎ °¡Áö ÆÄÀϸ¸Å­Àº ¹Ýµå½Ã ¼³Á¤ÇØÁִµ¥ ±× ³»¿ëÀº ¹«Ã´À̳ª °£´ÜÇÕ´Ï´Ù.

inittab ÆÄÀϳ»ÀÇ sysinit ¶óÀÎÀº rc ³ª ±× ¹ÛÀÇ ±âº»ÀûÀÎ ºÎÆ®½ºÅ©¸³Æ®¸¦±¸µ¿½Ãų¼ö ÀÖµµ·Ï ¼öÁ¤µÇ¾î¾ß¸¸ ÇÕ´Ï´Ù. ¶ÇÇÑ, ½Ã¸®¾ó Æ÷Æ®ÂÊÀ¸·Î »ç¿ëÀÚ°¡ Á¢¼ÓÇÏ´Â °ÍÀ» ¸·À¸·Á¸é getty ¼³Á¤ ¿£Æ®¸®Áß ¶óÀÎ ³¡ºÎºÐ¿¡ ttys ³ª ttyS µð¹ÙÀ̽º°¡ ÀûÈù ¿£Æ®¸®µéÀº ÁÖ¼®Ã³¸®(comment out)ÇØ¾ß ÇÕ´Ï´Ù. ´Ü, ´ç½ÅÀÌ ÄַܼΠ·Î±×ÀÎÇÒ tty Æ÷Æ®µé ¸¸Å­Àº ³²°ÜµÎ¼¼¿ä.

°¡Àå °£´ÜÇÑ inittab ÆÄÀÏÀº ´ÙÀ½°ú ºñ½ÁÇÑ ¸ð½ÀÀÔ´Ï´Ù.

          id:2:initdefault:
          si::sysinit:/etc/rc
          1:2345:respawn:/sbin/getty 9600 tty1
          2:23:respawn:/sbin/getty 9600 tty2

inittab ÆÄÀÏÀº ½Ã½ºÅÛ ±âµ¿, ¸ÖƼÀ¯Àú ¸ðµå·ÎÀÇ ÀÌÇà µîµîÀÇ ¿©·¯ ´Ü°è¿¡¼­ ½Ã½ºÅÛÀÌ ¹«¾ùÀ» ½ÇÇà½ÃÄÑ¾ß ÇÏ´ÂÁö¸¦ Á¤ÀÇÇÑ °ÍÀÔ´Ï´Ù. ¿©±â¼­ ¼¼½ÉÇÏ°Ô Ã¼Å©ÇؾßÇÒ °ÍÀº inittab ¿¡¼­ ¾ð±ÞµÈ È­ÀϵéÀÌ Á¤¸»·Î Á¦ÀÚ¸®¿¡ ÀÖ´ÂÁöÀÇ ¿©ºÎÀÔ´Ï´Ù. ¸¸ÀÏ init °¡ ÇØ´ç ÆÄÀÏÀ» ãÁö ¸øÇÏ¸é ºÎÆ®µð½ºÅ©´Â ¸ØÃç¹ö¸®°Ô µÇ¸ç ¿¡·¯¸Þ½ÃÁöÁ¶Â÷ ¶ßÁö ¾ÊÀ»¼öµµ ÀÖ½À´Ï´Ù.

¾î¶² ÇÁ·Î±×·¥µéÀº ´Ù¸¥ À§Ä¡¿¡ ÀÖ´Â °ÍÀÌ Çã¿ëµÇÁö ¾Ê°í ¹Ýµå½Ã Á¤ÇØÁø µð·ºÅ丮¿¡ À§Ä¡ÇØ¾ß ÇÕ´Ï´Ù. ÀÌ´Â ´Ù¸¥ ÇÁ·Î±×·¥µéÀÌ ÀÌ ÇÁ·Î±×·¥ÀÌ ÀÌ°÷¿¡ À§Ä¡ÇÒ °ÍÀ̶ó°í °£ÁÖÇÏ¿© ÄÚµùµÇ¾ú±â ¶§¹®ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î ÇÊÀÚÀÇ ½Ã½ºÅÛÀÇ °æ¿ì, /etc/shutdown Àº reboot ÀÇ À§Ä¡¸¦ /etc/reboot ¶ó°í °£ÁÖÇÏ¿© ÄÚµùµÇ¾ú½À´Ï´Ù. ¸¸ÀÏ ÇÊÀÚ°¡ reboot ÆÄÀÏÀ» /bin/reboot ¿¡ µÐ ÈÄ shutdown ¸í·ÉÀ» ³»¸°´Ù¸é, /etc µð·ºÅ丮¿¡¼­ reboot ÆÄÀÏÀ» ãÀ» ¼ö ¾øÀ¸¹Ç·Î shutdown ¸í·ÉÀº ½ÇÆÐÇÏ°í ¸» °ÍÀÔ´Ï´Ù.

±× ¹ÛÀÇ ³ª¸ÓÁö ÆÄÀϵéÀÇ °æ¿ì, /etc µð·ºÅ丮ÀÇ ¸ðµç ÅؽºÆ® ÆÄÀϵéÀ» º¹»çÇÏ½Ã°í ¸¸ÀÏ ¹¹°¡ ¹ºÁö Á¤È®È÷ ¸ð¸£½Ã°Ú´Ù¸é /etc µð·ºÅ丮ÀÇ ½ÇÇàÆÄÀϵ鵵 ¸ðµÎ º¹»çÇϽʽÿÀ. ·çÆ®µð½ºÅ© °ßº» ÀýÀ» Âü°íÇϽñ⠹ٶø´Ï´Ù. ¾Æ¸¶µµ °Å±â¿¡ ³ª¿Â ÆÄÀϵéÀ» º¹»çÇÏ´Â °ÍÀ¸·Î ÃæºÐÇÏ°ÚÁö¸¸ ½Ã½ºÅÛÀº ¼­·Î ¸¹Àº Â÷ÀÌ°¡ ÀÖÀ» ¼ö ÀÖÀ¸¹Ç·Î ´ç½ÅÀÇ ½Ã½ºÅÛ»óÀÇ ÆÄÀϵéÀÌ °ßº»ÀÇ ÆÄÀϵé°ú °°Àº ¿ªÇÒÀ» ÇÑ´Ù°í Àå´ãÇÒ ¼ö´Â ¾ø½À´Ï´Ù. °¡Àå È®½ÇÇÑ À¯ÀÏÇÑ ¹æ¹ýÀº inittab ¿¡¼­ºÎÅÍ ½ÃÀÛÇؼ­ ÇÊ¿äÇÑ °ÍµéÀ» ÇϳªÇϳª È®ÀÎÇØ ³ª°¡´Â ¹æ¹ý »Ó ÀÔ´Ï´Ù.

ÇöÀç ´ëºÎºÐÀÇ ½Ã½ºÅÛµéÀº °¢°¢ÀÇ ·±·¹º§¿¡ ÇØ´çÇÏ´Â ½© ½ºÅ©¸³Æ®µéÀ» /etc/rc.d/ µð·ºÅ丮 ¹Ø¿¡ µÎ°í ÀÖ½À´Ï´Ù. °¡Àå ´Ü¼øÇÏ°Ô ÇÏ·Á¸é rc ½ºÅ©¸³Æ® Çϳª¸é µÇÁö¸¸, ´ç½ÅÀÇ ¿ø·¡ ½Ã½ºÅÛÀ¸·ÎºÎÅÍ ÀÏ´Ü inittab ¿Í /etc/rc.d µð·ºÅ丮¸¦ Åë°·Î º¹»çÇØ¿Â ÈÄ µð½ºÄÏ ½Ã½ºÅÛ¿¡ ÇÊ¿ä¾ø´Â ½© ½ºÅ©¸³Æ®µéÀ» Áö¿ö³ª°¡´Â ¹æ¹ýÀÌ º¸´Ù Æí¸®ÇÒ °ÍÀÔ´Ï´Ù.

/bin °ú /sbin

/bin µð·ºÅ丮´Â ±âº»ÀûÀÎ ÀÛ¾÷¿¡ ÇÊ¿äÇÑ ls, mv, cat, dd µîµîÀÇ Ãß°¡ÀûÀÎ À¯Æ¿¸®Æ¼µéÀ» µÎ±â¿¡ Æí¸®ÇÑ °÷ÀÔ´Ï´Ù. ºÎ·ÏÀÇ ·çÆ®µð½ºÅ© °ßº» ¿¡ ÀÖ´Â /bin °ú /sbin µð·ºÅ丮ÀÇ ÆÄÀϵéÀ» Âü°íÇϼ¼¿ä. cpio, tar, gzip µî°ú °°Àº ¹é¾÷¿¡ ÇÊ¿äÇÑ À¯Æ¿¸®Æ¼µéÀº Æ÷ÇÔ½ÃÅ°Áö ¾Ê¾Ò½À´Ï´Ù. ÇÊÀÚÀÇ °æ¿ì ±×·± À¯Æ¿¸®Æ¼µéÀº boot/root µð½ºÄÏÀÇ ¿ë·®À» ¾Æ³¢±â À§ÇØ µû·Î À¯Æ¿¸®Æ¼ µð½ºÅ©¿¡ ³Ö¾îµÓ´Ï´Ù. ÀÏ´Ü boot/root µð½ºÄÏÀÌ ºÎÆÃÀÌ µÇ¾î ·¥µð½ºÅ©·Î ·ÎµùµÇ°í³ª¸é, µð½ºÄÏÀ» »©°í À¯Æ¿¸®Æ¼ µð½ºÄÏÀ¸·Î ¹Ù²ã³ÖÀº ÈÄ À̸¦ ¸¶¿îÆ® ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÊÀÚ´Â º¸Åë ÀÌ À¯Æ¿¸®Æ¼ µð½ºÄÏÀ» /usr ¿¡ ¸¶¿îÆ®ÇÕ´Ï´Ù.

À¯Æ¿¸®Æ¼ µð½ºÄÏÀ» ¸¸µå´Â ¹æ¹ýÀº ¾Æ·¡ÀÇ À¯Æ¿¸®Æ¼ µð½ºÅ© ¸¸µé±â Æí¿¡ ³ª¿ÍÀÖ½À´Ï´Ù. ¹é¾÷À» ÇÒ ¶§¿¡´Â ¹é¾÷º» ¿Ü¿¡µµ ¹é¾÷À» ¸¸µå´Âµ¥ »ç¿ëµÈ ¹é¾÷ À¯Æ¿¸®Æ¼µé ¿ª½Ã µ¿ÀÏ ¹öÀüÀ¸·Î Çϳª º¹»çÇصδ ÆíÀÌ ¹Ù¶÷Á÷ÇÕ´Ï´Ù. ÀÌ·¸°Ô ÇØµÎ¸é ³ªÁß¿¡ ÃֽŠ¹é¾÷ À¯Æ¿¸®Æ¼µéÀÌ ¹öÀüÀÇ Â÷ÀÌ·Î ÀÎÇØ ¿¾³¯ ¹é¾÷ Å×ÀÌÇÁ¸¦ ÀÐÁö ¸øÇÏ´Â ºÒ»ó»ç¸¦ ÇÇÇÒ ¼ö ÀÖ½À´Ï´Ù.

´ÙÀ½ ÇÁ·Î±×·¥µéÀÌ Æ÷ÇԵǾú´ÂÁö È®ÀÎÇϼ¼¿ä: init, getty ·ùÀÇ ÇÁ·Î±×·¥, login, mount, rc ½ºÅ©¸³Æ®¸¦ ½ÇÇà½Ãų ¼ö ÀÖ´Â ½© ÇÁ·Î±×·¥, ±×¸®°í ½©À» sh ¿¡ ¸µÅ©½ÃÄ×´ÂÁöµµ È®ÀÎÇϽʽÿä.

/lib

/lib ¿¡´Â ÇÊ¿äÇÑ °øÀ¯ ¶óÀ̺귯¸®µé°ú ·Î´õµéÀ» µÎ¾î¾ß ÇÕ´Ï´Ù. ¸¸ÀÏ ÇÊ¿äÇÑ ¶óÀ̺귯¸®µéÀÌ /lib µð·ºÅ丮¿¡¼­ ¹ß°ßµÇÁö ¾Ê´Â´Ù¸é ½Ã½ºÅÛÀº ºÎÆ®¿¡ ½ÇÆÐÇÏ°Ô µË´Ï´Ù. ¿îÀÌ ÁÁ´Ù¸é ¿Ö ¿¡·¯°¡ ³µ´Â°¡ÇÏ´Â ¿¡·¯¸Þ½ÃÁö Á¤µµ´Â ¹ÞÀ» ¼ö ÀÖÀ»Áö ¸ð¸¨´Ï´Ù.

°ÅÀÇ ¸ðµç ÇÁ·Î±×·¥µéÀÌ Àû¾îµµ libc ¶óÀ̺귯¸®ÀÎ libc.so.N ¸¸Å­Àº ¹Ýµå½Ã ÇÊ¿ä·Î ÇÕ´Ï´Ù. ¿©±â¼­ N Àº ÇöÀçÀÇ ¹öÀü³Ñ¹ö¸¦ ¶æÇÕ´Ï´Ù. ´ç½ÅÀÇ /lib µð·ºÅ丮¸¦ È®ÀÎÇϼ¼¿ä. º¸Åë, libc.so.N Àº ¿ÏÀüÇÑ ¹öÀü³Ñ¹ö¸¦ °¡Áø ÆÄÀÏÀ̸§¿¡ ½Éº¼¸¯ ¸µÅ©µÇ¾î ÀÖ½À´Ï´Ù.

% ls -l /lib/libc.so*
  -rwxr-xr-x   1 root     root      4016683 Apr 16 18:48 libc-2.1.1.so*
  lrwxrwxrwx   1 root     root           13 Apr 10 12:25 libc.so.6 -> libc-2.1.1.so*

ÀÌ °æ¿ì, ´ç½ÅÀº libc-2.1.1.so °¡ ÇÊ¿äÇÕ´Ï´Ù. Æ÷ÇÔ½ÃÅ°·Á°í ÇÏ´Â ¹ÙÀ̳ʸ®µéÀÌ ¾î¶² ¶óÀ̺귯¸®µéÀ» ÇÊ¿ä·Î ÇÏ°í ÀÖ´ÂÁö ±× ÀÇÁ¸¼ºÀ» °Ë»çÇØ º¸·Á¸é ldd ¸í·É¾î¸¦ »ç¿ëÇϽʽÿÀ. ¿¹¸¦ µé¸é ´ÙÀ½°ú °°½À´Ï´Ù.

          % ldd /sbin/mke2fs
          libext2fs.so.2 => /lib/libext2fs.so.2 (0x40014000)
          libcom_err.so.2 => /lib/libcom_err.so.2 (0x40026000)
          libuuid.so.1 => /lib/libuuid.so.1 (0x40028000)
          libc.so.6 => /lib/libc.so.6 (0x4002c000)
          /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

¿À¸¥ÆíÀÇ °¢ ÆÄÀϵéÀÌ ÇÊ¿äÇÔÀ» ¾Ë ¼ö ÀÖ½À´Ï´Ù. Ãâ·ÂµÈ ¶óÀ̺귯¸®µéÀº ½Éº¼¸¯ ¸µÅ©ÀÏ ¼ö ÀÖ½À´Ï´Ù.

ÀϺΠ¶óÀ̺귯¸®µéÀº »ó´çÈ÷ Ä¿¼­ ´ç½ÅÀÇ ·çÆ® ÆÄÀϽýºÅÛ¿¡ ½±»ç¸® µé¾î°¡Áö ¾ÊÀ» ¼ö ÀÖÀ½¿¡ ÁÖÀÇÇϽʽÿä. ¿¹¸¦ µé¾î À§¿¡ ³ª¿Â libc.so ´Â ¾à 4 ¸Þ°¡³ª µË´Ï´Ù. ÀÌ·± ¶óÀ̺귯¸®µéÀ» ·çÆ® È­ÀϽýºÅÛÀ¸·Î ¿Å±â·Á¸é ½ºÆ®¸³(strip)½Ãų ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. »ç¿ë¹ýÀº ·çÆ®ÆÄÀϽýºÅÛÀÇ Å©±â¸¦ ÁÙÀ̱â ÀýÀ» ÂüÁ¶Çϼ¼¿ä.

¶ÇÇÑ, /lib ¿¡´Â ¶óÀ̺귯¸®¿ëÀÇ ·Î´õ¸¦ Æ÷ÇÔ½ÃÄÑ¾ß ÇÕ´Ï´Ù. ±× ·Î´õ´Â ld.so (a.out ¶óÀ̺귯¸®¿ë)À̳ª ld-linux.so (ELF ¶óÀ̺귯¸®¿ë)ÀÏ °ÍÀÔ´Ï´Ù. ÃÖ±Ù ¹öÀüÀÇ ldd ´Â À§ÀÇ ¿¹Ã³·³ Á¤È®È÷ ¾î¶² ·Î´õ°¡ ÇÊ¿äÇÑÁö¸¦ °¡¸£ÃÄÁÖÁö¸¸ ¿¾³¯ ¹öÀüÀº ±×·¸Áö ¾Ê½À´Ï´Ù. ¾î¶² ·Î´õ°¡ ÇÊ¿äÇÑÁö ÀÚ½ÅÀÌ ¾ø´Ù¸é ¶óÀ̺귯¸®¿¡ ´ëÇØ file ¸í·ÉÀ» ½ÇÇà½ÃÅ°¼¼¿ä. ¿¹¸¦ µé¸é ´ÙÀ½°ú °°½À´Ï´Ù.

% file/lib/libc.so.4.7.2 /lib/libc.so.5.4.33 /lib/libc-2.1.1.so
/lib/libc.so.4.7.2: Linux/i386 demand-paged executable (QMAGIC), stripped
/lib/libc.so.5.4.33: ELF 32-bit LSB shared object, Intel 80386, version 1, stripped
/lib/libc-2.1.1.so: ELF 32-bit LSB shared object, Intel 80386, version 1, not stripped
   

QMAGIC Àº 4.7.2 °¡ a.out ¶óÀ̺귯¸®¿ëÀÌ°í, ELF ´Â 5.4.33 °ú 2.1.1 ÀÌ ELF ¶óÀÌºê ·¯¸®¿ëÀÓÀ» ³ªÅ¸³»°í ÀÖ½À´Ï´Ù.

¸¸µé°íÀÚ ÇÏ´Â ·çÆ® ÆÄÀϽýºÅÛ¿¡ ÇÊ¿äÇÑ ·Î´õµéÀ» °ñ¶ó º¹»çÇϼ¼¿ä. ¶óÀ̺귯¸®¿Í ·Î´õµéÀÌ °ú¿¬ ¹ÙÀ̳ʸ®¿¡ ¸Â´Â °ÍÀÎÁö ÁÖÀDZí°Ô üũÇØ º¸¾Æ¾ß¸¸ ÇÕ´Ï´Ù. ¸¸ÀÏ Ä¿³ÎÀÌ ÇÊ¿äÇÑ ¶óÀ̺귯¸®¸¦ ·ÎµåÇÏÁö ¸øÇÏ¸é ´ëºÎºÐÀÇ °æ¿ì ¿¡·¯¸Þ½ÃÁöÁ¶Â÷ ¾øÀÌ ±×³É ¸ØÃß¾î ¹ö¸³´Ï´Ù.

4.4 PAM °ú NSS ¿¡ ´ëÇÑ ´ëÃ¥

´ç½Å ½Ã½ºÅÛ¿¡´Â ldd ·Î È®ÀÎÇÒ ¼ö ¾ø´Â µ¿ÀûÀ¸·Î ·ÎµåµÇ´Â ¶óÀ̺귯¸®°¡ ÇÊ¿äÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

PAM (Pluggable Authentication Modules)

¸¸ÀÏ ´ç½ÅÀÇ ½Ã½ºÅÛÀÌ PAM(Pluggable Authentication Modules)À» ¾²°í ÀÖ´Ù¸é ºÎÆ®µð½ºÅ© »ó¿¡ PAM À» À§ÇÑ ¸î°¡Áö Áغñ¸¦ ÇØÁÖ¾î¾ß ÇÕ´Ï´Ù. ±×·¯Áö ¾ÊÀ¸¸é ·Î±×ÀÎÀÌ ºÒ°¡´ÉÇÒ °ÍÀÔ´Ï´Ù. °£´ÜÈ÷ ¸»Çؼ­ PAM À̶õ »ç¿ëÀÚ¸¦ ÀÎÁõÇÏ°í ±× »ç¿ëÀÚµéÀÇ ¼­ºñ½º¿¡ ´ëÇÑ ¾×¼¼½º¸¦ ÄÁÆ®·ÑÇÏ´Â Á¤±³ÇÏ°Ô ¸ðµâÈ­µÈ ¹æ¹ýÀÔ´Ï´Ù. ½Ã½ºÅÛÀÌ PAM À» ¾²°íÀÖ´ÂÁö ½±°Ô È®ÀÎÇغ¸·Á¸é Çϵåµð½ºÅ©ÀÇ /etc µð·ºÅ丮¿¡¼­ pam.conf ÆÄÀÏÀ̳ª pam.d µð·ºÅ丮°¡ ÀÖ´ÂÁö üũÇØ º¸½Ê½Ã¿ä. ±×·± °ÍÀÌ ÀÖ´Ù¸é Ʋ¸²¾øÀÌ ÃÖ¼ÒÇÑÀÇ pam Áö¿øÀº ÇÏ°í ÀÖ´Â °ÍÀÔ´Ï´Ù(´Ù¸¥ ¹æ¹ýÀ¸·Î´Â login ½ÇÇàÆÄÀÏ¿¡ ´ëÇØ ldd ¸¦ Çغ¸´Â °ÍÀÔ´Ï´Ù. libpam.so ¶ó´Â ¸»ÀÌ Ãâ·ÂµÇ¸é PAM ÀÌ ÇÊ¿äÇÏ´Ù´Â ¶æÀÔ´Ï´Ù).

¿îÁÁ°Ôµµ, ºÎÆ®µð½ºÅ©¿¡ À־ º¸¾ÈÀº º¸Åë °ü½É¹ÛÀÇ »çÇ×ÀÔ´Ï´Ù. ¸Ó½Å¿¡ ÀÌ·± ½ÄÀÇ ¹°¸®Àû ¾×¼¼½º¸¦ ÇÒ ¼ö ÀÖ´Â »ç¶÷Àº ¹«½¼ÀÏÀ̵ç ÇÏµç ±×¸¸ÇÑ ±ÇÇÑÀÌ ÀÖ´Â »ç¶÷ÀÏÅ×´Ï ¸»ÀÔ´Ï´Ù. µû¶ó¼­, ·çÆ®µð½ºÄÏ¿¡ ´ÙÀ½°ú ºñ½ÁÇÑ ÇüÅÂÀÇ °£´ÜÇÑ /etc/pam.conf ÆÄÀÏÀ» ¸¸µé¾îµÎ¸é ½±°Ô PAM ±â´ÉÀ» ¹«·ÂÈ­½Ãų ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½°ú °°½À´Ï´Ù.


OTHER   auth       optional     /lib/security/pam_permit.so
OTHER   account    optional     /lib/security/pam_permit.so
OTHER   password   optional     /lib/security/pam_permit.so
OTHER   session    optional     /lib/security/pam_permit.so

¶ÇÇÑ, /lib/security/pam_permit.so ÆÄÀÏÀ» ·çÆ® ÆÄÀϽýºÅÛÀ¸·Î º¹»çÇϽʽÿÀ. ÀÌ ¶óÀ̺귯¸®´Â °Ü¿ì 8K Á¤µµ¿¡ ºÒ°úÇϹǷΠº°·Î ºÎ´ã½º·´Áö ¾Ê½À´Ï´Ù.

ÁÖÀÇÇÒ Á¡Àº ÀÌ·¸°Ô ¼³Á¤Çϸé ÀÌ µð½ºÄÏÀ¸·Î ´ç½Å ¸Ó½ÅÀÇ ÆÄÀÏÀ̳ª ¼­ºñ½º¿¡ ´©±¸µçÁö ¾Æ¹« Á¦ÇѾøÀÌ ¾×¼¼½ºÇÒ ¼ö ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù. ¸¸ÀÏ ¾î¶² ÀÌÀ¯·Î ºÎÆ®µð½ºÅ©»óÀÇ º¸¾È¿¡µµ ½Å°æÀ» ½á¾ß ÇÏ´Â »óȲÀ̶ó¸é Çϵåµð½ºÅ©ÀÇ PAM ¼³Á¤ÀÇ ÀϺΠȤÀº ÀüºÎ¸¦ ´ç½ÅÀÇ ·çÆ® ÆÄÀϽýºÅÛÀ¸·Î º¹»çÇؾ߸¸ ÇÕ´Ï´Ù. PAM ¿¡ °üÇÑ ¹®¼­¸¦ ÁÖÀDZí°Ô Àо ´ÙÀ½ /lib/security ¿¡¼­ ÇÊ¿äÇÑ ¸ðµç ¶óÀ̺귯¸®µéÀ» ·çÆ® ÆÄÀϽýºÅÛÀ¸·Î º¹»çÇϽʽÿÀ.

¶ÇÇÑ /lib/libpam.so ¸¦ ºÎÆ®µð½ºÅ©¿¡ Æ÷ÇÔ½ÃÄѾ߸¸ ÇÕ´Ï´Ù. ¾Õ¿¡¼­ /bin/login ¿¡ ldd ¸¦ ½ÇÇà½ÃÄ×À» Àû¿¡ ÀÌ¹Ì ÀÌ ÀÇÁ¸¼ºÀ» ´«Ä¡Ã¤¼ÌÀ» °ÍÀÔ´Ï´Ù.

NSS (Name Service Switch)

¸¸ÀÏ glibc(Àϸí libc6)¸¦ »ç¿ëÇÏ°í ÀÖ´Ù¸é name service ¿¡ ´ëÇÑ Áغñ¸¦ ÇØÁÖ¾î¾ß¸¸ ÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ·Î±×ÀÎÀÌ ºÒ°¡´ÉÇÒ °ÍÀÔ´Ï´Ù. ÆÄÀÏ /etc/nsswich.conf ´Â ¿©·¯°¡Áö ¼­ºñ½º¿¡ ´ëÇÑ µ¥ÀÌÅͺ£À̽º ¿­¶÷À» ÄÁÆ®·ÑÇÕ´Ï´Ù. ¸¸ÀÏ ³×Æ®¿÷»óÀÇ ¼­ºñ½º(¿¹¸¦ µé¸é DNS, NIS lookup µî)¿¡ ¾×¼¼½º ÇÒ ÇÊ¿ä°¡ ¾ø´Ù¸é ´ÙÀ½°ú °°Àº °£´ÜÇÑ nsswitch.conf ÆÄÀϸ¸ ÁغñÇÏ¸é µË´Ï´Ù.


       passwd:     files
       shadow:     files
       group:      files
       hosts:      files
       services:   files
       networks:   files
       protocols:  files
       rpc:        files
       ethers:     files
       netmasks:   files
       bootparams: files
       automount:  files
       aliases:    files
       netgroup:   files
       publickey:  files

ÀÌ°ÍÀº ¸ðµç ¼­ºñ½º°¡ ¿À·ÎÁö ·ÎÄà ÆÄÀÏ¿¡¼­ Á¦°øµÇ´Â °ÍÀ¸·Î ¼³Á¤ÇÑ °ÍÀÔ´Ï´Ù. ¶ÇÇÑ /lib/libnss_files.so.1 À» Æ÷ÇÔ½ÃÄÑ¾ß ÇÕ´Ï´Ù. ÀÌ°ÍÀº ÆÄÀÏ ¿­¶÷(file lookup)À» ó¸®ÇÒ ¶§ µ¿ÀûÀ¸·Î ·ÎµåµÇ´Â ¶óÀ̺귯¸®ÀÔ´Ï´Ù. ºÎÆ®µð½ºÅ©¿¡¼­ ³×Æ®¿÷¿¡ ¾×¼¼½ºÇÒ ÀÛÁ¤À̶ó¸é º¸´Ù Á¤±³ÇÑ nsswitch.conf ÆÄÀÏÀ» ¸¸µé ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº nsswitch ¸Ç ÆäÀÌÁö¸¦ Âü°íÇϼ¼¿ä. ´ç½ÅÀÌ ¼³Á¤ÇÑ service µé¿¡ ´ëÇØ °¢°¢¿¡ ÇØ´çÇÏ´Â /lib/libnss_service.so.1 ÆÄÀϵéÀ» Æ÷ÇÔ½ÃÄѾ߸¸ ÇÑ´Ù´Â Á¡À» ¸í½ÉÇϽʽÿÀ.

4.5 ¸ðµâ

¸ðµâÈ­µÈ Ä¿³ÎÀ» »ç¿ëÇÑ´Ù¸é ºÎÆà ÈÄ ºÎÆ®µð½ºÅ©·ÎºÎÅÍ ¾î¶² ¸ðµâÀ» ·ÎµåÇؾßÇÒÁö¸¦ °í·ÁÇؾ߸¸ ÇÕ´Ï´Ù. ¸¸¾à ¹é¾÷ Å×ÀÌÇÁµéÀÌ Ç÷ÎÇÇ Å×ÀÌÇÁ»ó¿¡ ÀÖ´Ù¸é ftape ¿Í zftape ¸ðµâÀ» Æ÷ÇÔ½ÃÄÑ¾ß ÇÏ°í SCSI Àåºñ¸¦ °¡Áö°í ÀÖ´Ù¸é SCSI °ü·Ã ¸ðµâÀ» Æ÷ÇÔ½ÃÄÑ¾ß ÇÏ¸ç ¸¸ÀÏ ÀÀ±Þ»óȲÇÏ¿¡¼­ ³×Æ®¿÷¿¡ ¾×¼¼½ºÇØ¾ß ÇÑ´Ù¸é PPP ³ª SLIP °ü·Ã ¸ðµâÀ» Æ÷ÇÔ½ÃÄÑ¾ß ÇÕ´Ï´Ù.

ÀÌ·¯ÇÑ ¸ðµâµéÀº /lib/modules ¿¡ µÎ¸é µË´Ï´Ù. ´ç½ÅÀº ¶Ç insmod, rmmod, lsmod ÇÁ·Î±×·¥À» Æ÷ÇÔ½ÃÄÑ¾ß ÇÕ´Ï´Ù. ¸ðµâÀ» ÀÚµ¿À¸·Î ·ÎµåÇÏ°í½Í´Ù¸é modprobe, depmod, swapout µµ Æ÷ÇÔ½ÃÄÑ¾ß ÇÕ´Ï´Ù. kerneld ¸¦ »ç¿ëÇÑ´Ù¸é kerneld ¸¦ /etc/conf.modules ÀÇ ¼³Á¤¿¡ ¸ÂÃß¾î Æ÷ÇÔ½ÃÄÑ¾ß ÇÕ´Ï´Ù.

ÇÏÁö¸¸, ¸ðµâÀ» »ç¿ëÇÔÀ¸·Î½á ¾ò´Â ÁÖµÈ ÀÌÁ¡Àº »ó´ëÀûÀ¸·Î ´ú Áß¿äÇÑ ¸ðµâµéÀ» À¯Æ¿¸®Æ¼ µð½ºÅ©¿¡ ³Ö¾î¹ö¸®°í ÇÊ¿äÇÒ ¶§¸¸ ·ÎµåÇÔÀ¸·Î½á ·çÆ®µð½ºÅ©ÀÇ °ø°£À» Àý¾àÇϴµ¥ ÀÖ½À´Ï´Ù. ¿©·¯°¡ÁöÀÇ ¸¹Àº µð¹ÙÀ̽ºµéÀ» ´Ù·ç¾î¾ß ÇÏ´Â »óȲÀ̶ó¸é ¸ðµâÀ» ÀÌ¿ëÇÏ´Â °ÍÀÌ ÀÚü¿¡ ¸¹Àº µå¶óÀ̹ö¸¦ ³»ÀåÇÑ °Å´ëÇÑ ´ÜÀÏ Ä¿³ÎÀ» ¾²´Â °Íº¸´Ù ´õ ÁÁÀº ¹æ¹ýÀÔ´Ï´Ù.

¾ÐÃàµÈ ext2 ÆÄÀÏ ½Ã½ºÅÛÀ» ºÎÆ®Çϱâ À§Çؼ­´Â ·¥µð½ºÅ©¿Í ext2 ¿¡ ´ëÇÑ Áö¿øÀ» ¹Ýµå½Ã Ä¿³Î¿¡ ³»Àå½ÃÄѾ߸¸ ÇÕ´Ï´Ù. ÀÌ µÎ°¡Áö´Â ¸ðµâ·Î ¼³Á¤Çؼ­´Â Àý´ë ¾ÈµË´Ï´Ù.

4.6 ¸¶Áö¸· ¼¼ºÎ»çÇ×µé

login °°Àº ÀϺΠ½Ã½ºÅÛ ÇÁ·Î±×·¥µéÀº /var/run/utmp ÆÄÀÏ°ú /var/log µð·ºÅ丮°¡ ¾ø´Â °æ¿ì ¹®Á¦¸¦ ÀÏÀ¸Å³ ¼ö ÀÖ½À´Ï´Ù. µû¶ó¼­ ´ÙÀ½°ú °°ÀÌ ÇØÁֽʽÿä.:

          mkdir -p /mnt/var/{log,run}
          touch /mnt/var/run/utmp

¸¶Áö¸·À¸·Î, ÇÊ¿äÇÑ ¸ðµç ¶óÀ̺귯¸®µéÀ» ´Ù ¼³Ä¡Çß´Ù¸é ldconfig ¸¦ ½ÇÇà½ÃÄѼ­ ·çÆ® ÆÄÀϽýºÅÛ »óÀÇ /etc/ld.so.cache ¸¦ ¸®¸ÞÀÌÅ© ÇØÁֽʽÿÀ. ij½¬´Â ·Î´õ¿¡°Ô ¾îµð¼­ ¶óÀ̺귯¸®¸¦ ã¾Æ¾ß ÇÒÁö¸¦ Áö½ÃÇÕ´Ï´Ù. ld.so.cache ¸¦ ¸®¸ÞÀÌÅ© ÇÏ·Á¸é ´ÙÀ½ ¸í·É¾î¸¦ ½ÇÇàÇÕ´Ï´Ù.

          chdir /mnt; chroot /mnt /sbin/ldconfig

ldconfig ´Â ¾ðÁ¦³ª ·çÆ® ÆÄÀϽýºÅÛ¿¡ ´ëÇؼ­¸¸ ij½¬¸¦ ¸®¸ÞÀÌÅ© ÇϹǷΠ¹Ýµå½Ã chroot ¸í·ÉÀÌ ÇÊ¿äÇÕ´Ï´Ù.

4.7 ¸¸µé¾îÁø ÆÄÀϽýºÅÛÀ» Æ÷ÀåÇϱâ

ÀÏ´Ü ·çÆ® ÆÄÀϽýºÅÛÀ» ´Ù ¸¸µé¾ú´Ù¸é ¾ð¸¶¿îÆ®½ÃÅ°°í ÆÄÀÏ·Î Ä«ÇÇÇÑ ´ÙÀ½ ¾ÐÃà½ÃÄÑ¾ß ÇÕ´Ï´Ù.

          umount /mnt
          dd if=DEVICE bs=1k | gzip -v9 > rootfs.gz

ÀÌ °úÁ¤ÀÌ ³¡³ª¸é rootfs.gz ¶ó´Â ÆÄÀÏÀ» ¾ò°Ô µÉÅÙµ¥ ¹Ù·Î ÀÌ°ÍÀÌ ´ç½ÅÀÇ ¾ÐÃà ·çÆ® ÆÄÀϽýºÅÛÀÔ´Ï´Ù. ±× Å©±â¸¦ È®ÀÎÇؼ­ °ú¿¬ ÇÑ ÀåÀÇ Ç÷ÎÇÇ µð½ºÄÏ¿¡ ´Ù µé¾î°¡´ÂÁö¸¦ üũÇؾ߸¸ ÇÕ´Ï´Ù; ¸¸ÀÏ ´Ù µé¾î°¡Áö ¾Ê´Â´Ù¸é µÇµ¹¾Æ°¡¼­ ¸î °¡Áö ÆÄÀϵéÀ» Áö¿ö¾ß ÇÕ´Ï´Ù. ·çÆ® ÆÄÀϽýºÅÛÀÇ Å©±â¸¦ ÁÙÀ̱⠺κÐÀ» ÂüÁ¶ÇÏ¸é ·çÆ® ÆÄÀϽýºÅÛÀÇ Å©±â¸¦ ÁÙÀÌ´Â ¸î °¡Áö ÈùÆ®¸¦ ¾òÀ»¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.


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