리눅스 커널 컴파일

리눅스 커널을 만드는 과정(3단계)

1. 커널 구성(Kernel configuration)

2. 커널 컴파일(Kernel compile)

3. 커널 인스톨(Kernel installation)


1. 커널 구성(Kernel configuration)

- 커널 구성이란 새로 만들어질 리눅스 커널에게 현재 시스템에 존재하는 하드웨어 특성, 커널 구성 요소, 네트워크 특성 등의

  정보를 알려주는 과정

- 시스템 하드웨어 정보들에 대한 사전 지식이 필요

- 수행 방법

  make config

  make menuconfig

  make xconfig 등의 방법이 있음


2. 커널 컴파일(Kernel compile)

- 커널 소스 파일을 이용해 실행 가능한 커널을 만드는 과정

- "make bzImage"나 "make zImage" 등의 명령으로 생성될 수 있다. (bzImage와 zImage는 커널 이미지 크기만 차이가 있을 뿐 커널 자체는 동일)

- 커널 2.6 버전 이후 부터는 "make"만 타이핑 해도 됨


3. 커널 인스톨(Kernel installation)

- 생성된 커널로 시스템이 부팅될 수 있도록 만드는 과정

- 커널 인스톨은 생성된 커널 이미지를 루트 파일시스템으로 복사, 모듈 인스톨, 그리고 부트로더(grub) 수정 등의 과정으로 이루어짐


리눅스 커널 컴파일 수행

* root 계정에서 수행 해야한다.


커널 컴파일을 위한 패키지 설치

 

현재 커널 버전 확인

$ uname -r

 

 

 

커널 소스 다운로드

커널 소스는 http://kernel.org 에서 다운로드 가능

 

 

저 하이퍼링크 마우스 오른쪽을 누른후 링크 copy후

 

# wget [링크 주소] 를 입력하면 다운로드를 받게된다.

 

tar.xz로 다운 받았으므로

# tar xvf linux-4.4.5.tar.xz

를 이용하여 다운로드 받은 파일을 압축풀기

(tar.gz일경우 tar xzvf로 풀면됨)

 

필요 패키지 설치

 

$ sudo apt-get install build-essential libncurses5 libncurses5-dev bin86 kernel-package -y

 


Configuration 파일 복사

 

현재 커널의 configuration 파일을 복사


cp /boot/config-현재커널명 ./.config



$ sudo make menuconfig


Load 를 클릭


OK 후 Save


이후 Exit로 터미널로 빠져나옴


커널 컴파일 (커널 설치 이미지 생성)

$ sudo make-kpkg --initrd --revision=1.0 kernel_image

* 이 명령어 수행시 컴퓨터 상태에 따라 시간이 오래 걸릴 수 있다.

'Study Note > OS' 카테고리의 다른 글

[Linux] root 계정 초기 패스워드 설정  (0) 2016.03.10
[Linux] Task 관리  (0) 2016.03.07
[Linux] 리눅스 커널 구조  (0) 2016.03.07
[Linux] Shell Script  (0) 2016.02.15
[Linux] Shell & Shell 내장 명령어  (0) 2016.02.15

+ Recent posts