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

2. Ä¿³Î ¼Ò½º ¼³Ä¡Çϱâ

2.1 Ä¿³Î ¼Ò½º ±¸Çϱâ

¹èÆ÷ÆÇ CD-ROM

¸®´ª½º ¾ÈÁ¤¹öÀüÀÇ Ä¿³ÎÀº ·¹µåÇÞ ¹èÆ÷ÆÇ CD¿¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù. Ä¿³Î ¼Ò½º´Â CD-ROMÀÇ RedHat/RPMS µð·ºÅ丮¾È¿¡ Çì´õ(kerneL-header-2. 0.36-2.i386.rpm)¿Í ¼Ò½º(kerneL-Source-2.0.36-2.i386.rpm)µÎ ºÎºÐÀ¸·Î ³ª´µ¾î ½Ç·Á ÀÖ½À´Ï´Ù. Ä¿³Î ÄÄÆÄÀÏÀ» À§Çؼ­´Â µÎ ÆÐÅ°Áö¸¦ ¸ðµÎ ¼³Ä¡ÇØ¾ß ÇÕ´Ï´Ù.

# rpm -q kerneL-source
# rpm -Uvh kernel-header-2.0.36.i386.rpm
# rpm -Uvh kerneL-source-2.0.36-2.i386.rpm
FTP Site

ftp.kernel.org¿¡ anonymous·Î Á¢¼ÓÇÏ¿© /pub/linux/kernelµð·ºÅ丮¿¡¼­ ¸®´©½º °¡ »õ·Î ¹ßÇ¥ÇÑ Ä¿³Î ¼Ò½º¸¦ ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù.

±× ¹ÛÀÇ »çÀÌÆ®:

ftp://ftp.funet.fi/pub/linux/PEOPLE/linus/ ftp://sunsite.kren.ne.kr/pub/OS/ ftp://ftp.bora.net/pub/Linux/ ftp://ftp.kreonet.re.kr/pub/Linux ftp://ftp.hallym.ac.kr/Linux ftp://sunsite.unc.edu/pub/linux/kerneL ftp://updates.redhat.com/5.2/kernel-2.2

Ä¿³Î ¼Ò½º¿Í ÇÔ²² ÆÐÄ¡ÆÄÀÏÀ» ¹Þ´Â °ÍÀ» ÀØÁö ¸»¾Æ¾ß ÇÕ´Ï´Ù.

¸®´ª½º À¯Àú ±×·ì

õ¸®¾È, ÇÏÀÌÅÚ µî Åë½Å¸ÁÀǸ®´ª½º À¯Àú±×·ì(µ¿¿ìȸ)ÀÇ ÀÚ·á½Ç¿¡¼­´Ù¿î ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù. ÀÏ¹Ý Àüȭȸ¼±À» ÀÌ¿ëÇÑ ¸ðµ© »ç¿ëÀÚ¶ó¸é ÀÎÅͳÝÀ» ÅëÇÑ ´Ù¿î·Îµå º¸´Ù ¿ÀÈ÷·Á ºü¸£°Ô Àü¼Û¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù. Ä¿³Î2.2.3´Â 13MByteS Á¤µµ Å©±â ÀÔ´Ï´Ù.

2.2 Ä¿³Î ¼Ò½º ¼³Ä¡Çϱâ

»õ Ä¿³ÎÀ» ÄÄÆÄÀÏÇϱâ À§ÇØ ¾÷µ¥ÀÌÆ®°¡ ÇÊ¿äÇÑ ¶óÀ̺귯¸®³ª Ç®±×¸²ÀÌ ÀÖ´ÂÁö È®ÀÎÇÏ¿© ÇÊ¿äÇÏ´Ù¸é ¹Ýµå½Ã »õ·Î ¼³Ä¡ÇÕ´Ï´Ù.

Ä¿³Î ¼Ò½º Ç®±â

