´ç½ÅÀº ÀÌÁ¦ Ä¿³Î°ú ¾ÐÃà ·çÆ® ÆÄÀϽýºÅÛÀ» °¡Áö°í ÀÖ½À´Ï´Ù. ÇÑÀåÂ¥¸® boot/root µð½ºÅ©¸¦ ¸¸µé°Ú´Ù¸é Ä¿³Î°ú ¾ÐÃà ·çÆ® ÆÄÀϽýºÅÛÀ» ÇÕÄ£ ¿ë·®ÀÌ ÇÑ ÀåÀÇ µð½ºÄÏ¿¡ ´Ù µé¾î°¡´ÂÁö È®ÀÎÇØ º¸½Ê½Ã¿ä. ¸¸ÀÏ µÎÀåÂ¥¸® boot+root µð½ºÅ©¸¦ ¸¸µç´Ù¸é ·çÆ® ÆÄÀϽýºÅÛÀÌ ÇÑÀåÀÇ µð½ºÄÏ¿¡ ´Ù µé¾î°¡´ÂÁö È®ÀÎÇØ º¸½Ê½Ã¿ä.
¶ÇÇÑ, ºÎÆ®µð½ºÅ©ÀÇ Ä¿³ÎÀ» ºÎÆ®½Ã۴µ¥ ÀÖ¾î ºÎÆ®·Î´õÀÇ ÀÏÁ¾ÀÎ LILO ¸¦ »ç¿ëÇÒ Áö ¿©ºÎ¸¦ °áÁ¤ÇØ¾ß ÇÕ´Ï´Ù. ´Ù¸¥ ¹æ¹ýÀ¸·Î´Â LILO ¸¦ ¾²Áö ¾Ê°í Ä¿³ÎÀ» Á÷Á¢ µð½ºÄÏ¿¡ Ä«ÇÇÇØ¼ ±× µð½ºÄÏÀ¸·Î ºÎÆÃÇÏ´Â ¹æ¹ýµµ ÀÖ½À´Ï´Ù. LILO ¸¦ ¾²¸é Çϵå¿þ¾î¸¦ ¾î¶»°Ô ÃʱâȽÃųÁö¿¡ ´ëÇÑ ÆÄ¸®¸ÞÅ͸¦ ºÎÆÃ½Ã¿¡ Ä¿³Î¿¡ Áö½ÃÇÒ ¼ö ÀÖ´Ù´Â ÀåÁ¡ÀÌ ÀÖ½À´Ï´Ù(´ç½Å ½Ã½ºÅÛÀÇ /etc/lilo.conf ÆÄÀÏÀ» Ã¼Å©ÇØ º¸½Ê½Ã¿À. ¸¸ÀÏ ÀÌ ÆÄÀÏÀÌ ÀÖ°í ±× ¾È¿¡ "append=..." ÇÏ´Â ¶óÀÎÀÌ ÀÖ´Ù¸é ´ç½ÅÀº ÀÌ¹Ì ÀÌ ±â´ÉÀ» ¾²°íÀÖ´Â °ÍÀÔ´Ï´Ù). LILO ¸¦ ½èÀ» ¶§ÀÇ ´ÜÁ¡Àº ºÎÆ®µð½ºÅ©¸¦ ¸¸µå´Â °úÁ¤ÀÌ ´õ º¹ÀâÇØÁö°í ¿ë·®µµ Á¶±Ý ´õ Â÷ÁöÇÑ´Ù´Â °ÍÀÔ´Ï´Ù. LILO ¸¦ ¾²ÀÚ¸é ¼ÒÀ§ Ä¿³Î ÆÄÀϽýºÅÛÀ̶ó ºÒ¸®¿ì´Â º°µµÀÇ ÀÛÀº ÆÄÀÏ ½Ã½ºÅÛÀ» ¸¸µé¾î °Å±â¿¡´Ù Ä¿³Î°ú ±× ¹Û¿¡ LILO °¡ ÇÊ¿ä·Î ÇÏ´Â ¸î¸î ÆÄÀϵéÀ» ´ã¾Æ¾ß¸¸ ÇÕ´Ï´Ù.
LILO ¸¦ »ç¿ëÇÏ°Ú´Ù¸é °è¼Ó Àо°¡½Ã°í Á÷Á¢ Ä¿³ÎÀ» Àü¼ÛÇÏ´Â ¹æ¹ýÀ» ÅÃÇϰڴٸé 6.2Àý ºÎºÐÀ¸·Î °Ç³Ê¶Ù½Ã±â ¹Ù¶ø´Ï´Ù.
¸Ç ¸ÕÀú ÇÒ ÀÏÀº LILO ¸¦ À§ÇÑ ÀÛÀº ¼³Á¤ÆÄÀÏÀ» ¸¸µå´Â °ÍÀÔ´Ï´Ù. ´ÙÀ½°ú ºñ½ÁÇÑ ³»¿ëÀÌ µË´Ï´Ù.
boot =/dev/fd0 install =/boot/boot.b map =/boot/map read-write backup =/dev/null compact image = KERNEL label = Bootdisk root =/dev/fd0 |
ÀÌ ÆÄÀÏÀ» bdlilo.conf ¶ó´Â À̸§À¸·Î ÀúÀåÇϽʽÿÀ.
ÀÌÁ¦ Ä¿³Î ÆÄÀϽýºÅÛÀ̶ó ºÒ¸®¿ì´Â ÀÛÀº ÆÄÀϽýºÅÛÀ» ¸¸µé¾î¾ß¸¸ ÇÕ´Ï´Ù. À̰ÍÀº ·çÆ® ÆÄÀϽýºÅÛ°ú´Â º°°³ÀÇ °ÍÀÔ´Ï´Ù.
¸ÕÀú, ÆÄÀϽýºÅÛÀÇ Å©±â¸¦ ¾ó¸¶·Î ÇØ¾ßÇÒÁö ¾Ë¾Æ³»¾ß ÇÕ´Ï´Ù. ¸¸µé¾î³½ Ä¿³ÎÀÇ ºí·Ï ´ÜÀ§ Å©±â°¡ ¾ó¸¶ÀÎÁö È®ÀÎÇϰí("ls -s KERNEL" ¸í·ÉÀ¸·Î ¾Ë¼ö ÀÖ½À´Ï´Ù), °Å±â¿¡ 50 À» ´õÇÕ´Ï´Ù. 50 ºí·ÏÀº inode ¿Í ±× ¹ÛÀÇ ¸î °¡Áö ÆÄÀϵ鿡 ÇÊ¿äÇÑ ´ë·«ÀûÀÎ Å©±âÀÔ´Ï´Ù. ¿øÇϽŴٸé Á¤È®È÷ °è»êÇØ º¼ ¼öµµ ÀÖ½À´Ï´Ù. ¾Æ´Ï¸é ±×³É 50 À» »ç¿ëÇϼ¼¿ä. µÎÀåÀÇ µð½ºÄÏÀ¸·Î ¸¸µç´Ù¸é ù¹øÂ° µð½ºÅ©´Â ¾î·µç Ä¿³ÎÀü¿ëÀ¸·Î¸¸ »ç¿ëµÉÅ×´Ï ÀÌ Å©±â¸¦ ´õ ³Ë³ËÇÏ°Ô Àâ¾Æµµ ÁÁ½À´Ï´Ù. °è»êÇÑ ¼ýÀÚ¸¦ KERNEL_BLOCKS ¶ó°í ºÎ¸£±â·Î ÇսôÙ.
Ç÷ÎÇÇ µð½ºÄÏÀ» µå¶óÀ̺꿡 ³Ö°í ±× À§¿¡ ext2 Ä¿³Î ÆÄÀϽýºÅÛÀ» ¸¸µì½Ã´Ù(ÆíÀÇ»ó µå¶óÀ̺êÀÇ À̸§Àº /dev/fd0¶ó °¡Á¤ÇÕ´Ï´Ù).
mke2fs -N 24 -m 0 /dev/fd0 KERNEL_BLOCKS |
mount /dev/fd0 /mnt rm -rf /mnt/lost+found mkdir /mnt/{boot,dev} |
±× ´ÙÀ½, µð¹ÙÀ̽º /dev/null °ú /dev/fd0 ¸¦ ¸¸µì´Ï´Ù. µð¹ÙÀ̽º ³Ñ¹ö¸¦ ã´Â ´ë½Å ±×³É ´ç½Å ½Ã½ºÅÛÀÇ Çϵåµð½ºÅ©·ÎºÎÅÍ -R ¿É¼ÇÀ» ÁÖ¾î º¹»çÇØ¿À¸é µË´Ï´Ù.
cp -R /dev/{null,fd0} /mnt/dev |
cp /boot/boot.b /mnt/boot |
cp bdlilo.conf KERNEL /mnt |
lilo -v -C bdlilo.conf -r /mnt |
total 361 1 –rw–r––r–– 1 root root 176 Jan 10 07:22 bdlilo.conf 1 drwxr–xr–x 2 root root 1024 Jan 10 07:23 boot/ 1 drwxr–xr–x 2 root root 1024 Jan 10 07:22 dev/ 358 –rw–r––r–– 1 root root 362707 Jan 10 07:23 vmlinuz boot: total 8 4 –rw–r––r–– 1 root root 3708 Jan 10 07:22 boot.b 4 –rw––––––– 1 root root 3584 Jan 10 07:23 map dev: total 0 0 brw–r––––– 1 root root 2, 0 Jan 10 07:22 fd0 0 crw–r––r–– 1 root root 1, 3 Jan 10 07:22 null |
´ç½ÅÀÌ ¸¸µç °Í°ú´Â ÆÄÀÏ Å©±â°¡ ¾à°£ Ʋ¸± ¼öµµ ÀÖÀ¸´Ï °ÆÁ¤ÇÏÁö ¸¶½Ê½Ã¿ä.
ÀÌÁ¦ µå¶óÀ̺êÀÇ µð½ºÄÏÀº ±×´ë·Î µÎ°í 6.3Àý ÆíÀ¸·Î °¡½Ã±â ¹Ù¶ø´Ï´Ù.
LILO ¸¦ »ç¿ëÇÏÁö ¾Ê°Ú´Ù¸é dd ¸í·ÉÀ» ½á¼ Ä¿³ÎÀ» ºÎÆ®µð½ºÅ©¿¡ ´ã¾Æ¾ß ÇÕ´Ï´Ù.
% dd if=KERNEL of=/dev/fd0 bs=1k 353+1 records in 353+1 records out |
¸¶Áö¸·À¸·Î ·çÆ®µð¹ÙÀ̽º¸¦ µð½ºÄÏ ÀÚü·Î ¼³Á¤ÇÑ ÈÄ, ·çÆ®°¡ Àбâ/¾²±â°¡ °¡´ÉÇÏ°Ô ·ÎµåµÇµµ·Ï ¼³Á¤ÇսôÙ.
rdev /dev/fd0 /dev/fd0 rdev -R /dev/fd0 0 |
Ä¿³Î À̹ÌÁö ³»¿¡´Â ·¥µð½ºÅ© ¿öµå¶ó´Â °ÍÀÌ ÀÖ½À´Ï´Ù. À̰ÍÀº ´Ù¸¥ ¿É¼Çµé°ú ´õºÒ¾î¼ ·çÆ® ÆÄÀϽýºÅÛÀ» ¾îµð¿¡¼ ãÀ» °ÍÀÎÁö¸¦ ¼³Á¤ÇÕ´Ï´Ù. ÀÌ ¿öµå´Â rdev ¸í·ÉÀ» ½á¼ È®ÀÎ ¹× ¼³Á¤ÀÌ °¡´ÉÇÕ´Ï´Ù. ·¥µð½ºÅ© ¿öµåÀÇ ³»¿ëÀº ´ÙÀ½°ú °°ÀÌ ÇØ¼®ÇÕ´Ï´Ù.
Bit field | ÀÇ¹Ì |
---|---|
0-10 | 1024 byte ºí·Ï±âÁØ, ·¥µð½ºÅ©°¡ ½ÃÀÛÇÏ´Â ¿ÀÇÁ¼Â |
11-13 | »ç¿ë ¾ÊÀ½ |
14 | ·¥µð½ºÅ©·Î ·ÎµùµÉÁö¸¦ ³ªÅ¸³»´Â Ç÷¡±× |
15 | ·çÆ® ÆÄÀϽýºÅÛÀ» ·ÎµåÇϱâ Á÷Àü¿¡ Çѹø ¸ØÃâÁö¸¦ °áÁ¤ÇÏ´Â Ç÷¡±× |
¸¸¾à 15¹ø ºñÆ®°¡ ¼³Á¤µÇ¾î ÀÖÀ¸¸é ºÎÆÃ½Ã¿¡ »õ·Î¿î µð½ºÄÏÀ» Áý¾î³ÖÀ¸¶ó´Â ¸Þ½ÃÁö¸¦ ¹Þ°Ô µÉ °ÍÀÔ´Ï´Ù. ÀÌ ±â´ÉÀº µÎ °³ÀÇ µð½ºÅ©·Î ºÎÆÃÇÒ °æ¿ì ÇÊ¿äÇÕ´Ï´Ù.
ÇÑ °³ÀÇ boot/root µð½ºÄÏÀ» ¸¸µé °ÍÀÎÁö, ¾Æ´Ï¸é µÎ°³ÀÇ "boot+root" µð½ºÄÏ ¼¼Æ®¸¦ ¸¸µé °ÍÀÎÁö¿¡ µû¶ó ´ÙÀ½ µÎ °¡Áö °æ¿ì°¡ »ý±æ ¼ö ÀÖ½À´Ï´Ù.
ÇÑ °³ÀÇ µð½ºÄϸ¦ ¸¸µç´Ù¸é ¾ÐÃà ·çÆ®ÆÄÀÏ ½Ã½ºÅÛÀº Ä¿³Î ¹Ù·Î µÚ¿¡ ¿¬À̾î À§Ä¡ÇÏ°Ô µÇ¹Ç·Î ±× ¿ÀÇÁ¼ÂÀº ºó ºí·°ÀÇ Ã¹¹øÂ°(KERNEL_BLOCKS °ª°ú µ¿ÀÏ)°¡ µË´Ï´Ù. ºñÆ® 14 ´Â 1 ·Î, ºñÆ® 15 ´Â 0 À¸·Î ¼³Á¤ÇØ¾ß ÇÕ´Ï´Ù.
¿¹¸¦ µé¾î, ´ç½ÅÀÌ ÇÑÀåÂ¥¸® µð½ºÅ©¸¦ ¸¸µå´Âµ¥ ·çÆ® ÆÄÀϽýºÅÛÀÌ 253 ºí·Ï(½ÊÁø¼ö)¿¡¼ ½ÃÀÛÇÑ´Ù°í Ĩ½Ã´Ù. ·¥µð½ºÅ© ¿öµåÀÇ °ªÀº 253(½ÊÁø¼ö)¿¡´Ù ºñÆ® 14 ´Â 1, ºñÆ® 15 ´Â 0 À¸·Î ¼¼ÆÃÇÑ °ªÀÔ´Ï´Ù. ÀÌ ·¥µð½ºÅ© ¿öµå °ªÀ» ±¸ÇÏ·Á¸é ´Ü¼øÈ÷ ¸ðµÎ ½ÊÁø¼ö·Î º¯È¯ÇØ ´õÇÏ¸é µË´Ï´Ù. 253 + (2^14) = 253 + 16384 = 16637 ÀÔ´Ï´Ù. ÀÌ °ªÀÌ ¾îµð¼ ¿Â °ÇÁö ¾Æ¹«·¡µµ ÀÌÇØ¸¦ ¸ø½Ã°Ú´Ù¸é ÀüÀÚ°è»ê±â¸¦ ½á¼ ÀÌ °ªÀ» ÀÌÁø¼ö·Î º¯È¯ÇØ º¸½Ã¸é ÀÌÇØ°¡ °¡½Ç °ÍÀÔ´Ï´Ù.
µÎ°³ÀÇ µð½ºÄÏ ¼¼Æ®¸¦ ¸¸µç´Ù¸é ·çÆ® ÆÄÀϽýºÅÛÀº µÎ ¹øÂ° µð½ºÄÏÀÇ 0 ¹ø ºí·ÏºÎÅÍ ½ÃÀÛÇÒ °ÍÀÌ°í µû¶ó¼ ±× ¿ÀÇÁ¼ÂÀº 0 ÀÔ´Ï´Ù. ºñÆ® 14´Â 1 ·Î, ºñÆ® 15 µµ 1 ·Î ¼³Á¤ÇÕ´Ï´Ù. µû¶ó¼ ·¥µð½ºÅ© ¿öµåÀÇ ½ÊÁø¼ö °ªÀº ÀÌ °æ¿ì 2^14 + 2^15 = 49152 °¡ µË´Ï´Ù.
·¥µð½ºÅ© ¿öµå¿¡ ÇØ´çÇÏ´Â °ªÀ» ÁÖÀDZí°Ô °è»êÇÑ ´ÙÀ½, ±× °ª´ë·Î rdev -r ¸í·ÉÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù. ½ÊÁø¼ö¸¦ »ç¿ëÇØ¾ß ÇÔ¿¡ ÁÖÀÇÇϽʽÿä. LILO¸¦ »ç¿ëÇÏ°Ú´Ù¸é ¸¶¿îÆ®µÉ Ä¿³ÎÀÇ °æ·Î, ¿¹¸¦ µé¸é /mnt/vmlinuz °°Àº °ÍÀ» rdev ¸í·É¾î¿¡ ÆÄ¶ó¸ÞÅÍ·Î ½áÁÖ¾î¾ß ÇÕ´Ï´Ù. LILO ¸¦ ¾²Áö ¾Ê°í Ä¿³ÎÀ» Á÷Á¢ dd ¸í·ÉÀ¸·Î º¹»çÇÏ°Ú´Ù¸é ´ë½Å Ç÷ÎÇÇ µð¹ÙÀ̽ºÀÇ À̸§À» ½áÁÝ´Ï´Ù (¿¹¸¦µé¸é /dev/fd0).
rdev -r KERNEL_OR_FLOPPY_DRIVE VALUE |
LILO¸¦ »ç¿ëÇÑ´Ù¸é ÀÌÁ¦ µð½ºÄÏÀ» ¾ð¸¶¿îÆ® ½ÃŰ½Ê½Ã¿À.
¸¶Áö¸· ´Ü°è´Â ·çÆ® ÆÄÀϽýºÅÛÀ» Ç÷ÎÇÇ µð½ºÄÏ¿¡ ´ã´Â °ÍÀÔ´Ï´Ù.
·çÆ® ÆÄÀϽýºÅÛÀ» Ä¿³Î°ú °°Àº µð½ºÄÏ¿¡ ´ã´Â´Ù¸é, dd ¸í·É¿¡ seek ¿É¼ÇÀ» ÁֽʽÿÀ. ÀÌ ¿É¼ÇÀº ¾ó¸¶¸¸ÅÀÇ ºí·ÏÀ» °Ç³Ê¶Ù¾î¾ß ÇÏ´ÂÁö¸¦ ¼³Á¤ÇÕ´Ï´Ù.
dd if=rootfs.gz of=/dev/fd0 bs=1k seek=KERNEL_BLOCKS |
¸¸ÀÏ ·çÆ® ÆÄÀϽýºÅÛÀ» µÎ¹øÂ° µð½ºÄÏ¿¡ ´ã´Â´Ù¸é, ù¹øÂ° µð½ºÄÏÀ» »©°í µÎ¹øÂ° µð½ºÄÏÀ» µå¶óÀ̺꿡 ³ÖÀº ÈÄ ·çÆ® ÆÄÀϽýºÅÛÀ» ´ã½À´Ï´Ù.
dd if=rootfs.gz of=/dev/fd0 bs=1k |
ÃàÇÏÇÕ´Ï´Ù. ÀÌÁ¦ ³¡³µ½À´Ï´Ù!
Áß¿ä: ÀÀ±Þ»óȲ¿ëÀ¸·Î µû·Î º¸°üÇØ µÎ±âÀü¿¡ ¸ÕÀú ÀÌ ºÎÆ®µð½ºÅ©°¡ Á¦´ë·Î µ¿ÀÛÇÏ´ÂÁö È®½ÇÈ÷ Å×½ºÆ®Çغ¸½Ã±â ¹Ù¶ø´Ï´Ù. ¸¸ÀÏ ºÎÆ®¿¡ ½ÇÆÐÇϼ̴ٸé ÀÌ ¹®¼¸¦ °è¼Ó Àо°¡½Ê½Ã¿À.