Linux From Scratch Gerard Beekmans Version 2.2, April 3rd, 2000 Á¤ÇÏ³ç ¹öÀü 2.2, 2000³â 5¿ù 5ÀÏ ÀÌ ¹®¼­´Â ÇÊ¿äÇÑ ¼ÒÇÁÆ®¿þ¾îÀÇ ¼Ò½ºÄڵ常À» »ç¿ëÇÏ¿© ÀÌ¹Ì ¼³Ä¡µÇ¾î ÀÖ´Â ¸®´ª½º ¹èÆ÷º»À¸·ÎºÎÅÍ ¿©·¯ºÐ¸¸ÀÇ ¸®´ª½º ½Ã½ºÅÛÀ» ¿ÏÀüÈ÷ »õ·Î ¸¸µå´Â °úÁ¤¿¡ ´ëÇØ ¼³¸íÇÏ°í ÀÖ´Ù. ¼Ò°³ À̰͵éÀº ´Ù ¹½ÇÏ´Â °ÍÀΰ¡?

¸¹Àº ¸®´ª½º ¹èÆ÷º»µéÀ» ½á¿ÔÁö¸¸ ³ª´Â ±× Áß ¾î¶² °Í¿¡µµ ¿Ïº®È÷ ¸¸Á·ÇÏÁö ¸øÇß´Ù. ºÎÆ® ½ºÅ©¸³Æ®µéÀÌ Á¤µ·µÇ ÀÖ´Â ¹æ½ÄÀ̳ª ƯÁ¤ ÇÁ·Î±×·¥µéÀÌ ±âº»À¸·Î ¼³Á¤µÇ¾î ÀÖ´Â ¹æ½Ä µûÀ§°¡ ¸¶À½¿¡ µéÁö ¾Ê¾Ò´Ù. ³»°¡ ¸®´ª½º ½Ã½ºÅÛ¿¡ ¿Ïº®È÷ ÈíÁ·ÇØ ÇÏ°íÀÚ ÇßÀ» ¶§ ³ª´Â óÀ½ºÎÅÍ ³ª¸¸ÀÇ ¸®´ª½º ½Ã½ºÅÛÀ» ¸¸µé¾î¾ß ÇÑ´Ù´Â °ÍÀ» ±ú´Ý°Ô µÇ¾ú´Ù. ÀÌ»óÀûÀ¸·Î´Â ¼Ò½º Äڵ常À» »ç¿ëÇÏ¿©¼­. ¾î¶² Á¾·ùÀÇ ÀÌ¹Ì ÄÄÆÄÀÏµÈ ÆÐÅ°Áöµµ ¾øÀÌ. ¸î¸î ±âº»ÀûÀÎ À¯Æ¿¸®Æ¼¸¦ ¼³Ä¡ÇÏ´Â cdromÀ̳ª ºÎÆ®µð½ºÅ©ÀÇ µµ¿òµµ ¾øÀÌ. ¿©·¯ºÐÀº ÇöÀç ¸®´ª½º ½Ã½ºÅÛÀ» »ç¿ëÇÏ°í ÀÖÀ» °ÍÀÌ¸ç ¿©·¯ºÐ¸¸ÀÇ ¸®´ª½º ½Ã½ºÅÛÀ» ¸¸µé±â À§ÇØ ±×°ÍÀ» »ç¿ëÇÒ °ÍÀÌ´Ù.

¿¹Àü¿¡´Â ÀÌ ¹«¸ðÇÑ »ý°¢ÀÌ ¸Å¿ì ¾î·Æ°í ¶§·Ð °ÅÀÇ ºÒ°¡´ÉÇØ º¸¿´´Ù. ´ëºÎºÐÀÇ ¹®Á¦¿¡ ´ëÇÑ ÀÌÀ¯´Â ƯÁ¤ ÇÁ·Î±×·¥°ú ÀÛµ¿°úÁ¤¿¡ ´ëÇÑ ³» Áö½ÄÀÇ ºÎÁ·À̾ú´Ù. ¸ðµç Á¾·ùÀÇ ÀÇÁ¸¼º ¹®Á¦¿Í ÄÄÆÄÀÏ ¹®Á¦ µîÀ» ÇØ°áÇÑ ÈÄ¿¡ ¸®´ª½º ½Ã½ºÅÛÀÌ ¼Õ¼ö ¸¸µé¾îÁ³À¸¸ç ¿Ïº®È÷ ÀÛµ¿ÇÏ¿´´Ù. ³ª´Â ÀÌ ½Ã½ºÅÛÀ» LinuxFromScratch¸¦ ³ªÅ¸³»´Â LFS ½Ã½ºÅÛÀ̶ó ĪÇß´Ù.

»õ ¹öÀü

¿¡¼­ ÀÌ ¹®¼­ÀÇ ÃֽŠ¹öÀüÀ» ¾ðÁ¦¶óµµ ±¸ÇÒ ¼ö ÀÖ´Ù.

¹öÀü ¿ª»ç

2.1.5 - March 26th, 2000 2.1.5 - 2000³â 3¿ù 26ÀÏ

¾Æ·¡´Â ¼öÁ¤ »çÇ×ÀÇ Àüü ¸ñ·ÏÀº ¾Æ´Ï´Ù. v2.0Àº º¯°æ»çÇ×ÀÌ ¸¹ÀÌ Àû¿ëµÈ ÆÇÀ̹ǷΠÁß¿äÇÑ º¯È­¸¸ ¾ð±ÞµÇ¾ú°í ±×·¸Áö ¾ÊÀº °ÍÀº »ý·«µÇ¾ú´Ù.

µð·ºÅ丮 ±¸Á¶°¡ ¼öÁ¤µÇ¾ú´Ù - ÀÌÁ¦ LFS´Â FHS¸¦ ÁؼöÇÑ´Ù. ºñ·Ï 100% ´Â ¾Æ´ÒÁö¶óµµ ±ÙÁ¢ÇÏ°í ÀÖ´Ù. »õ·Î¿î Glibc ¼³Ä¡ ¹æ¹ý »õ·Î¿î GCC ¼³Ä¡ ¹æ¹ý ¹Ì¸® ÄÄÆÄÀÏµÈ µ¥ºñ¾È ÆÐÅ°Áö°¡ ÇÊ¿ä¾ø°Ô µÇ¾ú´Ù. ¿ÏÀüÈ÷ °³Á¤µÈ ¼ÒÇÁÆ®¿þ¾î ¼³Ä¡ ¹æ¹ý - 6.1Àå ÀÌÀü¿¡¼­ Á¤ÀûÀ¸·Î ¸µÅ©µÈ ÆÐÅ°ÁöµéÀÌ ´õÀÌ»ó ÇÊ¿ä¾ø°Ô µÇ¾ú´Ù. ¼ÒÇÁÆ®¿þ¾î ¼³Ä¡½ÃÀÇ ¸¹Àº ¹ö±×°¡ ¼öÁ¤µÇ¾ú´Ù. util-linux ÆÐÅ°Áö¿¡¼­ Á» ´õ ¸¹Àº ÇÁ·Î±×·¥µéÀ» ¼³Ä¡Çß´Ù. Bzip2 ÇÁ·Î±×·¥ÀÇ ¼³Ä¡°¡ Ãß°¡µÇ¾ú´Ù. $LFS°¡ ¹«¾ùÀÎÁö¿¡ ´ëÇØ ´õ¿í ÀÚ¼¼È÷ ¼³¸íÇÏ¿´´Ù - À̸¦ ¾²´Â ¹æ¹ý°ú ¾²Áö ¾Ê´Â ¹æ¹ý. 5Àå¿¡¼­ 9.1Àå±îÁöÀÇ ¸ðµç ÆÐÅ°ÁöµéÀÇ ¼³Ä¡ °úÁ¤À» °£¼ÒÈ­ÇÏ¿´´Ù. ºÒÇÊ¿äÇÑ º°µµÀÇ ÀåÀ» °®´Â ´ë½Å Glibc¿Í GCCÀÇ ¼³Ä¡¸¦ 7ÀåÀ¸·Î À̵¿ÇÏ¿´´Ù. ÀÎÅÍ³Ý ¼­¹ö °ü·Ã ÀåÀ» ¼öÁ¤ÇÏ¿´´Ù: Network Daemon °ü·Ã ºÎºÐ°ú Network Clients °ü·Ã ºÎºÐ. ÀÎÅÍ³Ý °ü·Ã ÀåÀº ÀÌ »õ µÎ ºÎºÐµé°ú ÇÕÃÄÁ³´Ù. 13Àå°ú 14Àå(X¿Í ÀÎÅͳÝ)À» ¹Ù²Ù¾ú°í X¿Í Window Maker¿¡ °üÇÑ ÀåÀ» 14ÀåÀ¸·Î ÅëÇÕÇÏ¿´´Ù. ¿ì¸®´Â »õ·Î¿î Man ÇÁ·Î±×·¥À» »ç¿ëÇÑ´Ù. ÀÌ´Â ¿ì¸®°¡ ÀÌÀü¿¡ ¾²´ø man-db ÇÁ·Î±×·¥º¸´Ù ¼³Á¤°ú »ç¿ëÀÌ ´õ ½±´Ù. µÎ ¹öÀüÀº °ÅÀÇ °°Àº ÀÏÀ» ÇÑ´Ù. 13ÀåÀ» Ãß°¡ÇÏ¿´´Ù: ÀÚ¿øµé. ÀÌ ÀåÀº ¿©·¯ºÐÀÌ LFS ½Ã½ºÅÛÀ» ¼³Ä¡ÇÏ´Â µ¿¾ÈÀ̳ª ¼³Ä¡ ÈÄ¿¡ ÀÐÀ» ¸¹Àº À¯¿ëÇÑ Ã¥µé°ú HOWTOµéÀ» ´ã°í ÀÖ´Ù. 3Àå: bzip2 ¸µÅ© ¿À·ù ¼öÁ¤ 7.2.42Àå: Util-Linux ¼³Ä¡ ¹æ¹ýÀÇ °£¼ÒÈ­ 3.1Àå: procpsÀÇ À§Ä¡ º¯°æ 7.2Àå: Vim°ú Util-LinuxÀÇ ¼³Ä¡ ¼ø¼­¸¦ ¹Ù²Þ (Util-Linux¸¦ ¼³Ä¡ÇÏ´Â µ¿¾È ¿ì¸®´Â ¿¡µðÅÍ°¡ ÇÊ¿äÇϱ⠶§¹®ÀÌ´Ù) 7.3.33Àå: procps ¼³Ä¡ ¿À·ù ¼öÁ¤ 5.2Àå: ºÎÆ®½Ã¿¡ ÆÄÀÏÀÌ ¾ø´Ù´Â °æ°í°¡ ¶ßÁö ¾Êµµ·Ï inittab ÆÄÀÏÀ» Á¦°ÅÇß´Ù. 6Àå: Ä¿³Î ¼³Ä¡ºÎºÐ ÀçÀÛ¼º 10.3Àå: ¾ÆÆÄÄ¡ ºÎÆ®½ºÅ©¸³Æ®ÀÇ ¿À·ù ¼öÁ¤ 10.3.2Àå: httpd.conf ÆÄÀÏÀ» °íÄ¡´Â °Í¿¡ ´ëÇÑ ºÎºÐÀ» Á¦°ÅÇÏ¿´´Ù. ´õÀÌ»ó ÇÊ¿äÇÏÁö ¾Ê´Ù. /usr/apache/manÀ» /usr/share/misc/man.conf¿¡ Ãß°¡ÇÑ´Ù´Â °ÍÀ» ³Ö¾ú´Ù. 11.1Àå: ¼³Ä¡ °úÁ¤À» °£¼ÒÈ­Çϱâ À§Çؼ­ Àß µ¿ÀÛÇÏ´Â Makefile ÆÄÀÏÀÌ µé¾îÀÖµµ·Ï ¼öÁ¤µÈ mailx ÆÐÅ°Áö¸¦ Á¦°øÇÏ¿´´Ù. 11.3.1Àå: Zlib°¡ Á¤ÀûÀÌ ¾Æ´Ï¶ó µ¿Àû ¶óÀ̺귯¸®·Î ¼³Ä¡µÇµµ·Ï configure¿¡ --share ½ºÀ§Ä¡¸¦ Ãß°¡ÇÏ¿´´Ù. 11.6Àå: Lynx°¡ Slang ´ë½Å Ncurses ¶óÀ̺귯¸®¿¡ ¸µÅ©µÇµµ·Ï ÇÏ¿´´Ù. 12Àå: »õ·Î¿î man-db´Â ÀÌ¹Ì man_db.config ÆÄÀÏ¿¡ X11/man µð·ºÅ丮¸¦ °¡Áö°í ÀÖ´Ù.

2.2 - April 3rd, 2000 2.2 - 2000³â 4¿ù 3ÀÏ

ÀÌÁ¦ linuxfromscratch.org¿Í linuxfromscratch.com µµ¸ÞÀÎÀÌ ÀÛµ¿ÇÑ´Ù. huizen.dds.nl/˜glb¿Í tts.ookhoi.dds.nl¿¡ ´ëÇÑ ÀÌÀüÀÇ ¸ðµç ¸µÅ©µéÀÌ www.linuxfromscratch.orgÀÇ ¾Ë¸ÂÀº ¸µÅ©·Î ´ëüµÇ¾ú´Ù. 7.3Àå¿¡¼­ ¸®ºÎÆà ÀÌÈÄ¿¡ ¿ì¸®°¡ ¼ÒÇÁÆ®¿þ¾îÀÇ ÄÄÆÄÀÏÀ» ½ÃÀÛÇϱâ Àü¿¡ ½º¿Ò ÆÄƼ¼ÇÀÌ ¾×Ƽºê ¸ðµå·Î µÈ´Ù.

¸ÞÀϸµ¸®½ºÆ®

¿©·¯ºÐÀÌ Âü°¡ÇÒ ¼ö ÀÖ´Â ¸ÞÀϸµ¸®½ºÆ®°¡ µÎ °³ ÀÖ´Ù. lfs-discuss¿Í lfs-announce ¸®½ºÆ®. ÀüÀÚ´Â Á¦ÇÑÀÌ ¾øÀÌ ¿­·¯Áø °ÍÀ̸ç ÀÌ ¹®¼­¿Í °ü·ÃµÈ ¾î¶² °ÍµéÀÌ¶óµµ Åä·ÐÇÒ ¼ö ÀÖ´Ù. ÈÄÀÚ´Â Á¦ÇÑÀÌ ÀÖ´Â ¸ÞÀϸµ¸®½ºÆ®ÀÌ´Ù. ´©±¸³ª Âü°¡ÇÒ ¼ø ÀÖÁö¸¸ ÀÌ ¸®½ºÆ®¿¡ ±ÛÀ» ¾µ ¼ö´Â ¾ø´Ù (¿ÀÁ÷ ÁßÀçÀÚ¸¸ÀÌ ¾µ ¼ö ÀÖ´Ù). ÀÌ ¸®½ºÆ®´Â ÁÖ·Î ÀÌ ¹®¼­ÀÇ »õ ¹öÀü¿¡ ´ëÇØ ¾Ë¸± ¶§ »ç¿ëµÈ´Ù.

¸¸¾à ¿©·¯ºÐÀÌ lfs-discuss ¸®½ºÆ®¿¡ °¡ÀÔÇÑ´Ù¸é lfs-announce ¸®½ºÆ®¿¡µµ °¡ÀÔÇÒ ÇÊ¿æ ¾ø´Ù. lfs-announce ¸®½ºÆ®·Î °¡´Â ¸ðµç ±ÛÀº lfs-discuss ¸®½ºÆ®·Îµµ º¸³»Áø´Ù.

°¡ÀÔÇϱâ

¸®½ºÆ®¿¡ °¡ÀÔÇϱâ À§Çؼ­´Â º»¹®¿¡ subscribe lfs-discuss ³ª subscribe lfs-announce ¶ó°í ¾´ emailÀ» ·Î º¸³»¸é µÈ´Ù.

Majordomo°¡ ¿©·¯ºÐ¿¡°Ô È®ÀÎ ¿äû emailÀ» º¸³¾ °ÍÀÌ´Ù. ÀÌ emailÀº ÀÎÁõ Äڵ带 ´ã°í ÀÖ´Ù. ¿©·¯ºÐÀÌ ÀÌ emailÀ» Majordomo¿¡°Ô µ¹·Á º¸³»¸é (¹æ¹ýÀº email ¾È¿¡ ³ª¿ÍÀÖ´Ù) °¡ÀÔÀÌ ¿Ï·áµÉ °ÍÀÌ´Ù.

Å»ÅðÇϱâ

¸®½ºÆ®¿¡¼­ Å»ÅðÇϱâ À§Çؼ­´Â º»¹®¿¡ unsubscribe lfs-discuss À̳ª unsubscribe lfs-announce ÀÌ¶ó ¾´ emailÀ» ·Î º¸³»¸é µÈ´Ù.

¿¬¶ôó

¿©·¯ºÐÀÇ ¸ðµç Áú¹®Àº °¡´ÉÇÏ¸é ¸ÞÀϸµ ¸®½ºÆ®·Î ¿Ã·ÁÁֱ⠹ٶõ´Ù. ¸¸¾à ³»°Ô °³ÀÎÀûÀ¸·Î ¿¬¶ôÇØ¾ß ÇÑ´Ù¸é ·Î ¸ÞÀÏÀ» º¸³»¸é µÈ´Ù.

±âŸ ¹ø¿ªÀÇ ¿ÀŸ³ª ¿À¿ª¿¡ ´ëÇؼ± ·Î ¸ÞÀÏÀ» Áֱ⠹ٶõ´Ù.

¹ø¿ªÀÚÀÇ º¯

LFS¸¦ Çϳª Çϳª ½ÇÁ¦·Î ½ÇÇàÇØ °¡¸é¼­ ¹ø¿ªÀ» ÇÏ°íÀÚ Çß´ø °èȹÀÌ ¹ã ´Ê°Ô Åð±ÙÇÏ´Â Á÷ÀåÀÎÀ̶ó´Â Çΰè·Î ¼öÆ÷·Î µ¹¾Æ°¡¸é¼­ ´Ü¼ø ¹ø¿ªÀ¸·Î µÇ¾ú½À´Ï´Ù.:( ±×´ÙÁö Ưº°ÇÏ°Ô ±î´Ù·Î¿î ¹ø¿ªÀº ¾øÀ¸³ª ÀÌ v2.2 ¹®¼­ ÀÚü¿¡ ¹ö±×°¡ »ó´ç·® ³»Æ÷µÇ¾î Àֱ⠶§¹®¿¡ - ´öºÐ¿¡ lfs-discuss mailing list ¿¡´Â ¹«¼öÇÑ ¸ÞÀϵéÀÌ ½ñ¾ÆÁý´Ï´Ù - ¾ÆÁ÷Àº µû¶ó¸¸ Çؼ­ ¿Ïº®ÇÒ ¼ö ÀÖ´Ù´Â º¸ÀåÀº ¸øÇÒ °Í °°½À´Ï´Ù. °¢Á¾ ¹ö±×µé¿¡ ´ëÇؼ± °¡´ÉÇϸé lfs-discuss ¸¦ ÂüÁ¶ÇÏ½Ã±æ ¹Ù¶ó¸ç, ÇöÀç v2.3ÀÌ ÁøÇàÁßÀÔ´Ï´Ù. v2.2 ºÎÅÍ´Â ¹öÀü ¹øÈ£°¡ kernel ¹öÀü ¹øÈ£ ºÎ¿© ¹æ¹ý°ú °°ÀÌ °¡°í ÀÖÀ¸´Ï v2.4°¡ ¾ÈÁ¤ ¹öÀüÀÌ µÉ °Í °°½À´Ï´Ù.:)

ÀÌ ¹®¼­¿¡¼­ ¾²ÀÌ´Â °ü·Ê $LFS¿¡ ´ëÇؼ­

´ÙÀ½À» ÁÖÀDZí°Ô Àб⠹ٶõ´Ù: ÀÌ ¹®¼­ Àüü¿¡ °ÉÃļ­ ¿©·¯ºÐÀº $LFS ¶ó´Â º¯¼ö¸¦ ÀÚÁÖ º¸°Ô µÉ °ÍÀÌ´Ù. $LFS´Â Ç×»ó LFS ½Ã½ºÅÛÀ» Æ÷ÇÔÇÏ´Â ÆÄƼ¼ÇÀÌ ¸¶¿îÆ®µÇ´Â µð·ºÅ丮·Î ´ëüµÇ¾î¾ß ÇÑ´Ù. ÆÄƼ¼ÇÀ» ¸¸µå´Â ¹æ¹ý°ú ¸¶¿îÆ®ÇÒ °÷¿¡ ´ëÇؼ± ÈÄÀÇ 4Àå¿¡¼­ ÀÚ¼¼È÷ ¼³¸íµÉ °ÍÀÌ´Ù. ³» °æ¿ì LFS ÆÄƼ¼ÇÀº /mnt/hda5¿¡ ¸¶¿îÆ®µÈ´Ù. ¸¸¾à ³»°¡ ÀÌ ¹®¼­¸¦ Àдٰ¡ ¾îµò°¡¿¡¼­ $LFS¸¦ º»´Ù¸é /mnt/hda5¶ó°í ÀÐÀº °ÍÀ¸·Î °£ÁÖÇÒ °ÍÀÌ´Ù. ¸¸¾à cp inittab $LFS/etc ¶ó´Â ¸í·ÉÀ» ½ÇÇàÇØ¾ß ÇÑ´Ù´Â °ÍÀ» ÀÐ´Â´Ù¸é ³ª´Â ½ÇÁ¦·Î´Â cp inittab /mnt/hda5/etc ¶ó°í ½ÇÇàÇÒ °ÍÀÌ´Ù.

Áß¿äÇÑ °ÍÀº ¿©·¯ºÐÀÌ ÇÁ·ÒÇÁÆ® »ó¿¡¼­ ½ÇÇàÇÏ´Â ¸í·ÉÀÌ´ø ÆíÁýÇϰųª »õ·Î ¸¸µå´Â ÆÄÀÏ ¾ÈÀÌ´ø ¿©·¯ºÐÀÌ Àд ¸ðµç °÷¿¡¼­ ÀÌ ÀÏÀ» ÇØ¾ß ÇÑ´Ù´Â °ÍÀÌ´Ù.

¿©·¯ºÐÀÌ ¿øÇÑ´Ù¸é LFS ¶ó´Â ȯ°æ º¯¼ö¸¦ ¼±¾ðÇÒ ¼ö ÀÖ´Ù. ÀÌ·± ¹æ½ÄÀ¸·Î /mnt/hda5 °°Àº °ÍÀ¸·Î ´ëüÇÏ´Â ´ë½Å $LFS¸¦ Á÷Á¢ ¾µ ¼ö ÀÖ´Ù. ´ÙÀ½°ú °°ÀÌ ÇÏ¸é µÈ´Ù: export LFS=/mnt/hda5

¸¸¾à cp inittab $LFS/etc ¶ó´Â ¹®ÀåÀ» Àд´ٸé cp inittab $LFS/etc ¶ó°í Á÷Á¢ Ä¥ ¼ö ÀÖÀ¸¸ç ½©ÀÌ ÀÌ ¸í·ÉÀ» cp inittab /mnt/hda5/etc ·Î ÀÚµ¿À¸·Î º¯È¯ÇØ ÁÙ °ÍÀÌ´Ù.

