· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Docbook Sgml/Loopback-Root-FS-HOWTO

You are not allowed to 'Keywords'


The Loopback Root Filesystem HOWTO

The Loopback Root Filesystem HOWTO

Andrew M. Bishop

±èÇöÁ¾

v1.1, 24 September 1999

º» ¹®¼­´Â ·çÇÁ¹é µð¹ÙÀ̽º¸¦ ÀÌ¿ëÇØ º°µµÀÇ ÆÄƼ¼Ç ºÐÇÒÀÛ¾÷ ¾øÀÌ µµ½º ÆÄƼ¼Ç¿¡ ¸®´ª½º ½Ã½ºÅÛÀ» ¼³Ä¡ÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÕ´Ï´Ù. ¶Ç, ÀÌ ±â¼úÀÇ ´Ù¸¥ ÀÀ¿ëµµ ´Ù·ê °ÍÀÔ´Ï´Ù.


1. ¼Ò°³

1.1. ÀúÀÛ±Ç

The Loopback Root Filesystem HOWTO Copyright (C) 1998,99 Andrew M. Bishop (amb@gedanken.demon.co.uk).

This documentation is free documentation; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

The GNU General Public License is available from http://www.fsf.org/ or, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA


1.2. Revision History

Version 1.0.0

Initial Version (June 1998)

Version 1.0.1-1.0.3

Slight Modifications, kernel version changes, typos etc. (1998 - July 1999)

Version 1.1

Added Copyright Information and Re-Submitted (September 1999)


2. ·çÇÁ¹é µð¹ÙÀ̽º¿Í ·¥µð½ºÅ©ÀÇ ¿ø¸®

¿ì¼± ·çÇÁ¹é ÆÄÀϽýºÅÛÀ» ·çÆ®µð¹ÙÀ̽º·Î ¼³Á¤ÇÏ´Â ¿ø¸® ¸î°¡Áö¸¦ ¼³¸íÇÏ°Ú½À´Ï´Ù.


2.1. ·çÇÁ¹é µð¹ÙÀ̽º

¸®´ª½ºÀÇ ·çÇÁ¹é µð¹ÙÀ̽º´Â °¡»óÀÇ µð¹ÙÀ̽º·Î¼­ ½ÇÁ¦ÀÇ ¹Ìµð¾î µð¹ÙÀ̽º¿Í ¶È°°ÀÌ Ãë±ÞµË´Ï´Ù.

ÀϹÝÀûÀÎ ½ÇÁ¦ µð¹ÙÀ̽ºÀÇ ¿¹·Î´Â /dev/hda1, /dev/hda2, /dev/sda1 µîÀÇ Çϵåµð½ºÅ© ÆÄƼ¼ÇµéÀ̳ª /dev/fd0 ¿Í °°Àº Ç÷ÎÇÇ µð¹ÙÀ̽ºµîÀ» µé ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± µð¹ÙÀ̽ºµéÀº ¸ðµÎ ÆÄÀÏ¹× µð·ºÅ丮 ±¸Á¶¸¦ ´ã´Â µð¹ÙÀ̽ºµéÀÔ´Ï´Ù. À̵éÀ» »ç¿ëÇÏ·Á¸é ƯÁ¤ ÆÄÀϽýºÅÛ(ext2fs, msdos, ntfs µîµî)À¸·Î Æ÷¸ËÇÑ ÈÄ ¸¶¿îÆ®ÇØ¾ß ÇÕ´Ï´Ù.

·çÇÁ¹é ÆÄÀϽýºÅÛÀ̶õ ¾î¶² ÆÄÀϽýºÅÛÀÇ ÆÄÀÏ ÇÑ°³¸¦ ¸¶Ä¡ ÇϳªÀÇ µð¹ÙÀ̽ºÃ³·³ ÀνĽÃŲ °ÍÀÔ´Ï´Ù. ÀÌ ÆÄÀÏÀº ´Ù¸¥ µð¹ÙÀ̽º¿Í ¸¶Âù°¡Áö·Î Æ÷¸ËµÇ°í ¸¶¿îÆ®µÉ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇϱâÀ§Çؼ­´Â ¸ÕÀú ÀÌ È­ÀÏÀÌ /dev/loop0 ³ª /dev/loop1 µî°ú °°Àº Ư¼öÇÑ µð¹ÙÀ̽º¿Í ¿¬°áµÇ¾î¾ß ÇÕ´Ï´Ù. ±× ´ÙÀ½¿¡¾ß »õ·Î¿î °¡»óÀÇ µð¹ÙÀ̽º·Î ¸¶¿îÆ®µÉ ¼ö ÀÖ´Â °ÍÀÔ´Ï´Ù.


2.2. ·¥µð½ºÅ© µð¹ÙÀ̽º

¸®´ª½º¿¡¼­ ÆÄÀϽýºÅÛÀ¸·Î ¸¶¿îÆ® °¡´ÉÇÑ °¡»óµð¹ÙÀ̽º°¡ ¶Ç ÇÑ Á¾·ù Àִµ¥ ¹Ù·Î ·¥µð½ºÅ© µð¹ÙÀ̽ºÀÔ´Ï´Ù.

·¥µð½ºÅ©¶õ º°´Ù¸¥ ¹°¸®Àû ÀåÄ¡¸¦ ÁöĪÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó, ¹Ù·Î ¸Þ¸ð¸®ÀÇ ÀϺθ¦ µð½ºÅ©·Î ÀνĽÃŲ °ÍÀÔ´Ï´Ù. ÀÌ ¿ëµµ·Î ÇÒ´çµÇ´Â ¸Þ¸ð¸®´Â µð½ºÅ©·Î ½º¿ÒµÇÁö ¾ÊÀ¸¸ç µð½ºÅ© ij½¬¿¡ ³²°ÔµË´Ï´Ù.

·¥µð½ºÅ©´Â ·¥µð½ºÅ© µð¹ÙÀ̽ºÀÎ /dev/ram0 ³ª /dev/ram1 µî¿¡ ±â·ÏÇÔÀ¸·Î¼­ Áï°¢ ¸¸µé¼ö ÀÖ½À´Ï´Ù. ÀÌ°Í ¿ª½Ã ·çÇÁ¹é µð¹ÙÀ̽º¿Í °°Àº½ÄÀ¸·Î Æ÷¸ËÇÒ ¼öÀÖ°í ¸¶¿îÆ®µµ °¡´ÉÇÕ´Ï´Ù.

ºÎÆýà ·¥µð½ºÅ©¸¦ ÀÌ¿ëÇÒ °æ¿ì(¸®´ª½º ¹èÆ÷º»À̳ª º¹±¸¿ë µð½ºÅ©¿¡¼­ ÁÖ·Î »ç¿ëµË´Ï´Ù), µð½ºÅ© À̹ÌÁö(µð½ºÅ©ÀÇ Àüü ³»¿ëÀ» ÇϳªÀÇ ÆÄÀÏ·Î ¸¸µç °Í)°¡ ºÎÆ®Ç÷ÎÇÇ»ó¿¡ ¾ÐÃàµÈ »óÅ·ΠÀ§Ä¡ÇÏ°í ÀÖ½À´Ï´Ù. ºÎÆÃÀÌ ½ÃÀ۵Ǹé Ä¿³Î¿¡ ÀÇÇØ ÀÌ°ÍÀÌ ÀÚµ¿ÀûÀ¸·Î ¾ÐÃàÀÌ Ç®¸®¸é¼­ ·¥µð½ºÅ©·Î ·ÎµùµÈ ÈÄ ¸¶¿îÆ®µÇ°Ô µË´Ï´Ù.


2.3. Ãʱ⠷¥µð½ºÅ© µð¹ÙÀ̽º(Initial Ramdisk)

¸®´ª½ºÀÇ Ãʱ⠷¥µð½ºÅ©(Initial Ramdisk) µð¹ÙÀ̽º´Â ·çÇÁ¹é µð¹ÙÀ̽º¸¦ ·çÆ® ÆÄÀϽýºÅÛÀ¸·Î »ç¿ëÇϴµ¥ ÇÊ¿äÇÑ Áß¿äÇÑ ¸ÞÄ«´ÏÁòÀÔ´Ï´Ù.

