1. Ubuntu에서 커널 컴파일 하기
* 아래 나와있는 것은 전부 root계정 기준입니다.
1) 먼저, 커널 컴파일에 필요한 것들을 설치합니다.
apt-get install build-essential bin86 kernel-package
apt-get install libncurses5-dev
libncurses의 경우 저렇게 명령어 쳐주면 자동으로 현재(08.05.11) 가장 최신인 5.6버전을 받습니다.
2) 커널 소스 다운로드, 컴파일 옵션
예전 버전들이 이곳에 있습니다. 확장자가 bz2인 파일을 받습니다.
ftp://ftp.kernel.org/pub/linux/kernel/v2.6/
다운로드 위치는 상관없으나 여기서는 /usr/bin 기준으로 말하겠습니다.
/usr/bin 디렉토리로 이동하여 압축을 풀어줍니다. tar xjvf linux-2.6.24.tar.bz2
압축을 푼 화면 입니다.
linux-2.6.24-16-generic은 우분투 8.04 설치 시 기본 커널 버전
이제 압축 푼 디렉토리를 소프트링크를 통해 연결시켜 줍니다.
ln –s /usr/src/linux-2.6.24 /usr/src/linux
이제 커널 컴파일 옵션을 줘야 하는데, 여기서는 지금 기존에 있는 옵션파일을 불러와서 컴파일 하겠습니다. (수동으로 옵션 주실 분은 아래 참고하세요 make menuconfig부분 참고)
/boot 디렉토리에 보면 지금 돌고있는 커널(uname –r로 확인)의 config파일이 있습니다. 이것을 /usr/src/linux 디렉토리에 .config이라는 이름으로 복사해 줍니다.
cp /boot/config-2.6.24-16-generic .config
*make menuconfig 명령을 통해 기존 config이 아닌 새로운 옵션으로 컴파일 할 수 있습니다.
이 과정은 반드시 기존의 config을 복사하신 분은 안 하셔도 됩니다. 새롭게 옵션 주실 분은 여기서 조정할 수 있습니다. 옵션을 주시고 나가실 때 저장하면 .config 파일이 생성됩니다.
3) 컴파일 시작
make clean 한 번 해주시고
make-kpkg --initrd --stem linux --revision=cusom.1.0 kernel_image kernel_headers
--revision 부분은 적고 싶으신 대로 적으시면 됩니다.
이제 컴파일 됩니다. 저 같은 경우에는 virtual box환경에서 3시간 걸렸습니다.
끝나고 나면 header와 image 두 개의 deb 파일이 생성됩니다.
이것을 설치해주면 되겠습니다.
dpkg –i linux-headers-2.6.24.custom_i386.deb
dpkg –i linux-image-2.6.24.custom_i386.deb
설치된 커널 이미지는 시냅틱 패키지 관리자에서 제거 가능합니다.
자동으로 부트로더에 등록되어 처음 부팅시에 esc를 눌러 커널을 선택할 수 있습니다.
cat /boot/grub/menu.lst 로 등록된 커널 확인 가능
커널이 바뀌어서 하드웨어 드라이버는 재설치 하셔야 합니다.
출처: http://smartsaver.springnote.com/pages/1173140
'Education > Linux Kernel' 카테고리의 다른 글
vi 명령어 (0) | 2012.01.18 |
---|---|
Ubuntu 접속시 느림 현상 (0) | 2011.04.28 |
vi 명령어 모음 (1) | 2011.01.28 |
우분투 vi editor 세팅 (0) | 2010.08.05 |
우분투 커널 소스 & 컴파일 (0) | 2010.08.04 |