Ç×»ó LFS º¯¼ö°¡ ¼³Á¤µÇ¾î ÀÖµµ·Ï ÇÏ´Â °ÍÀ» ÀØÀ¸¸é ¾ÈµÈ´Ù. ¸¸¾à ÀÌ º¯¼ö¸¦ ¼³Á¤ÇÏÁö ¾Ê°í ¸í·É¹® ¾È¿¡¼­ À̸¦ »ç¿ëÇÑ´Ù¸é $LFS´Â ¹«½ÃµÇ°í ³ª¸ÓÁö¸¸ ½ÇÇàµÉ °ÍÀÌ´Ù. LFS º¯¼ö°¡ ¼³Á¤µÇÁö ¾ÊÀº »óÅÂÀÇ cp inittab $LFS/etc ¸í·ÉÀº inittab ÆÄÀÏÀ» /etc µð·ºÅ丮·Î º¹»çÇÏ¿© ¿©·¯ºÐÀÇ ±âÁ¸ÀÇ ½Ã½ºÅÛÀÇ inittab À» µ¤¾î¾º¿ï °ÍÀÌ´Ù. inittab°°Àº ÆÄÀÏÀº ½±°Ô º¹±¸µÉ ¼ö Àֱ⠶§¹®¿¡ Å« ¹®Á¦´Â ¾Æ´ÏÁö¸¸ C ¶óÀ̺귯¸®ÀÇ ¼³Ä¡ µµÁß¿¡ ½Ç¼ö¸¦ ÇÑ´Ù¸é ¿©·¯ºÐÀÇ ½Ã½ºÅÛÀ» ½É°¢ÇÏ°Ô ¼Õ»óÀ» ÀÔÈú ¼ö ÀÖÀ¸¸ç º¹±¸ÇÏ´Â ¹æ¹ýÀ» ¸ð¸¦ °æ¿ì ´Ù½Ã ¼³Ä¡ÇؾßÇÒ °ÍÀÌ´Ù. µû¶ó¼­ ³ª´Â LFS º¯¼ö¸¦ »ç¿ëÇÏÁö ¸»°ÍÀ» °­·ÂÈ÷ ±ÇÀ¯ÇÑ´Ù. ¿©·¯ºÐ ½º½º·Î°¡ $LFS¸¦ Á÷Á¢ /mnt/hda5 µîÀ¸·Î ´ëüÇÏ´Â °ÍÀÌ ¹Ù¶÷Á÷ÇÏ´Ù. /mnt/hda5¸¦ ÀÔ·ÂÇÏ´Â µ¿¾È ¿ÀŸ¸¦ ÀÔ·ÂÇßÀ» °æ¿ì »ý±æ ¼ö ÀÖ´Â ÃÖ¾ÇÀÇ °æ¿ì´Â "no such file or directory" ¶ó´Â ¿¡·¯°¡ ¹ß»ýÇÏ´Â °ÍÀÏ »Ó ¿©·¯ºÐÀÇ ½Ã½ºÅÛÀ» ÇØÄ¡Áø ¾ÊÀ» °ÍÀÌ´Ù. ³»°¡ ¿©·¯ºÐ¿¡°Ô °æ°í¸¦ ÇÏÁö ¾Ê¾Ò´Ù°í´Â ¸»ÇÏÁö ¸»±æ ¹Ù¶õ´Ù ;)

¼ÒÇÁÆ®¿þ¾î¸¦ ¹Þ´Â ¹æ¹ý

ÀÌ ¹®¼­ Àü¹Ý¿¡ °ÉÃļ­ ³ª´Â ¿©·¯ºÐÀÌ ´Ù¿î ¹ÞÀº ¸ðµç ÆÐÅ°ÁöµéÀ» $LFS/usr/src ÀÇ ¼­ºêµð·ºÅ丮 ¾Æ·¡¿¡ ÀúÀåÇÏ°í ÀÖ´Ù°í °¡Á¤ÇÒ °ÍÀÌ´Ù.

³ª ½º½º·Î´Â $LFS/usr/src/sources µð·ºÅ丮¸¦ »ç¿ëÇÏ¿´´Ù. sources ¾È¿¡¼­ ¿©·¯ºÐÀº 0¿¡¼­ 9±îÁöÀÇ µð·ºÅ丮¿Í a¿¡¼­ z±îÁöÀÇ µð·ºÅ丮¸¦ ¹ß°ßÇÒ °ÍÀÌ´Ù. sysvinit-2.78.tar.gz °°Àº ÆÐÅ°Áö´Â $LFS/usr/src/sources/s/ ¾Æ·¡¿¡ ÀúÀåµÈ´Ù. bash-3.02.tar.gz °°Àº ÆÐÅ°Áö´Â $LFS/usr/src/sources/b/ ¾Æ·¡¿¡ ÀúÀåµÇ¸ç ³ª¸ÓÁöµµ ÀÌ¿Í °°´Ù. ¹°·Î ¿©·¯ºÐÀÌ ÀÌ·± ¹æ½ÄÀ» µû¸¦ ÇÊ¿ä´Â ¾øÀ¸¸ç ³ª´Â ´ÜÁö ¿¹Á¦¸¦ ÁÖ¾úÀ» »ÓÀÌ´Ù. ÆÐÅ°ÁöµéÀ» $LFS/usr/src ¹Û¿¡ º¸°üÇÏ°í ¼­ºêµð·ºÅ丮·Î À̵¿ÇÏ´Â °ÍÀÌ ÁÁ´Ù. ÀÌ·¸°Ô ÇÏ¸é ¿ì¸®°¡ ÆÐÅ°Áö¸¦ Ç®¾î¼­ ÀÛ¾÷À» ÇÏ´Â $LFS/usr/src µð·ºÅ丮¸¦ ±ú²ýÀÌ À¯ÁöÇÒ ¼ö ÀÖ´Ù.

´ÙÀ½ ÀåÀº ¿©·¯ºÐÀÌ ´Ù¿î¹Þ¾Æ¾ß ÇÒ ¸ðµç ÆÐÅ°ÁöµéÀÇ ¸ñ·ÏÀ» ´ã°í ÀÖ´Ù. ±×·¯³ª ¾ÆÁ÷ ¿ì¸®ÀÇ LFS ½Ã½ºÅÛÀ» ´ãÀ» ÆÄƼ¼ÇÀ» ¸¸µéÁö ¾Ê¾ÒÀ¸¹Ç·Î Àӽ÷Π¿©·¯ºÐÀÌ ¿øÇÏ´Â ´Ù¸¥ °÷¿¡ º¸°üÇØ¾ß Çϸç 4ÀåÀÌ ³¡³ª¸é À̰͵éÀ» $LFS/usr/src/<somesubdirectory>·Î º¹»çÇÏ´Â °ÍÀ» ÀØÀ¸¸é ¾ÈµÈ´Ù.

¼ÒÇÁÆ®¿þ¾î¸¦ ¼³Ä¡ÇÏ´Â ¹æ¹ý

ÆÐÅ°Áö¸¦ °¡Áö°í ½ÇÁ¦·Î ¹«¾ð°¡¸¦ Çϱâ Àü¿¡ ±×°ÍÀ» ¸ÕÀú Ç®¾î¾ß(unpack) ÇÑ´Ù. ÈçÈ÷ ÆÐÅ°Áö ÆÄÀÏÀÌ tar·Î ¹­ÀÌ°í gzipÀ¸·Î ¾ÐÃàµÈ °ÍÀ» º¼ °ÍÀÌ´Ù (ÀÌ´Â .tar.gz³ª .tgzÀÇ È®ÀåÀڷκÎÅÍ ¾Ë ¼ö ÀÖ´Ù). ³ª´Â ungzip°ú untar ¹æ¹ý¿¡ ´ëÇØ ¸Å¹ø ¼³¸íÇÏÁö´Â ¾Ê°Ú´Ù. ÀÌ ´Ü¶ô¿¡¼­ ±× ¹æ¹ý¿¡ ´ëÇØ ÇÑ ¹ø¸¸ ¾ê±â¸¦ ÇÒ °ÍÀÌ´Ù. ¿©·¯ºÐÀº .tar.bz2 ÆÄÀÏÀ» ¹ÞÀ» ¼öµµ ÀÖ´Ù. ÀÌ ÆÄÀÏÀº tar·Î ¹­ÀÎ ÈÄ bzip2 ÇÁ·Î±×·¥À¸·Î ¾ÐÃàµÈ °ÍÀÌ´Ù. bzip2´Â ÈçÈ÷ ¾²ÀÌ´Â gzipº¸´Ù ´õ ÁÁÀº ¾ÐÃà ¼º´ÉÀ» °¡Áö°í ÀÖ´Ù. bz2 ÆÄÀÏÀ» »ç¿ëÇϱâ À§Çؼ± bzip2 ÇÁ·Î±×·¥ÀÌ ¼³Ä¡µÇ¾î ÀÖ¾î¾ß ÇÑ´Ù. ÀüºÎ´Â ¾Æ´ÏÁö¸¸ ´ëºÎºÐÀÇ ¹èÆ÷º»ÀÌ ÀÌ ÇÁ·Î±×·¥À» Æ÷ÇÔÇÏ°í ÀÖÀ¸¸ç µû¶ó¼­ ÀÌ¹Ì ¿©·¯ºÐÀÇ ½Ã½ºÅÛ¿¡ ¼³Ä¡µÇ¾î ÀÖÀ» °¡´É¼ºÀÌ ³ô´Ù. ¸¸¾à ±×·¸Áö ¾Ê´Ù¸é ¿©·¯ºÐÀÇ ¹èÆ÷º»ÀÇ ¼³Ä¡ ÅøÀ» »ç¿ëÇÏ¿© ¼³Ä¡ÇÑ´Ù.

ÆÐÅ°Áö¸¦ ¿©·¯ºÐÀÌ º¸°üÇÏ°í ÀÖ´ø µð·ºÅ丮¿¡¼­ $LFS/usr/src µð·ºÅ丮·Î º¹»çÇÏ´Â °ÍÀ¸·Î ½ÃÀÛÇÑ´Ù. tar¿Í gzipÀ¸·Î ¹­ÀÎ ÆÄÀÏÀ» °¡Áö°í ÀÖ´Ù¸é ´ÙÀ½À» ½ÇÇàÇÏ¿© À̸¦ Ǭ´Ù: tar xvzf filename.tar.gz; rm filename.tar.gz ȤÀº tar xvzf filename.tgz; rm filename.tgz tar¿Í bzip2·Î ¹­ÀÎ ÆÄÀÏÀ» °¡Áö°í ÀÖ´Ù¸é ´ÙÀ½À» ½ÇÇàÇÏ¿© À̸¦ Ǭ´Ù: tar --use-compress-prog=bzip2 -xvf filename.tar.bz2;rm filename.tar.bz2 tar·Î¸¸ ¹­ÀÎ ÆÄÀÏÀ» °¡Áö°í ÀÖ´Ù¸é tar xvf filename.tar; rm filename.tar¸¦ ½ÇÇàÇÏ¿© À̸¦ Ǭ´Ù.

¿©·¯ºÐÀÌ ÆÄÀÏÀ» Ç®°í ¹Ù·Î ±× ÆÄÀÏÀÌ ´õÀÌ»ó ÇÊ¿ä¾ø±â ¶§¹®¿¡ Áö¿ü´Ù´Â °ÍÀ» ÁÖÀÇÇ϶ó. ÀÌ°ÍÀÌ ±× ÆÄÀÏÀ» À̵¿ÀÌ ¾Æ´Ñ º¹»ç¸¦ ÇØ¾ß ÇÏ´Â ÀÌÀ¯´Ù. ¸¸¾à À̵¿À» ½ÃÅ°°í Áö¿ö¹ö·È´Ù¸é ÀÌ ÆÐÅ°Áö°¡ ¶Ç ÇÊ¿äÇÒ °æ¿ì ´Ù½Ã ´Ù¿î·Îµå¸¦ ÇØ¾ß ÇÒ °ÍÀÌ´Ù.

ÆÐÅ°Áö ¾ÐÃàÆÄÀÏÀÌ Ç®¸®¸é ÇöÀç µð·ºÅ丮 ¾Æ·¡¿¡ »õ·Î¿î µð·ºÅ丮°¡ ¸¸µé¾îÁú °ÍÀÌ´Ù (±×¸®°í ÀÌ ¹®¼­´Â ¿©·¯ºÐÀÌ ÆÄÀÏÀ» $LFS/usr/src µð·ºÅ丮 ¾Æ·¡¿¡¼­ Ç®¾ú´Ù°í °¡Á¤ÇÑ´Ù). ¼³Ä¡ °úÁ¤À» °è¼ÓÇϱâ Àü¿¡ »õ µð·ºÅ丮·Î À̵¿ÇØ¾ß ÇÑ´Ù. À§ÀÇ ¸ðµç °úÁ¤Àº 'xxx ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù' ·Î ¿ä¾àµÈ´Ù. µû¶ó¼­ ÀÌ·¯ÇÑ °ÍÀ» ÀÐ°Ô µÇ¸é ÆÐÅ°Áö¸¦ $LFS/usr/src·Î º¹»çÇÏ°í tar ÇÁ·Î±×·¥°ú gzip/bzip2¸¦ »ç¿ëÇÏ¿© ¾ÐÃàÀ» Ǭ ÈÄ »õ·Î ¸¸µé¾îÁø µð·ºÅ丮·Î À̵¿ÇÑ ÈÄ¿¡ ´ÙÀ½ ¼³Ä¡ °úÁ¤À» Àоî¾ß ÇÑ´Ù.

ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ ÈÄ À̸¦ °¡Áö°í µÎ °¡Áö ÀÏÀ» ÇÒ ¼ö ÀÖ´Ù. ¼Ò½º°¡ µé¾îÀÖ´Â µð·ºÅ丮¸¦ Áö¿ì°Å³ª ±×³É µÑ ¼ö ÀÖ´Ù. ±×³É µÎ±â·Î Çß´Ù¸é ³»°Õ ÁÁ´Ù. ±×·¯³ª ÀÌÈÄÀÇ Àå¿¡¼­ °°Àº ÆÐÅ°Áö°¡ ÇÊ¿äÇÏ°Ô µÈ´Ù¸é (7.2Àå ±îÁöÀÇ ¸ðµç ¼ÒÇÁÆ®¿þ¾î´Â 7.3Àå¿¡¼­ À缳ġµÉ °ÍÀÌ´Ù) À̸¦ ´Ù½Ã ¾²±â Àü¿¡ µð·ºÅ丮¸¦ ¸ÕÀú Áö¿ö¾ß ÇÑ´Ù. ±×·¸Áö ¾ÊÀ¸¸é ÀÌÀü ¼³Á¤°ªµé (¿©·¯ºÐÀÇ ±âÁ¸ÀÇ ¸®´ª½º ½Ã½ºÅÛ¿¡´Â Àû¿ëµÇÁö¸¸ LFS ½Ã½ºÅÛÀ¸·Î ÄÄÇ»Å͸¦ Àç½ÃÀÛÇÑ ÈÄ¿£ ´õÀÌ»ó Àû¿ëµÇÁö ¾Ê´Â ¼³Á¤°ªµé) ÀÌ ¾²¿©¼­ ¹®Á¦°¡ µÉ ¼ö ÀÖ´Ù.´Ü¼øÈ÷ make cleanÀ» ÇÏ´Â °ÍÀÌ ¼Ò½º Æ®¸®¸¦ ¿Ïº®È÷ ±ú²ýÇÏ°Ô ÇÑ´Ù°í º¸ÀåÇÒ ¼ø ¾ø´Ù. ¼³Á¤ ½ºÅ©¸³Æ®´Â make clean °úÁ¤¿¡ ÀÇÇØ Á¦°ÅµÇÁö ¾Ê´Â ´Ù¾çÇÑ ¼­ºêµð·ºÅ丮 ¾È¿¡µµ ÆÄÀÏÀ» »ý¼ºÇÑ´Ù.

´Ù¿î¹ÞÀ» ÆÐÅ°Áöµé

¾Æ·¡´Â ¿©·¯ºÐÀÌ ÀÌ ¹®¼­¿¡¼­ »ç¿ëÇϱâ À§ÇØ ´Ù¿î¹Þ¾Æ¾ß ÇÒ ¸ðµç ¼ÒÇÁÆ®¿þ¾îµéÀÇ ¸ñ·ÏÀÌ´Ù. ³ª´Â ¼ÒÇÁÆ®¿þ¾î¸¦ ¹ÞÀ» ¼ö ÀÖ´Â »çÀÌÆ®¿Í µð·ºÅ丮¸¦ Ç¥±âÇßÁö¸¸ ÃÖ½ÅÀÇ ¼Ò½º ÆÄÀÏÀ» ¹Þ´Â °ÍÀº ¿©·¯ºÐÀÇ ¸òÀÌ´Ù. ¹öÀü ¹øÈ£´Â ÀÌ ¹®¼­°¡ ±â¹ÝÇÏ°í ÀÖÀ¸¸ç ÀÛµ¿ÇÑ´Ù°í ¾Ë·ÁÁø ¹öÀüÀ» ³ªÅ¸³½´Ù. ½º½º·Î ÇØ°áÇÒ ¼ö ¾ø´Â ¹®Á¦¸¦ °Þ°Ô µÈ´Ù¸é ÀÌ ¹®¼­¿¡¼­ ¾²ÀÌ´Â ¹öÀüÀ» ¹Þ´Â´Ù (´õ »õ ¹öÀüÀ» ¹Þ¾ÒÀ» °æ¿ì¿¡).

Çʼö ¼ÒÇÁÆ®¿þ¾î

Sysvinit (2.78) :

Bash (2.03) :

Linux Kernel (2.2.14) :

Binutils (2.9.1) :

Bzip2 (0.9.5d) :

Diff Utils (2.7) :

File Utils (4.0) :

GCC (2.95.2) :

Glibc (2.1.3) :

Glibc-crypt (2.1.2) :

Glibc-linuxthreads (2.1.3) :

Grep (2.4) :

Gzip (1.2.4) :

Make (3.78.1) :

Sed (3.02) :

Shell Utils (2.0) :

Tar (1.13) :

Text Utils (2.0) :

Util Linux (2.10f) :

Bison (1.28) :

Mawk (1.3.3) :

Find Utils (4.1) :

Ncurses (5.0) :

Less (340) :

Perl (5.005_03) :

M4 (1.4) :

Texinfo (4.0) :

Autoconf (2.13) :

Automake (1.4) :

Flex (2.5.4a) :

E2fsprogs (1.18) :

File (3.26) :

Groff (1.15) :

Ld.so (1.9.9) :

Libtool (1.3.4) :

Linux86 (0.14.3) :

Lilo (21) :

Shadow Password Suite (19990827) :

Man (1.5h1) :

Modutils (2.3.9) :

Termcap (1.3) :

Procinfo (17) :

Procps (2.0.6) :

Psmisc (19) :

Start-stop-daemon (0.4.1) :

Sysklogd (1.3.31) :

Vim (5.6) :

¼±Åà °¡´ÉÇÑ ¼ÒÇÁÆ®¿þ¾î

ÀÌÇÏ ¸ðµç ¼ÒÇÁÆ®¿þ¾î´Â 9Àå°ú ±× ÀÌÈÄ Àå¿¡¼­ »ç¿ëµÇ¸ç ¹Ýµå½Ã ÇÊ¿äÇÑ °ÍÀº ¾Æ´Ï´Ù. ƯÁ¤ ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÒ °ÍÀÎÁö´Â ¿©·¯ºÐ ½º½º·Î °áÁ¤ÇØ¾ß ÇÑ´Ù. ¿¹¸¦ µé¾î LFS ½Ã½ºÅÛÀ» ¿Â¶óÀο¡ ¿¬°áÇÒ °èȹÀÌ ¾ø´Ù¸é email À̳ª telnet, ftp, www µîÀÇ À¯Æ¿¸®Æ¼µéÀ» ¼³Ä¡ÇÏ±æ ¿øÄ¡ ¾ÊÀ» °ÍÀÌ´Ù.

Netkit-base (0.17) :

Net-tools (1.54) :

Procmail (3.14) :

Sendmail (8.9.3) :

Mailx (8.1.1) :

Mutt (1.0i) :

Fetchmail (5.2.0) :

Netkit-telnet (0.17) :

Proftpd (1.2.0pre9) :

Netkit-ftp (0.17) :

Apache (1.3.11) :

Zlib Library (1.1.3) :

Lynx (2.8.2) :

PPP (2.3.11) :

Xfree86 (3.3.5) :

libPropList (0.9.1) :

libXpm (4.7) :

libpng (1.0.3) :

libtiff (3.4) :

libjpeg (6b) :

libungif (4.1.0) :

WindowMaker (0.61.1) :

»õ ½Ã½ºÅÛÀÇ Áغñ ÀÏÀ» Çسª°¡´Â ¹æ¹ý

¿ì¸®´Â Debian À̳ª SuSe, Slackware, Mandrake, RedHat µîÀÇ ÀÌ¹Ì ¼³Ä¡µÇ¾î ÀÖ´Â ¸®´ª½º ¹èÆ÷º»À» »ç¿ëÇÏ¿© LFS ½Ã½ºÅÛÀ» ¸¸µé °ÍÀÌ´Ù. ¿©·¯ºÐÀº ¾î¶² ·ùÀÇ ºÎÆ® µð½ºÄϵµ ÇÊ¿äÄ¡ ¾Ê´Ù. ¿ì¸®´Â ±âÁ¸ÀÇ ¸®´ª½º ½Ã½ºÅÛÀ» »ç¿ëÇÒ °ÍÀÌ´Ù (¿ì¸®°¡ ÄÄÆÄÀÏ·¯³ª ¸µÄ¿, ÅؽºÆ® ¿¡µðÅÍ µîÀÇ ÅøµéÀÌ ÇÊ¿äÇϱ⠶§¹®ÀÌ´Ù).

¸¸¾à ¿©·¯ºÐÀÌ ¾ÆÁ÷ ¸®´ª½º¸¦ ¼³Ä¡ÇÏÁö ¾Ê¾Ò´Ù¸é ÀÌ ¹®¼­¸¦ ´çÀåÀº »ç¿ëÇÒ ¼ö ¾ø´Ù. ¿ì¼± ¸®´ª½º ¹èÆ÷º»À» ¼³Ä¡ÇÒ °ÍÀº ±ÇÇÑ´Ù. ¾î¶² °ÍÀ» ¼³Ä¡ÇÏ´øÁö °ü°è´Â ¾ø´Ù. ¶ÇÇÑ ÃֽŠ¹öÀüÀÏ ÇÊ¿äµµ ¾øÁö¸¸ ±×·¸´Ù°í ³Ê¹« ¿À·¡µÈ °ÍÀ̾ ¾ÈµÈ´Ù. Àϳâ À̳»ÀÇ °ÍÀ̶ó¸é ±¦ÂúÀ» °ÍÀÌ´Ù. ¿©·¯ºÐÀÇ ±âÁ¸ ½Ã½ºÅÛÀÌ glibc-2.0 À̳ª ±× ÀÌÈÄÀÇ °ÍÀ» ¾´´Ù¸é º° ¹®Á¦°¡ ¾ø´Ù. libc5 ´Â ¸î¸î ¹®Á¦¸¦ ¾ß±âÇÒ ¼ö ÀÖÀ¸¸ç ³»°¡ ´õÀÌ»ó ±×·± ¸Ó½ÅÀ» ¾²Áö ¾Ê±â ¶§¹®¿¡ ÀÌ ¹®¼­¿¡¼­µµ Áö¿øµÇÁö ¾Ê´Â´Ù.

»õ ÆÄƼ¼ÇÀÇ »ý¼º

»õ ¸®´ª½º ½Ã½ºÅÛÀ» ¸¸µé±â Àü¿¡ ¿ì¸®´Â ºñ¾îÀÖ´Â ¸®´ª½º ÆÄƼ¼ÇÀÌ ÇÊ¿äÇÏ´Ù. ³ª´Â Àû¾îµµ 500MB ÀÌ»óÀÇ Å©±â¸¦ °®´Â ÆÄƼ¼ÇÀ» ±ÇÀåÇÑ´Ù. ºÎ°¡ ±â´Éµé (email À̳ª ³×Æ®¿÷, ÀÎÅͳÝ, X À©µµ¿ì ½Ã½ºÅÛ µî) ÀÌ ¾ø´Â ±âº»ÀûÀÎ ½Ã½ºÅÛÀº ¾à 250MB ·Îµµ °¡´ÉÇÏ´Ù. ÀÌ¹Ì ¿©·¯ºÐÀÌ ¸®´ª½º Native ÆÄƼ¼ÇÀÌ ÀÖ´Ù¸é ÀÌ ºÎºÐÀº ¶Ù¾î³Ñ¾îµµ µÈ´Ù.

Àû´çÇÑ Çϵåµð½ºÅ© (»õ ÆÄƼ¼ÇÀ» ÇÁ¶óÀ̸Ӹ® ¸¶½ºÅÍ IDE µð½ºÅ© À§¿¡ ¸¸µé°í ½ÍÀº °æ¿ì /dev/hda ó·³) ¸¦ ¿É¼ÇÀ¸·Î ÇÏ¿© fdisk ÇÁ·Î±×·¥ (ȤÀº ¿©·¯ºÐÀÌ ¼±È£ÇÏ´Â fdisk °°Àº ÇÁ·Î±×·¥) À» ½ÇÇàÇÑ´Ù. ¸®´ª½º Native ÆÄƼ¼ÇÀ» ¸¸µé°í ÆÄƼ¼Ç Å×À̺íÀ» ¾´ ÈÄ fdisk ÇÁ·Î±×·¥À» ³ª¿Â´Ù. ÆÄƼ¼Ç Å×À̺íÀ» °»½Å½ÃÅ°±â À§ÇØ ½Ã½ºÅÛÀ» ¸®ºÎÆà Ç϶ó´Â ¸Þ½ÃÁö¸¦ ¹Þ¾Ò´Ù¸é °è¼ÓÇϱâ Àü¿¡ Áö±Ý ¸®ºÎÆÃÇϱ⠹ٶõ´Ù. ¿©·¯ºÐÀÇ »õ ÆÄƼ¼Ç À̸§À» ±â¾ïÇØ µÎµµ·Ï ÇÑ´Ù. (³ª¿Í °°Àº °æ¿ì¿£) hda5 °°Àº °ÍÀÏ ¼ö ÀÖ´Ù. ÀÌ »õ·Î »ý¼ºµÈ ÆÄƼ¼ÇÀº ÀÌ ¹®¼­¿¡¼­ LFS ÆÄƼ¼Ç À̶ó°í ºÒ·ÁÁú °ÍÀÌ´Ù.