ÀϹÝÀûÀ¸·Î Ä¿³Î ¼Ò½º´Â /usr/src µð·ºÅ丮 ¾Æ·¡ ¼³Ä¡ÇÕ´Ï´Ù. /usr/src ¾Æ·¡¿¡´Â ½ÇÁ¦ Çì´õ, Ä¿³ÎÀÌ ¼³Ä¡µÈ µð·ºÅ丮¿Í ±× ¸µÅ©°¡ ÀÖ½À´Ï´Ù. ÀÌÀü Ä¿³ÎÀÌ µé¾îÀÖ ´Â µð·ºÅ丮¿¡ ´ëÇÑ ¸µÅ©¸¦ »èÁ¦ÇÏ°í »õ Ä¿³Î ¼Ò½º°¡ ¼³Ä¡µÈ µð·ºÅ丮¸¦ Linux ¶ó´Â À̸§À¸·Î ´Ù½Ã ¸µÅ©ÇÕ´Ï´Ù.

# cd /usr/src
# rm -f linux
# mkdir linux-2.2.3
# ln -s linux-2.2.3 linux
# tar xvzf linux-2.2.3.tar.gz
»õ·Î ¼³Ä¡ÇÑ Ä¿³Î ¼Ò½º°¡ °³¹ß¹öÀüÀ̶ó¸é ÄÄÆÄÀÏ ÈÄ Á¤»óÀûÀ¸·Î ÀÛµ¿µÇ´õ¶óµµ ÀÌÀüÀÇ ¾ÈÁ¤¹öÀüÀ» »èÁ¦ÇÏÁö ¾Êµµ·Ï ÇÕ´Ï´Ù.

Ä¿³Î ÆÐÄ¡

ÆÐÄ¡ÆÄÀÏÀº diff À¯Æ¿¸®Æ¼¸¦ ÀÌ¿ëÇÏ¿© Ä¿³ÎÀÇ ºÎºÐÀ» ¼öÁ¤ÇÕ´Ï´Ù. ÆÐÄ¡ÆÄÀÏÀº ºü¸£°Ô °»½ÅµÇ¸ç »õ·Î¿î ÆÐÄ¡ÆÄÀÏÀº ÀÌÀü ÆÐÄ¡¿¡ ´ëÇÑ Á¤º¸¸¦ Æ÷ÇÔÇÏÁö ¾Ê½À´Ï ´Ù. ±×·¯¹Ç·Î ÆÐÄ¡·¹º§Àº ¼ø¼­´ë·Î ¸ðµÎ Àû¿ëÇؾ߸¸ ÇÕ´Ï´Ù. ÆÐÄ¡°¡ ¸¹ÀÌ ÀÌ·ç ¾îÁø ÈĶó¸é Ä¿³Î ¼Ò½º¸¦ ´Ù½Ã ¹Þ´Â °ÍÀÌ À¯¸®ÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

Ä¿³Î 2.2.0¿¡¼­ Ä¿³Î 2.2.3·Î ¾÷±×·¹À̵åÇϱâ À§Çؼ­ patch-2.2.1.gz, patch-2.2. 3.gz ¸ðµÎ¸¦ ¼ø¼­´ë·Î Àû¿ëÇØ¾ß ÇÕ´Ï´Ù. ¾Æ·¡¿¡ ¿¹°¡ ÀÖ½À´Ï´Ù.