Ãʱ⠷¥µð½ºÅ©°¡ »ç¿ëµÇ¸é, ÆÄÀϽýºÅÛ À̹ÌÁö´Â ¸Þ¸ð¸®·Î º¹»çµÈ ÈÄ ¸¶¿îÆ®µÇ°í ±× È­ÀϵéÀ» ¾×¼¼½º ÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù. ·¥µð½ºÅ©»óÀÇ Æ¯Á¤ ÇÁ·Î±×·¥(/linuxrc)ÀÌ ½ÇÇàµÈ ÈÄ Á¾·áÇϸé, ÀÌÁ¦ ´Ù¸¥ µð¹ÙÀ̽º°¡ ·çÆ® ÆÄÀϽýºÅÛÀ¸·Î¼­ ¸¶¿îÆ®µÇ°Ô µË´Ï´Ù. ±âÁ¸ÀÇ ·¥µð½ºÅ© ¿ª½Ã °è¼Ó Á¸¼ÓÇÏÁö¸¸ ÀÌ°ÍÀº /initrd ¶ó´Â µð·ºÅ丮·Î ¸¶¿îÆ®µÇ°Å³ª ¾Æ´Ï¸é /dev/initrd µð¹ÙÀ̽º¸¦ ÅëÇØ °è¼Ó »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

ÀÌ·± ¹æ½ÄÀº ´Ù¼Ò ÀÌ»óÇÏ°Ô º¸ÀÏ °ÍÀÔ´Ï´Ù. Á¤»óÀûÀÎ ºÎÆ®°úÁ¤À̶ó¸é ÁöÁ¤µÈ ·çÆ®ÆÄƼ¼ÇÀ» ¸¶¿îÆ®Çؼ­ ±×´ë·Î ½ÇÇàµÇ¸é µÉÅÙµ¥ ¿Ö ÀÌ·¸°Ô ·¥µð½ºÅ©¸¦ ¸ÕÀú ¸¶¿îÆ® Çؼ­ µ¿ÀÛ½ÃŲ ÈÄ ±×´ÙÀ½ ÁøÂ¥ ·çÆ®ÆÄƼ¼ÇÀ» ¸¶¿îÆ®ÇÒ±î¿ä? ±× ÀÌÀ¯´Â Ãʱ⠷¥µð½ºÅ©ÀÇ ¿É¼ÇÀ» »ç¿ëÇϸé ÁøÂ¥ ºÎÆ® °úÁ¤À» ½ÃÀÛÇϱ⿡ ¾Õ¼­ ·çÆ®ÆÄƼ¼ÇÀ» º¯°æÇÒ ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù.


2.4. ·çÆ® ÆÄÀϽýºÅÛ

·çÆ® ÆÄÀϽýºÅÛÀ̶õ ºÎÆÃÀÌ ³¡³­ÈÄ / µð·ºÅ丮·Î ¸¶¿îÆ®µÇ´Â µð¹ÙÀ̽º¸¦ ¸»ÇÕ´Ï´Ù.

·çÆ® ÆÄÀϽýºÅÛÀº ´Ù¸¥ ¸ðµç ÆÄÀϵéÀ» Æ÷ÇÔÇÏ°Ô µÇ´Â °ü°è·Î ´Ù¼Ò º¹ÀâÇÑ ¸éÀÌ ÀÖ½À´Ï´Ù. rc ½ºÅ©¸³Æ® ÆÄÀϵéÀ» ºÎÆÃÇÒ ¶§, À̵éÀº /etc/rc.d ³ª /etc/rc?.d µî¿¡ À§Ä¡ÇÕ´Ï´Ù. ÀÌ´Â /etc/init ÇÁ·Î±×·¥ÀÇ ¹öÀü¿¡ µû¶ó Á¶±Ý¾¿ ´Ù¸¨´Ï´Ù.

½Ã½ºÅÛÀÌ ÀÏ´Ü ºÎÆ®µÈ ÈÄ¿¡´Â ·çÆ®ÆÄƼ¼ÇÀ» ¾ð¸¶¿îÆ®Çϰųª º¯°æÇÏ´Â °ÍÀÌ ºÒ°¡´ÉÇÕ´Ï´Ù. ¿Ö³ªÇÏ¸é ´Ù¸¥ ¸ðµç ÇÁ·Î±×·¥ÀÌ ÀÌ¹Ì ÀÌ ·çÆ®ÆÄƼ¼ÇÀ» »ç¿ëÇÏ°í Àֱ⠶§¹®ÀÔ´Ï´Ù. À̶§¹®¿¡ Ãʱ⠷¥µð½ºÅ© À̹ÌÁö°¡ À¯¿ëÇÑ °ÍÀÔ´Ï´Ù. Ãʱ⠷¥µð½ºÅ©¸¦ ÀÌ¿ëÇϸé ÃÖÁ¾ÀûÀÎ ·çÆ® ÆÄƼ¼ÇÀ» ºÎÆ®½ÃÀÛ½ÃÀÇ °Í°ú ´Þ¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.


2.5. ¸®´ª½ºÀÇ ºÎÆ®°úÁ¤

ºÎÆýà Ãʱ⠷¥µð½ºÅ©ÀÇ µ¿ÀÛ°úÁ¤À» ¾Æ·¡¿¡ ¼ø¼­´ë·Î ¼­¼úÇÏ°Ú½À´Ï´Ù.

  1. Ä¿³ÎÀÌ ¸Þ¸ð¸®·Î ·ÎµåµÈ´Ù. ÀÌ ÀÏÀº LILO ³ª LOADLIN µîÀÇ ºÎÆ®·Î´õ°¡ ´ã´çÇÑ´Ù. ÀÌ °úÁ¤¿¡¼­ Loading... À̶ó´Â ¸Þ½ÃÁö¸¦ º¼¼ö ÀÖÀ» °ÍÀÌ´Ù.

  2. ·¥µð½ºÅ© À̹ÌÁö°¡ ¸Þ¸ð¸®·Î ·ÎµåµÈ´Ù. ÀÌ ÀÏ ¿ª½Ã LILO ³ª LOADLIN ÀÌ ´ã´çÇÑ´Ù. ¿©±â¼­µµ Loading... À̶ó´Â ¸Þ½ÃÁö°¡ ³ªÅ¸³¯ °ÍÀÌ´Ù.

  3. Ä¿³ÎÀÌ ÃʱâÈ­µÈ´Ù. ÀÌ °úÁ¤¿¡¼­ ¸í·ÉÇàÀÇ ¿É¼ÇµéÀÌ Çؼ®µÇ°í ·¥µð½ºÅ©¸¦ ·çÆ®µð¹ÙÀ̽º·Î ¼³Á¤ÇÏ°Ô µÈ´Ù.

  4. Ãʱ⠷¥µð½ºÅ©»óÀÇ /linuxrc ¶ó´Â ÇÁ·Î±×·¥ÀÌ ½ÇÇàµÈ´Ù.

  5. ·çÆ® µð¹ÙÀ̽º°¡ Ä¿³Î ÆĶó¸ÞÅÍ¿¡ ¼³Á¤µÈ ´ë·Î º¯°æµÈ´Ù.

  6. ÃʱâÈ­ ÇÁ·Î±×·¥ÀÎ /etc/init °¡ ½ÇÇàµÇ¾î »ç¿ëÀÚ°¡ ¼³Á¤ÇÑ ºÎÆ®°úÁ¤À» ¼öÇàÇÑ´Ù.

À̻󿡼­ Ãʱ⠷¥µð½ºÅ©¸¦ »ç¿ëÇÑ ºÎÆðúÁ¤À» °£·«È÷ ¼³¸íÇÏ¿´½À´Ï´Ù. °£·«ÇÑ ¼³¸íÀ̾úÁö¸¸ Ä¿³ÎÀÌ ¾î¶»°Ô ±âµ¿µÇ°í Ãʱ⠷¥µð½ºÅ©°¡ ¾îµð¿¡¼­ »ç¿ëµÇ´ÂÁö¸¦ ¼³¸íÇϴµ¥´Â ÃæºÐÇÕ´Ï´Ù.


3. ·çÇÁ¹é ·çÆ® µð¹ÙÀ̽º ¸¸µé±â

ÀÌÁ¦ ·çÇÁ¹é µð¹ÙÀ̽º¸¦ ¸¸µå´Â ÀϹÝÀûÀÎ ¿ø¸®¸¦ ¼³¸íÇÏ°Ú½À´Ï´Ù.


3.1. ÇÊ¿äÇÑ °Íµé

·çÇÁ¹é ·çÆ® µð¹ÙÀ̽º¸¦ ¸¸µé·Á¸é ´ÙÀ½ ¸î°¡Áö°¡ ÇÊ¿äÇÕ´Ï´Ù.

  • ÀÛ¾÷¿¡ »ç¿ëÇÒ ¸®´ª½º ½Ã½ºÅÛ

  • ´ëÇü ÆÄÀϵéÀ» ¸ñÇ¥ ÆÄƼ¼ÇÀÎ DOS ÆÄƼ¼ÇÀ¸·Î º¹»çÇÒ ¼ö´Ü