»õ ÆÄƼ¼Ç À§¿¡ ext2 ÆÄÀÏ ½Ã½ºÅÛ ¸¸µé±â

ÀÏ´Ü ÆÄƼ¼ÇÀÌ ¸¸µé¾îÁ³À¸¸é ±× ÆÄƼ¼Ç À§¿¡ »õ·ÎÀÌ ext2 ÆÄÀÏ ½Ã½ºÅÛÀ» ¸¸µé¾î¾ß ÇÑ´Ù. ext2 ÆÄÀÏ ½Ã½ºÅÛÀ» ¸¸µé±â À§ÇØ ¿ì¸®´Â mke2fs ¸í·ÉÀ» »ç¿ëÇÒ °ÍÀÌ´Ù. »õ ÆÄƼ¼ÇÀ» À¯ÀÏÇÑ ¿É¼ÇÀ¸·Î ÁÖ°í ½ÇÇàÇϸé ÆÄÀÏ ½Ã½ºÅÛÀÌ »ý¼ºµÈ´Ù. ¸¸¾à ¿©·¯ºÐÀÇ ÆÄƼ¼ÇÀÌ hda5¶ó¸é mke2fs /dev/hda5 °°Àº ¸í·ÉÀ» ½ÇÇàÇÏ¸é µÈ´Ù.

»õ ÆÄƼ¼Ç ¸¶¿îÆ®Çϱâ

ext2 ÆÄÀÏ ½Ã½ºÅÛÀ» ¸¸µé°í³ª¸é »ç¿ëÇÒ ¼ö ÀÖ°Ô µÈ °ÍÀÌ´Ù. ÀÌ ÆÄÀÏ ½Ã½ºÅÛÀ» »ç¿ëÇϱâ À§ÇØ (Àаųª ¾²±â À§ÇØ) ¿ì¸®°¡ ÇØ¾ß ÇÒ °ÍÀº ´ÜÁö ±×°ÍÀ» ¸¶¿îÆ®ÇÏ´Â °ÍÀÌ´Ù. ¿©·¯ºÐÀÌ ÀÌ ÆÄÀÏ ½Ã½ºÅÛÀ» /mnt/hda5 ¾Æ·¡¿¡ ¸¶¿îÆ®ÇÑ´Ù¸é /mnt/hda5 µð·ºÅ丮·Î °¡¼­ ÀÌ ÆÄƼ¼ÇÀ» »ç¿ëÇÒ ¼ö ÀÖÀ¸¸ç ÀÌÈÄ ¿øÇÏ´Â °ÍÀ» ¹«¾ùÀÌ´ø ÇÒ ¼ö ÀÕ´Ù. ¾î¶² ¼­ºêµð·ºÅ丮¸¦ ¿©·¯ºÐÀÌ ¼±ÅÃÇϴ°¡´Â Áß¿äÄ¡ ¾Ê´Ù (½ÉÁö¾î ¿©·¯ºÐÀº ¸¶¿îÆ® ÁöÁ¡À¸·Î /mnt µð·ºÅ丮¸¦ »ç¿ëÇÒ ¼öµµ ÀÖ´Ù). ±×·¯³ª ÁÁÀº ½À°üÀº ÆÄƼ¼Ç°ú °°Àº À̸§À» °®´Â µð·ºÅ丮¸¦ ¸¸µå´Â °ÍÀÌ´Ù. ³» °æ¿ì¿¡ LFS ÆÄƼ¼ÇÀº hda5¶ó ºÒ¸®¸ç µû¶ó¼­ ³ª´Â ÀÌ ÆÄƼ¼ÇÀ» /mnt/hda5¿¡ ¸¶¿îÆ® ÇÏ¿´´Ù.

¾ÆÁ÷ ¾ø´Ù¸é /mnt µð·ºÅ丮¸¦ ¸¸µç´Ù. /mnt/xxx µð·ºÅ丮¸¦ ¸¸µç´Ù. xxx´Â LFS ÆÄƼ¼ÇÀÇ À̸§À¸·Î ´ëüµÈ´Ù. mount /dev/xxx /mnt/xxx ¸í·ÉÀ» ½ÇÇàÇÏ¿© LFS ÆÄƼ¼ÇÀ» ¸¶¿îÆ®ÇÑ´Ù. xxx´Â LFS ÆÄƼ¼ÇÀÇ À̸§À¸·Î ´ëüµÈ´Ù.

ÀÌ µð·ºÅ丮(/mnt/xxx)´Â ¿©·¯ºÐÀÌ ÀÌÀü¿¡ ºÃ´ø $LFS ÀÌ´Ù. µû¶ó¼­ ¸¸¾à ¾îµð¼±°¡ "cp inittab $LFS/etc" ¶ó´Â °ÍÀ» º»´Ù¸é ½ÇÁ¦·Î´Â "cp inittab /mnt/xxx/etc" ¶ó°í ÃÄ¾ß Çϸç xxx´Â ¿©·¯ºÐÀÇ ÆÄƼ¼Ç À̸§À¸·Î ¹Ù²ï´Ù.

µð·ºÅ丮ÀÇ »ý¼º

¿¡¼­ ãÀ» ¼ö ÀÖ´Â FHS Ç¥ÁØ¿¡ µû¶ó¼­ LFS ÆÄƼ¼Ç À§¿¡ µð·ºÅ丮 Æ®¸®¸¦ ¸¸µç´Ù. ¾Æ·¡ÀÇ ¸í·ÉµéÀ» ½ÇÇàÇϸé ÇÊ¿äÇÑ µð·ºÅ丮µéÀÌ »ý¼ºµÉ °ÍÀÌ´Ù.

cd $LFS mkdir bin boot dev etc home lib mnt proc root sbin tmp usr var cd $LFS/usr mkdir bin include lib sbin share src ln -s share/man man ln -s share/doc doc ln -s . local ln -s ../etc etc ln -s ../var var cd $LFS/usr/share mkdir dict doc info locale man nls misc terminfo zoneinfo cd $LFS/usr/share/man mkdir man1 man2 man3 man4 man5 man6 man7 man8 cd $LFS/var mkdir lock log run spool tmp

ÀÌÁ¦ µð·ºÅ丮°¡ »ý¼ºµÇ¾úÀ¸¸é 3Àå¿¡¼­ ´Ù¿î·Îµå ¹Þ¾Ò´ø ¼Ò½º ÆÄÀϵéÀ» $LFS/usr/src (ÀÌ ¼­ºêµð·ºÅ丮¸¦ ½º½º·Î ¸¸µé¾î¾ß ÇÑ´Ù) ¾Æ·¡ÀÇ ÀÓÀÇÀÇ ¼­ºêµð·ºÅ丮·Î º¹»çÇØ¾ß ÇÑ´Ù.

/dev µð·ºÅ丮ÀÇ º¹»ç

mknod ¸í·ÉÀ» »ç¿ëÇÏ¿© $LFS/dev µð·ºÅ丮 ¾È¿¡ ÀÖ¾î¾ß ÇÒ ÆÄÀϵéÀ» °³º°ÀûÀ¸·Î ¸¸µé ¼ö ÀÖÁö¸¸ ½Ã°£ÀÌ ¸¹ÀÌ °É¸°´Ù. ³ª´Â ÇöÀçÀÇ /dev µð·ºÅ丮¸¦ $LFS ÆÄƼ¼ÇÀ¸·Î ´Ü¼øÈ÷ º¹»çÇÏ´Â °ÍÀ» ÅÃÇß´Ù. ±âÁ¸ÀÇ ±ÇÇÑ°ú ½Éº¼¸¯ ¸µÅ©, ¼ÒÀ¯±ÇÀ» À¯ÁöÇϱâ À§ÇÏ¸ç µð·ºÅ丮¸¦ º¹»çÇϱâ À§Çؼ± ´ÙÀ½ÀÇ ¸í·ÉÀ» »ç¿ëÇÑ´Ù:

