인터넷 자료마다 달라서 꽤 많이 삽질했습니다.
이전 커널버전과는 너무 차이가 나고, 데비안 계열의 패키지를 처음 사용하느라 적응하는데 조금 힘들었습니다. 이틀 동안 무려 5번은 컴파일한 듯 ㅡㅡ;
Vmware로 실행하니까 장난 아니게 느리네요 ㅜㅜ

일단 gcc와 g++ 등 빌드 도구가 필요하므로..
apt-get install build-essential

하여 빌드 도구를 설치합니다.
두번째로.. 커널 소스가 필요하겠죠.. 커널 소스와 initrd-tools를 받습니다.
apt-get install linux-source-2.6 kernel-package initrd-tools

커널 소스는 아시다시피 /usr/src 디렉토리에 저장됩니다.
세번째로 필요한 건 Ncurses 라이브러리입니다. 뭐... 저는 예전의 Text 메뉴(menuconfig)가 익숙해서리 ncurses를 받았습니다.
apt-get install ncurses-dev

압축을 풀고 일단 설정부터 합니다. 설정에 관한 자세한 내용은 아래 포스트에 연결된 다른 문서들을 참고하세요^^
make menuconfig

설정을 다하고 저장한 후, 다음을 차례대로 실행합니다.
make
make modules_install install

Vmware에서는 한 시간 넘게 걸리더군요. 식사시간에 맞춰서 실행하고 식사하고 오셔도 괜찮을 듯 합니다 @.@

마지막까지 실행되고 나면 무언가가 설정되었다는 화면이 마지막으로 뜹니다. 여기서 중요합니다. 저가 하루꼬박 삽질한 대목인데요.
바로 mkinitrd를 사용하여, initrd.img 파일을 만들어야합니다.
mkinitrd -o /boot/initrd.img-`uname -r` `uname -r`


여기까지 왔으면, 거진 90%는 끝났습니다. 다음을 확인해봅니다.
/boot/vmlinuz 생성날짜
/boot/initrd.img-컴파일한 커널 버전
/boot/grub/menu.lst


아래 menu.lst는 제 리눅스의 설정입니다.
menu.lst 안에 설정에 대한 설명이 잘 되어 있으니 따라서 하면 쉽게 할 수 있을 껍니다^^ 진한 부분이 저가 첨가한 새로운 커널 이미지부분입니다.
title Ubuntu, kernel 2.6.10-5-386
root (hd0,0)
kernel /boot/vmlinuz-2.6.10-5-386 root=/dev/hda1 ro quiet splash
initrd /boot/initrd.img-2.6.10-5-386
savedefault
boot

title Ubuntu, kernel 2.6.10-5-386 (recovery mode)
root (hd0,0)
kernel /boot/vmlinuz-2.6.10-5-386 root=/dev/hda1 ro single
initrd /boot/initrd.img-2.6.10-5-386
savedefault
boot

title Ubuntu, kernel memtest86+
root (hd0,0)
kernel /boot/memtest86+.bin
savedefault
boot

title Ubuntu, kernel 2.6.10 (test mode)
root (hd0,0)
kernel /boot/vmlinuz root=/dev/hda1 ro quiet splash
initrd /boot/initrd.img-2.6.10
savedefault
boot

재부팅하고 grub이 뜰때 esc를 눌러 새로운 메뉴를 선택하고, 커널 패닉이 안뜨면 성공한 겁니다.
Posted by xHuro
,