°¡Àå Áß¿äÇÑ °ÍÀº ¿ì¸®ÀÇ ÀÛ¾÷¿¡ »ç¿ëÇÒ ¸®´ª½º ½Ã½ºÅÛÀÔ´Ï´Ù. ·çÇÁ µð¹ÙÀ̽º´Â ¿ÀÁ÷ ¸®´ª½º¿¡¼­¸¸ Á¦ÀÛÇÒ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¸®´ª½º ½Ã½ºÅÛÀº Ä¿³Î ÄÄÆÄÀÏÀÌ °¡´ÉÇØ¾ß ÇÕ´Ï´Ù.

ÀÏ´Ü ·çÇÁ¹é µð¹ÙÀ̽º°¡ ¸¸µé¾îÁö¸é ÀÌ°ÍÀº ¸Å¿ì µ¢Ä¡Å« ÆÄÀÏ ÇÑ°³°¡ µË´Ï´Ù. ÇÊÀÚ´Â 80 MB Â¥¸® ÆÄÀÏ ÇÑ°³¸¦ »ç¿ëÇß½À´Ï´Ù. ÇÏÁö¸¸ X Å͹̳ÎÀ» µ¹¸± »ý°¢À̶ó¸é À̰ɷεµ ºÎÁ·Çϸç ÈξÀ ¸¹Àº ¿ë·®ÀÌ ÇÊ¿äÇÕ´Ï´Ù. ÀÌ ÆÄÀÏÀº ÃÖÁ¾ÀûÀ¸·Î´Â DOS ÆÄƼ¼ÇÀ¸·Î º¹»çµÉ °ÍÀÔ´Ï´Ù. µû¶ó¼­ ÀÌ ÀÛ¾÷À» À§Çؼ­´Â ³×Æ®¿÷À» ¾²µçÁö ¾Æ´Ï¸é »ó´ç¼öÀÇ Ç÷ÎÇÇ µð½ºÄÏÀÌ ÇÊ¿äÇÒ °ÍÀÔ´Ï´Ù.

ÇÊ¿äÇÑ ¼ÒÇÁÆ®¿þ¾î´Â ´ÙÀ½°ú °°½À´Ï´Ù.

  • LOADLIN ¹öÀü 1.6 ÀÌ»ó

  • ·çÇÁ¹é µð¹ÙÀ̽º¸¦ Áö¿øÇÏ´Â ¹öÀüÀÇ mount

  • ÇÊ¿äÇÑ ¿É¼ÇµéÀ» Áö¿øÇÏ´Â ¹öÀüÀÇ Ä¿³Î

ÀÌ ¸ðµç °ÍµéÀº ÃÖ±ÙÀÇ ¸®´ª½º ¹èÆ÷º»¿¡´Â ±âº»ÀûÀ¸·Î µé¾îÀÖ½À´Ï´Ù.


3.2. ¸®´ª½º Ä¿³ÎÀ» ¸¸µé±â

ÇÊÀÚ´Â ¸®´ª½º Ä¿³Î ¹öÀü 2.0.31 À» ½á¼­ ·çÇÁ¹é µð¹ÙÀ̽º¸¦ ¸¸µé¾ú½À´Ï´Ù. ´Ù¸¥ ¹öÀüµéµµ ¹°·Ð µË´Ï´Ù¸¸ ÃÖ¼ÒÇÑ ´ÙÀ½ÀÇ ¿É¼ÇµéÀº °¡Áö°í ÀÖ¾î¾ß¸¸ ÇÕ´Ï´Ù.

ÇÊ¿äÇÑ Ä¿³Î ¿É¼ÇµéÀº ´ÙÀ½°ú °°½À´Ï´Ù.

  • ·¥ µð½ºÅ© Áö¿ø(CONFIG_BLK_DEV_RAM).

  • Ãʱ⠷¥µð½ºÅ© Áö¿ø(CONFIG_BLK_DEV_INITRD).

  • ·çÇÁ µð¹ÙÀ̽º Áö¿ø(CONFIG_BLK_DEV_LOOP).

  • fat ÆÄÀϽýºÅÛ Áö¿ø(CONFIG_FAT_FS).

  • msdos ÆÄÀϽýºÅÛ Áö¿ø(CONFIG_MSDOS_FS).

óÀ½ÀÇ µÎ°¡Áö´Â ·¥µð½ºÅ© µð¹ÙÀ̽º¿Í Ãʱ⠷¥µð½ºÅ© µð¹ÙÀ̽º¸¦ À§ÇÑ °ÍÀÔ´Ï´Ù. ±×´ÙÀ½ °ÍÀº ·çÇÁ¹é È­ÀϽýºÅÛÀ» À§ÇÑ °ÍÀÔ´Ï´Ù. ¸¶Áö¸· µÎ°³´Â µµ½º ÆÄƼ¼ÇÀ» ¸¶¿îÆ®Çϴµ¥ ÇÊ¿äÇÑ °ÍÀÔ´Ï´Ù.

¸ðµâÀ» »ç¿ëÇÏÁö ¾Ê´Â Ä¿³ÎÀ» ¸¸µå´Â°Ô °¡Àå ½¬¿î ¹æ¹ýÀÔ´Ï´Ù. ÇÏÁö¸¸ ¿øÇϽŴٸé ÇÊÀÚ´Â Çغ¸Áö ¾Ê¾ÒÁö¸¸ ¸ðµâÀ» ¾µ¼öµµ ÀÖÀ» °ÍÀÔ´Ï´Ù. ¸¸ÀÏ ¸ðµâÀÌ »ç¿ëµÈ´Ù¸é ÃÖ¼ÒÇÑ À§ÀÇ ¿É¼Çµé¸¸Àº ¸ðµâ·Î ¼³Á¤µÇ¼­´Â ¾ÈµÇ¸ç Ä¿³Î³»¿¡ Æ÷ÇÔ½ÃÄÑ¾ß ÇÕ´Ï´Ù.

Ä¿³Î ¹öÀü¿¡ µû¶ó¼­´Â Ä¿³Î ÆÐÄ¡°¡ ÇÊ¿äÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ·çÇÁ¹é µð¹ÙÀ̽º¸¦ ·çÆ® ÆÄÀϽýºÅÛÀ¸·Î »ç¿ëÇÒ¼ö ÀÖ°Ô ÇØÁÖ´Â ÆÐÄ¡´Â ¹«Ã´ °£´ÜÇÕ´Ï´Ù.

  • ¹öÀü 2.0.0 ÀÌÀüÀÇ Ä¿³Î; ÇÊÀÚ´Â ÀÌ¿¡ ´ëÇؼ­´Â ¸ð¸¨´Ï´Ù.

  • ¹öÀü 2.0.0 ºÎÅÍ 2.0.34 ÀÇ Ä¿³Î; ¾Æ·¡ÀÇ 2.0.x ¿ë Ä¿³Î ÆÐÄ¡°¡ ÇÊ¿ä.

  • ¹öÀü 2.0.35 ºÎÅÍ 2.0.x ÀÇ Ä¿³Î; Ä¿³Î ÆÐÄ¡°¡ ÇÊ¿ä¾øÀ½.

  • ¹öÀü 2.1.x ÀÇ Ä¿³Î; 2.1.x ÀÇ Á¤È®ÇÑ ¹öÀü¿¡ µû¶ó ¾Æ·¡ÀÇ 2.0.x ÆÐÄ¡³ª 2.2.x ÆÐÄ¡¸¦ Àû¿ë½ÃÄÑ¾ß ÇÔ.

  • ¹ö³Í 2.2.0 ºÎÅÍ 2.2.10 ÀÇ Ä¿³Î; ¾Æ·¡ÀÇ 2.2.x ¿ë Ä¿³Î ÆÐÄ¡°¡ ÇÊ¿ä.

2.0.x Ä¿³ÎÀÇ /init/main.c ÆÄÀÏ¿¡ ¾Æ·¡Ã³·³ ¼öÁ¤µÈ ÇÑ ¶óÀÎÀ» µ¡ºÙ¿©¾ß ÇÕ´Ï´Ù. ÀÌ ¶óÀÎÀº "loop", 0x0700 ÀÔ´Ï´Ù.

static void parse_root_dev(char * line)
{
	int base = 0;
	static struct dev_name_struct {
		const char *name;
		const int num;
	} devices[] = {
		{ "nfs",     0x00ff },
		{ "loop",    0x0700 },
		{ "hda",     0x0300 },

...

		{ "sonycd",  0x1800 },
		{ NULL, 0 }
	};

...

}