cp -av /dev $LFS chown root.root $LFS/dev/*

LFS ½Ã½ºÅÛÀ» ºÎÆà °¡´ÉÇϵµ·Ï ¸¸µé±â SysvinitÀÇ ¼³Ä¡

ÀϹÝÀûÀΠȯ°æ ÇÏ¿¡¼± Ä¿³ÎÀÌ ·ÎµåµÇ¾î ¿©·¯ ½Ã½ºÅÛ ±¸¼º ¿ä¼ÒµéÀ» ÃʱâÈ­ÇÑ ÈÄ ½Ã½ºÅÛÀÇ ºÎÆà ÇÁ·Î¼¼½º¸¦ ¸¶¹«¸®ÇÒ init ¶ó ºÒ¸®´Â ÇÁ·Î±×·¥À» ·ÎµåÇÑ´Ù. ÀüºÎ ´Ù´Â ¾Æ´Ò Áö¶óµµ °ÅÀÇ ´ëºÎºÐÀÇ ¸®´ª½º ½Ã½ºÅÛ¿¡ µé¾îÀÖ´Â ÆÐÅ°Áö´Â SysvinitÀ̸ç ÀÌ°ÍÀÌ ¿ì¸®°¡ LFS ½Ã½ºÅÛ¿¡ ¼³Ä¡ÇÏ·Á´Â ÇÁ·Î±×·¥ÀÌ´Ù.

SysvinitÀÇ ¾ÐÃâÆÄÀÏÀ» Ǭ´Ù. src µð·ºÅ丮·Î À̵¿ÇÑ´Ù. Makefile ÆÄÀÏÀ» ¼öÁ¤ÇÑ´Ù. ÀÌ ÆÄÀÏÀÇ all: ±ÔÄ¢ ÀÌÀüÀÇ ¾î´À °÷¿¡¶óµµ ROOT = $LFS ¶ó´Â ÁÙÀ» ÷°¡ÇÑ´Ù. ÀÌ ÆÄÀÏÀÇ ¸¶Áö¸· ³× ÁÙÀÇ ¸ðµç /dev ¾Õ¿¡ °¢°¢ $(ROOT) ¸¦ ºÙÀδÙ.

¸¶Áö¸· ³× ÁÙ¿¡ $(ROOT) ºÎºÐÀ» ÷°¡ÇÑ ÈÄ¿£ ¾Æ·¡¿Í °°ÀÌ º¸ÀÏ °ÍÀÌ´Ù:

@if [! -p $(ROOT)/dev/initctl ]; then \ echo "Creating $(ROOT)/dev/initctl"; \ rm -f $(ROOT)/dev/initctl; \ mknod -m 600 $(ROOT)/dev/initctl p; fi

´ÙÀ½À» ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

make -e LDFLAGS=-static; make install

Sysvinit ¼³Á¤

Sysvinit°¡ µ¿ÀÛÇϱâ À§Çؼ­ ¿ì¸®´Â ¼³Á¤ ÆÄÀÏÀ» ¸¸µé¾î¾ß ÇÑ´Ù. ´ÙÀ½À» Æ÷ÇÔÇϵµ·Ï $LFS/etc/inittab ÆÄÀÏÀ» ¸¸µç´Ù:

# Begin /etc/inittab id:2:initdefault: ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now 1:2345:respawn:/sbin/sulogin # End /etc/inittab

passwd ¿Í group ÆÄÀÏÀÇ »ý¼º

¿©·¯ºÐÀÌ inittab ÆÄÀÏ¿¡¼­ º¸´Â °Íó·³ ¿ì¸®°¡ ½Ã½ºÅÛÀ» ºÎÆÃÇϸé init °¡ sulogin ÇÁ·Î±×·¥À» ½ÇÇà½ÃÅ°¸ç suloginÀº ¿©·¯ºÐ¿¡°Ô rootÀÇ Æнº¿öµå¸¦ ¹°¾îº¼ °ÍÀÌ´Ù. ÀÌ´Â ¿ì¸®°¡ LFS ½Ã½ºÅÛ »ó¿¡ Àû¾îµµ passwd ÆÄÀÏÀº °¡Áö°í ÀÖ¾î¾ß ÇÑ´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù.

´ÙÀ½À» Æ÷ÇÔÇϵµ·Ï $LFS/etc/passwd ÆÄÀÏÀ» »ý¼ºÇÑ´Ù: root:s394ul1Bkvmq2:0:0:root:/root:/bin/bash ´ÙÀ½À» Æ÷ÇÔÇϵµ·Ï $LFS/etc/group ÆÄÀÏÀ» »ý¼ºÇÑ´Ù: root::0:

À§ÀÇ ÀÎÄÚµùµÈ Æнº¿öµå ¹®ÀÚ¿­Àº lfs123 ÀÌ´Ù.

¿©·¯ºÐÀÇ LFS ½Ã½ºÅÛ¿¡ ·Î±×¿Â ÇÒ ¶§ rootÀÇ Æнº¿öµå¸¦ ¹°¾î¿Â´Ù¸é lfs123À» ÀÔ·ÂÇÏ¸é µÈ´Ù.

Bash ½©ÀÇ ¼³Ä¡

sulogin ÀÌ root Æнº¿öµå¸¦ ¹°¾î¿À°í ¿©·¯ºÐÀÌ Æнº¿öµå¸¦ ÀÔ·ÂÇß´Ù¸é ½©ÀÌ ½ÃÀÛµÇ¾ß ÇÑ´Ù. ÈçÈ÷ bash ½©ÀÌ ½ÃÀ۵ȴÙ. ±×·¯³ª ¾ÆÁ÷ ¼³Ä¡µÈ ¶óÀ̺귯¸®°¡ ÀüÇô ¾ø±â ¶§¹®¿¡ ¿ì¸®´Â Sysvinit ¿¡¼­¿Í °°ÀÌ bash ¸¦ Á¤ÀûÀ¸·Î ¸µÅ©ÇØ¾ß ÇÑ´Ù.

BashÀÇ ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù. ´ÙÀ½À» ½ÇÇàÇÏ¿© Bash¸¦ ¼³Ä¡ÇÑ´Ù:

./configure --enable-static-link make; make -e prefix=$LFS/usr install mv $LFS/usr/bin/bash $LFS/bin cd $LFS/bin; ln -s bash sh

LILO¿¡ ¿£Æ®¸® Ãß°¡

ÀÌ ÆÄƼ¼ÇÀ¸·ÎºÎÅÍ ºÎÆÃÀÌ °¡´ÉÇϱâ À§Çؼ± ¿ì¸®´Â /etc/lilo.conf ÆÄÀÏÀ» ¼öÁ¤ÇØ¾ß ÇÑ´Ù. ´ÙÀ½ ÁÙµéÀ» lilo.conf ¿¡ Ãß°¡ÇÑ´Ù:

image=<currently used image> label=<label> root=$LFS read-only

<currently used image>¸¦ ¿©·¯ºÐÀÌ ±âÁ¸ÀÇ ¸®´ª½º ½Ã½ºÅÛÀ» ºÎÆÃÇϱâ À§ÇØ »ç¿ëÇÏ´Â À̹ÌÁö ÆÄÀÏ·Î ¹Ù²Û´Ù. <label>´Â ¿©·¯ºÐÀÌ ¿øÇÏ´Â ¹«¾ùÀÌµç µÉ ¼ö ÀÖ´Ù. ³ª´Â "lfs"¶ó ĪÇß´Ù. ¿©·¯ºÐÀÌ <label>¿¡ ³Ö´Â °ÍÀÌ ºÎÆÃÇÒ ½Ã½ºÅÛÀ» °í¸£±â À§ÇØ LILO ÇÁ·ÒÇÁÆ®¿¡¼­ ¿©·¯ºÐÀÌ ÀÔ·ÂÇÏ´Â °ÍÀÌ´Ù.

ºÎÆ® ·Î´õ¸¦ °»½ÅÇϱâ À§ÇØ lilo ÇÁ·Î±×·¥À» ½ÇÇàÇÑ´Ù.

½Ã½ºÅÛ °Ë»ç

ÀÌ ÀåÀ» ³¡¸¶Ä£ ÈÄ ¿ì¸®´Â LFS ·Î ÀçºÎÆà ÇÏ¿© ½Ã½ºÅÛÀ» °Ë»çÇÒ ¼ö ÀÖÀ¸¸ç ±× ½Ã½ºÅÛÀ¸·Î ·Î±×ÀÎ ÇÒ ¼ö ÀÖ´ÂÁö¸¦ º¼ ¼ö ÀÖ´Ù. ¿©·¯ºÐÀÌ ¸®ºÎÆÃÇÑ ÈÄ LFS ½Ã½ºÅÛÀ» ½ÃÀÛÇϱâ À§Çؼ± lilo.conf ÆÄÀÏ¿¡ »ðÀÔÇß´ø label À» LILOÇÁ·ÒÇÁÆ®¿¡¼­ ÀÔ·ÂÇÑ´Ù. ±×¸®°í root Æнº¿öµå¸¦ ÀÔ·ÂÇϸé ÀÌÁ¦ bash ÇÁ·ÒÇÁÆ®¸¦ ¾ò°Ô µÉ °ÍÀÌ´Ù. ¿©·¯ºÐÀº shutdown °°Àº ÇÁ·Î±×·¥À¸·Î ½Ã½ºÅÛÀ» shutdown ½Ãų ¼ö ¾øÀ» °ÍÀÌ´Ù. ÀÌ ÇÁ·Î±×·¥ÀÌ ÀÖ±ä ÇÏÁö¸¸ À̸¦ ½ÇÇàÇÏ·Á ÇÏ¸é ´ÙÀ½°ú °°Àº ¿¡·¯°¡ ³¯ °ÍÀÌ´Ù: "You don't exist. Go away." ÀÌ ¿¡·¯ÀÇ Àǹ̴ ½Ã½ºÅÛÀÌ password ÆÄÀÏÀ» ãÀ» ¼ö ¾ø´Ù´Â °ÍÀÌ´Ù. ºñ·Ï shutdown ÇÁ·Î±×·¥ÀÌ ÇÊ¿ä·Î ÇÏ´Â ¶óÀ̺귯¸®¿¡ Á¤ÀûÀ¸·Î ¸µÅ©µÇ¾î ÀÖÁö¸¸ GNU C ¶óÀ̺귯¸®ÀÇ ÀϺÎÀÎ NSS (Name Server Switch) ¶óÀ̺귯¸®¿¡ ¿©ÀüÈ÷ ÀÇÁ¸ÇÏ°í ÀÖÀ¸¸ç ÀÌ´Â ÀÌÈÄ Àå¿¡¼­ ¼³Ä¡µÉ °ÍÀÌ´Ù. ÀÌ NSS ¶óÀ̺귯¸®´Â (ÀÌ °æ¿ì¿£) passwd ÆÄÀÏÀ» ãÀ» ¼ö ÀÖ´Â Àå¼Ò¿¡ ´ëÇÑ Á¤º¸¸¦ ³Ñ°ÜÁØ´Ù.

Áö±ÝÀº ½Ã½ºÅÛÀ» ¸®ºÎÆÃÇϱâ À§ÇØ reboot -f ¸í·ÉÀ» ¾µ ¼ö ÀÖ´Ù. ÀÌ ¸í·ÉÀº shutdown ÇÁ·Î±×·¥À» »ç¿ëÇÏ´Â Á¾·á °úÁ¤À» »ý·«ÇÏ°í °ð¹Ù·Î ¸®ºÎÆÃÀ» ÇÑ´Ù. ÆÄÀÏ ½Ã½ºÅÛÀÌ Àбâ Àü¿ëÀ¸·Î ¸¶¿îÆ®µÇ¾î Àֱ⠶§¹®¿¡ ¾î¶² ¹æ¹ýÀ¸·Îµç ÀÌ ¸®ºÎÆà ¹æ½ÄÀÌ ¿ì¸® ½Ã½ºÅÛ¿¡ Çظ¦ ³¢Ä¡Áø ¾Ê´Â´Ù (½Ã½ºÅÛÀ» ´ÙÀ½¹ø¿¡ ¸¶¿îÆ®ÇÒ ¶§, ÀÌÀü¿¡ ±ú²ýÇÏ°Ô ¾ð¸¶¿îÆ® µÇÁö ¾Ê¾ÒÀ¸¸ç ÆÄÀÏ ½Ã½ºÅÛÀ» º»·¡´ë·Î À¯ÁöÇϱâ À§Çؼ± e2fsck¸¦ ½ÇÇàÇØ¾ß ÇÑ´Ù´Â °æ°í¹®À» º¸°ÔµÉ °ÍÀÌÁö¸¸ ¸»ÀÌ´Ù).

Ä¿³Î ¼³Ä¡ ftp.kernel.org¿¡ ´ëÇÑ ÁÖÀÇ»çÇ×

¾ÕÀÇ 2Àå¿¡¼­ ³ª´Â ¿©·¯ºÐÀÌ »õ Ä¿³ÎÀ» ftp://ftp.kernel.org/ ¿¡¼­ ´Ù¿î¹ÞÀ» ¼ö ÀÖ´Ù°í ¾ê±âÇß´Ù. ±×·¯³ª ÀÌ »çÀÌÆ®´Â ¸Å¿ì ºÕºñ¸ç ÀÌ »çÀÌÆ®ÀÇ ¿î¿µÀÚµéÀº ¿©·¯ºÐÀÌ Ä¿³ÎÀ» ¿©·¯ºÐ¿¡°Ô °¡±î¿î °÷¿¡¼­ ¹Þ±â¸¦ ±ÇÀ¯ÇÑ´Ù. ¿©·¯ºÐÀº ftp://ftp.<country code>.kernel.org/·Î °¡¼­ ¹Ì·¯ »çÀÌÆ®¿¡ Á¢±ÙÇÒ ¼ö ÀÖ´Ù (ftp.ca.kernel.org ó·³).

Ä¿³Î ¼³Á¤

ÇöÀçÀÇ /usr/src/linux µð·ºÅ丮¸¦ mv /usr/src/linux /usr/src/linux-old °°Àº ¸í·ÉÀ» ½ÇÇàÇÏ¿© ´Ù¸¥ °ÍÀ¸·Î À̸§À» ¹Ù²Û´Ù. (/usr/src/linux´Â ½ÇÁ¦ µð·ºÅ丮°¡ ¾Æ´Ñ ½Éº¼¸¯ ¸µÅ©ÀÏ ¼ö ÀÖ´Ù. ¾î´À °æ¿ìµç À̸§À» º¯°æÇÑ´Ù). /usr/include/linux¿Í /usr/include/asmÀ» rm -r /usr/include/linux /usr/include/asm À» ½ÇÇàÇÏ¿© »èÁ¦ÇÑ´Ù. Ä¿³Î ¾ÐÃàÆÄÀÏÀ» /usr/src/ µð·ºÅ丮 ¾È¿¡ Ǭ´Ù (ÀÌ °úÁ¤Àº »õ·Î /usr/src/linux µð·ºÅ丮¸¦ ¸¸µç´Ù). /usr/include/linux¿Í /usr/include/asmÀ» ´ÙÀ½À» ½ÇÇàÇÏ¿© ½Éº¼¸¯ ¸µÅ©·Î ¸¸µç´Ù:

cd /usr/include ln -s ../src/linux/include/linux linux ln -s ../src/linux/include/asm-<cpu> asm

/usr/src/linux/include µð·ºÅ丮¸¦ ã¾Æ¼­ ¾î¶² asm-* µð·ºÅ丮°¡ Á¸ÀçÇÏ´ÂÁö º»´Ù. ±×¸®°ï ¿©·¯ºÐÀÇ Ç÷§Æû¿¡ ¸Â´Â °ÍÀ» °í¸¥´Ù. ¸¸¾à Intel Ç÷§ÆûÀ» »ç¿ëÇÑ´Ù¸é ln -s ../src/linux/include/asm-i386 asm À» ½ÇÇàÇÑ´Ù.

Ä¿³ÎÀ» ¼³Á¤ÇÒ ¹æ¹ýÀ» ¼±ÅÃÇÏ°í (¼³Á¤ ¹æ¹ý¿¡ ´ëÇÑ ´õ ÀÚ¼¼ÇÑ »çÇ×Àº README ÆÄÀÏÀ» ÂüÁ¶ÇÑ´Ù) ¾ÆÁ÷Àº ¾î¶² °Íµµ ¸ðµâ·Î ¼³Á¤ÇÏÁö ¾Êµµ·Ï ÇÑ´Ù. ÀÌ´Â ¿ì¸®°¡ ´çºÐ°£Àº Ä¿³Î ¸ðµâÀ» ·ÎµåÇϱâ À§ÇØ ÇÊ¿äÇÑ ¼ÒÇÁÆ®¿þ¾î¸¦ °¡Áö°í ÀÖÁö ¾Ê±â ¶§¹®ÀÌ´Ù. Ä¿³Î ¼³Á¤ÀÌ ³¡³­ ÈÄ make dep À» ½ÇÇàÇÑ´Ù. make bzImage ¸¦ ½ÇÇàÇÏ¿© Ä¿³ÎÀ» ÄÄÆÄÀÏÇÑ´Ù. arch/<cpu>/boot/bzImage ÆÄÀÏÀ» /boot µð·ºÅ丮 (ȤÀº ¿©·¯ºÐÀÇ ¸®´ª½º ½Ã½ºÅÛÀÌ Ä¿³Î À̹ÌÁö µîÀÇ ÆÄÀÏÀ» ÀúÀåÇÏ´Â °ü½À¿¡ µû¶ó¼± ´Ù¸¥ °÷À¸·Î) º¹»çÇÑ´Ù. ¼±ÅûçÇ×À¸·Î /boot/bzImage ÆÄÀÏÀ» /boot/lfskernel°ú °°Àº ´Ù¸¥ °ÍÀ¸·Î À̸§À» ¹Ù²Ü ¼ö ÀÖ´Ù. cp -av /usr/src/linux $LFS/usr/src ¸¦ ½ÇÇàÇÏ¿© Àüü Ä¿³Î ¼Ò½º Æ®¸®¸¦ LFS ÆÄƼ¼ÇÀ¸·Î º¹»çÇÑ´Ù. ´ÙÀ½À» ½ÇÇàÇÏ¿© $LFS/usr/include/linux ¿Í $LFS/usr/include/asmÀ» ½Éº¼¸¯ ¸µÅ©·Î »ý¼ºÇÑ´Ù.

cd $LFS/usr/include ln -s ../src/linux/include/linux linux ln -s ../src/linux/include/asm asm

LILOÀÇ °»½Å

/etc/lilo.conf ÆÄÀÏÀ» ¿­¾î LFS ºÎºÐÀ¸·Î °£´Ù. À̹ÌÁö À̸§À» lfskernel (ȤÀº ¿©·¯ºÐÀÌ ¹Ù²Û bzImage ÆÄÀÏÀÇ »õ À̸§) À¸·Î º¯°æÇÑ´Ù. ºÎÆ® ·Î´õ¸¦ °»½ÅÇϱâ À§ÇØ lilo¸¦ ½ÇÇàÇÑ´Ù.

½Ã½ºÅÛÀÇ °Ë»ç

½Ã½ºÅÛÀ» ¸®ºÎÆÃÇÏ¿© LFS ½Ã½ºÅÛÀ» ½ÃÀÛÇÑ´Ù. »õ·Î ¼³Ä¡µÈ Ä¿³ÎÀÌ ºñÁ¤»óÀûÀÎ µ¿ÀÛ (Å©·¡½¬ °°Àº) À» ÇÏ´ÂÁö¸¦ °Ë»çÇÑ´Ù.

±âº»ÀûÀÎ ½Ã½ºÅÛ ¼ÒÇÁÆ®¿þ¾îÀÇ ¼³Ä¡

ÀÌ Àå¿¡¼­ ¿ì¸®´Â ±âº»ÀûÀÎ ¸®´ª½º ½Ã½ºÅÛ¿¡ ÇÊ¿äÇÑ ¸ðµç ¼ÒÇÁÆ®¿þ¾î¸¦ ¼³Ä¡ÇÒ °ÍÀÌ´Ù. ÀÌ ÀåÀÌ ³¡³ª¸é ¿©·¯ºÐÀº ¿ÏÀüÇÏ°Ô µ¿ÀÛÇÏ´Â ¸®´ª½º ½Ã½ºÅÛÀ» °®°Ô µÈ´Ù. ³ª¸ÓÁö ÀåµéÀº ³×Æ®¿öÅ· ¼³Á¤À̳ª ÀÎÅÍ³Ý ¼­¹ö + Ŭ¶óÀ̾ðÆ® (telnet, ftp, http, email), ÀÎÅÍ³Ý ¼³Á¤, X À©µµ¿ì ½Ã½ºÅÛ °°Àº ¼±ÅÃÀûÀÎ ÁÖÁ¦µé¿¡ ´ëÇØ ´Ù·ê °ÍÀÌ´Ù. ¿©·¯ºÐÀº Àç·®²¯ ±× ÀåµéÀ» ¶Ù¾î³Ñ¾îµµ µÈ´Ù. ¿¹¸¦ µé¾î LFS ½Ã½ºÅÛÀ» ³×Æ®¿÷¿¡ ¿¬°áÇÒ °èȹÀÌ ¾ø´Ù¸é ÀÎÅͳÝÀ» ¼³Á¤ÇÏ´Â °ÍÀº °ÅÀÇ ÇÊ¿äÄ¡ ¾ÊÀ» °ÍÀÌ´Ù.

¸ðµç ±âº»ÀûÀÎ ½Ã½ºÅÛ ¼ÒÇÁÆ®¿þ¾î¸¦ ¼³Ä¡Çϱâ Àü¿¡ ¹Ì¸® ¼³Ä¡µÇ¾î ÀÖ¾î¾ß ÇÒ ¸¹Àº ÆÐÅ°ÁöµéÀÌ ÀÖ´Ù. ÀüÇüÀûÀÎ ¼³Á¤ ½ºÅ©¸³Æ®µéÀº rm À̳ª grep, sed, mv, cat, cp, diff °°Àº ÇÁ·Î±×·¥µéÀ» ÇÊ¿ä·Î ÇÑ´Ù. ¿©·¯ºÐÀº ¾ÐÃà ÆÄÀÏÀ» tar ¿Í gzip À¸·Î ¹­ÀÎ ÆÄÀÏÀ» Ç®¾î¾ß ÇÏ¸ç ¿ÀºêÁ§Æ® ÆÄÀÏ·Î ÄÄÆÄÀÏÇÑ ÈÄ ÇÁ·Î±×·¥À» ¸µÅ©½ÃÄÑ¾ß ÇÑ´Ù. ÀÌ ¸ðµç (¸î°³¸¦ ´õ Æ÷ÇÔÇؼ­) ÇÁ·Î±×·¥µéÀº ´Ù¸¥ ¾î¶² °ÍÀ» ¼³Ä¡ÇÒ ¼ö ÀÖ±â Àü¿¡ »ç¿ëÇÒ ¼ö ÀÖ¾î¾ß ÇÑ´Ù. ÀÌ ÇÁ·Î±×·¥µéÀº Á¤ÀûÀ¸·Î ¸µÅ©µÉ °ÍÀÌ´Ù. ±× ÀÌÀ¯´Â ¿©·¯ºÐÀÇ ±âÁ¸ÀÇ ¸®´ª½º ½Ã½ºÅÛÀÌ LFS ½Ã½ºÅÛ¿¡ ¼³Ä¡ÇÏ·Á´Â °Í°ú ´Ù¸¥ ¹öÀüÀÇ C ¶óÀ̺귯¸®¸¦ °¡Áö°í ÀÖÀ» ¼ö Àֱ⠶§¹®ÀÌ´Ù. ÀÌ Àå¿¡¼­ ¼³Ä¡ÇÏ´Â ÇÁ·Î±×·¥µéÀº ±âÁ¸ÀÇ ¸®´ª½º ½Ã½ºÅÛÀÇ C ¶óÀ̺귯¸®¿¡ ¸µÅ©µÉ °ÍÀÌ´Ù. ÀÌ°ÍÀº ÀÌ ÇÁ·Î±×·¥µéÀ» LFS ½Ã½ºÅÛ¿¡¼­ ½ÇÇàÇÏ´Â °æ¿ì ¶óÀ̺귯¸® Ãæµ¹À» ÀÏÀ¸Å³ ¼ö ÀÖ´Ù. µû¶ó¼­ ¿ì¸®´Â ÀÌ ÇÁ·Î±×·¥µéÀ» Á¤ÀûÀ¸·Î ¸µÅ©ÇØ¾ß ÇÑ´Ù. ±âº»ÀûÀÎ ½Ã½ºÅÛ ¼ÒÇÁÆ®¿þ¾îµéÀ» ¼³Ä¡ÇÏ´Â µ¿¾È ¿ì¸®´Â Á¤ÀûÀ¸·Î ¸µÅ©µÈ ¼ÒÇÁÆ®¿þ¾îµéÀ» ´Ù½Ã ¼³Ä¡ÇÏ¿© LFS ½Ã½ºÅÛÀÇ C ¶óÀ̺귯¸®¿¡ µ¿ÀûÀ¸·Î ¸µÅ©µÇµµ·Ï ÇÒ °ÍÀÌ´Ù.

µð¹ö±ë ½Éº¼¿¡ ´ëÇÏ¿©

¸ðµç ÇÁ·Î±×·¥À̳ª ¹ÙÀ̳ʸ®´Â ±âº»ÀûÀ¸·Î µð¹ö±ë ½Éº¼À» Æ÷ÇÔÇÏ¿© ÄÄÆÄÀϵȴÙ. ÀÌ´Â ¿©·¯ºÐÀÌ ÇÁ·Î±×·¥À̳ª ¶óÀ̺귯¸®¸¦ µð¹ö°Å¸¦ ÅëÇØ ½ÇÇàÇÒ ¼ö ÀÖÀ¸¸ç µð¹ö°ÅÀÇ Ãâ·Â¹°ÀÌ Á» ´õ »ç¿ëÀÚ¿¡°Ô ÆíÇÏ°Ô µÈ´Ù´Â °ÍÀ» ¶æÇÑ´Ù. ÀÌ µð¹ö±ë ½Éº¼µéÀº ¶ÇÇÑ ÇÁ·Î±×·¥À̳ª ¶óÀ̺귯¸®ÀÇ Å©±â¸¦ ¸Å¿ì Å©°Ô ÇÑ´Ù. ÀÌ ¹®¼­´Â µð¹ö±ë ½Éº¼ ¾øÀÌ ¼ÒÇÁÆ®¿þ¾î¸¦ ¼³Ä¡ÇÏÁø ¾Ê´Â´Ù (¸¹Àº µ¶ÀÚµéÀÌ µð¹ö±ë ¼ÒÇÁÆ®¿þ¾î¸¦ »ç¿ëÇÏ´ÂÁö ¾ÊÇÏ´ÂÁö¸¦ ³»°¡ ¾ËÁö ¸øÇϱ⠶§¹®¿¡). ´ë½Å¿¡ ¿©·¯ºÐÀº ¿øÇÒ°æ¿ì strip ÇÁ·Î±×·¥À¸·Î ±× ½Éº¼µéÀ» Á÷Á¢ Á¦°ÅÇÒ ¼ö ÀÖ´Ù.

¹ÙÀ̳ʸ® (a.out À̳ª ELF ¹ÙÀ̳ʸ®¿©¾ß ÇÑ´Ù) ·ÎºÎÅÍ µð¹ö±ë ½Éº¼À» Á¦°ÅÇϱâ À§Çؼ± strip --strip-debug filename À» ½ÇÇàÇÑ´Ù. ¿©·¯ ÆÄÀϵ鿡¼­ µð¹ö±ë ½Éº¼À» Á¦°ÅÇÏ°í ½Í´Ù¸é ¿ÍÀϵå Ä«µå ¹®ÀÚ¸¦ ¾²¸é µÈ´Ù (strip --strip-debug $LFS/usr/bin/* ¿Í °°ÀÌ).

¿©·¯ºÐÀÌ µð¹ö±ë ½Éº¼ÀÌ Å« Â÷À̸¦ ¸¸µå´ÂÁö ¾Ë°í ½Í´Ù¸é ¾Æ·¡¿¡ Åë°è°¡ ÀÖ´Ù:

µð¹ö±ë ½Éº¼À» Æ÷ÇÔÇÏ¿© Á¤ÀûÀ¸·Î ¸µÅ©µÈ Bash ¹ÙÀ̳ʸ®: 2.3MB µð¹ö±ë ½Éº¼ ¾øÀÌ Á¤ÀûÀ¸·Î ¸µÅ©µÈ Bash ¹ÙÀ̳ʸ®: 645KB µð¹ö±ë ½Éº¼À» Æ÷ÇÔÇÏ¿© µ¿ÀûÀ¸·Î ¸µÅ©µÈ Bash ¹ÙÀ̳ʸ®: 1.2MB µð¹ö±ë ½Éº¼ ¾øÀÌ µ¿ÀûÀ¸·Î ¸µÅ©µÈ Bash ¹ÙÀ̳ʸ®: 478KB µð¹ö±ë ½Éº¼À» Æ÷ÇÔÇÑ $LFS/usr/lib (glibc ¿Í gcc ÆÄÀϵé): 87MB µð¹ö±ë ½Éº¼ÀÌ ¾ø´Â $LFS/usr/lib (glibc ¿Í gcc ÆÄÀϵé): 16MB

»ç¿ëÇÏ´Â ÄÄÆÄÀÏ·¯¿Í µ¿ÀûÀ¸·Î ÇÁ·Î±×·¥À» ¸µÅ©½ÃÅ°±â À§ÇØ ¾²ÀÌ´Â C ¶óÀ̺귯¸®ÀÇ ¹öÀü¿¡ µû¶ó Å©±â°¡ ´Ù¸¦ ¼ö ÀÖÀ¸³ª µð¹ö±ë ½Éº¼À» Æ÷ÇÔÇÑ °Í°ú ±×·¸Áö ¾ÊÀº °ÍÀ» ºñ±³ÇÑ´Ù¸é ¿©·¯ºÐÀÇ °á°ú´Â ºñ½ÁÇÒ °ÍÀÌ´Ù. ÀÌ ÀåÀ» ³¡³»°í ¸ðµç LFS ¹ÙÀ̳ʸ®µé°ú ¶óÀ̺귯¸®µé¿¡¼­ µð¹ö±ë ½Éº¼À» Á¦°ÅÇÑ ÈÄ ³ª´Â 102MB ¸¦ ¾à°£ ³ÑÀº µð½ºÅ© °ø°£À» ´Ù½Ã ¾ò¾ú´Ù. ¸Å¿ì Â÷ÀÌ°¡ Å©´Ù. ±× Â÷ÀÌ´Â ¸ðµç °ÍÀ» ¼³Ä¡ÇÏ°Ô µÇ´Â ÀÌ ¹®¼­ÀÇ ¸¶Áö¸·¿¡ °°Àº ÀÏÀ» ÇßÀ» ¶§ ´õ¿í Ä¿Áú °ÍÀÌ´Ù.

±âº»ÀûÀÎ ½Ã½ºÅÛ ¼ÒÇÁÆ®¿þ¾î ¼³Ä¡¸¦ À§ÇÑ LFS ½Ã½ºÅÛÀÇ Áغñ BinutilsÀÇ ¼³Ä¡

binutilsÀÇ ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

./configure make -e LDFLAGS=-all-static make -e prefix=$LFS/usr install

Bzip2ÀÇ ¼³Ä¡

Bzip2ÀÇ ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù. ÅؽºÆ® ¿¡µðÅÍ¿¡¼­ Makefile ÆÄÀÏÀ» ¼öÁ¤ÇÑ´Ù. $(CC) $(CFLAGS) -o ·Î ½ÃÀÛÇÏ´Â ÁÙÀ» ã´Â´Ù. ±× ºÎºÐÀ» $(CC) $(CFLAGS) $(LDFLAGS) -o ·Î ¼öÁ¤ÇÑ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

make -e LDFLAGS=-static make -e PREFIX=$LFS/usr install cd $LFS/usr/bin mv bunzip2 bzip2 $LFS/bin

DiffutilsÀÇ ¼³Ä¡

diffutilsÀÇ ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

./configure make -e LDFLAGS=-static make -e prefix=$LFS/usr install

ÀÌ ÆÐÅ°Áö´Â ƯÁ¤ Ç÷§Æû¿¡¼­ Á¤Àû ¸µÅ©¿¡ ¹®Á¦¸¦ ÀÏÀ¸Å²´Ù°í ¾Ë·ÁÁ® ÀÖ´Ù. ¿©·¯ºÐÀÌ ÀÌ ÆÐÅ°Áö¸¦ ÄÄÆÄÀÏÇϴµ¥ ¹®Á¦¸¦ °Þ´Â´Ù¸é ¼öÁ¤µÈ ÆÐÅ°Áö¸¦ ¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù.

FileutilsÀÇ ¼³Ä¡

fileutilsÀÇ ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

./configure --disable-nls make -e LDFLAGS=-static make -e prefix=$LFS/usr install cd $LFS/usr/bin mv chgrp chmod chown cp dd df ln ls mkdir mknod mv rm rmdir sync $LFS/bin

ÇÊ¿äÇÑ °æ¿ì ±âÁ¸ÀÇ ½Ã½ºÅÛ¿¡ GCC ¼³Ä¡Çϱâ

Glibc-2.1.3À» ÄÄÆÄÀÏÇϱâ À§Çؼ­´Â gcc-2.95.2°¡ ¼³Ä¡µÇ¾î ÀÖ¾î¾ß ÇÑ´Ù. 2.8 ÀÌÈÄÀÇ ¾î¶² ¹öÀüÀÌ¶óµµ °¡´ÉÇÏÁö¸¸ 2.95.2¸¦ ÃßõÇÑ´Ù. ¸¹Àº glibc-2.1 ±â¹ÝÀÇ ½Ã½ºÅÛÀº gcc-2.7.2.3ÀÌ ¼³Ä¡µÇ¾î ÀÖÀ¸¸ç ÀÌ ÄÄÆÄÀÏ·¯·Î´Â glibc-2.1À» ÄÄÆÄÀÏÇÒ ¼ö ¾ø´Ù. µû¶ó¼­ ¿ì¸®´Â ±âÁ¸ÀÇ ½Ã½ºÅÛ¿¡µµ gcc-2.95.2¸¦ ¼³Ä¡ÇÒ °ÍÀÌ´Ù. ±×·¯³ª ±âÁ¸ÀÇ ÄÄÆÄÀÏ·¯¸¦ µ¤¾î¾º¿ìÁø ¾ÊÀ» °ÍÀÌ´Ù. gcc¸¦ ¿©·¯ºÐÀÇ ½Ã½ºÅÛ¿¡ ¼³Ä¡Çϱâ Àü¿¡ ÀÌ°ÍÀÌ ÇÊ¿äÇÑÁö È®½ÇÈ÷ °áÁ¤ÇØ¾ß ÇÑ´Ù. ±âÁ¸ÀÇ °ÍÀÇ ¹öÀü ¹øÈ£°¡ 2.8 ÀÌ»óÀÎÁö º¸±â À§Çؼ­ gcc --version ¸¦ ½ÇÇàÇÑ´Ù. ¸¸¾à ±×·¸Áö ¾Ê´Ù¸é ¿©·¯ºÐÀº gcc-2.95.2¸¦ ¼³Ä¡ÇØ¾ß ÇÑ´Ù. ÈÄ¿¡ glibc¸¦ ÄÄÆÄÀÏÇϴµ¥ ¾î·Á¿òÀ» °Þ´Â´Ù¸é ¾î¶µç gcc-2.95.2¸¦ ¼³Ä¡ÇÏ±æ ¿øÇÏ°Ô µÉ °ÍÀÌ´Ù.

GCC ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

mkdir $LFS/usr/src/gcc-build; cd $LFS/usr/src/gcc-build ../gcc-2.95.2/configure --prefix=/usr/gcc2952 \ --with-local-prefix=/usr/gcc2952 --with-gxx-include-dir=/usr/gcc2952/include/g++ \ --enable-shared --enable-languages=c,c++ make bootstrap; make install

LFS ½Ã½ºÅÛ¿¡ GCC¸¦ ¼³Ä¡Çϱâ

GCC ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

mkdir $LFS/usr/src/gcc-build;cd $LFS/usr/src/gcc-build ../gcc-2.95.2/configure --enable-languages=c --disable-nls make -e LDFLAGS=-static bootstrap make -e prefix=$LFS/usr local_prefix=$LFS/usr install

ÇÊ¿äÇÑ ½Éº¼¸¯ ¸µÅ©µéÀÇ »ý¼º

¸ðµç ÇÁ·Î±×·¥µéÀÌ ÄÄÆÄÀÏ·¯¿Í ÇÁ¸®-ÇÁ·Î¼¼¼­¸¦ ãÀ» ¼ö ÀÖµµ·Ï Çϱâ À§Çؼ­ ¸î°¡Áö ½Éº¼¸¯ ¸µÅ©°¡ ÇÊ¿äÇÏ´Ù. ¸î¸î ÇÁ·Î±×·¥Àº cc ÇÁ·Î±×·¥À» ½ÇÇàÇÏ°í ´Ù¸¥ °ÍµéÀº gcc ÇÁ·Î±×·¥À» ½ÇÇàÇϸç, ¸î¸î ÇÁ·Î±×·¥Àº /lib (LFS ½Ã½ºÅÛ¿¡¼­ÀÇ /usr/lib) ¿¡ cpp ÇÁ·Î±×·¥ÀÌ ÀÖ±æ ¿¹»óÇÏÁö¸¸ ´Ù¸¥ °ÍµéÀº /usr/bin ¾Æ·¡¿¡ ÀÖ±æ ¿¹»óÇÑ´Ù.

¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ½Éº¼¸¯ ¸µÅ©µéÀ» ¸¸µç´Ù:

cd $LFS/lib; ln -s ../usr/lib/gcc-lib/<host>/2.95.2/cpp cpp cd $LFS/usr/lib; ln -s gcc-lib/<host>/2.95.2/cpp cpp cd $LFS/usr/bin; ln -s gcc cc

<host>¸¦ gcc-2.95.2 ÆÄÀϵéÀÌ ¼³Ä¡µÈ µð·ºÅ丮 (³» °æ¿ì¿£ i686-unknown-linux)·Î ´ëüÇÑ´Ù. ¿©·¯ºÐÀº ¾Æ¸¶ µÎ °³ÀÇ ¼­·Î ´Ù¸¥ µð·ºÅ丮¸¦ ¹ß°ßÇÒ °ÍÀÌ´Ù.

GlibcÀÇ ¼³Ä¡

glibc-crypt ÆÐÅ°Áö¿¡ ´ëÇÑ ÁÖÀÇ»çÇ×:

-*-*-*-*-*- ÇÁ¶û½º, ·¯½Ã¾Æ ¹Ì±¹ µîÀÇ ÀϺΠ±¹°¡µéÀÌ ¾Ïȣȭ ¼ÒÇÁÆ®¿þ¾îÀÇ »ç¿ë°ú ¹èÆ÷¸¦ ¸Å¿ì ¾ö°ÝÈ÷ ±ÔÁ¦ÇÏ°í Àֱ⠶§¹®¿¡ ÀÌ add-onÀº GNU C ¶óÀ̺귯¸®ÀÇ ÁÖ ¹èÆ÷ÆÇ ¾È¿¡ Æ÷ÇÔµÇÁö ¾Ê´Â´Ù. ´õ ÀÚ¼¼ÇÑ »çÇ×Àº ¸Þ´º¾óÀÇ "Legal Problems" ºÎºÐÀ» Àб⠹ٶõ´Ù. Ưº°È÷, ¹Ì±¹Àº ÀÌ ¼ÒÇÁÆ®¿þ¾î¸¦ ¶óÀ̼¾½º ¾øÀÌ ¹Ì±¹ ¹ÛÀ¸·Î À¯ÃâÇÏ´Â °ÍÀ» - ÀÎÅͳÝÀ» ÅëÇÏ´Â °ÍÀ» Æ÷ÇÔÇÏ¿© - Çã°¡ÇÏÁö ¾Ê´Â´Ù. µû¶ó¼­ ¿©·¯ºÐÀÌ ¹Ì±¹ ¹Û¿¡ ÀÖ´Ù¸é ÀÌ add-onÀ» FSFÀÇ °ø½Ä FTP »çÀÌÆ®ÀÎ ftp.gnu.org·ÎºÎÅÍ ¹ÞÁö ¸»±æ ¹Ù¶õ´Ù. ÀÌ ¼ÒÇÁÆ®¿þ¾î´Â ¿ÏÀüÈ÷ ¹Ì±¹ ¹Û¿¡¼­ °³¹ßµÇ¾ú´Ù. -*-*-*-*-*-

"ÀÌ ¼ÒÇÁÆ®¿þ¾î"´Â ftp://ftp.gwdg.de/pub/linux/glibc/¿¡ ÀÖ´Â glibc-crypt ÆÐÅ°Áö¸¦ °¡¸®Å²´Ù. ÀÌ ¹ý±Ô´Â ´ÜÁö ¹Ì±¹¿¡ »ìÁö ¾Ê´Â »ç¶÷µé¿¡°Ô¸¸ Àû¿ëµÈ´Ù. DES ¼ÒÇÁÆ®¿þ¾î¸¦ °¡Áö°í µé¾î¿À´Â °ÍÀÌ ±ÔÁ¦µÇÁö´Â ¾ÊÀ¸¹Ç·Î ¿©·¯ºÐÀÌ ¹Ì±¹ ³»¿¡ »ì°í ÀÖ´Ù¸é À§ÀÇ µ¶ÀÏ »çÀÌÆ®·ÎºÎÅÍ ÀÌ ¼ÒÇÁÆ®¿þ¾î¸¦ ±¸ÇÒ ¼ö ÀÖ´Ù.

GlibcÀÇ ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù. glibc-crypt¿Í glibc-linuxthreads ¾ÐÃàÆÄÀÏÀ» ¾ÐÃàÀÌ Ç®¸° glibc µð·ºÅ丮·Î º¹»çÇÑ´Ù. ±×°÷¿¡¼­ glibc-crypt¿Í glibc-linuxthreadsÀÇ ¾ÐÃàÀ» Ǭ´Ù. ±×·¯³ª ±× µð·ºÅ丮·Î´Â À̵¿ÇÏÁö ¾Ê´Â´Ù. ´Ü½Ã tar¿Í gzipÀ¸·Î ¾ÐÃุÀ» Ǭ´Ù. ¾Æ·¡¸¦ Æ÷ÇÔÇÏ´Â configparms ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

# Begin configparms slibdir=/lib sysconfdir=/etc # End configparms

¿©·¯ºÐÀÇ ±âÁ¸ ½Ã½ºÅÛÀÌ ÀÌ¹Ì glibc¸¦ ÄÄÆÄÀÏÇϱ⿡ Àû´çÇÑ ¹öÀüÀÇ gcc¸¦ °¡Áö°í ÀÖ´Ù¸é ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

mkdir $LFS/usr/src/glibc-build;cd $LFS/usr/src/glibc-build ../glibc-2.1.3/configure --enable-add-ons make; make install_root=$LFS install

Àû´çÇÑ ¹öÀüÀÇ gcc°¡ ¾ø¾î¼­ gcc-2.95.2¸¦ ±âÁ¸ ½Ã½ºÅÛ¿¡ ¼³Ä¡Çß´Ù¸é ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

mkdir $LFS/usr/src/glibc-build; cd $LFS/usr/src/glibc-build CC=/usr/gcc2952/bin/gcc ../glibc-2.1.3/configure --enable-add-ons make; make install_root=$LFS install

ÀÌÀüÀÇ NSS ¶óÀ̺귯¸® ÆÄÀϵéÀÇ º¹»ç

¿©·¯ºÐÀÇ ±âÁ¸ ¸®´ª½º ½Ã½ºÅÛÀÌ libc-2.0.x¸¦ »ç¿ëÇÑ´Ù¸é NSS ¶óÀ̺귯¸® ÆÄÀϵéÀ» LFS ÆÄƼ¼ÇÀ¸·Î º¹»çÇØ¾ß ÇÑ´Ù. Á¤ÀûÀ¸·Î ¸µÅ©µÈ ÇÁ·Î±×·¥µé Áß ÀϺδ ¿©ÀüÈ÷ NSS ¶óÀ̺귯¸®¿¡ ÀÇÁ¸Çϸç username, userid ±×¸®°í groupid¸¦ ã´Â ÇÁ·Î±×·¥µéÀÌ Æ¯È÷ ±×·¸´Ù. ls -l libc.so.*¸¦ ½ÇÇàÇÏ¿© ±âÁ¸ÀÇ ¸®´ª½º ½Ã½ºÅÛÀÌ ¾î¶² ¹öÀüÀÇ C ¶óÀ̺귯¸®¸¦ »ç¿ëÇÏ´ÂÁö º¼ ¼ö ÀÖ´Ù.

°á°ú°¡ /lib/libc.so.6 -> libc-2.0.7.so °°Àº °ÍÀ̶ó¸é ½Ã½ºÅÛÀº glibc-2.0À» »ç¿ëÇÏ´Â °ÍÀÌ´Ù.

°á°ú°¡ /lib/libc.so.6 -> libc-2.1.2.so °°Àº °ÍÀ̶ó¸é ½Ã½ºÅÛÀº glibc-2.1À» »ç¿ëÇÏ´Â °ÍÀÌ´Ù.

¿©·¯ºÐÀÇ ½Ã½ºÅÛÀÌ libc-2.0.x.so ÆÄÀÏ (x´Â 7 °°Àº ¸¶ÀÌÅ©·Î ¹öÀü ¹øÈ£) À» °¡Áö°í ÀÖ´Ù¸é cp -av /lib/*nss* $LFS/lib ¸¦ ½ÇÇàÇÏ¿© NSS ¶óÀ̺귯¸® ÆÄÀϵéÀ» º¹»çÇÑ´Ù.

grepÀÇ ¼³Ä¡

grepÀÇ ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

./configure --disable-nls make -e LDFLAGS=-static make -e prefix=$LFS/usr install

ÀÌ ÆÐÅ°Áö´Â ƯÁ¤ Ç÷§Æû¿¡¼­ Á¤Àû ¸µÅ© ¿¡·¯¸¦ ³½´Ù°í ¾Ë·ÁÁ® ÀÖ´Ù. ¿©·¯ºÐÀÌ ÀÌ ÆÐÅ°Áö¸¦ ÄÄÆÄÀÏÇÒ ¶§ ¹®Á¦¸¦ °Þ´Â´Ù¸é ¼öÁ¤µÈ ÆÐÅ°Áö¸¦ ¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù.

gzipÀÇ ¼³Ä¡

gzipÀÇ ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

./configure make -e LDFLAGS=-static make -e prefix=$LFS/usr install cd $LFS/usr/bin mv gunzip gzip $LFS/bin

ÀÌ ÆÐÅ°Áö´Â ƯÁ¤ Ç÷§Æû¿¡¼­ ÄÄÆÄÀÏ ¹®Á¦¸¦ ÀÏÀ¸Å²´Ù°í ¾Ë·ÁÁ® ÀÖ´Ù. ¿©·¯ºÐÀÌ ÀÌ ÆÐÅ°Áö¸¦ ÄÄÆÄÀÏÇÒ ¶§ ¹®Á¦¸¦ °Þ´Â´Ù¸é ¼öÁ¤µÈ ÆÐÅ°Áö¸¦ ¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù.

MakeÀÇ ¼³Ä¡

MakeÀÇ ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

./configure make -e LDFLAGS=-static make -e prefix=$LFS/usr install

SedÀÇ ¼³Ä¡

sedÀÇ ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

./configure make -e LDFLAGS=-static make -e prefix=$LFS/usr install mv $LFS/usr/bin/sed $LFS/bin

ÀÌ ÆÐÅ°Áö´Â ƯÁ¤ Ç÷§Æû¿¡¼­ Á¤Àû ¸µÅ© ¹®Á¦¸¦ ÀÏÀ¸Å²´Ù°í ¾Ë·ÁÁ® ÀÖ´Ù. ¿©·¯ºÐÀÌ ÀÌ ÆÐÅ°Áö¸¦ ÄÄÆÄÀÏÇÒ ¶§ ¹®Á¦¸¦ °Þ´Â´Ù¸é ¼öÁ¤µÈ ÆÐÅ°Áö¸¦ ¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù.

Sh-utilsÀÇ ¼³Ä¡

sh-utilsÀÇ ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

./configure --disable-nls make -e LDFLAGS=-static make -e prefix=$LFS/usr install cd $LFS/usr/bin mv date echo false pwd stty su true uname hostname $LFS/bin

TarÀÇ ¼³Ä¡

tarÀÇ ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

./configure --disable-nls make -e LDFLAGS=-static make -e prefix=$LFS/usr install mv $LFS/usr/bin/tar $LFS/bin

TextutilsÀÇ ¼³Ä¡

textutilsÀÇ ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

./configure --disable-nls make -e LDFLAGS=-static make -e prefix=$LFS/usr install mv $LFS/usr/bin/cat $LFS/bin

Util-linuxÀÇ ¼³Ä¡

util-linuxÀÇ ¾ÐÃàÆÄÀÏÀ» Ǭ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

./configure cd lib;make cd ../mount;make -e LDFLAGS=-static cp mount umount $LFS/bin cp swapon $LFS/sbin

±âº»ÀûÀÎ ½Ã½ºÅÛ ¼ÒÇÁÆ®¿þ¾îÀÇ ¼³Ä¡

¸ðµç ¼ÒÇÁÆ®¿þ¾îµéÀÇ ¼³Ä¡´Â ¸Å±¸ Á÷°üÀûÀÌ¸ç ¿©·¯ºÐÀº °¢ ÆÐÅ°Áö¿¡ ´ëÇÑ ÀϹÝÀûÀÎ ¼³Ä¡ ¹æ¹ýÀ» ¼³¸íÇÏ°í ƯÁ¤ ÆÐÅ°Áö°¡ ´Ù¸¥ ¼³Ä¡ ¹æ¹ýÀ» ¾´´Ù¸é ±× ¹æ¹ýÀ» ¼³¸íÇÏ´Â °ÍÀÌ ÈξÀ ½±°í ª´Ù°í »ý°¢ÇÒ °ÍÀÌ´Ù. ÀÌ ¹®Á¦¿¡ ´ëÇØ ³ªµµ ¿©·¯ºÐÀÇ ÀÇ°ß¿¡ Âù¼ºÇÏÁö¸¸ ³ª´Â ¸ðµç ÆÐÅ°Áö¿¡ ¿Ïº®ÇÑ °úÁ¤À» ¼³¸íÇÏ´Â °ÍÀ» ¼±ÅÃÇß´Ù. ÀÌ°ÍÀº ´Ü¼øÈ÷ °¡´ÉÇÒ Áöµµ ¸ð¸¦ ¿¡·¯³ª È¥µ·À» ¸·±â À§ÇÔÀÌ´Ù. ÀÌ ¹®¼­¸¦ ´õ ÁøÇàÇØ °¡±â Àü¿¡ ¿©·¯ºÐÀº ½Ã½ºÅÛÀ» Àç½ÃÀÛÇÏ¿© LFS ½Ã½ºÅÛÀ¸·Î ºÎÆÃÇØ¾ß ÇÑ´Ù. ±×·¯³ª ±×·¯±â Àü¿¡ ¾î¶² ÆÄƼ¼ÇÀÌ ½º¿Ò ÆÄƼ¼ÇÀ¸·Î »ç¿ëµÇ´ÂÁö ¾Ë¾Æ¾ß ÇÑ´Ù. ÀÌ Á¤º¸´Â ÀϹÝÀûÀ¸·Î /etc/fstab ÆÄÀÏ¿¡¼­ ãÀ» ¼ö ÀÖ´Ù. /dev/hda6 none swap sw 0 0 °ú ºñ½ÁÇÑ ÁÙÀ» ÀÌ ÆÄÀÏ¿¡ ÀÖ´ÂÁö ã¾Æº»´Ù.

±× ÁÙÀÇ 4¹ø° Çʵå´Â ¸¸µå½Ã 'sw'¿©¾ß ÇÑ´Ù. ±× ÁÙÀº ½º¿Ò ÆÄƼ¼ÇÀ» ³ªÅ¸³½´Ù. ¿©·¯ºÐÀÌ ±â¾ïÇؾßÇÒ °ÍÀº ±× À§Ä¡ÀÌ´Ù (³» °æ¿ì¿£ /dev/hda6ÀÌÁö¸¸ ¿©·¯ºÐÀÇ ½Ã½ºÅÛ¿¡¼± ´Ù¸¦ ¼ö ÀÖ´Ù). ¾î¶² ÆÄƼ¼ÇÀÌ ½º¿Ò ÆÄƼ¼ÇÀÎÁö ¾Ë¾ÒÀ¸¸é ÄÄÇ»Å͸¦ ¸®ºÎÆÃÇÏ¿© ¿©±âºÎÅÍ °è¼ÓÇØ ³ª°¡µµ µÈ´Ù.

ÆÄƼ¼ÇÀ» À縶¿îÆ®ÇÏ°í ½º¿Ò È°¼ºÈ­Çϱâ

¼ÒÇÁÆ®¿þ¾î¸¦ ¼³Ä¡Çϱâ Àü¿¡ ¿ì¸®´Â ÆÄƼ¼ÇÀ» ÀÐ°í¾²±â ¸ðµå·Î ´Ù½Ã ¸¶¿îÆ®ÇØ¾ß ÇÑ´Ù. ¶ÇÇÑ ±Ô¸ð°¡ Å« ÄÄÆÄÀÏ °úÁ¤ (gccÀÇ ÄÄÆÄÀÏ Ã³·³) µ¿¾È ¸Þ¸ð¸® ºÎÁ· ¹®Á¦°¡ ¹ß»ýÇÏÁö ¾Êµµ·Ï ½º¿Ò ÆÄƼ¼ÇÀ» È°¼ºÈ­ÇØ¾ß ÇÑ´Ù.

mount -o remount,rw / / /sbin/swapon <swap device>

GCCÀÇ ¼³Ä¡

GCCÀÇ ¾ÐÃà ÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

mkdir $LFS/usr/src/gcc-build;cd $LFS/usr/src/gcc-build ../gcc-2.95.2/configure --with-gxx-include-dir=/usr/include/g++ \ --enable-shared --enable-languages=c,c++ make bootstrap; make install

BisonÀÇ ¼³Ä¡

bisonÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure --datadir=/usr/share/bison make; make install

MawkÀÇ ¼³Ä¡

mawkÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install cd /usr/bin; ln -s mawk awk

FindutilsÀÇ ¼³Ä¡

findutilsÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

ÀÌ ÆÐÅ°Áö´Â ÄÄÆÄÀÏ ¹®Á¦¸¦ ÀÏÀ¸Å²´Ù°í ¾Ë·ÁÁ® ÀÖ´Ù. ¿©·¯ºÐÀÌ ÀÌ ÆÐÅ°Áö¸¦ ÄÄÆÄÀÏÇÒ ¶§ ¹®Á¦¸¦ °Þ´Â´Ù¸é ¼öÁ¤µÈ ÆÐÅ°Áö¸¦ ¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù.

TermcapÀÇ ¼³Ä¡

TermcapÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

NcursesÀÇ ¼³Ä¡

ncursesÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure --with-shared make; make install

LessÀÇ ¼³Ä¡

LessÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install mv /usr/bin/less /bin

PerlÀÇ ¼³Ä¡

PerlÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./Configure make; make install

¿ì¸®´Â 'make test' °úÁ¤À» »ý·«ÇÑ´Ù´Â °ÍÀ» ÁÖÀÇÇÑ´Ù. ÀÌ´Â ÀÌ ¼ø°£¿¡ ¾ÆÁ÷ ½Ã½ºÅÛÀÌ perl Å×½ºÆ®¸¦ ½ÇÇàÇÒ Áغñ°¡ µÇÁö ¾Ê¾Ò±â ¶§¹®ÀÌ´Ù. Áö±ÝÀº ¿ì¸®´Â perl ÄÄÆÄÀÏÀÌ Àß µÇ¾ú´Ù°í ¹ÏÀ» °ÍÀÌ´Ù.

M4ÀÇ ¼³Ä¡

M4ÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

TexinfoÀÇ ¼³Ä¡

TexinfoÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

AutoconfÀÇ ¼³Ä¡

AutoconfÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

AutomakeÀÇ ¼³Ä¡

AutomakeÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make install

BashÀÇ ¼³Ä¡

BashÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install mv /usr/bin/bash /bin

FlexÀÇ ¼³Ä¡

FlexÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

BinutilsÀÇ ¼³Ä¡

BinutilsÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

Bzip2ÀÇ ¼³Ä¡

Bzip2ÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

make; make install cd /usr/bin; mv bunzip2 bzip2 /bin

DiffutilsÀÇ ¼³Ä¡

DiffutilsÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

E2fsprogsÀÇ ¼³Ä¡

E2fsprogsÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install mv /usr/sbin/mklost+found /sbin

FileÀÇ ¼³Ä¡

FileÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

FileutilsÀÇ ¼³Ä¡

FileutilsÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install cd /usr/bin mv chgrp chmod chown cp dd df ln ls mkdir mknod mv rm rmdir sync /bin

GrepÀÇ ¼³Ä¡

GrepÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

GroffÀÇ ¼³Ä¡

GroffÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

GzipÀÇ ¼³Ä¡

GzipÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install cd /usr/bin; mv z* gunzip gzip /bin

Ld.soÀÇ ¼³Ä¡

Ld.soÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

cd util; make ldd ldconfig cp ldd /bin; cp ldconfig /sbin rm /usr/bin/ldd

LibtoolÀÇ ¼³Ä¡

LibtoolÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

Linux86ÀÇ ¼³Ä¡

Linux86ÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

cd as make; make install cd ../ld make ld86; make install

LiloÀÇ ¼³Ä¡

LiloÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

make; make install

MakeÀÇ ¼³Ä¡

MakeÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

Sh-UtilsÀÇ ¼³Ä¡

Sh-utilsÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install cd /usr/bin mv date echo false pwd stty su true uname hostname /bin

Shadow Password SuiteÀÇ ¼³Ä¡

ShadowÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install cd etc cp limits login.access login.defs.linux shells suauth /etc mv /etc/login.defs.linux /etc/login.defs cd /usr/sbin mv chpasswd dpasswd groupadd groupdel groupmod logoutd mkpasswd \ newusers useradd userdel usermod grpck pwck vipw grpconv grpunconv \ pwconv pwunconv /sbin

ManÀÇ ¼³Ä¡

ManÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure -default make all; make install

ModutilsÀÇ ¼³Ä¡

ModutilsÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

ProcinfoÀÇ ¼³Ä¡

ProcinfoÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

make; make install

ProcpsÀÇ ¼³Ä¡

ProcpsÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

gcc -O3 -Wall -Wno-unused -c watch.c make; make -e XSCPT="" install mv /usr/bin/kill /bin

PsmiscÀÇ ¼³Ä¡

PsmiscÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

make; make install

SedÀÇ ¼³Ä¡

SedÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install mv /usr/bin/sed /bin

start-stop-daemonÀÇ ¼³Ä¡

start-stop-daemonÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

make start-stop-daemon cp start-stop-daemon /sbin cp start-stop-daemon.8 /usr/share/man/man8

SysklogdÀÇ ¼³Ä¡

SysklogdÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

make; make install

SysvinitÀÇ ¼³Ä¡

SysvinitÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

cd src make; make install

TarÀÇ ¼³Ä¡

TarÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install mv /usr/bin/tar /bin

TextutilsÀÇ ¼³Ä¡

TextutilsÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install mv /usr/bin/cat /bin

VimÀÇ ¼³Ä¡

Vim-rt¿Í Vim-srcÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

Util-linuxÀÇ ¼³Ä¡

Util-linux ÆÐÅ°Áö¸¦ Ǭ´Ù. MCONFIG ÆÄÀÏÀ» ¿­¾î¼­ ¾Æ·¡ÀÇ º¯¼öµéÀ» ã¾Æ ´ÙÀ½Ã³·³ °íÄ£´Ù:

HAVE_PASSWD=yes HAVE_SLN=yes HAVE_TSORT=yes

¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù:

groupadd -g 5 tty ./configure make; make install

¿¹ÀüÀÇ NSS ¶óÀ̺귯¸® ÆÄÀϵéÀÇ Á¦°Å

¿©·¯ºÐÀÌ ±âÁ¸ÀÇ ¸®´ª½º ½Ã½ºÅÛ¿¡¼­ LFS ½Ã½ºÅÛÀ¸·Î NSS ¶óÀ̺귯¸® ÆÄÀϵéÀ» º¹»çÇß¾ú´Ù¸é (±âÁ¸ ½Ã½ºÅÛÀÌ glibc-2.0À» ¾²±â ¶§¹®¿¡) ÀÌÁ¦ ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ±× ÆÄÀϵéÀ» Á¦°ÅÇÑ´Ù:

rm /lib/libnss*.so.1 /lib/libnss*2.0*

¼ÒÇÁÆ®¿þ¾îÀÇ ¼³Á¤

ÀÌÁ¦ ¸ðµç ¼ÒÇÁÆ®¿þ¾îµéÀÌ ¼³Ä¡µÇ¾ú°í ¸î¸î ÇÁ·Î±×·¥ÀÌ Á¤»óÀûÀ¸·Î µ¹µµ·Ï Çϱâ À§ÇØ ¿ì¸®°¡ ÇؾßÇÒ °ÍÀº ¼³Á¤ ÆÄÀϵéÀ» ¸¸µå´Â °Í »ÓÀÌ´Ù.

GlibÀÇ ¼³Á¤

/etc/nsswitch.conf ÆÄÀÏÀ» ¸¸µé¾î¾ß ÇÑ´Ù. ÀÌ ÆÄÀÏÀÌ ¾ø°Å³ª À߸øµÈ °æ¿ì glibc°¡ ±âº» °ªÀ» »ç¿ëÇϱä ÇÏÁö¸¸ ÀÌ ±âº»°ªÀº ÀÌÈÄ Àå¿¡¼­ ´Ù·ê ³×Æ®¿öÅ·°ú Àß µ¿ÀÛÇÏÁö ¾Ê´Â´Ù. ¶ÇÇÑ ¿ì¸®ÀÇ Å¸ÀÓÁ¸µµ ¼³Á¤µÇ¾î¾ß ÇÑ´Ù.

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï »õ /etc/nsswitch.conf ÆÄÀÏÀ» ¸¸µç´Ù:

# Begin /etc/nsswitch.conf passwd: files group: files shadow: files hosts: files dns networks: files protocols: db files services: db files ethers: db files rpc: db files netgroup: db files # End /etc/nsswitch.conf

tzselect ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÏ¿© ¿©·¯ºÐÀÇ Å¸ÀÓÁ¸¿¡ ¸Âµµ·Ï Áú¹®¿¡ ´äÇÑ´Ù. ÀÌ ÀÛ¾÷ÀÌ ³¡³ª¸é ÇÁ·Î±×·¥Àº ¿©·¯ºÐ¿¡°Ô ÇÊ¿äÇÑ ÆÄÀÏÀÇ À§Ä¡¸¦ ¾Ë·ÁÁÙ °ÍÀÌ´Ù. ln -s /usr/share/zoneinfo/<tzselect's output> /etc/localtime À» ½ÇÇàÇÏ¿© localtimeÀ» ½Éº¼¸¯ ¸µÅ©·Î »ý¼ºÇÑ´Ù.

/etc/localtime or ln -s /usr/share/zoneinfo/Canada/Eastern /etc/localtime tzselectÀÇ °á°ú´Â "EST5EDT"³ª "Canada/Eastern" °°Àº °ÍÀÌ´Ù. ±×·± Á¤º¸·Î ¿©·¯ºÐÀÌ ¸¸µå´Â ½Éº¼¸¯ ¸µÅ©´Â ln -s /usr/share/zoneinfo/EST5EDT À̰ųª ln -s /usr/share/zoneinfo/Canada/Eastern /etc/localtime ÀÌ´Ù.

LILOÀÇ ¼³Á¤

liloÀÇ ¼³Á¤ ÆÄÀÏÀ» óÀ½ºÎÅÍ ¸¸µéÁö´Â ¾Ê°í ±âÁ¸ÀÇ ¸®´ª½º ½Ã½ºÅÛÀÇ ÆÄÀÏÀ» »ç¿ëÇÒ °ÍÀÌ´Ù. ÀÌ ÆÄÀÏÀº ¸Ó½Å¿¡ µû¶ó¼­ Ʋ¸®¸ç µû¶ó¼­ ³»°¡ ¿©±â¼­ ¸¸µé ¼ö´Â ¾ø´Ù. ¿©·¯ºÐÀº ±âÁ¸ÀÇ ¸®´ª½º ½Ã½ºÅÛ¿¡¼­ ¾²´ø °Í°ú ¶È°°Àº lilo ¿É¼ÇµéÀ» ¾²±æ ¿øÇÒ °ÍÀ̹ǷΠ±âÁ¸ ½Ã½ºÅÛÀÇ °Í°ú ¶È°°ÀÌ ÆÄÀÏÀ» ¸¸µç´Ù.

/mnt/original µð·ºÅ丮ÀÇ »ý¼º mount /dev/xxx /mnt/original À» ½ÇÇàÇÏ¿© ±âÁ¸ÀÇ ¸®´ª½º ½Ã½ºÅÛÀ» ÀÌ °÷¿¡ ¸¶¿îÆ®ÇÑ´Ù (/dev/xxx¸¦ ¿©·¯ºÐÀÇ ÆÄƼ¼Ç À§Ä¡·Î º¯°æÇÑ´Ù). ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© lilo ¼³Á¤ ÆÄÀÏ°ú lilo°¡ »ç¿ëÇÏ´Â Ä¿³Î À̹ÌÁöµéÀ» º¹»çÇÑ´Ù:

cp /mnt/original/etc/lilo.conf /etc cp /mnt/original/boot/* /boot

±âÁ¸ÀÇ ¸®´ª½º ½Ã½ºÅÛÀÌ Ä¿³Î À̹ÌÁöµéÀº (¾î´À °Íµµ) /mnt/original/boot ¾È¿¡ °¡Áö°í ÀÖÁö ¾Ê´Ù¸é ±× ÆÄÀϵéÀÇ À§Ä¡¸¦ /etc/lilo.conf ÆÄÀÏ¿¡¼­ È®ÀÎÇÑ ÈÄ ±× ÆÄÀϵéÀ» /etc/lilo.conf°¡ ãÀ» ¼ö ÀÖ´Â °÷À¸·Î º¹»çÇÑ´Ù. ȤÀº ¿©·¯ºÐÀº ±× ÆÄÀϵéÀ» /boot·Î º¹»çÇÑ ÈÄ /etc/lilo.conf ÆÄÀÏÀ» ¼öÁ¤ÇÏ¿© LFS ½Ã½ºÅÛ¿¡¼­ Ä¿³Î À̹ÌÁöµéÀÌ ÀÖ´Â »õ °æ·Î¸¦ ãµµ·Ï ÇÒ ¼ö ÀÖ´Ù. ¾î¶² °Íµµ Àß µ¿ÀÛÇÏ¸ç ¾î¶»°Ô ÇÒ °ÍÀΰ¡´Â ¿©·¯ºÐ¿¡°Ô ´Þ·È´Ù.

SysklogdÀÇ ¼³Á¤

mkdir /var/log ¸¦ ½ÇÇàÇÏ¿© /var/log µð·ºÅ丮¸¦ ¸¸µç´Ù. ¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï /etc/syslog.conf ÆÄÀÏÀ» ¸¸µç´Ù.

# Begin /etc/syslog.conf auth,authpriv.* -/var/log/auth.log *.*;auth,authpriv.none -/var/log/sys.log daemon.* -/var/log/daemon.log kern.* -/var/log/kern.log mail.* -/var/log/mail.log user.* -/var/log/user.log *.emerg * # End /etc/syslog.conf

Shadow Password SuiteÀÇ ¼³Á¤

ÀÌ ÆÐÅ°Áö´Â »ç¿ëÀÚÀÇ ¾ÏÈ£¸¦ ¹Ù²Ù°í »õ·Î¿î »ç¿ëÀÚ/±×·ìÀ» Ãß°¡ÇÏ°í »ç¿ëÀÚ/±×·ìÀ» »èÁ¦ÇÏ´Â µîÀÇ ÀÏÀ» Çϱâ À§ÇÑ À¯Æ¿¸®Æ¼µéÀ» Æ÷ÇÔÇÏ°í ÀÖ´Ù. 'password shadowing'ÀÌ ¹«¾ùÀÎÁö¸¦ ¼³¸íÇÏÁø ¾Ê°Ú´Ù. ¿©·¯ºÐÀº doc/HOWTO ÆÄÀÏ ¾È¿¡¼­ ÀÌ¿¡ ´ëÇÑ °ÍÀ» ¸ðµÎ Àо ¼ö ÀÖ´Ù. ¿©·¯ºÐÀÌ ¸í½ÉÇÒ °ÍÀÌ Çϳª Àִµ¥, shadow Áö¿ø ±â´ÉÀ» »ç¿ëÇϱâ·Î Çß´Ù¸é ¾ÏÈ£¸¦ È®ÀÎÇÒ ÇÊ¿ä°¡ ÀÖ´Â ÇÁ·Î±×·¥µé (¿¹¸¦ µé¾î xdmÀ̳ª ftp µ¥¸ó, pop3d µî) ÀÌ 'shadow-compliant(¼¨µµ¿ì ȣȯ)'À̾î¾ß ÇÑ´Â °ÍÀÌ´Ù. ´Ù½Ã¸»ÇØ ±× ÇÁ·Î±×·¥µéÀÌ ¼¨µµ¿ì Æнº¿öµå¿Í Àß ÀÛµ¿ÇÒ ¼ö ÀÖ¾î¾ß ÇÑ´Ù.

¼¨µµ¿ì Æнº¿öµå¸¦ »ç¿ëÇÏÁö ¾Ê±â·Î °áÁ¤Çß´õ¶óµµ (doc/HOWTO ¹®¼­¸¦ ÀÐÀº ÈÄ¿¡) ¿©·¯ºÐÀº ¿©ÀüÈ÷ ÆÐÅ°Áö¸¦ »ç¿ëÇϴµ¥ ±×°ÍÀº ÀÌ ÆÐÅ°Áö ¾ÈÀÇ À¯Æ¿¸®Æ¼µéÀº ¼¨µµ¿ì Æнº¿öµå¸¦ »ç¿ëÇÏÁö ¾Ê´Â ½Ã½ºÅÛ¿¡¼­µµ »ç¿ëµÇ±â ¶§¹®ÀÌ´Ù. ÀÌ¿¡ ´ëÇÑ ¸ðµç ³»¿ëÀ» HOWTO¿¡¼­ º¼ ¼ö ÀÖ´Ù. ¶ÇÇÑ ¿©·¯ºÐÀÌ ¿øÇÏ´Â ¶§¿¡ ¼¨µµ¿ì Æнº¿öµåÀÇ »ç¿ë ¿©ºÎ¸¦ º¯°æÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» ¸í½ÉÇÑ´Ù.

Áö±ÝÀÌ doc/HOWTO ÆÄÀÏÀÇ #5 ºÎºÐÀ» ÀÐÀ» ¸Å¿ì ÁÁÀº ½Ã±âÀÌ´Ù. ¿©·¯ºÐÀº ¼¨µµ¿ì ±â´ÉÀÌ ÀÛµ¿ÇÏ´ÂÁö ¿©ºÎ¸¦ °Ë»çÇÏ´Â ¹æ¹ý°ú ±â´ÉÀ» Á¤Áö½ÃÅ°´Â ¹æ¹ýÀ» ¾Ë ¼ö ÀÖ´Ù. ¸¸¾à ÀÛµ¿ÇÏÁö ¾Ê°í ÀÖÀ¸¸ç °Ë»ç¸¦ ÇÏÁö ¾Ê¾Ò¾ú´Ù¸é ¿©·¯ºÐÀÇ ¸ðµç Äֿܼ¡¼­ ·Î±×¾Æ¿ô ÇÑ ÈÄ ´õÀÌ»ó ½Ã½ºÅÛÀ» »ç¿ëÇÒ ¼ö ¾ø°Ô µÉ °ÍÀÌ´Ù. ÀÌ´Â ´õÀÌ»ó ·Î±äÀ» ÇÒ ¼ö ¾ø±â ¶§¹®ÀÌ´Ù. ÀÌ ¹®Á¦¸¦ ½±°Ô ÇØ°áÇÏ´Â ¹æ¹ýÀº Ä¿³Î¿¡ init=/sbin/sulogin À̶ó´Â ÀÎÀÚ¸¦ ³Ñ°ÜÁØ ÈÄ util-linux ¾ÐÃàÆÄÀÏÀ» Ç®°í login-utils µð·ºÅ丮·Î À̵¿ÇÏ¿© login ÇÁ·Î±×·¥À» ¸¸µç ÈÄ /bin/loginÀ» ±×°ÍÀ¸·Î ¹Ù²ã ¹ö¸®´Â °ÍÀÌ´Ù. ÀÏÀÌ Àý¸ÁÀûÀ¸·Î À߸øµÇÁø ¾Ê°ÚÁö¸¸ (Àû¾îµµ Linux »ó¿¡¼­´Â) ¾Ë¸Â°Ô Å×½ºÆ®¸¦ ÇÏ°í ¸Å´º¾óÀ» ÀÐÀ½À¸·Î½á ¾î·Á¿òÀ» ÇÇÇÒ ¼ö ÀÖ´Ù ;)

SysvinitÀÇ ¼³Á¤

/etc/inittab ÆÄÀÏÀ» ¾Æ·¡Ã³·³ ¼öÁ¤ÇÑ ÈÄ ¿©·¯ºÐÀº ÀÌÀüó·³ ·Î±äÇÒ ¼ö ÀÖ´Ù (agetty¿Í login ÇÁ·Î±×·¥À» »ç¿ëÇÏ¿©). SuloginÀº ÀϹÝÀûÀÎ ·Î±ä¿¡¼± ´õÀÌ»ó ¾²ÀÌÁö ¾ÊÀ» °ÍÀÌ´Ù.

/etc/inittab ÆÄÀÏÀ» ¼öÁ¤ÇÏ¿© ¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï ÇÑ´Ù.

# Begin /etc/inittab id:2:initdefault: si::sysinit:/etc/init.d/rcS su:S:wait:/sbin/sulogin l0:0:wait:/etc/init.d/rc 0 l1:1:wait:/etc/init.d/rc 1 l2:2:wait:/etc/init.d/rc 2 l3:3:wait:/etc/init.d/rc 3 l4:4:wait:/etc/init.d/rc 4 l5:5:wait:/etc/init.d/rc 5 l6:6:wait:/etc/init.d/rc 6 ft:6:respawn:/sbin/sulogin ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now 1:2345:respawn:/sbin/agetty /dev/tty1 9600 2:2345:respawn:/sbin/agetty /dev/tty2 9600 3:2345:respawn:/sbin/agetty /dev/tty3 9600 4:2345:respawn:/sbin/agetty /dev/tty4 9600 5:2345:respawn:/sbin/agetty /dev/tty5 9600 6:2345:respawn:/sbin/agetty /dev/tty6 9600 # End /etc/inittab

/var/run/utmp ÆÄÀÏÀÇ »ý¼º

loginÀ̳ª shutdown µîÀÇ ÇÁ·Î±×·¥µéÀº /var/run/utmp ÆÄÀÏ¿¡ ¹«¾ð°¡ ¾²±â¸¦ ¿øÇÑ´Ù. ÀÌ ÆÄÀÏÀº ÇöÀç ·Î±äÇØ ÀÖ´Â »ç¶÷µé¿¡ ´ëÇÑ Á¤º¸¸¦ ´ã°í ÀÖ´Ù. ¶ÇÇÑ ÄÄÇ»ÅÍ°¡ ¸¶Áö¸·À¸·Î ¼Ë´Ù¿î µÈ ¶§¿¡ ´ëÇÑ Á¤º¸µµ ´ã°í ÀÖ´Ù.

touch /var/run/utmp ¸¦ ½ÇÇàÇÏ¿© /var/run/utmp ÆÄÀÏÀ» ¸¸µç´Ù. chmod 644 /var/run/utmp ¸¦ ½ÇÇàÇÏ¿© ¾Ë¸Â°Ô ÆÄÀÏ Æ۹̼ÇÀ» Á¶ÀýÇÑ´Ù.

½Ã½ºÅÛ ºÎÆ® ½ºÅ©¸³Æ®ÀÇ »ý¼º

ÀÌ ºÎÆ® ½ºÅ©¸³Æ®µéÀº ½Ã½ºÅÛÀÌ ºÎÆÃµÉ ¶§ ½ÃÀ۵ȴÙ. ÀÌ ½ºÅ©¸³Æ®µéÀº ·çÆ® ÆÄÀÏ ½Ã½ºÅÛÀ» ÀÐ°í ¾²±â ¸ðµå·Î ¸¶¿îÆ®ÇÏ°í, ½º¿ÒÀ» È°¼ºÈ­ÇÏ¸ç ¸î¸î ½Ã½ºÅÛ ¼³Á¤À» ÇÏ°í ¿ì¸® ½Ã½ºÅÛÀÌ ÇÊ¿äÇÑ ´Ù¾çÇÑ µ¥¸óµéÀ» ½ÃÀÛÇÏ´Â ¿ªÇÒÀ» ÇÑ´Ù.

µð·ºÅ丮¿Í ¸¶½ºÅÍ ÆÄÀÏÀÇ Áغñ

ÀÌ Àå¿¡¼­ ¿©·¯ºÐÀº ´Ù½Ã Sysvinit ÆÐÅ°Áö°¡ ÇÊ¿äÇÏ´Ù.

¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÇÊ¿äÇÑ µð·ºÅ丮µéÀ» »ý¼ºÇÑ´Ù:

cd /etc mkdir rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d init.d rcS.d

Ç®¾î³õÀº SysvinitÀÇ ¼Ò½º µð·ºÅ丮·Î À̵¿ÇÑ´Ù. Debian/etc/init.d/rc ÆÄÀÏÀ» /etc/init.d·Î º¹»çÇÑ´Ù. /etc/init.d µð·ºÅ丮·Î À̵¿ÇÑ´Ù. ¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï rcS ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

#!/bin/sh # Begin /etc/init.d/rcS runlevel=S prevlevel=N umask 022 export runlevel prevlevel trap ":" INT QUIT TSTP for i in /etc/rcS.d/S??* do [ ! -f "$i" ] && continue; $i start done # End /etc/init.d/rcS

reboot ½ºÅ©¸³Æ® ¸¸µé±â

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï reboot ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

#!/bin/sh # Begin /etc/init.d/reboot echo -n "System reboot in progress..." /sbin/reboot -d -f -i # End /etc/init.d/reboot

halt ½ºÅ©¸³Æ® »ý¼º

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï halt ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

#!/bin/sh # Begin /etc/init.d/halt /sbin/halt -d -f -i -p # End /etc/init.d/halt

mountfs ½ºÅ©¸³Æ®ÀÇ »ý¼º

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï mountfs ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

#!/bin/sh # Begin /etc/init.d/mountfs check_status() { if [ $? = 0 ] then echo "OK" else echo "FAILED" fi } echo -n "Remounting root file system in read-write mode..." /bin/mount -n -o remount,rw / check_status > /etc/mtab /bin/mount -f -o remount,rw / echo -n "Mounting proc file system..." /bin/mount proc check_status # End /etc/init.d/mountfs

umountfs ½ºÅ©¸³Æ®ÀÇ »ý¼º

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï umountfs ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

#!/bin/sh # Begin /etc/init.d/umountfs check_status() { if [ $? = 0 ] then echo "OK" else echo "FAILED" fi } echo "Deactivating swap..." /bin/swapoff -av check_status echo -n "Unmounting file systems..." /bin/umount -a -r check_status # End /etc/init.d/umountfs

sendsignals ½ºÅ©¸³Æ®ÀÇ »ý¼º

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï sendsignals ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

#!/bin/sh # Begin /etc/init.d/sendsignals check_status() { if [ $? = 0 ] then echo "OK" else echo "FAILED" fi } echo -n "Sending all processes the TERM signal..." /sbin/killall5 -15 check_status echo -n "Sending all processes the KILL signal..." /sbin/killall5 -9 check_status

checkroot ºÎÆ® ½ºÅ©¸³Æ®ÀÇ »ý¼º

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï /etc/init.d/checkroot ÆÄÀÏÀ» ¸¸µç´Ù:

#!/bin/sh # Begin /etc/init.d/checkroot echo "Activating swap..." /sbin/swapon -av if [ -f /fastboot ] then echo "Fast boot, no file system check" else /bin/mount -n -o remount,ro / if [ $? = 0 ] then if [ -f /forcecheck ] then force="-f" else force="" fi echo "Checking root file system..." /sbin/fsck $force -a / if [ $? -gt 1 ] then echo echo "fsck failed. Please repair your file system manually by" echo "running fsck without the -a option" echo "Please note that the file system is currently mounted in" echo "read-only mode." echo echo "I will start sulogin now. CTRL+D will reboot your system." /sbin/sulogin /reboot -f fi else echo "Cannot check root file system because it is not mounted in" echo "read-only mode." fi fi # End /etc/init.d/checkroot

Sysklogd ºÎÆ® ½ºÅ©¸³Æ®ÀÇ »ý¼º

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï /etc/init.d/sysklogd ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

#!/bin/sh # Begin /etc/init.d/sysklogd check_status() { if [ $? = 0 ] then echo "OK" else echo "FAILED" fi } case "$1" in start) echo -n "Starting system log daemon..." start-stop-daemon -S -q -o -x /usr/sbin/syslogd -- -m 0 check_status echo -n "Starting kernel log daemon..." start-stop-daemon -S -q -o -x /usr/sbin/klogd check_status ;; stop) echo -n "Stopping kernel log daemon..." start-stop-daemon -K -q -o -p /var/run/klogd.pid check_status echo -n "Stopping system log daemon..." start-stop-daemon -K -q -o -p /var/run/syslogd.pid check_status ;; reload) echo -n "Reloading system load daemon configuration file..." start-stop-daemon -K -q -o -s 1 -p /var/run/syslogd.pid check_status ;; restart) echo -n "Stopping kernel log daemon..." start-stop-daemon -K -q -o -p /var/run/klogd.pid check_status echo -n "Stopping system log daemon..." start-stop-daemon -K -q -o -p /var/run/syslogd.pid check_status sleep 1 echo -n "Starting system log daemon..." start-stop-daemon -S -q -o -x /usr/sbin/syslogd -- -m 0 check_status echo -n "Starting kernel log daemon..." start-stop-daemon -S -q -o -x /usr/sbin/klogd check_status ;; *) echo "Usage: $0 {start|stop|reload|restart}" exit 1 ;; esac # End /etc/init.d/sysklogd

½Éº¼¸¯ ¸µÅ©¿Í ±ÇÇÑ ¼³Á¤

¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÆÄÀÏ ±ÇÇÑ°ú ½Éº¼¸¯ ¸µÅ©µéÀ» ¾Ë¸Â°Ô ¼³Á¤ÇÑ´Ù:

chmod 755 rcS reboot halt mountfs umountfs sendsignals checkroot sysklogd cd ../rc0.d ln -s ../init.d/sysklogd K90sysklogd ln -s ../init.d/sendsignals S80sendsignals ln -s ../init.d/umountfs S90umountfs ln -s ../init.d/halt S99halt cd ../rc6.d ln -s ../init.d/sysklogd K90sysklogd ln -s ../init.d/sendsignals S80sendsignals ln -s ../init.d/umountfs S90umountfs ln -s ../init.d/reboot S99reboot cd ../rcS.d ln -s ../init.d/checkroot S05checkroot ln -s ../init.d/mountfs S10mountfs cd /etc/rc2.d ln -s ../init.d/sysklogd S03sysklogd

/etc/fstab ÆÄÀÏÀÇ »ý¼º

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï /etc/fstab ÆÄÀÏÀ» ¸¸µç´Ù:

/dev/<LFS-partition designation> / ext2 defaults 0 1 /dev/<swap-partition designation> none swap sw 0 0 proc /proc proc defaults 0 0

±âº»ÀûÀÎ ³×Æ®¿öÅ·ÀÇ ¼³Á¤ Netkit-base ¼³Ä¡Çϱâ

Netkit-base ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install cd etc.sample; cp services protocols /etc mv /usr/bin/ping /bin

Net-toolsÀÇ ¼³Ä¡

Net-toolsÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

make; make install mv /usr/bin/netstat /bin cd /usr/sbin; mv ifconfig route /sbin

/etc/init.d/localnet ºÎÆ®½ºÅ©¸³Æ® ¸¸µé±â

¾Æ·¡·Ñ Æ÷ÇÔÇϵµ·Ï /etc/init.d/localnet ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù.

#!/bin/sh # Begin /etc/init.d/localnet check_status() { if [ $? = 0 ] then echo "OK" else echo "FAILED" fi } echo -n "Setting up loopback device..." /sbin/ifconfig lo 127.0.0.1 check_status echo -n "Setting up hostname..." /bin/hostname --file /etc/hostname check_status # End /etc/init.d/localnet

±ÇÇÑ°ú ½Éº¼¸¯ ¸µÅ©ÀÇ ¼³Á¤

chmod 755 /etc/init.d/localnet À» ½ÇÇàÇÏ¿© ±ÇÇÑÀ» ¾Ë¸Â°Ô ¼³Á¤ÇÑ´Ù. cd /etc/rcS.d; ln -s ../init.d/localnet S03localnet À» ½ÇÇàÇÏ¿© Àû´çÇÑ ½Éº¼¸¯ ¸µÅ©¸¦ »ý¼ºÇÑ´Ù.

/etc/hostname ÆÄÀÏ ¸¸µé±â

/etc/hostname ÆÄÀÏÀ» »õ·Î ¸¸µé¾î È£½ºÆ® À̸§À» ±× ¾È¿¡ Áý¾î³Ö´Â´Ù. ÀÌ ¸®À½Àº FQDN(Fully Qualified Domain Name)Àº ¾Æ´Ï´Ù. ¿©·¯ºÐÀÌ ³×Æ®¿÷ »ó¿¡¼­ ¿©·¯ºÐÀÇ ÄÄÇ»Å͸¦ ºÎ¸£°í ½ÍÀ» ¶§ ¾µ À̸§ÀÌ´Ù.

/etc/hosts ÆÄÀÏÀÇ »ý¼º

¸¸¾à ³×Æ®¿÷ Ä«µå¸¦ ¼³Á¤ÇÏ°í ½Í´Ù¸é /etc/hosts ÆÄÀÏ ¾È¿¡¼­ ¾µ IP ÁÖ¼Ò¿Í FQDN, °¡´ÉÇÏ´Ù¸é ¾Ë¸®¾Æ½º µéÀ» °áÁ¤ÇØ¾ß ÇÑ´Ù. ¾Æ·¡´Â ÇÑ ¿¹Á¦ÀÌ´Ù:

<myip> myhost.mydomain.org aliases

IP ÁÖ¼Ò°¡ »ç¼³ ¸ÁÀÇ IP ÁÖ¼Ò ¹üÀ§ ¾È¿¡ ÀÖµµ·Ï Çضó. °¡´ÉÇÑ °ªÀº ´ÙÀ½°ú °°´Ù:

Class Networks A 10.0.0.0 B 172.16.0.0 through 172.31.0.0 C 192.168.0.0 through 192.168.255.0

°¡´ÉÇÑ IP ÁÖ¼Ò´Â 192.168.1.1ÀÏ ¼ö ÀÖ´Ù. ÀÌ IP¿¡ ´ëÇÑ FQDNÀº me.linuxfromscratch.orgÀÏ ¼ö ÀÖ´Ù.

¸¸¾à ¿©·¯ºÐÀÌ ³×Æ®¿÷ Ä«µå¸¦ »ç¿ëÇÏÁö ¾ÊÀ» ¿¹Á¤ÀÏ Áö¶óµµ ¿©ÀüÈ÷ FQDNÀÌ ÇÊ¿äÇÏ´Ù. ÀÌ´Â Sendmail °°Àº ÇÁ·Î±×·¥µéÀÌ Á¤»óÀûÀ¸·Î ÀÛµ¿ÇÏ´Â µ¥ ÇÊ¿äÇÏ´Ù (½ÇÁ¦·Î SendmailÀº FQDNÀ» °áÁ¤ÇÏÁö ¸øÇϸé ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù).

¾Æ·¡´Â ¿©·¯ºÐÀÌ ³×Æ®¿÷ Ä«µå¸¦ ¼³Á¤ÇÏÁö ¾Ê´Â °æ¿ìÀÇ /etc/hosts ÆÄÀÏÀÌ´Ù:

# Begin /etc/hosts (no network card version) 127.0.0.1 me.lfs.org <contents of /etc/hostname> localhost # End /etc/hosts (no network card version)

¾Æ·¡´Â ³×Æ®¿÷ Ä«µå¸¦ ¼³Á¤ÇÏ´Â °æ¿ìÀÇ /etc/hosts ÆÄÀÏÀÌ´Ù:

# Begin /etc/hosts (network card version) 127.0.0.1 localhost 192.168.1.1 me.lfs.org <contents of /etc/hostname> # End /etc/hosts (network card version)

¹°·Ð, 192.168.1.1°ú me.lfs.orgÀ» ¿©·¯ºÐÀÇ ±âÈ£¿¡ ¸Â°Ô(ȤÀº ¿©·¯ºÐÀÌ ³×Æ®¿÷/½Ã½ºÅÛ °ü¸®ÀڷκÎÅÍ IP ÁÖ¼Ò¸¦ ÇÒ´ç¹Þ¾Ò°í ÀÌ ¸Ó½ÅÀ» ±× ³×Æ®¿÷¿¡ ¿¬°áÇÒ °èȹÀ̶ó¸é °Å±â¿¡ ¸Â°Ô) ¹Ù²Û´Ù.

/etc/init.d/ethnet ÆÄÀÏÀÇ »ý¼º

ÀÌ ºÎºÐÀº ¿©·¯ºÐÀÌ ³×Æ®¿÷ Ä«µå¸¦ ¼³Á¤ÇÏ´Â °æ¿ì¿¡¸¸ ÇØ´çµÈ´Ù. ±×·¸Áö ¾Ê´Ù¸é ÀÌ ºÎºÐÀ» ¶Ù¾î³Ñ¾îµµ µÈ´Ù.

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï /etc/init.d/ethnet ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

#!/bin/sh # Begin /etc/init.d/ethnet check_status() { if [ $? = 0 ] then echo "OK" else echo "FAILED" fi } /sbin/ifconfig eth0 <ipaddress> check_status # End /etc/init.d/ethnet

/etc/init.d/ethnetÀÇ ±ÇÇÑ°ú ½Éº¼¸¯ ¸µÅ©¸¦ ¼³Á¤ÇÑ´Ù.

chmod 755 ethnet À» ½ÇÇàÇÏ¿© ¾Ë¸Â°Ô ±ÇÇÑ ¼³Á¤À» ÇÑ´Ù. cd ../rc2.d; ln -s ../init.d/ethnet S10ethnet À» ½ÇÇàÇÏ¿© ½Éº¼¸¯ ¸µÅ©¸¦ ¸¸µç´Ù.

³×Æ®¿÷ ¼³Á¤ÀÇ ½ÃÇè

/etc/init.d/localnetÀ» ½ÇÇàÇÏ¿© ¹æ±Ý ¸¸µç localnet ½ºÅ©¸³Æ®¸¦ ½ÃÀÛ½ÃŲ´Ù. ethnet ½ºÅ©¸³Æ®¸¦ ¸¸µé¾ú´Ù¸é /etc/init.d/ethnetÀ» ½ÇÇàÇÏ¿© À̸¦ ½ÃÀÛ½ÃŲ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© /etc/hosts°¡ Á¦´ë·Î ¼³Á¤ µÇ¾ú´ÂÁö °Ë»çÇÑ´Ù:

ping <your FQDN> ping <what you choose for hostname> ping localhost ping 127.0.0.1 ping 192.168.1.1 (only when you configured your network card)

ÀÌ ´Ù¼¸°³ÀÇ ping ¸í·ÉµéÀÌ ¸ðµÎ ½ÇÆÐ ¾øÀÌ ÀÛµ¿ÇØ¾ß ÇÑ´Ù. ±×·¸´Ù¸é ±âº»ÀûÀÎ ³×Æ®¿÷ÀÌ Àß ÀÛµ¿ÇÏ´Â °ÍÀÌ´Ù.

½Ã½ºÅÛ °Ë»ç

ÀÌÁ¦ ¸ðµç ¼ÒÇÁÆ®¿þ¾î°¡ ¼³Ä¡µÇ¾ú°í ºÎÆ®½ºÅ©¸³Æ®µéÀÌ ¸¸µé¾îÁ³À¸¸ç Áö¿ª ³×Æ®¿÷µµ ¼³Á¤µÇ¾úÀ¸¹Ç·Î ¿©·¯ºÐÀÇ ÄÄÇ»Å͸¦ ¸®ºÎÆÃÇÏ¿© ÀÌ »õ ½ºÅ©¸³Æ®µéÀÌ ½ÇÁ¦·Î ÀÛµ¿ÇÏ´ÂÁö¸¦ º¸±â À§ÇØ °Ë»ç¸¦ ÇØ º¼ ½Ã°£ÀÌ´Ù. ¿ì¼±Àº /etc/init.d µð·ºÅ丮¿¡¼­ Á÷Á¢ ½ÇÇàÇÏ¿© °¡Àå ÈçÇÑ ¹®Á¦µé (¿ÀŸ³ª À߸øµÈ °æ·Î µî)À» °íÄ¡±æ ¹Ù¶ö °ÍÀÌ´Ù. ÀÌ ½ºÅ©¸³Æ®µéÀÌ Á÷Á¢ ½ÇÇà½ÃÄ×À» ¶§ Àß ÀÛµ¿ÇÑ´Ù¸é ½Ã½ºÅÛÀÇ ½ÃÀÛ°ú Á¾·á ½Ã¿¡µµ Á¤»óÀûÀ¸·Î ÀÛµ¿ÇØ¾ß ÇÑ´Ù. À̸¦ ½ÃÇèÇÏ´Â ¹æ¹ýÀº ¿ÀÁ÷ ÇϳªÀÌ´Ù. Áö±Ý shutdown -r ¸í·ÉÀ¸·Î ½Ã½ºÅÛÀ» Á¾·áÇÑ ÈÄ LFS·Î ÀçºÎÆà ÇÏ¿©¶ó. ÀçºÎÆà ÀÌÈÄ¿¡ ¿©·¯ºÐÀº ±âÁ¸ÀÇ ¸®´ª½º ½Ã½ºÅÛ¿¡¼­¿Í °°Àº º¸ÅëÀÇ ·Î±ä ÇÁ·ÒÇÁÆ®¸¦ º¸°Ô µÉ °ÍÀÌ´Ù (¿©·¯ºÐÀÌ XDMÀ̳ª ±âŸ ´Ù¸¥ Display Manager (XDMÀÇ KDE ÆÇÀÎ KDE °°Àº)¸¦ »ç¿ëÇÏÁö ¾Ê´Â´Ù¸é).

ÀÌ ½ÃÁ¡¿¡ ¿©·¯ºÐÀÇ ±âº»ÀûÀÎ LFS ½Ã½ºÅÛÀº »ç¿ëÇÒ Áغñ°¡ µÇ¾ú´Ù. Áö±ÝºÎÅÍ ³ª¿Ã °ÍµéÀº ¸ðµÎ ¼±ÅûçÇ×ÀÌ¸ç ¿©·¯ºÐÀÇ ÆÇ´Ü¿¡ µû¶ó ÆÐÅ°ÁöµéÀ» ¶Ù¾î³ÑÀ» ¼ö ÀÖ´Ù. ±×·¯³ª ¿©·¯ºÐÀÌ ÆÐÅ°ÁöµéÀÇ ¼³Ä¡¸¦ ¶Ù¾î³Ñ´Â´Ù¸é (ƯÈ÷ ¶óÀ̺귯¸®µé) ´Ù¸¥ ÆÐÅ°ÁöµéÀÇ ÀÇÁ¸¼ºÀ» ÇØÄ¥ ¼ö ÀÖ´Ù´Â °ÍÀ» ¸í½ÉÇØ¾ß ÇÑ´Ù.

³×Æ®¿÷ µ¥¸óÀÇ ¼³Ä¡ SMTP ¼³Á¤Çϱâ group°ú userÀÇ »ý¼º

¾Æ·¡¸¦ ½ÇÇàÇÏ¿© SendmailÀÌ ÇÊ¿ä·Î ÇÏ´Â groupµéÀ» ¸¸µç´Ù:

groupadd -g 1 bin groupadd -g 2 kmem groupadd -g 3 mail useradd -u 1 -g bin -d /bin -s /bin/sh bin

µð·ºÅ丮 »ý¼º

SendmailÀº ¹ÛÀ¸·Î ³ª°¡´Â ¸ÞÀÏÀ» /var/spool/mqueue µð·ºÅ丮¿¡ ³Ö¾îµÐ´Ù. µé¾î¿À´Â ¸ÞÀÏÀº Sendmail¿¡ ÀÇÇØ Procmail·Î µ¹·ÁÁö¹Ç·Î ¿ì¸®´Â /var/mail À̶ó´Â µð·ºÅ丮µµ ÇÊ¿äÇÏ´Ù. ÀÌ µð·ºÅ丮µéÀ» »ý¼ºÇÏ°í ¾Ë¸ÂÀº ±ÇÇÑÀ» ¼³Á¤ÇÑ´Ù:

mkdir /var/spool mkdir /var/mail cd /var/spool; ln -s ../mail mail chmod 700 /var/spool/mqueue chmod 775 /var/mail chgrp mail /var/mail chmod 1777 /tmp

SendmailÀÇ ¼³Ä¡

Sendmail ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

cd src ./Build; ./Build install

SendmailÀÇ ¼³Á¤

SendmailÀ» ¼³Á¤ÇÏ´Â °ÍÀº ¾ÕÀÇ °Íµéó·³ ½±Áö´Â ¾Ê´Ù. SendmailÀ» ¼³Á¤ÇÏ´Â µ¿¾È ¿©·¯ºÐÀÌ °í·ÁÇØ¾ß ÇÒ »çÇ×ÀÌ ¸¹À¸¸ç ³»°¡ ±× ¸ðµç °ÍÀ» ¼³¸íÇÒ ¼ö´Â ¾ø´Ù. ÀÌ°ÍÀÌ ¿ì¸®°¡ Áö±ÝÀº ±âº»ÀûÀÌ°í Ç¥ÁØÀûÀÎ ¼³Á¤À» ÇÏ´Â ÀÌÀ¯ÀÌ´Ù. SendmailÀ» ¿©·¯ºÐÀÇ ±âÈ£¿¡ ¸Âµµ·Ï °íÄ¡°í ½Í´Ù¸é ÇÒ ¼ö ÀÖÁö¸¸ ÀÌ ¹®¼­´Â ±× ÀÛ¾÷¿¡ ÀûÇÕÇÏÁö´Â ¾Ê´Ù. ¿©·¯ºÐÀÌ Æ¯Á¤ÇÑ ±â´ÉÀ» »ç¿ëÇÏ·Á ÇÑ´Ù¸é ÀÌ¹Ì Á¸ÀçÇÏ´Â /etc/sendmail.cf (ȤÀº /etc/mail/sendmail.cf) ÆÄÀÏÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù.

Go to the cf directory cf µð·ºÅ丮·Î À̵¿ÇÑ´Ù. ¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï cf/lfs.mc ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

OSTYPE(LFS) FEATURE(nouucp) define(`LOCAL_MAILER_PATH', /usr/bin/procmail) MAILER(local) MAILER(smtp)

touch ostype/LFS.m4 ¸¦ ½ÇÇàÇÏ¿© ºó ostype/LFS.m4 ÆÄÀÏÀ» ¸¸µç´Ù. m4 m4/cf.m4 cf/lfs.mc > cf/lfs.cf ¸¦ ½ÇÇàÇÏ¿© lfs.mc ÆÄÀÏÀ» ÄÄÆÄÀÏÇÑ´Ù. cf/lfs.cf ¸¦ /etc/sendmail.cf ·Î º¹»çÇÑ´Ù. touch /etc/aliases ¸¦ ½ÇÇàÇÏ¿© ºó /etc/aliases ÆÄÀÏÀ» ¸¸µç´Ù. sendmail -v -bi ¸¦ ½ÇÇàÇÏ¿© ÀÌ (ºó) alias µ¥ÀÌŸº£À̽º¸¦ ÃʱâÈ­ÇÑ´Ù.

ProcmailÀÇ ¼³Ä¡

Procmail ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

make; make install; make install-suid

/etc/init.d/sendmail ºÎÆ®½ºÅ©¸³Æ®ÀÇ ÀÛ¼º

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï /etc/init.d/sendmail ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

#!/bin/sh # Begin /etc/init.d/sendmail check_status() { if [ $? = 0 ] then echo "OK" else echo "FAILED" fi } case "$1" in start) echo -n "Starting Sendmail..." start-stop-daemon -S -q -o -x /usr/sbin/sendmail -- -bd check_status ;; stop) echo -n "Stopping Sendmail..." start-stop-daemon -K -q -o -p /var/run/sendmail.pid check_status ;; reload) echo -n "Reloading Sendmail configuration file..." start-stop-daemon -K -q -s 1 -p /var/run/sendmail.pid check_status ;; restart) echo -n "Stopping Sendmail..." start-stop-daemon -K -q -o -p /var/run/sendmail.pid check_status sleep 1 echo -n "Starting Sendmail..." start-stop-daemon -S -q -o -x /usr/sbin/sendmail -- -bd check_status ;; *) echo "Usage: $0 {start|stop|reload|restart}" exit 1 ;; esac # End /etc/init.d/sendmail

±ÇÇÑ°ú ½Éº¼¸¯ ¸µÅ©µéÀ» ¼³Á¤ÇÑ´Ù.

chmod 755 /etc/init.d/sendmail À» ½ÇÇàÇÏ¿© ¾Ë¸ÂÀº ±ÇÇÑÀ» ¼³Á¤ÇÑ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¾Ë¸ÂÀº ½Éº¼¸¯ ¸µÅ©µéÀ» ¸¸µç´Ù:

cd /etc/init.d/rc2.d; ln -s ../init.d/sendmail S20sendmail cd ../rc0.d; ln -s ../init.d/sendmail K20sendmail cd ../rc6.d; ln -s ../init.d/sendmail K20sendmail

FTPÀÇ ¼³Á¤ user¿Í groupÀÇ »ý¼º

¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÇÊ¿äÇÑ groupµéÀ» ¸¸µç´Ù:

groupadd -g 65534 nogroup groupadd -g 4 ftp

¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÇÊ¿äÇÑ userµéÀ» ¸¸µç´Ù:

useradd -u 65534 -g nogroup -d /home nobody useradd -u 4 -g ftp -s /bin/sh -m ftp

ProftpdÀÇ ¼³Ä¡

ProftpdÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

/etc/init.d/proftpd ºÎÆ®½ºÅ©¸³Æ®ÀÇ ÀÛ¼º

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï /etc/init.d/proftpd ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

#!/bin/sh # Begin /etc/init.d/proftpd check_status() { if [ $? = 0 ] then echo "OK" else echo "FAILED" fi } case "$1" in start) echo -n "Starting Pro FTP daemon..." start-stop-daemon -S -q -o -x /usr/sbin/proftpd check_status ;; stop) echo -n "Stopping Pro FTP daemon..." start-stop-daemon -K -q -o -x /usr/sbin/proftpd check_status ;; restart) echo -n "Stopping Pro FTP daemon..." start-stop-daemon -K -q -o -x /usr/sbin/proftpd check_status sleep 1 echo -n "Starting Pro FTP daemon..." start-stop-daemon -S -q -o -x /usr/sbin/proftpd check_status ;; *) echo "Usage: $0 {start|stop|restart}" ;; esac # End /etc/init.d/proftpd

±ÇÇÑ°ú ½Éº¼¸¯ ¸µÅ©ÀÇ ¼³Á¤

chmod 755 /etc/init.d/proftpd ¸¦ ½ÇÇàÇÏ¿© ¾Ë¸ÂÀº ±ÇÇÑÀ» ¼³Á¤ÇÑ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÇÊ¿äÇÑ ½Éº¼¸¯ ¸µÅ©µéÀ» ¸¸µç´Ù:

cd /etc/rc2.d; ln -s ../init.d/proftpd S40proftpd cd ../rc0.d; ln -s ../init.d/proftpd K40proftpd cd ../rc6.d; ln -s ../init.d/proftpd K40proftpd

HTTPÀÇ ¼³Á¤ ApacheÀÇ ¼³Ä¡

ApacheÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

ApacheÀÇ ¼³Á¤

¼³Á¤ÇÒ °ÍÀÌ ¸¹Áö´Â ¾Ê´Ù. ¿ì¸®°¡ ÇØ¾ß ÇÒ °ÍÀº ´ÜÁö /usr/apache/man °æ·Î¸¦ /usr/share/misc/man.conf¿¡ Ãß°¡ÇÏ´Â °Í »ÓÀÌ´Ù.

/usr/share/misc/man.conf ÆÄÀÏÀ» ¼öÁ¤ÇÑ´Ù. MANPATH·Î ½ÃÀÛÇÏ´Â ´Ù¸¥ ÁÙ ¾Æ·¡¿¡ MANPATH /usr/apache/man À̶ó´Â ÁÙÀ» Ãß°¡ÇÑ´Ù.

/etc/init.d/apache ºÎÆ®½ºÅ©¸³Æ®ÀÇ »ý¼º

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï /etc/init.d/apache ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

#!/bin/sh # Begin /etc/init.d/apache case "$1" in start) echo -n "Starting Apache HTTP daemon..." /usr/apache/bin/apachectl start ;; stop) echo -n "Stopping Apache HTTP daemon..." /usr/apache/bin/apachectl stop ;; restart) echo -n "Restarting Apache HTTP daemon..." /usr/apache/bin/apachectl restart ;; force-restart) echo -n "Stopping Apache HTTP daemon..." /usr/apache/bin/apachectl stop sleep 1 echo -n "Starting Apache HTTP daemon..." /usr/apache/bin/apachectl start ;; *) echo "Usage: $0 {start|stop|restart|force-restart}" ;; esac # End /etc/init.d/apache

±ÇÇÑ°ú ½Éº¼¸¯ ¸µÅ©ÀÇ ¼³Á¤

chmod 755 /etc/init.d/apache ¸¦ ½ÇÇàÇÏ¿© ¾Ë¸ÂÀº ±ÇÇÑÀ» ¼³Á¤ÇÑ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÇÊ¿äÇÑ ½Éº¼¸¯ ¸µÅ©µéÀ» ¸¸µç´Ù:

cd /etc/rc2.d; ln -s ../init.d/apache S50apache cd ../rc0.d; ln -s ../init.d/apache K50apache cd ../rc6.d; ln -s ../init.d/apache K50apache

TelnetÀÇ ¼³Á¤ telnet µ¥¸ó°ú Ŭ¶óÀ̾ðÆ®ÀÇ ¼³Ä¡

Netkit-telnetÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

/etc/inetd.conf ¼³Á¤ÆÄÀÏÀ» ¸¸µç´Ù.

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï /etc/inetd.conf ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

# Begin /etc/inetd.conf telnet stream tcp nowait root /usr/sbin/in.telnetd # End /etc/inetd.conf

/etc/init.d/inetd ºÎÆ®½ºÅ©¸³Æ®ÀÇ »ý¼º

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï /etc/init.d/inetd ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

#!/bin/sh # Begin /etc/init.d/inetd check_status() { if [ $? = 0 ] then echo "OK" else echo "FAILED" fi } case "$1" in start) echo -n "Starting Internet Server daemon..." start-stop-daemon -S -q -o -x /usr/sbin/inetd check_status ;; stop) echo -n "Stopping Internet Server daemon..." start-stop-daemon -K -q -o -p /var/run/inetd.pid check_status ;; reload) echo -n "Reloading Internet Server configuration file..." start-stop-daemon -K -q -s 1 -p /var/run/inetd.pid check_status ;; restart) echo -n "Stopping Internet Server daemon..." start-stop-daemon -K -q -o -p /var/run/inetd.pid check_status sleep 1 echo -n "Starting Internet Server daemon..." start-stop-daemon -S -q -o -x /usr/sbin/inetd check_status ;; *) echo "Usage: $0 {start|stop|reload|restart}" ;; esac # End /etc/init.d/inetd

±ÇÇÑ°ú ½Éº¼¸¯ ¸µÅ©ÀÇ ¼³Á¤

chmod 755 /etc/init.d/inetd ¸¦ ½ÇÇàÇÏ¿© ¾Ë¸ÂÀº ±ÇÇÑÀ» ¼³Á¤ÇÑ´Ù. ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ÇÊ¿äÇÑ ½Éº¼¸¯ ¸µÅ©µéÀ» ¸¸µç´Ù:

cd /etc/rc2.d; ln -s ../init.d/inetd S30inetd cd ../rc0.d; ln -s ../init.d/inetd K30inetd cd ../rc6.d; ln -s ../init.d/inetd K30 inetd

PPPÀÇ ¼³Á¤ Ä¿³Î ¼³Á¤Çϱâ

¿©·¯ºÐÀÌ ÀÎÅͳݿ¡ ¿¬°áµÇ±â Àü¿¡ Ä¿³ÎÀÌ ppp¸¦ Áö¿øÇØ¾ß ÇÑ´Ù. ÀÌ´Â Ä¿³Î ¾È¿¡ ppp Áö¿øÀ» Á÷Á¢ ³Ö¾î¼­ ÄÄÆÄÀÏÇϰųª ppp µå¶óÀ̹ö¸¦ ÇÊ¿äÇÒ ¶§ ·ÎµåÇÒ ¼ö ÀÖ´Â ¸ðµâ·Î ¸¸µêÀ¸·Î½á °¡´ÉÇÏ´Ù. ¾î¶² ¹æ¹ýÀ» ¼±ÅÃÇϵç ÇÊ¿äÇÏ´Ù¸é Áö±Ý Ä¿³ÎÀ» Àç ÄÄÆÄÀÏÇÏ¿© ÀÛ¾÷À» Ç϶ó. ÀÌ¹Ì ¿©·¯ºÐÀÇ LFS Ä¿³ÎÀÌ ppp¸¦ Áö¿øÇÑ´Ù¸é Ä¿³ÎÀ» Àç¼³Á¤ÇÒ ÇÊ¿ä´Â ¾ø´Ù.

groupÀÇ »ý¼º

groupadd -g7 daemon À» ½ÇÇàÇÏ¿© damon groupÀ» ¸¸µç´Ù.

PPPÀÇ ¼³Ä¡

PPPÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

/etc/resolv.conf »ý¼º

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï /etc/resolv.conf ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

# Begin /etc/resolv.conf nameserver <IP address of your ISP's primary DNS server> nameserver <IP address of your ISP's secundary DNS server> # End /etc/resolv.conf

/etc/ppp/peers/provider ÆÄÀÏ ¸¸µé±â

/etc/ppp/peers µð·ºÅ丮¸¦ ¸¸µç´Ù. ¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï /etc/ppp/peers/provider ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

# Begin /etc/ppp/peers/provider noauth connect "/usr/sbin/chat -v -f /etc/chatscripts/provider" /dev/ttyS1 115200 defaultroute noipdefault # End /etc/ppp/peers/provider

/etc/chatscripts/provider ¸¸µé±â

/etc/chatscripts µð·ºÅ丮¸¦ ¸¸µç´Ù. ¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï /etc/chatscripts/provider ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

# Begin /etc/chatscripts/provider ABORT BUSY ABORT "NO CARRIER" ABORT VOICE ABORT "NO DIALTONE" ABORT "NO ANSWER" "" ATZ OK ATDT <ISP's phonenumber> TIMEOUT 35 CONNECT '' TIMEOUT 10 ogin: \q<username> TIMEOUT 10 assword: \q<mysecretpassword> # End /etc/chatscripts/provider

¾ÏÈ£ ÀÎÁõ¿¡¼­ ÁÖÀÇÇÒ »çÇ×

¿¹Á¦ ½ºÅ©¸³Æ®µé¿¡¼­ º¸µíÀÌ (À̰͵éÀº ³»°¡ X¸¦ ¾²Áö ¾ÊÀ» ¶§ ½ÇÁ¦·Î »ç¿ëÇÏ´Â ½ºÅ©¸³Æ®µéÀÌ´Ù) À§¿¡¼­ ³ª´Â ³» ISP·Î papÀ̳ª chapÀ» ÅëÇÑ ÀÎÁõ ´ë½Å chatscripts¸¦ ÀÌ¿ëÇÏ¿© Á¢¼ÓÇÏ¿´´Ù. ³» ISP°¡ pap¸¦ Áö¿øÇϱä ÇÏÁö¸¸ ³ª´Â ÀÌ Àå/´ÜÁ¡À» ¸ðµÎ °¡Áø ¾à°£ ´Ù¸¥ ¹æ½ÄÀ¸·Î Çϱâ·Î °áÁ¤ÇÏ¿´´Ù. ³» °æ¿ì¿¡ ÀåÁ¡ÀÌ ´ÜÁ¡º¸´Ù ¸¹´Ù. ÀÌ ¹æ½ÄÀ¸·Î ³ª´Â ³» Á¢¼Ó °úÁ¤¿¡ ´ëÇÑ ´õ ¸¹Àº Á¦¾î±ÇÀ» °¡Áú ¼ö ÀÖ°í ¾ðÁ¦ ¾î¶² ÀÏÀÌ ÀϾ´ÂÁö¸¦ ´õ ÀÚ¼¼È÷ ¾Ë ¼ö ÀÖ¾ú´Ù.

¿¹¸¦ µé¾î ³»°¡ Á¢¼ÓÇÒ ¶§ ´ëºÎºÐ ³ª´Â tail -f /var/log/syslog ¸¦ ½ÇÇàÇÏ´Â À©µµ¿ì¸¦ ¿­¾î ³õ¾Æ¼­ »ç¿ëÀÚ ¸íÀ̳ª ¾ÏÈ£°¡ º¸³»Áö´Â ½Ã±â °°Àº °ÍµéÀ» Á÷Á¢ °üÂûÇÒ ¼ö ÀÖ´Ù.

³×Æ®¿÷ Ŭ¶óÀ̾ðÆ®ÀÇ ¼³Ä¡ Email Ŭ¶óÀ̾ðÆ® ¼³Ä¡Çϱâ MailxÀÇ ¼³Ä¡

MailxÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

make; make install

MuttÀÇ ¼³Ä¡

³»°¡ °¡Àå ¼±È£ÇÏ´Â email Ŭ¶óÀ̾ðÆ®°¡ MuttÀÌ¶ó¼­ ¿ì¸®´Â MuttÀ» ¼³Ä¡ÇÒ °ÍÀÌ´Ù. MuttÀÌ ¾Æ´Ñ ¿©·¯ºÐÀÌ ÁÁ¾ÆÇÏ´Â ´Ù¸¥ Ŭ¶óÀ̾ðÆ®¸¦ ¼³Ä¡Çصµ ¹«¹æÇÏ´Ù.

¸¸¾à ¿©·¯ºÐÀÌ ¾²·Á´Â Ŭ¶óÀ̾ðÆ®°¡ X À©µµ¿ì¿ëÀ̶ó¸é (Netscape Mail °°Àº) ¿ì¸®°¡ X¸¦ ¼³Ä¡ÇÒ ¶§±îÁö °¡¸¸È÷ ¾É¾Æ¼­ ±â´Ù·Á¾ß ÇÑ´Ù.

MuttÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

FetchmailÀÇ ¼³Ä¡

FetchmailÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

email ½Ã½ºÅÛÀÇ °Ë»ç

ÀÌÁ¦ email ½Ã½ºÅÛÀ» °Ë»çÇÒ ¶§ÀÌ´Ù.

/usr/sbin/sendmail -bd ¸¦ ½ÇÇàÇÏ¿© SendmailÀ» ½ÇÇàÇÑ´Ù (¿©·¯ºÐÀº ¿ÏÀüÇÑ °æ·Î¸¦ »ç¿ëÇÏ¿© sendmailÀ» ½ÇÇàÇÏ¿©¾ß ÇÑ´Ù. ±×·¸Áö ¾ÊÀ¸¸é kill -1 <sendmail pid> À» ½ÇÇàÇÏ¿© sendmailÀÌ ¸®·Îµå µÇµµ·Ï ÇÒ ¼ö ¾ø´Ù. echo "this is an email test" | mail -s test root ¸¦ ½ÇÇàÇÏ¿© ¿©·¯ºÐ Àڽſ¡°Ô ¸ÞÀÏÀ» º¸³½´Ù. mail ÇÁ·Î±×·¥À» ½ÇÇà½ÃÄ×À» ¶§ ¿©·¯ºÐÀÇ ¸ÞÀÏÀ» ºÁ¾ß Á¤»óÀÌ´Ù. useradd -m testuser; passwd testuser ¸¦ ½ÇÇàÇÏ¿© »õ »ç¿ëÀÚ¸¦ ¸¸µç´Ù. echo "test mail to testuser" | mail -s test testuser ¸¦ ½ÇÇàÇÏ¿© testuser¿¡°Ô ¸ÞÀÏÀ» º¸³½´Ù. testuser·Î ·Î±äÇÑ ÈÄ (¸ÞÀÏ ÇÁ·Î±×·¥À» ÀÌ¿ëÇÏ¿©) À̸ÞÀÏÀÌ ¿Ô´ÂÁö¸¦ °Ë»çÇÏ°í testuser¿¡°Ô ¸ÞÀÏÀ» º¸³Â´ø °Í°ú °°Àº ¹æ¹ýÀ¸·Î root¿¡°Ô ¸ÞÀÏÀ» º¸³½´Ù.

¸ðµç°Ô Àß µ¿ÀÛÇß´Ù¸é ¿©·¯ºÐÀº ·ÎÄà À̸ÞÀÏ¿¡ ´ëÇؼ± Á¤»óÀûÀ¸·Î ÀÛµ¿ÇÏ´Â À̸ÞÀÏ ½Ã½ºÅÛÀ» °¡Áö°Ô µÈ °ÍÀÌ´Ù. ¾ÆÁ÷Àº ÀÎÅͳݿ¡µµ ¾µ ¼ö ÀÖÀ» ÇÊ¿ä´Â ¾ø´Ù. userdel -r testuser ¸¦ ½ÇÇàÇÏ¿© testuser¸¦ Áö¿ï ¼ö ÀÖ´Ù.

FTP Ŭ¶óÀ̾ðÆ®ÀÇ ¼³Ä¡ Netkit-ftpÀÇ ¼³Ä¡

Netkit-ftpÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

FTP ½Ã½ºÅÛÀÇ °Ë»ç

/etc/init.d/proftpd start ¸¦ ½ÇÇàÇÏ¿© Pro ftp µ¥¸óÀ» ½ÃÀÛ½ÃŲ´Ù. ftp localhost ¸¦ ½ÇÇàÇÏ¿© ·ÎÄà ȣ½ºÆ®·ÎÀÇ ftp ¿¬°áÀ» ¿¬´Ù. anonymous »ç¿ëÀÚ·Î ·Î±äÇÑ ÈÄ ·Î±×¾Æ¿ôÇÑ´Ù.

HTTP Ŭ¶óÀ̾ðÆ®ÀÇ ¼³Ä¡ ZlibÀÇ ¼³Ä¡

Zlib´Â PKwareÀÇ zipÀ̳ª unzip °°Àº ÇÁ·Î±×·¥µé¿¡¼­ »ç¿ëµÇ´Â ¾ÐÃà ¶óÀ̺귯¸®ÀÌ´Ù. ƯÁ¤ ÆÄÀϵéÀ» ¾ÐÃàÇϱâ À§Çؼ­ Lynx°¡ ÀÌ ¶óÀ̺귯¸®¸¦ ¾µ ¼ö ÀÖ´Ù.

ZlibÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure --shared make; make install

LynxÀÇ ¼³Ä¡

LynxÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure --libdir=/etc --with-zlib make; make install make install-help; make install-doc

HTTP ½Ã½ºÅÛÀÇ °Ë»ç

/etc/init.d/apache start ¸¦ ½ÇÇàÇÏ¿© Apache http µ¥¸óÀ» ½ÃÀÛ½ÃŲ´Ù. lynx http://localhost ¸¦ ½ÇÇàÇÏ¿© ·ÎÄà ȣ½ºÆ®·ÎÀÇ http ¿¬°áÀ» ¿¬´Ù. lynx¸¦ ³¡³½´Ù.

ÅÚ³Ý Å¬¶óÀ̾ðÆ®ÀÇ ¼³Ä¡

¾Õ Àå¿¡¼­ ÅÚ³Ý µ¥¸óÀ» ¼³Ä¡ÇÒ ¶§ ÀÌ¹Ì ÅÚ³Ý Å¬¶óÀ̾ðÆ®°¡ ±ò·È´Ù.

ÅÚ³Ý ½Ã½ºÅÛÀÇ °Ë»ç

/etc/init.d/inetd start¸¦ ½ÇÇàÇÏ¿© ÀÎÅÍ³Ý ¼­¹ö µ¥¸óÀ» ½ÇÇàÇÑ´Ù (telnetd¸¦ Æ÷ÇÔÇÏ¿©). telnet localhost ¸¦ ½ÇÇàÇÏ¿© ·ÎÄà ȣ½ºÆ®·ÎÀÇ ÅÚ³Ý ¿¬°áÀ» ¿¬´Ù. ·Î±äÇÑ ÈÄ È£±×¾Æ¿ôÇÑ´Ù.

PPP Ŭ¶óÀ̾ðÆ®ÀÇ ¼³Ä¡ ¿¬°á ½ºÅ©¸³Æ® ÀÛ¼ºÇϱâ

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï /usr/bin/pan ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù.

#!/bin/sh # Begin /usr/bin/pon /usr/sbin/pppd call provider # End /usr/bin/pon

¿¬°á Á¾·á ½ºÅ©¸³Æ® ÀÛ¼ºÇϱâ

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï /usr/bin/poff ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù.

#!/bin/sh # Begin /usr/bin/poff set -- `cat /var/run/ppp*.pid` case $# in 0) kill -15 `ps axw|grep "pppd call [[allnum:]]+"|grep -v grep|awk '{print $1}'` exit 0 ;; 1) kill -15 $1 exit 0 ;; esac # End /usr/bin/poff

PPP ½Ã½ºÅÛÀÇ °Ë»ç

panÀ» ½ÇÇàÇÏ¿© ÀÎÅͳݿ¡ ¿¬°áÇÑ´Ù. http://www.linuxfromscratch.org °°Àº »çÀÌÆ®¿¡ Á¢¼ÓÇØ º»´Ù. poff¸¦ ½ÇÇàÇÏ¿© ÀÎÅͳÝÀ¸·ÎÀÇ ¿¬°áÀ» ²÷´Â´Ù.

X À©µµ¿ì ½Ã½ºÅÛÀÇ ¼³Ä¡ XÀÇ ¼³Ä¡

XÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

make World make install; make install.man

ÄÄÆÄÀÏ °úÁ¤µ¿¾È ¿©·¯ºÐÀº "makedepend" ½ºÅ©¸³Æ®°¡ stddef.h¿Í stdarg.h, float.h ÇØ´õ ÆÄÀÏÀ» ãÀ» ¼ö ¾ø´Ù´Â ¿¡·¯¸¦ ¸¸³¯ Áöµµ ¸ð¸¥´Ù. ÄÄÆÄÀÏ ÀÚü´Â ÄÄÆÄÀÏ ¿¡·¯ ¾øÀÌ Àß µÇ¹Ç·Î ±× ½ºÅ©¸³Æ®°¡ ÄÄÆÄÀÏ·¯¸¸Å­ ¶È¶ÈÇÏÁö ¾ÊÀº °ÍÀÌ´Ù. ´õ±º´Ù³ª, ÀϺΠ½Éº¼¸¯ ¸µÅ©µéÀ» ¸¸µå´Â °ÍÀÌ ¹®Á¦¸¦ ÇØ°áÇÏÁø ¾Ê´Â´Ù. ´Ù¸¸ ´õ ¸¹Àº ¹®Á¦¸¦ ÀÏÀ¸Å³ »ÓÀÌ´Ù.

µû¶ó¼­ ¿©·¯ºÐÀÌ ¸¸³ª°Ô µÉ ¸¹Àº makedepend ¿¡·¯µéÀ» ±×³É ¹«½ÃÇÏ´Â°Ô ÁÁ´Ù. "pointer targets in passing arg x of somefunction differ in signedness" °°Àº ¿¡·¯µµ ÀÖ´Ù. ±× ÆÄÀϵéÀ» ¿øÇÑ´Ù¸é ¼öÁ¤ÇÒ ¼öµµ ÀÖÁö¸¸ ³ª´Â ±×·¯Áö ¾Ê¾Ò´Ù.

/etc/ld.so.conf ¸¸µé±â

¾Æ·¡¸¦ Æ÷ÇÔÇϵµ·Ï /etc/ld.so.conf ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù:

# Begin /etc/ld.so.conf /lib /usr/lib /usr/X11R6/lib # End /etc/ld.so.conf

ldconfigÀ» ½ÇÇàÇÏ¿© µ¿Àû ·Î´õ ij½¬¸¦ °»½ÅÇÑ´Ù.

/usr/include/X11 ½Éº¼¸¯ ¸µÅ©ÀÇ »ý¼º

Àü󸮱Ⱑ X11/*.h ÆÄÀϵéÀ» ãÀ» ¼ö ÀÖµµ·Ï (¼Ò½º ÄÚµåÀÇ #include ¹®Àå¿¡¼­ º¼ ¼ö ÀÖ´Ù) ´ÙÀ½Ã³·³ ½Éº¼¸¯ ¸µÅ©¸¦ ¸¸µç´Ù: ln -s /usr/X11R6/include/X11 /usr/include/X11

Creating the /usr/X11 symlink /usr/X11 ½Éº¼¸¯ ¸µÅ©ÀÇ »ý¼º

Á¾Á¾ ¼ÒÇÁÆ®¿þ¾î°¡ ÆÄÀϵéÀ» /usr/X11·Î º¹»çÇϱ⠶§¹®¿¡ ¿©·¯ºÐÀÌ XÀÇ ¾î¶² ¸±¸®Á ¾²°í ÀÖ´ÂÁö ¾Ë ÇÊ¿ä°¡ ¾ø´Ù. ÀÌ ½Éº¼¸¯ ¸µÅ©´Â XÀÇ ¼³Ä¡ °úÁ¤¿¡¼­ »ý¼ºµÇÁö ¾ÊÀ¸¹Ç·Î ¿ì¸®°¡ Á÷Á¢ ¸¸µé¾î¾ß ÇÑ´Ù.

ln -s /usr/X11R6 /usr/X11 ¸¦ ½ÇÇàÇÏ¿© /usr/X11 ½Éº¼¸¯ ¸µÅ©¸¦ ¸¸µç´Ù.

/usr/X11/binÀ» $PATH ȯ°æ º¯¼ö¿¡ Ãß°¡Çϱâ

/usr/X11/bin °æ·Î¸¦ $PATH ȯ°æ º¯¼ö¿¡ Ãß°¡ÇÏ´Â ¹æ¹ý¿£ ¸î °¡Áö°¡ ÀÖ´Ù. ±× Áß Çϳª´Â ¾Æ·¡¿Í °°´Ù:

export PATH=$PATH:/usr/X11/bin À» Æ÷ÇÔÇϵµ·Ï /root/.bashrc ÆÄÀÏÀ» »õ·Î ¸¸µç´Ù.

¼öÁ¤ »çÇ×À» Àû¿ëÇϱâ À§Çؼ± ´Ù½Ã ·Î±äÇØ¾ß ÇÑ´Ù. ¶Ç´Â Á÷Á¢ export PATH=$PATH:/usr/X11/bin À» ½ÇÇàÇÏ¿© °æ·Î¸¦ °»½ÅÇÒ ¼öµµ ÀÖ´Ù.

XÀÇ ¼³Á¤

xf86configÀ» ½ÇÇàÇÏ¿© X ¼­¹ö¸¦ ¼³Á¤ÇÑ´Ù.

xf86config¿¡ ÀÇÇØ ¸¸µé¾îÁö´Â XF86Config ÆÄÀÏÀÌ ¸¸Á·½º·´Áö ¸øÇÏ´Ù¸é ±âÁ¸ÀÇ ¸®´ª½º ½Ã½ºÅÛ¿¡¼­ ¾²°í ÀÖ´ø XF86Config ÆÄÀÏÀ» /etc·Î º¹»çÇÏ´Â °Íµµ ÁÁÀº ¹æ¹ýÀÌ´Ù. xf86config ÇÁ·Î±×·¥ÀÌ Áö¿øÇÏÁö ¾Ê´Â Ưº°ÇÑ ¼öÁ¤ »çÇ×ÀÌ ÇÊ¿äÇÑ °æ¿ì¿£ ÀÌ·¸°Ô ÇØ¾ß ÇÒ °ÍÀÌ´Ù. ¶ÇÇÑ Á÷Á¢ XF86Config ÆÄÀÏÀ» ¼öÁ¤ÇÒ ¼öµµ ÀÖ´Ù. ÀÌ ¹æ¹ýÀº ¿©·¯ºÐÀÌ ¼öÁ¤ÇØ¾ß ÇÒ °ÍÀ» Á¤È®È÷ ±â¾ïÇÏÁö ¸øÇÑ´Ù¸é ¸Å¿ì ½Ã°£ ¼Ò¸ðÀûÀÎ ÀÛ¾÷ÀÌ µÉ °ÍÀÌ´Ù.

XÀÇ Å×½ºÆ®

ÀÌÁ¦ X°¡ ¾Ë¸Â°Ô ¼³Á¤ÀÌ µÇ¾î¼­ óÀ½À¸·Î ½ÃÇèÀ» ÇØ º¼ ½ÃÁ¡ÀÌ´Ù.

startx¸¦ ½ÇÇàÇÏ¿© X ¼­¹ö¸¦ ½ÃÀÛ½ÃŲ´Ù.

X ¼­¹ö°¡ ½ÃÀÛµÇ°í ¼¼ °³ÀÇ xtermÀÌ ½ºÅ©¸°¿¡ ¶°¾ß ÇÑ´Ù. ¸¸¾à ÀÌ·¸´Ù¸é X°¡ Àß µµ´Â °ÍÀÌ´Ù.

Window MakerÀÇ ¼³Ä¡

³ª´Â À©µµ¿ì ¸Þ´ÏÀú·Î Window Maker¸¦ ¼³Ä¡Çϱâ·Î °áÁ¤Çß´Ù. ÀÌ´Â ³»°¡ ²Ï ¿À·§µ¿¾È WindowMaker¸¦ »ç¿ëÇØ ¿Ô°í ÀÌ¿¡ ¸Å¿ì ¸¸Á·ÇÏ°í Àֱ⠶§¹®ÀÌ´Ù. ¿ª½Ã³ª ¿©·¯ºÐÀº ³»°¡ ÇÏ´Â ´ë·Î ¶È°°ÀÌ ÇÒ ÇÊ¿ä´Â ¾ø´Ù. ¿©·¯ºÐÀÌ ¿øÇÏ´Â °ÍÀ» ¼³Ä¡Çصµ µÈ´Ù. ¾Ë´Ù½ÃÇÇ ¿©·¯ºÐÀº ¿©·¯ °³ÀÇ À©µµ¿ì ¸Þ´ÏÀúµéÀ» µ¿½Ã¿¡ ¼³Ä¡ÇÏ°í $HOME/.xinitrc (ȤÀº xdmÀ» ¾²´Â °æ¿î $HOME/.xsession) ÆÄÀÏ ¾È¿¡¼­ ÁöÁ¤À» ÇÏ¿© ¾î¶² °ÍÀ» ½ÇÇàÇÒÁö ¼±ÅÃÇÒ ¼ö ÀÖ´Ù.

Window Maker ¼³Ä¡¸¦ À§ÇÑ ½Ã½ºÅÛÀÇ Áغñ libPropListÀÇ ¼³Ä¡

libPropListÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

libXpmÀÇ ¼³Ä¡

libXpmÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

xmkmf; make Makefiles; make includes; make depend cd lib; make; make install cd ..; make; make install

Makefileµé Áß ÇϳªÀÇ ¹ö±×¶§¹®¿¡ ¾à°£ ´Ù¸¥ ¼³Ä¡ ¹æ¹ýÀÌ ÇÊ¿äÇÏ´Ù. ÀÌ ÆÐÅ°ÁöÀÇ ¼³Ä¡´Â ¾ÆÁ÷ ¼³Ä¡µÇÁö ¾ÊÀº lib µð·ºÅ丮ÀÇ ÆÄÀϵ鿡 ÀÇÁ¸Çϴµ¥ lib µð·ºÅ丮 ¾È¿¡¼­ ±× ÆÄÀϵéÀ» ãÁö ¾Ê´Â´Ù. µû¶ó¼­ ¿ì¸®´Â ±× ÆÄÀϵéÀ» ½ÇÁ¦ ÆÐÅ°ÁöÀÇ ÄÄÆÄÀÏ ÀÌÀü¿¡ ¸ÕÀú ¼³Ä¡ÇØ¾ß ÇÑ´Ù.

libpngÀÇ ¼³Ä¡

libpngÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

make -f scripts/makefile.lnx; make -f scripts/makefile.lnx install

libtiffÀÇ ¼³Ä¡

libtiffÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

libjpegÀÇ ¼³Ä¡

libjepgÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure --enable-shared --enable-static make; make install

libungifÀÇ ¼³Ä¡

libungifÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

WindowMakerÀÇ ¼³Ä¡

WindowMakerÀÇ ¾ÐÃàÆÄÀÏÀ» Ç®°í ¾Æ·¡¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÑ´Ù:

./configure make; make install

µ¿Àû ·Î´õ ij½¬ÀÇ °»½Å

ldconfigÀ» ½ÇÇàÇÏ¿© µ¿Àû ·Î´õ ij½¬¸¦ °»½ÅÇÑ´Ù.

WindowMakerÀÇ ¼³Á¤

WindowMaker¸¦ ¾²·Á´Â »ç¿ëÀÚ´Â ½ÇÁ¦ »ç¿ë Àü¿¡ wmaker.inst ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇØ¾ß ÇÑ´Ù. ÀÌ ½ºÅ©¸³Æ®´Â ÇÊ¿äÇÑ ÆÄÀϵéÀ» »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮¿¡ º¹»çÇÑ ÈÄ $HOME/.xinitrc ÆÄÀÏÀ» ¼öÁ¤ÇÑ´Ù (¸¸¾à ±× ÆÄÀÏÀÌ ¾ø´Ù¸é »ý¼ºÇÑ´Ù).

wmaker.inst¸¦ ½ÇÇàÇÏ¿© Á÷Á¢ WindowMaker¸¦ ¼³Á¤ÇÑ´Ù.

WindowMakerÀÇ °Ë»ç

startx¸¦ ½ÇÇàÇÏ¿© X ¼­¹ö¸¦ ½ÃÀÛÇÑ ÈÄ WindowMaker À©µµ¿ì ¸Þ´ÏÀú°¡ Á¦´ë·Î ½ÃÀÛÇÏ´ÂÁö È®ÀÎÇÑ´Ù.

ÀÚ·áµé

¿©·¯ºÐÀÌ ´Ù¿î·Îµå ¹Þ°Å³ª »ì¸¸ÇÑ À¯¿ëÇÑ Ã¥, ÇÏ¿ìÅõ, ¿©Å¸ ´Ù¸¥ ¹®¼­µéÀÇ ¸ñ·ÏÀÌ ¾Æ·¡¿¡ ÀÖ´Ù. ÀÌ ¸ñ·ÏÀº ½ÃÀÛÇϱâ À§ÇÑ ÀϺκÐÀÌ´Ù. ¿ì¸®°¡ ´õ À¯¿ëÇÑ ¹®¼­³ª Ã¥µéÀ» ¾Ë°Ô µÇ¾î ÀÌ ¸ñ·ÏÀÌ ´Ã¾î³ª±â¸¦ Èñ¸ÁÇÑ´Ù.

Ã¥

Sendmail published by O'Reilly. ISBN: 1-56592-222-0 Linux Network Administrator's Guide published by O'Reilly. ISBN: 1-56592-087-2 Running Linux published by O'Reilly. ISBN: 1-56592-151-8

ÇÏ¿ìÅõ ¹®¼­µé

ISP-Hookup-HOWTO at Linux Network Administrator's Guide online at

±âŸ

´Ù¾çÇÑ ¸Þ´º¾ó°ú info ÆäÀÌÁöµéÀÌ ÆÐÅ°Áöµé¿¡ µþ·ÁÀÖ´Ù.

¸ÎÀ½¸»

¿©·¯ºÐÀº Linux From Scratch HOWTOÀÇ ³¡¿¡ µµ´ÞÇß´Ù. ³ª´Â ÀÌ °æÇèÀÌ ¿©·¯ºÐÀÌ ¸®´ª½º¸¦ ´õ Àß ¾Ë°Ô µÇ´Â µ¥¿¡ µµ¿òÀÌ µÇ¾ú±â¸¦ ¹Ù¶õ´Ù. ¿©·¯ºÐÀÌ ÀÌ ¹®¼­¿¡¼­ ´Ù·ç¾îÁ®¾ß ÇÑ´Ù°í »ý°¢ÇÏ´Â °Í (¿À·ù ¼öÁ¤À̳ª ¿©·¯ºÐÀÌ Áß¿äÇÏ´Ù »ý°¢ÇÏÁö¸¸ ÀÌ ¹®¼­¿¡ ºüÁ®ÀÖ´Â ±âŸ ¼ÒÇÁÆ®¿þ¾îµé) ÀÌ ÀÖ´Ù¸é ¿ì¸®¿¡°Ô ¾Ë·Á´Þ¶ó. ¿©·¯ºÐÀÇ µµ¿ò, Á¦¾È°ú ÇÔ²² ÀÌ HWOTO´Â ´õ¿í °³¼±µÉ ¼ö ÀÖ´Ù.

¿ªÀÚÁÖ: Á¶¸¸°£ v2.4°¡ releaseµÉ °Í °°½À´Ï´Ù. 5¿ù 4ÀÏÀÚ·Î(5ÀÏÀÌ´ø°¡? --;) v2.3.2°¡ release µÇ¾ú´Âµ¥ »ó´çÈ÷ stable ÇÏ´Ù°í ÇÕ´Ï´Ù. v2.2ÀÇ bugµéµµ »ó´ç·® fixµÇ¾ú´Ù´Â±º¿ä. v2.4 ºÎÅÍ´Â ±×´ë·Î ½á¸ÔÀ» ¼ö ÀÖÀ» Á¤µµ·Î ¾ÈÁ¤ÀûÀÌ µÇ¾úÀ¸¸é ÁÁ°Ú±º¿ä:) ´õºÒ¾î... v2.3 ºÎÅÍ LinuxDoc DTD°¡ ¾Æ´Ñ DocBook DTD¸¦ »ç¿ëÇÏ´ÂÁö¶ó ¹ø¿ª ÀÛ¾÷À» ¾îÂî ÇؾßÇÒ Áöµµ ³­°¨..:(

Copyright & Licensing Information

Copyright (C) 1999 by Gerard Beekmans. This document may be distributed only subject to the terms and conditions set forth in the LDP License at .

It is not necessary to display the license notice, as described in the LDP License, when only a small part of this document (the HOWTO) is quoted for informational or similar purposes. However, I do require you to display with the quotation(s) a line similar to the following line: "Quoted from the LFS-HOWTO at

Àǹ̸¦ ±×´ë·Î º¸Á¸ÇÏ°í È¿·Â »ó½ÇÀ» ¸·±â À§ÇØ Copyright¿Í License ºÎºÐÀº ¹ø¿ªÇÏÁö ¾Ê½À´Ï´Ù.