C & Docker & LINUX
리눅스 커널 컴파일
로픽
2017. 4. 25. 13:30
300x250
리눅스 커널 컴파일 전체적인 순서 (Centos 기준)
1. 루트 권한 획득 후 커널 버전 확인 및 필요 패키지 설치
2. 커널 소스코드 다운로드
3. 기존 커널 옵션 초기화
4. 커널 옵션 설정
5. 새 커널 컴파일 및 설치
6. 재부팅
1. 루트 권한 획득 후 현재 커널 버전 확인 및 필요 패키지 설치
#su root -> 패스워드 입력 이후 루트 권한 획득
#uname -r 현재 커널의 버전 확인
#yum install -y gcc* ncurses-devel 커널 컴파일을 위한 패키지 설치
2. 커널 소스코드 다운로드
#mv ./Desktop/linux-2.6.36.tar.gz /usr/src 다운로드 받은 커널을 /usr/src로 이동
#cd /usr/src
#tar xvzf linux-2.6.36.tar.gz //압축해제
#ln -s linux-2.6.36 linux //심볼릭 링크 설정으로 파일이름 간단하게
#cd linux
3. 기존 커널 옵션 초기화
#make mrproper //이전 컴파일시 남은 커널옵션 초기화
#make clena //여러개 생성된 object파일 삭제
#cp -p /boot/config-2.618.1B-398.el5PAE ./.config //현재 사용하는 설정으로 컴파일하기 위해서 설정파일을 가져옴
4. 커널 옵션 설정
#make menuconfig
메뉴 설정에서 설정을 추가함
load and aleternate configuration file에 .config가 입력되어 있는지 확인 후 ok
general startup의 enable deprecated sysfs features to support old userspace tools 선택(space bar)
local version 선택 후 부트 이미지에 붙을 이름을 입력
저장 후 빠져나옴
5. 새 커널 컴파일 및 설치
#make all
/usr/src/linux-버전/arc/i386/boot 디렉토리에 커널파일 bzImage가 생성됨
#make modules
모듈 컴파일
#make modules_install
모듈을 /lib/modules로 설치함
#make install
/boot 디렉토리에 initrd-버전.img, vmlinuz-버전 파일들을 생성함
6. 재부팅
#reboot
반응형