2.2.x Ä¿³ÎµéÀº /init/main.c ÆÄÀÏ¿¡ ´ÙÀ½ ¼¼ÁÙÀÌ Ãß°¡µÇ¾î¾ß ÇÕ´Ï´Ù. Ãß°¡µÇ´Â ¶óÀεéÀº "loop", 0x0700 °ú ±× À§¾Æ·¡ ÇÑÁÙ¾¿µéÀÔ´Ï´Ù.

static struct dev_name_struct {
	const char *name;
	const int num;
} root_dev_names[] __initdata = {
#ifdef CONFIG_ROOT_NFS
	{ "nfs",     0x00ff },
#endif
#ifdef CONFIG_BLK_DEV_LOOP
        { "loop",    0x0700 },
#endif
#ifdef CONFIG_BLK_DEV_IDE
	{ "hda",     0x0300 },

...

	{ "ddv", DDV_MAJOR << 8},
#endif
	{ NULL, 0 }
};

ÀÏ´Ü Ä¿³Î ¼³Á¤ÀÌ ³¡³ª¸é ÄÄÆÄÀÏÇؼ­ zImage ÆÄÀÏÀ» ¸¸µé¾î¾ß ÇÕ´Ï´Ù(make zImage ¸í·É). ÄÄÆÄÀÏÀÌ ³¡³ª¸é ÀÌ ÆÄÀÏÀº arch/i386/boot/zImage ¿¡ À§Ä¡ÇÒ °ÍÀÔ´Ï´Ù.


3.3. Ãʱ⠷¥µð½ºÅ© µð¹ÙÀ̽º ¸¸µé±â

Ãʱ⠷¥µð½ºÅ©´Â ·çÇÁ¹é µð¹ÙÀ̽º¸¦ »ç¿ëÇØ ¾ÆÁÖ ½±°Ô ¸¸µé¼ö ÀÖ½À´Ï´Ù. ¾Æ·¡ÀÇ ¸í·ÉµéÀ» ½ÇÇà½ÃÅ°±â À§Çؼ­´Â ·çÆ® ±ÇÇÑÀ» °¡Á®¾ß ÇÕ´Ï´Ù. ·çÆ®ÀÇ µð·ºÅ丮(/root)¿¡¼­ ½ÇÇàÇÑ´Ù°í °¡Á¤ÇÏ°Ú½À´Ï´Ù.

mkdir /root/initrd
dd if=/dev/zero of=initrd.img bs=1k count=1024
mke2fs -i 1024 -b 1024 -m 5 -F -v initrd.img
mount initrd.img /root/initrd -t ext2 -o loop
cd initrd
[create the files]
cd ..
umount /root/initrd
gzip -c -9 initrd.img > initrdgz.img

À§ÀÇ ´Ü°èµéÀ» Çؼ³ÇÏ¸é ´ÙÀ½°ú °°½À´Ï´Ù.

  1. Ãʱ⠷¥µð½ºÅ©¸¦ À§ÇÑ ¸¶¿îÆ® Æ÷ÀÎÆ®¸¦ ¸¸µé¾î ÁÝ´Ï´Ù. µð·ºÅ丮¸¸ ¸¸µé¾î ÁÖ¸é µË´Ï´Ù.

  2. ÇÊ¿äÇÑ Å©±âÀÇ ºó È­ÀÏÀ» ¸¸µì´Ï´Ù. ÇÊÀÚ´Â 1024 KB ¸¦ »ç¿ëÇϴµ¥ »ç¿ëÀÚÀÇ ÇÊ¿ä¿¡ µû¶ó ´Ù¼Ò °¡°¨Çصµ ÁÁ½À´Ï´Ù(Å©±â¸¦ °áÁ¤ÇÏ´Â °ÍÀº Á¦ÀÏ ¸¶Áö¸· ÆĶó¸ÞÅÍÀÔ´Ï´Ù).

  3. ºó ÆÄÀÏ À§¿¡ ext2 ÆÄÀÏ ½Ã½ºÅÛÀ» ¸¸µì´Ï´Ù.

  4. ·çÇÁ¹é µð¹ÙÀ̽º¸¦ »ç¿ëÇØ ¸¶¿îÆ® Æ÷ÀÎÆ®¿¡ ÆÄÀÏÀ» ¸¶¿îÆ®ÇÕ´Ï´Ù.

  5. ¸¶¿îÆ®µÈ ·çÇÁ¹é µð¹ÙÀ̽º·Î À̵¿ÇÕ´Ï´Ù.

  6. ÇÊ¿äÇÑ ÆÄÀϵéÀ» ¸¸µì´Ï´Ù(ÀÚ¼¼ÇÑ °ÍÀº ¾Æ·¡¿¡).

  7. ¸¶¿îÆ®µÈ ·çÇÁ¹é µð¹ÙÀ̽º¿¡¼­ ºüÁ®³ª¿É´Ï´Ù.

  8. µð¹ÙÀ̽º¸¦ ¾ð¸¶¿îÆ®ÇÕ´Ï´Ù.

  9. ³ªÁß¿¡ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ¾ÐÃàµÈ ¹öÀüÀ¸·Î ¸¸µì´Ï´Ù.

Ãʱ⠷¥µð½ºÅ©¿¡ µé¾î°¥ ³»¿ë¹°