# cd /usr/src
# ls
linux linux-2.2.0 patch-2.2.1.gz patch-2.2.2.gzpatch-2.2.3.gz
# gzip -cd patch-2.2.1.gz | patch -p0
# gzip -cd patch-2.2.2.gz | patch -p0
# gzip -cd patch-2.2.3.gz | patch -p0
¸¹Àº ÆÐÄ¡ ÀÛ¾÷Àº ½©ÀÇ for ¸í·ÉÀ» ÀÌ¿ëÇØ ÀÚµ¿È­ÇÒ ¼ö ÀÖ½À´Ï´Ù.
# for LeveL in 1 2 3 ; do
> gzip -cd patch-2.2.$[LeveL].gz | patch -p0
> done
#
/usr/src/linux/scripts µð·ºÅ丮¿¡´Â ¿©·¯ ´Ü°èÀÇ ÆÐÄ¡ ÀÛ¾÷À» ÀÚµ¿À¸·Î ½ÇÇàÇÏ´Â ½ºÅ©¸³Æ® patch-kerneLÀÌ ÀÖ½À´Ï´Ù.patch-kerneLÀº /usr/src ¾Æ·¡¿¡ ÀÖ´Â Ä¿³Î ÆÐÄ¡ÆÄÀϵé°ú Ä¿³Î ¼Ò½ºÀÇ ¹öÀü°ú ºñ±³ÇÏ¿© ¼ø¼­¿¡ µû¶ó ÆÐÄ¡¸¦ Àû¿ëÇÕ´Ï´Ù.
# cd /usr/src
# ls
linux linux-2.2.0 patch-2.2.1.gz patch-2.2.2.gzpatch-2.2.3.gz
# linux/scripts/patch-kernel
ÆÐÄ¡°¡ ¼º°øÇß´Ù¸é ÆÐÄ¡ ´ë»óÀÌ µÈ ÆÄÀÏÀÇ ¿øº»Àº À̸§³¡¿¡ .orig¸¦ ºÙ¿© ¹é¾÷ µË´Ï´Ù. ÆÐÄ¡ °úÁ¤¿¡¼­ ¹®Á¦°¡ »ý°Ü ½ÇÆÐÇß´Ù¸é½ÇÆÐÇÑ ÆÄÀÏ À̸§ µÚ¿¡ .rej¸¦ ºÙÀÎ ÆÄÀÏÀ» ¸¸µì´Ï´Ù. *.rejÆÄÀÏÀ» »ìÆ캸°í ÆÐÄ¡ ÀÛ¾÷À» ´Ù½Ã ¼öÇàÇÕ´Ï´Ù.

# find /usr/src/linux/ -name "*.rej"

*.rej ÆÄÀÏÀ» ãÀ» ¼ö ¾ø°í ÆÐÄ¡°¡ ¼º°øÇß´Ù¸é *.origÆÄÀÏÀ» »èÁ¦ÇÕ´Ï´Ù.

# find /usr/src/linux/ -name "*.orig" -exec rm -f {} \;

ÆÐÄ¡µÈ Ä¿³Î ¼Ò½º µð·ºÅ丮 À̸§À» ÆÐÄ¡·¹º§ ¹øÈ£·Î ¹Ù²Ù°í ¸µÅ©¸¦ ´Ù½Ã ¼³Á¤ÇÕ ´Ï´Ù.

# cd /usr/src
# rm -f linux
# mv linux-2.2.0 linux-2.2.3
# ln -s 

make mrproper

ÀÌÀü Ä¿³ÎÀ» ÄÄÆÄÀÏÇÒ ¶§¸¸µé¾îÁø ¿ÀºêÁ§Æ® ÆÄÀÏ(*.o)°úÀÇÁ¸¼º ¼³Á¤, ÄÄÆÄÀÏ È¯°æ ¼³Á¤°ª, ¹öÀü Á¤º¸ µî »õ·Î ½ÃÀÛÇÏ´Â ÄÄÆÄÀÏ¿¡ ¿µÇâÀ» ÁÖ´Â ÀÌÀü Á¤º¸µéÀ» »èÁ¦ÇÕ´Ï´Ù. ÀÌÀü¿¡ ¼³Á¤µÈ ÄÄÆÄÀÏȯ°æÀ» Àç»ç¿ëÇÑ´Ù¸é ÀÌ °úÁ¤À» °Ç³Ê¶Ý´Ï´Ù.

# cd /usr/src/linux
# make mrproper

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