2012년 5월 19일 토요일

리눅스 커널 컴파일

다른 문서도 많지만 남겨둔다.

-------------------------------

1. 기본적으로 커널 소스의 디렉토리는 /usr/src/linux 입니다.
2. 커널 컴파일 방법에는 3가지가 있다
make config -> 옵션을 잘못 선택하면 처음부터 다시해야하는 단점이 있습니다.
make config의 화면


make menuconfig -> 가장 추천하는 방법(단, ncurses가 있어야 한다.)
make menuconfig의 화면


make xconfig -> X에서 볼수 있습니다.
3. 전에 있던 커널소스 /usr/src/linux 디렉은 다른이름으로 바꾸던지 지워주십시요.(예: mv linux linux-2.2.11)


4. 커널 소스에 압축을 풀어주십시요.
# tar xvfz linux.2.4.0.tar.gz

압축을 풀어주시고, 해당 디렉토리로 이동을 하여주십시요.

# cd /usr/src/linux

해당 디렉토리로 이동하신후

가장 추천하는 방식인 menuconfig를 실행하시면 됩니다.

# make menuconfig

(make xconfig하였을 경우의 화면입니다.)




5. 커널 컴파일 옵션을 보고 시스템에 맞는걸 선택합니다.
이부분에 대한 자세한 정보는 아래에서 구하실수 있습니다.

ftp://ftp.linux.co.kr/document/kldp/KoreanDoc/html/Kernel_Compile_Guide-KLDP-html.tar.gz
ftp://ftp.linux.co.kr/document/kldp/KoreanDoc/html/Kernel_Compile-KLDP-html.tar.gz


6. make dep 를 합니다.(의존성을 검사을 합니다.)

7. make clean 을 합니다.(모든 오브젝트 파일과 구버전이 남겨놓은 것을 제거합니다.)

8. make bzlilo 을 합니다. (커널 이미지를 압축생성한다)

9. cd / 한다( / 방에 vmlinuz, System.map 이라는 파일이 생겼을 것이다)

10. mv vmlinuz /boot/vmlinuz-2.4.0 (예: mv vmlinuz /boot/vmlinuz-2.4.0)

11.mv System.map /boot/System.map-2.4.0 (예: mv System.map /boot/System.map-2.4.0)

12. vi /etc/lilo.conf ( 리로를 편집합니다 )
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50

image=/boot/vmlinuz-2.4.0 -> 새로운 커널이미지를 linux라는
label=kernel-2.4.0
root=/dev/hda1
read-only

image=/boot/vmlinuz-2.2.11 -> 혹시나 모를 커널 패닉에 대비하여
label=old-kernel 예전 커널을 old란 레이블로 해놓는다.
root=/dev/hda1 (예전 버전이 2.2.11일때)
read-only

13. /sbin/lilo 해줍니다.( lilo.conf의 내용을 인식시켜 주기위해서 꼭 해주셔야 합니다.)


커널 2.4의 변화

댓글 없음:

댓글 쓰기

국정원의 댓글 공작을 지탄합니다.

UPBIT is a South Korean company, and people died of suicide cause of coin investment.

 UPBIT is a South Korean company, and people died of suicide cause of coin. The company helps the people who control the market price manipu...