메뉴 닫기

리눅스 커널 컴파일 정의 및 옵션

커널컴파일시 ln -sf /usr/loca/src/linux-2.6.21 /usr/src/linux 로 /usr/src/linux로 심볼릭 링크 하는 이유는 표준 C 라이브러리 헤더파일인 config.h 위치를 맞혀줄려고…

make mrproper : 기존에 설정값 초기화
make menuconfig : 메뉴형식으로 옵션값 선택

옵션선택시 유의사항
CPU
SMP 지원여부
파일시스템 EXT2, EXT3
하드디스크 지원되는 모듈 SCSI, SATA, EIDE …

커널체크 항목중
: 커널에 포함
: modules 로 분리
: 커널 / modules에 포함하지 않음
– 커널에 포함하는 경우 퍼포먼스가 10% 이상 향상된다고 함 ( 사용빈도에 따라 결정하면 될듯)

make
make modules
make modules_install
make install

vim /etc/grub.conf : 0으로 하여 커널컴파일한 커널로 부팅되게끔 설정

echo “savedefault –default=0 –once” | grub –batch
– 커널컴파일후 커널패닉 뜨면 다시 원래 커널로 리부팅 함 (저것만 실행하고 리붓하면 됨)

reboot

컴파일 필수옵션 체크들)
Enable Extended accountinig over taskstats (EXPERIMENTAL)
Enable per-task storage I/O accounting (EXPERIMENTAL)
enable deprecated sysfs features to support old userspace tools

에러메세지들)
make: 경고: 시계가 잘못되었음이 발견되었습니다. 빌드가 불완전할 수 있습니다.
– make clean 하고 해보거나
– date 090911462009 : 파일보다 미래로 잡아주니깐 에러 안뜨던데 완전 후덜덜 2009년 9월 9일 11시 46분
– 대체적으로 소스파일보다 시스템 시간이 늦거나 하면 에러 뜬다는데 안습

error) OS 설치하자 마자 rpm 버젼을 가지고 커널컴파일 할려는 경우 발생
소스커널 구해서 컴파일 하라는데.. 원래 안되는건지…

make[1]: *** 타겟 `missing-syscalls’를 만들 규칙이 없음. 멈춤.
make: *** [prepare0] 오류 2

[root@localhost 2.6.32-279.5.2.el6.i686]# make
scripts/kconfig/conf -s arch/x86/Kconfig
CHK include/linux/version.h
CHK include/linux/utsrelease.h
SYMLINK include/asm -> include/asm-x86
make[1]: *** 타겟 `missing-syscalls’를 만들 규칙이 없음. 멈춤.
make: *** [prepare0] 오류 2

 

출처 : http://www.kensei.co.kr/711 

 

   [polldaddy rating=”7739789″] 

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다