·¥µð½ºÅ©¿¡ ³Ö¾îµÎ¾î¾ß ÇÒ ÆÄÀϵéÀº µÉ¼öÀÖ´Â ÇÑ ÀûÀº°Ô ÁÁ½À´Ï´Ù. ÇÏÁö¸¸ ÇÊ¿äÇÑ ¸í·É¾îµéÀ» ¼öÇàÇÒ ¼ö´Â ÀÖ¾î¾ß °ÚÁö¿ä.

  • /linuxrc ´Â msdos ÆÄÀÏ ½Ã½ºÅÛÀ» ¸¶¿îÆ®Çϱâ À§ÇÑ ½ºÅ©¸³Æ®ÀÔ´Ï´Ù(¾Æ·¡¸¦ º¸¼¼¿ä).

  • /lib/* ÇÁ·Î±×·¥µé¿¡ ÇÊ¿äÇÑ µ¿Àû ¸µÄ¿¿Í ¶óÀ̺귯¸®µé

  • /etc/* µ¿Àû ¸µÄ¿¿¡ »ç¿ëµÇ´Â ij½¬(¹Ýµå½Ã ÇÊ¿äÇÏ´Ù°í ´ÜÁ¤ÇÒ ¼ö´Â ¾øÁö¸¸ ¸µÄ¿ÀÇ Åõ´ú°Å¸²À» ¾ø¾Ù¼ö ÀÖ½À´Ï´Ù).

  • /bin/* ½© Çؼ®±â (ash °¡ bash º¸´Ù Å©±â°¡ À۾Ƽ­ ¼±È£µË´Ï´Ù. mount °ú losetup ÇÁ·Î±×·¥µéÀº °¢°¢ DOS µð½ºÅ©¿Í ·çÇÁ¹é µð¹ÙÀ̽ºµéÀ» ´Ù·ê ¶§ ÇÊ¿äÇÕ´Ï´Ù.

  • /dev/* ÇÊ¿äÇÑ µð¹ÙÀ̽ºµé. ld-linux.so ¸¦ À§Çؼ­´Â /dev/zero °¡ ÇÊ¿äÇÏ°í, msdos µð½ºÅ©¸¦ ¸¶¿îÆ®Çϱâ À§Çؼ­´Â /dev/hda* ÀÌ ÇÊ¿äÇϸç, ·çÇÁ¹é µð¹ÙÀ̽º¸¦ À§Çؼ­´Â /dev/loop* ÀÌ ÇÊ¿äÇÕ´Ï´Ù.

  • /mnt msdos µð½ºÅ©¸¦ ¸¶¿îÆ®ÇÒ ºó µð·ºÅ丮

ÇÊÀÚ°¡ »ç¿ëÇÏ´Â Ãʱ⠷¥µð½ºÅ©ÀÇ ³»¿ëÀº ¾Æ·¡¿Í °°½À´Ï´Ù. ÆÄÀϽýºÅÛÀÇ ¿À¹öÇìµå±îÁö ÇÕÃÄ ¾à 800 KB Á¤µµ°¡ µË´Ï´Ù.

total 18
drwxr-xr-x   2 root     root         1024 Jun  2 13:57 bin
drwxr-xr-x   2 root     root         1024 Jun  2 13:47 dev
drwxr-xr-x   2 root     root         1024 May 20 07:43 etc
drwxr-xr-x   2 root     root         1024 May 27 07:57 lib
-rwxr-xr-x   1 root     root          964 Jun  3 08:47 linuxrc
drwxr-xr-x   2 root     root        12288 May 27 08:08 lost+found
drwxr-xr-x   2 root     root         1024 Jun  2 14:16 mnt

./bin:
total 168
-rwxr-xr-x   1 root     root        60880 May 27 07:56 ash
-rwxr-xr-x   1 root     root         5484 May 27 07:56 losetup
-rwsr-xr-x   1 root     root        28216 May 27 07:56 mount
lrwxrwxrwx   1 root     root            3 May 27 08:08 sh -> ash

./dev:
total 0
brw-r--r--   1 root     root       3,   0 May 20 07:43 hda
brw-r--r--   1 root     root       3,   1 May 20 07:43 hda1
brw-r--r--   1 root     root       3,   2 Jun  2 13:46 hda2
brw-r--r--   1 root     root       3,   3 Jun  2 13:46 hda3
brw-r--r--   1 root     root       7,   0 May 20 07:43 loop0
brw-r--r--   1 root     root       7,   1 Jun  2 13:47 loop1
crw-r--r--   1 root     root       1,   3 May 20 07:42 null
crw-r--r--   1 root     root       5,   0 May 20 07:43 tty
crw-r--r--   1 root     root       4,   1 May 20 07:43 tty1
crw-r--r--   1 root     root       1,   5 May 20 07:42 zero

./etc:
total 3
-rw-r--r--   1 root     root         2539 May 20 07:43 ld.so.cache

./lib:
total 649
lrwxrwxrwx   1 root     root           18 May 27 08:08 ld-linux.so.1 -> ld-linux.so.1.7.14
-rwxr-xr-x   1 root     root        21367 May 20 07:44 ld-linux.so.1.7.14
lrwxrwxrwx   1 root     root           14 May 27 08:08 libc.so.5 -> libc.so.5.3.12
-rwxr-xr-x   1 root     root       583795 May 20 07:44 libc.so.5.3.12

./lost+found:
total 0

./mnt:
total 0

À¯ÀÏÇÏ°Ô º¹ÀâÇÑ ´Ü°è´Â dev ÀÇ µð¹ÙÀ̽ºµé¿¡ °üÇÑ °ÍÀÔ´Ï´Ù. mknod ÇÁ·Î±×·¥À» ½á¾ß ÀÌ µð¹ÙÀ̽ºµéÀ» ¸¸µé¼ö Àִµ¥, ÇöÀç ½Ã½ºÅÛÀÇ /dev ¿¡ ÀÖ´Â µð¹ÙÀ̽ºµéÀÇ ÆĶó¸ÞÅ͸¦ ±×´ë·Î º£³¢¸é µË´Ï´Ù.

/linuxrc ÆÄÀÏ

¾Æ·¡ÀÇ ¿¹¿¡¼­´Â msdos ÆÄƼ¼ÇÀ¸·Î¼­ /dev/hda1 À» ¸¶¿îÆ®ÇÕ´Ï´Ù. ¸¶¿îÆ®¿¡ ¼º°øÇϸé /dev/loop0 ¿¡ /linux/linuxdsk.img ¸¦ ÁöÁ¤ÇÏ°í /dev/loop1 ¿¡ /linux/linuxswp.img À» ÁöÁ¤ÇÕ´Ï´Ù.

#!/bin/sh

echo INITRD: Trying to mount /dev/hda1 as msdos

if /bin/mount -n -t msdos /dev/hda1 /mnt; then

   echo INITRD: Mounted OK
   /bin/losetup /dev/loop0 /mnt/linux/linuxdsk.img
   /bin/losetup /dev/loop1 /mnt/linux/linuxswp.img
   exit 0

else

   echo INITRD: Mount failed
   exit 1

fi

ù¹ø° µð¹ÙÀ̽º /dev/loop0 ´Â ·çÆ® µð¹ÙÀ̽º°¡ µÇ°í µÎ¹ø° µð¹ÙÀ̽º /dev/loop1 Àº ½º¿Ò °ø°£ÀÌ µË´Ï´Ù.

ºÎÆÃÁ¾·áÈÄ ·çÆ®±ÇÇÑÀÌ ¾Æ´Ñ ÀÏ¹Ý »ç¿ëÀÚ°¡ µµ½ºÆÄƼ¼Ç¿¡ ¾²±â°¡´ÉÇÏ·Á¸é ´ë½Å mount -n -t msdos /dev/hda1 /mnt -o uid=0,gid=0,umask=000,quiet À» ½á¾ß ÇÕ´Ï´Ù. ÀÌ°ÍÀº µµ½º ÆÄƼ¼Ç¿¡ ´ëÇÑ ¸ðµç ¾×¼¼½º¸¦ ·çÆ®±ÇÇÑÀ¸·Î º¯È¯½ÃÄÑ ÆÛ¹Ì¼Ç ¹®Á¦¸¦ ÇØ°áÇÕ´Ï´Ù.


3.4. ·çÆ® µð¹ÙÀ̽º ¸¸µé±â

´ç½ÅÀÌ »ç¿ëÇÒ ·çÆ® µð¹ÙÀ̽º´Â linuxdsk.img À̶ó´Â ÆÄÀÏÀÔ´Ï´Ù. À§ÀÇ Ãʱ⠷¥µð½ºÅ© Á¦ÀÛ°ú ¶È°°Àº ¹æ¹ýÀ¸·Î ¸¸µé¸é µÇ´Âµ¥, ´Ù¸¸ ÀÌ ÆÄÀÏÀº ÈξÀ Å®´Ï´Ù. ¿øÇÏ´Â ¾î¶² ¸®´ª½º ½Ã½ºÅÛÀÌ¶óµµ ÀÌ µð½ºÅ©À§¿¡ ¼³Ä¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.

°¡Àå ½¬¿î ¹æ¹ýÀº ÇöÀçÀÇ ¸®´ª½º ½Ã½ºÅÛÀ» ±×´ë·Î À̸®·Î º¹»çÇسִ °ÍÀÔ´Ï´Ù. ´Ù¸¥ ¹æ¹ýÀ¸·Î´Â ÀÌ À§¿¡´Ù »õ·Î¿î ¸®´ª½º ½Ã½ºÅÛÀ» ÀνºÅçÇÏ´Â °ÍÀÔ´Ï´Ù.

¿©±â±îÁö ´Ù ¿Ï·áÇß´Ù¸é ÀÌÁ¦ ´ÙÀ½ÀÇ ¸î°¡Áö ÀÚÀßÇÑ ¼öÁ¤À» ÇØÁÖ¾î¾ß¸¸ ÇÕ´Ï´Ù.

/etc/fstab ÆÄÀÏÀº ¹Ýµå½Ã ·çÆ®ÆÄƼ¼Ç°ú ½º¿ÒÆÄƼ¼ÇÀÌ Ãʱⷥµð½ºÅ©·Î ¼Â¾÷µÈ ·çÇÁ µð¹ÙÀ̽ºµéÀÓÀ» ±â·ÏÇÏ°í ÀÖ¾î¾ß¸¸ ÇÕ´Ï´Ù.

/dev/loop0     /      ext2   defaults 1 1
/dev/loop1     swap   swap   defaults 1 1

ÀÌ´Â ÁøÂ¥ ·çÇÁ µð¹ÙÀ̽º°¡ »ç¿ëµÉ ¶§ Ä¿³ÎÀÌ ·çÆ® µð¹ÙÀ̽ºÀÇ À§Ä¡¸¦ È¥µ¿ÇÏÁö ¾Êµµ·Ï ÇØÁÝ´Ï´Ù. ¶ÇÇÑ ½º¿Ò °ø°£ÀÌ º¸ÅëÀÇ ÀϹÝÀûÀÎ ½º¿Ò ÆÄƼ¼Çó·³ »ç¿ëµÇ°Ô ÇØÁÝ´Ï´Ù. À̵é ÀÌ¿ÜÀÇ ¶Ç´Ù¸¥ ·çÆ® µð¹ÙÀ̽º³ª ½º¿Ò ÆÄƼ¼Ç¿¡ ´ëÇÑ ÁöÁ¤ÀÌ À־´Â ¾ÈµË´Ï´Ù.

¸®´ª½º°¡ °¡µ¿µÈ ÈÄ µµ½ºÆÄƼ¼ÇÀ» ÀÐÀ¸·Á¸é ¸î°¡Áö Ãß°¡ÀûÀÎ ÀÛÀº ¼öÁ¤ÀÌ ÇÊ¿äÇÕ´Ï´Ù.

/initrd À̶ó´Â µð·ºÅ丮¸¦ ¸¸µé¾î ÁֽʽÿÀ. ÀÌ°ÍÀº ·çÇÁ¹é ·çÆ® ÆÄÀϽýºÅÛÀÌ ÀÏ´Ü ¸¶¿îÆ® µÈ ÈÄ Ãʱ⠷¥µð½ºÅ©°¡ ¸¶¿îÆ®µÇ´Â À§Ä¡ÀÔ´Ï´Ù.

/DOS °°Àº ½Éº¼¸¯ ¸µÅ©¸¦ ¸¸µé¾î ÁøÂ¥ µµ½º ÆÄƼ¼ÇÀÌ ¸¶¿îÆ® µÇ´Â /initrd/mnt ·Î ¸µÅ©½ÃÅ°½Ê½Ã¿ä.

µð½ºÅ©µéÀ» ¸¶¿îÆ®½ÃÅ°´Â ½ºÅ©¸³Æ® ÇÑÁÙÀ» rc ÆÄÀÏ¿¡ Ãß°¡Çϼ¼¿ä. ÀÌ´Â mount -f -t msdos /dev/hda1 /initrd/mnt °°Àº ¸í·ÉÀÌ¸é µË´Ï´Ù. ÀÌ°ÍÀº µµ½º ÆÄƼ¼ÇÀ» °¡Â¥(fake)·Î ¸¶¿îÆ®½ÃÅ°´Â °ÍÀε¥ ÀÌ·¸°Ô ÇÏ¸é ¸ðµç ÇÁ·Î±×·¥µé(°¡·É df)ÀÌ µµ½º ÆÄƼ¼ÇÀÌ ¿©±â¿¡ ÀÖ´Â °ÍÀ¸·Î ¾Ë°ÔµË´Ï´Ù. ¸¸ÀÏ ´ç½ÅÀÌ /linuxrc ÆÄÀϳ»¿¡¼­ ´Ù¸¥ ¿É¼ÇµéÀ» ½è´Ù¸é ÇÊÈ÷ ¿©±â¿¡µµ ±×°ÍµéÀ» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.

·çÆ® µð¹ÙÀ̽º»ó¿¡ Ä¿³ÎÀÌ ÀÖÀ» ÇÊ¿ä´Â ÀüÇô ¾ø½À´Ï´Ù. ¿Ö³ÄÇϸé Ä¿³ÎÀº ÀÌ¹Ì ±×Àü¿¡ ·ÎµåµÆ±â ¶§¹®ÀÌ´Ù. ÇÏÁö¸¸ ´ç½ÅÀÌ Ä¿³Î ¸ðµâÀ» »ç¿ëÇÑ´Ù¸é ¸ðµâµéÀ» ·çÆ®µð¹ÙÀ̽º¿¡ Æ÷ÇÔ½ÃÄÑ¾ß ÇÕ´Ï´Ù.


3.5. ½º¿Ò µð¹ÙÀ̽º ¸¸µé±â

´ç½ÅÀÌ »ç¿ëÇÒ µð¹ÙÀ̽º´Â linuxswap.imgÀÔ´Ï´Ù ÀÌ ½º¿Ò µð¹ÙÀ̽º´Â ±ØÈ÷ °£´ÜÇÏ°Ô ¸¸µé¼ö ÀÖ½À´Ï´Ù. À§¿¡¼­Ã³·³ ºó ÆÄÀÏ Çϳª¸¦ Ãʱ⠷¥µð½ºÅ©¿ëÀ¸·Î ¸¸µç ÈÄ mkswap linuxswap.img Çؼ­ ÃʱâÈ­½ÃÅ°½Ê½Ã¿À.

½º¿Ò °ø°£ÀÇ Å©±â´Â ¼³Ä¡ÇÑ ½Ã½ºÅÛÀ¸·Î ´ç½ÅÀÌ ¹«½¼ ÀÏÀ» ÇÒ°ÍÀΰ¡¿¡ µû¶ó ´Ù¸¨´Ï´Ù. ÇÏÁö¸¸ ÇÊÀÚ´Â 8 MB ºÎÅÍ ´ç½ÅÀÌ °¡Áø ·¥¿ë·® »çÀÌÀÇ °ªÀ» ÃßõÇÏ°Ú½À´Ï´Ù.


3.6. MSDOS µð·ºÅ丮 ¸¸µé±â

»ç¿ëµÉ ÆÄÀϵéÀ» µµ½ºÆÄƼ¼Ç»óÀ¸·Î ¿Å°Ü¾ß ÇÕ´Ï´Ù.

C:\LINUX ¶ó´Â µµ½º µð·ºÅ丮¿¡ ÇÊ¿äÇÑ ÆÄÀϵéÀº ´ÙÀ½°ú °°´Ù.

  • LINUXDSK.IMG ·çÆ® µð¹ÙÀ̽º°¡ µÉ µð½ºÅ© À̹ÌÁö.

  • LINUXSWP.IMG ½º¿Ò °ø°£


3.7. ºÎÆ® Ç÷ÎÇÇ ¸¸µé±â

»ç¿ëµÉ ºÎÆ® Ç÷ÎÇÇ´Â ´Ü¼øÇÑ º¸ÅëÀÇ µµ½ºÆ÷¸Ë Ç÷ÎÇÇ ÇÑÀåÀÔ´Ï´Ù.

ÀÌ°ÍÀº µµ½º»ó¿¡¼­ format a: /s ¸í·ÉÀ¸·Î ¸¸µì´Ï´Ù.

ÀÌ µð½ºÅ© À§¿¡ ¾Æ·¡¿Í °°Àº AUTOEXEC.BAT ÆÄÀÏ°ú Ä¿³Î, ¾ÐÃàµÈ Ãʱ⠷¥µð½ºÅ©, LOADLIN ½ÇÇàÈ­ÀÏÀ» º¹»çÇØ ³Ö½À´Ï´Ù.

  • AUTOEXEC.BAT µµ½ºÀÇ ÀÚµ¿½ÇÇàÈ­ÀÏ

  • LOADLIN.EXE LOADLIN ½ÇÇàÈ­ÀÏ

  • ZIMAGE ¸®´ª½º Ä¿³Î

  • INITRDGZ.IMG ¾ÐÃàµÈ Ãʱ⠷¥µð½ºÅ© À̹ÌÁö

AUTOEXEC.BAT ÆÄÀÏÀº ¾Æ·¡ÀÇ ÇÑÁÙÀ» Æ÷ÇÔÇؾ߸¸ ÇÕ´Ï´Ù.

\loadlin \zImage initrd=\initrdgz.img root=/dev/loop0 ro

ÀÌ°ÍÀº »ç¿ëÇÒ Ä¿³ÎÀ̹ÌÁö, ·¥µð½ºÅ© À̹ÌÁö, Ãʱ⠷¥µð½ºÅ©°¡ ³¡³­ÈÄÀÇ ·çÆ® µð¹ÙÀ̽º, ÀбâÀü¿ëÀ¸·Î ¸¶¿îÆ®µÇ´Â ·çÆ® ÆÄƼ¼ÇÀ» ÁöÁ¤ÇÑ °ÍÀÔ´Ï´Ù.


4. ½Ã½ºÅÛÀÇ ºÎÆÃ

ÀÌ »õ·Î¿î ·çÆ® µð¹ÙÀ̽º·Î ºÎÆ®Çϱâ À§Çؼ­´Â À§¿Í°°ÀÌ ÁغñµÈ Ç÷ÎÇÇ µð½ºÅ©¸¦ PC ¿¡ ³Ö°í ºÎÆÃÇÕ´Ï´Ù.

´ÙÀ½°ú °°Àº ÀÏÀÌ ÀϾÀ» º¼¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.

  1. DOS boots

  2. AUTOEXEC.BAT starts

  3. LOADLIN is run

  4. The Linux kernel is copied into memory

  5. The initial ramdisk is copied into memory

  6. The Linux kernel is started running

  7. The /linuxrc file on the initial ramdisk is run

  8. The DOS partition is mounted and the root and swap devices set up

  9. The boot sequence continues from the loopback device

ÀÌ»ó°ú °°ÀÌ ¿Ï·áµÇ¸é ÀÌÁ¦ ºÎÆ® Ç÷ÎÇǸ¦ Á¦°ÅÇÏ°í ¸®´ª½º ½Ã½ºÅÛÀ» »ç¿ëÇÏ¸é µË´Ï´Ù.


4.1. ¹ß»ýÇÒ ¼ö ÀÖ´Â ¹®Á¦µé

À§ÀÇ °úÁ¤ÀÇ °¢ ´Ü°è¿¡¼­ÀÇ ½ÇÆп¡ ´ëÇØ ±× ÀÇ¹Ì¿Í Á¡°ËÇØ¾ß ¹Ù¸¦ ¼³¸íÇÏ°Ú½À´Ï´Ù.

µµ½º ºÎÆÃÀº MS-DOS Sarting ... À̶ó´Â ¸Þ½ÃÁö°¡ È­¸é¿¡ ¶äÀ¸·Î¼­ ½±°Ô ¾Ë¼ö ÀÖ½À´Ï´Ù. ¸¸ÀÏ ÀÌ·± ¸Þ½ÃÁö°¡ È­¸é¿¡ ³ªÅ¸³ªÁö ¾Ê´Â´Ù¸é Ç÷ÎÇǵð½ºÅ©°¡ ºÎÆ®°¡´ÉÇÏ°Ô µÇ¾îÀÖÁö ¾Ê¾Ò°Å³ª PC °¡ Ç÷ÎÇÇ µð½ºÅ© ºÎÆÃÀÌ ¾ÈµÇµµ·Ï ¼³Á¤µÇ¾ú±â ¶§¹®ÀÔ´Ï´Ù.

AUTOEXEC.BAT ÆÄÀϳ»ÀÇ ¸í·É¾îµéÀÌ ½ÇÇàµÉ ¶§´Â µðÆúÆ®·Î È­¸é¿¡ ³ªÅ¸³ªµµ·Ï µÇ¾îÀÖ½À´Ï´Ù. ¿ì¸®ÀÇ °æ¿ì LOADLIN ÇÑÁÙÀÌ ³ªÅ¸³¯ °ÍÀÔ´Ï´Ù..

LOADLIN ÀÌ ½ÇÇàµÇ¸é¼­ È­¸é¿¡ Ãâ·ÂµÇ´Â ÀÛ¾÷ÀÌ µÎ°¡Áö ÀÖ½À´Ï´Ù. ¿ì¼± Ä¿³ÎÀÌ ¸Þ¸ð¸®·Î ·ÎµåµÇ´Â °ÍÀÌ°í, ±× ´ÙÀ½À¸·Î ·¥µð½ºÅ©°¡ ¸Þ¸ð¸®·Î º¹»çµÇ´Â °ÍÀÔ´Ï´Ù. ÀÌ µÎ ÀÛ¾÷ ¸ðµÎ Loading... ¸Þ½ÃÁö¸¦ Ãâ·ÂÇÕ´Ï´Ù.

Ä¿³ÎÀÌ ½º½º·ÎÀÇ ¾ÐÃàÀ» Ç®´Ù°¡ ¸¸¾à Ä¿³Î À̹ÌÁö°¡ ¼Õ»óµÈ °ÍÀ» ¹ß°ßÇϸé crc ¿¡·¯¸¦ ³»°Ô µË´Ï´Ù. ÀÌ»óÀÌ ¾ø´Ù¸é ±×´ÙÀ½À¸·Î ÃʱâÈ­ °úÁ¤À» Â÷·Ê·Î ¼öÇàÇÏ°Ô µÇ´Âµ¥ °¢ °úÁ¤¸¶´Ù Ä£ÀýÈ÷ Á¡°Ë»óȲÀ» ¾Ë·ÁÁÝ´Ï´Ù. Ãʱ⠷¥µð½ºÅ© µð¹ÙÀ̽ºÀÇ ·Îµù¿ª½Ã ÀÌ ´Ü°è¿¡¼­ ³ªÅ¸³³´Ï´Ù.

ÀÌÁ¦ »õ·Î¿î ·çÆ® µð¹ÙÀ̽ºÀÇ Á¤»óÀûÀÎ ºÎÆ®°úÁ¤ÀÌ ¼Ó°³µÇ´Âµ¥ ÀÌ ¿ª½Ã Ä£ÀýÈ÷ ÁøÇà»óȲÀ» ¾Ë·ÁÁÝ´Ï´Ù. Àб⾲±â ¿ëÀ¸·Î ·çÆ®µð¹ÙÀ̽º¸¦ ¸¶¿îÆ®Çؼ­ ¹®Á¦°¡ »ý±æ¼ö ÀÖ´Ù¸é, LOADLIN ¸í·É¾î ¶óÀÎ ¿É¼ÇÀÎ 'ro'À» ½áÁÖ¸é À̸¦ ¹æÁöÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×¹ÛÀÇ ÀϾ ¼ö ÀÖ´Â ¹®Á¦·Î´Â ºÎÆ®°úÁ¤½Ã ·çÆ® µð¹ÙÀ̽º¸¦ ¾îµð¿¡¼­ ã¾Æ¾ß ÇÏ´ÂÁö¸¦ ¸ð¸£´Â °æ¿ìÀε¥, ÀÌ´Â Çʽà /etc/fstab ¿¡ °ü·ÃµÈ ´ç½ÅÀÇ ½Ç¼öÀÏ °ÍÀÔ´Ï´Ù.

ºÎÆ® °úÁ¤ÀÌ ¿Ï·áµÇ¸é ÀÌÁ¦ ¹®Á¦°¡ »ý±æ¼ö ÀÖ´Â ºÎºÐÀº ÇÁ·Î±×·¥µéÀÌ µµ½ºÆÄƼ¼ÇÀÇ ¸¶¿îÆ®µÇ¾ú´ÂÁö ¾Æ´ÑÁö¸¦ ¸ð¸£´Â °æ¿ì »ÓÀÔ´Ï´Ù. ÀÌ´Â ¾Õ¿¡¼­ ¼³¸íÇÑ °¡Â¥(fake) mount ¸í·ÉÀ» »ç¿ëÇÏ´Â °ÍÀÌ ÁÁÀº ¾ÆÀ̵ð¾î°¡ µË´Ï´Ù. À̸¦ ¾²¸é µµ½º µð¹ÙÀ̽º»óÀÇ ÆÄÀϵéÀ» ½±°Ô ¾×¼¼½ºÇÒ ¼ö ÀÖ½À´Ï´Ù.


4.2. Âü°í ¹®¼­

ÇÊÀÚ°¡ ÃÖÃÊÀÇ ·çÇÁ¹é ·çÆ® ÆÄÀÏ ½Ã½ºÅÛÀ» ¸¸µé¶§ ÀÌ¿ëÇÑ ¹®¼­µé:

  • ¸®´ª½º Ä¿³Î ¼Ò½º. ƯÈ÷ init/main.c

  • ¸®´ª½º Ä¿³Î ¹®¼­. ƯÈ÷ Documentation/initrd.txt ¿Í Documentation/ramdisk.txt.

  • LILO ¹®¼­

  • LOADLIN ¹®¼­


5. ±âŸ ·çÇÁ¹é ·çÆ® µð¹ÙÀ̽º°¡ À¯¿ëÇÑ °÷

ÀÏ´Ü µµ½º ÆÄƼ¼Ç»ó¿¡¼­ ÇϳªÀÇ ÆÄÀÏ·Î µÈ ÆÄÀϽýºÅÛÀ» ºÎÆÃÇÏ´Â ¿ø¸®¸¦ ¾Ë¾Ò´Ù¸é, ÀÌÁ¦ ¿©·¯°¡Áö·Î ÀÀ¿ëÇØ º¼ ¼ö ÀÖ½À´Ï´Ù.


5.1. µµ½º Çϵåµð½ºÅ©¸¸À¸·Î ¼³Ä¡Çϱâ

ºÎÆ® Ç÷ÎÇǸ¦ ½á¼­ µµ½º Çϵåµð½ºÅ© »óÀÇ ÆÄÀϷκÎÅÍ ¸®´ª½º¸¦ ºÎÆÃÇÒ ¼ö ÀÖ´Ù¸é, ´ç¿¬È÷ Çϵåµð½ºÅ©¸¦ ½á¼­µµ ºÎÆýÃų ¼ö ÀÖ½À´Ï´Ù.

AUTOEXEC.BAT ¸¦ ¼ÕºÁ¼­ ¸Þ´º¹æ½ÄÀ¸·Î ºÎÆ®Çϵµ·Ï ÇصРÈÄ, ¸Þ´º Áß Çϳª¿¡ LOADLIN À» ¼±ÅÃÇÒ ¼ö ÀÖ°Ô ÇÑ´Ù¸é ºÎÆðúÁ¤ÀÌ ÈξÀ ´õ »¡¶óÁý´Ï´Ù. ´Ù¸¥ °ÍÀº ¸ðµÎ µ¿ÀÏÇÕ´Ï´Ù.


5.2. LILO ·Î ºÎÆõǴ ¼³Ä¡

LOADLIN Àº ¸®´ª½º Ä¿³ÎÀ» ºÎÆýÃų¼ö ÀÖ´Â ¿©·¯ ÇÁ·Î±×·¥Áß ÇϳªÀÏ »ÓÀÔ´Ï´Ù. LILO ¿ª½Ã ¶È°°Àº ±â´ÉÀ» ÇÏÁö¸¸ ÀÌ°ÍÀº µµ½º°¡ ÇÊ¿ä¾ø½À´Ï´Ù.

ÀÌ°æ¿ì µµ½º Æ÷¸ËµÈ Ç÷ÎÇǵð½ºÅ© ´ë½Å ext2fs Æ÷¸ËµÈ °ÍÀ» ½á¾ßÇÕ´Ï´Ù. ±×¹ÛÀÇ Ä¿³Î°ú µð½ºÅ©»óÀÇ Ãʱ⠷¥µð½ºÅ©¿¡ °üÇÑ ¼¼¼¼ÇÑ »çÇ×µéÀº ¾ÆÁÖ À¯»çÇÕ´Ï´Ù.

ÇÊÀÚ°¡ LOADLIN ¹æ¹ýÀ» ¼±ÅÃÇÑ ÀÌÀ¯´Â LILO ¿¡ ÁÖ¾î¾ß ÇÏ´Â ¿É¼ÇµéÀÌ Á¶±Ý ´õ º¹ÀâÇ߱⠶§¹®ÀÔ´Ï´Ù. ¶ÇÇÑ LOADLIN ÂÊÀÌ µµ½ºÈ¯°æ¿¡¼­ ÀÐÈú¼ö Àֱ⠶§¹®¿¡ ÃʽÉÀڵ鿡°Ô´Â Ç÷ÎÇǵð½ºÅ©°¡ ¹«¾ùÀÎÁö ÆľÇÇϴµ¥ À¯¸®ÇÕ´Ï´Ù.


5.3. VFAT / NTFS ¼³Ä¡

ÇÊÀÚ´Â NTFS ¿¡¼­µµ ÀÌ ¹æ¹ýÀ» ½ÃµµÇßÀ¸¸ç, ¾ÆÁ÷²¯ ¹®Á¦´Â ¾ø¾ú½À´Ï´Ù. ¸®´ª½º Ä¿³Î 2.0.x ¹öÀü¿¡¼­´Â ¾ÆÁ÷ NTFS ÆÄÀϽýºÅÛ µå¶óÀ̹ö°¡ ±âº»À¸·Î ¼³Á¤µÇ¾îÀÖÁö ¾Ê½À´Ï´Ù. ÇÏÁö¸¸ ´ÙÀ½ÀÇ ÆÐÄ¡¸¦ ¾µ¼ö ÀÖ½À´Ï´Ù. http://www.informatik.hu-berlin.de/~loewis/ntfs/. ¹öÀü 2.2.x ´ë¿¡¼­´Â Ä¿³Î¿¡ NTFS µå¶óÀ̹ö°¡ ±âº»À¸·Î Æ÷ÇԵǾî ÀÖ½À´Ï´Ù.

VFAT À̳ª NTFS ¸¦ ¾µ °æ¿ìÀÇ À¯ÀÏÇÑ º¯°æ»çÇ×µéÀº Ãʱ⠷¥µð½ºÅ©ÀÇ »ç¿ë¿¡ ÀÖ½À´Ï´Ù. /linuxrc ´Â msdos °¡ ¾Æ´Ï¶ó vfat À̳ª ntfs ŸÀÔÀÇ ÆÄÀϽýºÅÛÀ» ¸¶¿îÆ®Çϵµ·Ï º¯°æµÇ¾î¾ß ÇÕ´Ï´Ù.

ÇÊÀÚ°¡ ¾Æ´Â ÇÑ¿¡´Â VFAT ÆÄƼ¼ÇÀ̶ó°í ÀÌ ¹æ¹ýÀÌ ¾ÈµÉ ÀÌÀ¯°¡ ¾ø½À´Ï´Ù.


5.4. ÆÄƼ¼ÇÀ» ´Ù½Ã ÀâÁö¾Ê°í ¸®´ª½º¸¦ ¼³Ä¡Çϱâ

º¸Åë, PC »ó¿¡ Ç¥ÁØÀûÀÎ ¸®´ª½º ¹èÆ÷º»À» ¼³Ä¡ÇÒ ¶§´Â Ç÷ÎÇÇ µð½ºÅ©·ÎºÎÅÍÀÇ ºÎÆðú µð½ºÅ©ÀÇ ÆÄƼ¼ÇÀ» ´Ù½ÃÀâ´Â °úÁ¤À» °ÅÃÄ¾ß ÇÕ´Ï´Ù. ÀÌ °úÁ¤À» ºó ·çÇÁ¹é µð¹ÙÀ̽º¿Í ½º¿Ò ÆÄÀÏÀ» ¸¸µå´Â ºÎÆ®Ç÷ÎÇÇ·Î ´ëüÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÏ¸é º¸Åë°ú ¶È°°ÀÌ ¼³Ä¡¸¦ °è¼ÓÇÏÁö¸¸ ÆÄƼ¼ÇÀÌ ¾Æ´Ñ ·çÇÁ¹é µð¹ÙÀ̽ºÀ§¿¡ ¼³Ä¡°¡ µÇ´Â °ÍÀÔ´Ï´Ù.

ÀÌ ¹æ¹ýÀº UMSDOS ¸¦ ÀÌ¿ëÇÑ ¼³Ä¡¹æ¹ý ´ë½Å »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯¸é µµ½º ÆÄÀϽýºÅÛÀÇ ÇÒ´ç´ÜÀ§ÀÎ 32 KB ´ë½Å ext2 ÆÄÀϽýºÅÛÀÇ ÃÖ¼ÒÇÒ´ç´ÜÀ§ÀÎ 1 KB ¸¦ ÇÒ´çÇÒ ¼ö ÀÖ¾î µð½ºÅ©¸¦ º¸´Ù È¿À²ÀûÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº VFAT °ú NTFS Æ÷¸ËµÈ µð½ºÅ©¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.


5.5. ºÎÆ® ºÒ°¡´ÉÇÑ µð¹ÙÀ̽º·ÎºÎÅÍÀÇ ºÎÆÃ

ÀÌ ¹æ¹ýÀ» ¾²¸é ÀϹÝÀûÀ¸·Î ºÎÆà ºÒ°¡´ÉÇÑ µð¹ÙÀ̽º·ÎºÎÅÍ ¸®´ª½º ½Ã½ºÅÛÀ» ºÎÆÃÇÒ ¼ö ÀÖ½À´Ï´Ù(¿ªÁÖ : ´Ù¼Ò ¿ÀÇØÀÇ ¼ÒÁö°¡ ÀÖÀ»Áö ¸ð¸£°Ú´Âµ¥ ¿©±â¼­ ÇÊÀÚ°¡ ¶æÇÏ´Â ¹Ù´Â ·çÆ®ÆÄƼ¼ÇÀ» ´Ù¾çÇÏ°Ô ÅÃÇÒ ¼ö ÀÖ´Ù´Â ÀǹÌÀÔ´Ï´Ù. ±âº»ÀûÀ¸·Î Ç÷ÎÇdzª Çϵå, ȤÀº ÃÖ±ÙÀÇ ½Ãµð·Ò ºÎÆà µîÀÇ ºÎÆð¡´ÉÇÑ ¸Åü´Â ¹Ýµå½Ã ÇÊ¿äÇÕ´Ï´Ù).

  • CD-Rom

  • Zip Disks

  • Parallel port disk drives

ºÐ¸í ±×¹Û¿¡µµ °¡´ÉÇÑ µð¹ÙÀ̽ºµéÀÌ ¸¹ÀÌ ÀÖ½À´Ï´Ù. NFS ·çÆ® ÆÄÀϽýºÅÛÀº ÀÌ¹Ì Ä¿³Î³»¿¡ ¿É¼ÇÀ¸·Î Æ÷ÇÔ½Ãų¼ö ÀÖµµ·Ï µÇ¾úÁö¸¸ ±× ´ë½Å ¿©±â¼­ ¼³¸íÇÑ ¹æ¹ýÀ» ½áµµ µË´Ï´Ù.




sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2003-08-10 11:52:29
Processing time 0.0015 sec